ich habe in einer ALV eine Spalte mit einen Datum drin stehen. Wenn das Datum einen bestimmten Wert erreicht hat, möchte ich gerne das sich die einzelne Zellen Farbe ändert. Alternativ würde es auch reichen die Zeile an sich einzufärben. Welche Möglichkeiten habe ich da, in Web Dynpro for ABAP? Ich hoffe ihr könnt mir helfen.
Diese Infos gelten für ALVs in 'normalen' Dynpros. Vielleicht hilft es:
Schau Dir die Infos zum ALV Layout an. Dort kannst du im Feld CTAB_FNAME ein Feld benennen, das eine Tabelle mit Zelleneigenschaften enthält. Du brauchst also eine interne Tabelle IN deinem Feldkatalog. Der DDIC-Typ LVC_T_SCOL zeigt den Aufbau dieser internen Tabelle.
Im Endeffekt hast Du also eine interne Tabelle zur Ausgabe im ALV, die ihrerseites pro Zeile eine interne Tabelle mit Farbinfos zu Zellen dieser Zeile enthält. Und die kannst Du dann natürlich nach jeder Usereingabe ändern und so dynamisch die Farben ändern.
Danke für deine Antwort.
Mir ist leider noch nicht ganz klar, wo ich die interne Tabelle in meinen ALV einfügen soll. Ich arbeite noch nicht so lange mit ALV's.
Bei meiner ALV habe ich folgende Eigenschaften in die ich etwas mappen kann:
DATA -> hier mappe ich die Struktur des ALV, also meine Tabelle
FUNCTIONS_ELEMENTS ?
FILTER_VALUES ?
TOP_OF_LIST ?
END_OF_LIST ?
WebDynpro habe ich noch nicht verwendet, deswegen nur eine Mutmaßung:
Via DATA ist ja sicherlich die interne Tabelle bereitgestellt. Die hat als Struktur ja deine Wunschspalten. Zusätzlich ist hier eine Spalte nötig, die ihrerseits wieder eine interne Tabelle mit vorhin erwähnter Struktur ist. In der stehen dann (beim Standard ALV) die Felder, die Sonderattribute haben sollen. Aber der Feldname dieser Spalte muss eben dem LAYOUT-Attribut bekannt sein.