Seit Montag versuch ich mich in ABAP und steh im Moment vor einem kleinen Problem, das ich so nicht gelöst bekomme, da ich einen Knoten im Kopf habe.
Ich mache eine Listausgabe und bei jeder neuen kstar soll COL_HEADING ausgegeben werden.
Die Werte dazu dann in der normalen Farbe, wie ich sie in der IF Klausel angebe.
LOOP AT it_einzelpost INTO wa_einzelkost.
* Datum konvertieren
CALL FUNCTION 'RKE_TIMESTAMP_CONVERT_OUTPUT'
EXPORTING
I_DAYST = 'X'
I_TIMESTMP = wa_einzelkost-timestmp
I_TZONE = 1
IMPORTING
E_DATE = wa_einzelkost-date.
* Farbliche Kennzeichnugn von Belastung und Entlastung.
IF wa_einzelkost-beknz = 'S'.
FORMAT COLOR COL_NEGATIVE INTENSIFIED OFF.
ELSE.
FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
ENDIF.
* Werte werden ausgegeben.
FORMAT COLOR COL_HEADING INTENSIFIED OFF.
WRITE: / sy-vline,
wa_einzelkost-kstar,
sy-vline,
wa_einzelkost-lstar,
sy-vline,
wa_einzelkost-ktext,
sy-vline,
wa_einzelkost-wtgbtr,
sy-vline,
wa_einzelkost-megbtr,
sy-vline,
wa_einzelkost-date,
sy-vline.
ENDLOOP.
ULINE.
Das ist der Code.
Habe es dann so probiert
AT NEW kstar.
FORMAT COLOR COL_HEADINGG INTENSIFIED OFF.
WRITE: / sy-vline,
wa_einzelkost,
sy-vline.
FORMAT RESET.
END AT.
WRITE: /...
Das funktioniert nur bedingt, da mir dann keine Werte mehr ausgegeben werden, die in der Write Anweisung datunter geschrieben werden.
Mit deiner Anweisung FORMAT COLOR COL_HEADING INTENSIFIED OFF
überschreibst du die vorhergehenden Format-Anweisungen.
Soll nur der Wert wa_einzelkost-kstar eine andere Farbe bekommen, kannst du das auch im Write machen
WRITE: / sy-vline,
wa_einzelkost-kstar color 1 intensified off, ...
Wenn Dein AT nicht funktioniert, ggf. die Tabelle vor der Ausgabe nach den Werten sortieren. Dort kannst du aber nicht wie in deinem Posting die ganze Zeile ausgeben, da nur die Daten bis zu dem Sortierbegriff sichtbar sind.