Попробуй:
Code:
REPORT ZTEST .
TYPE-POOLS: SLIS.
DATA: BEGIN OF ITAB OCCURS 0,
TEXT1(10),
TEXT2(10),
TEXT3(10),
COLORS TYPE LVC_T_SCOL,
END OF ITAB,
LIN LIKE LINE OF ITAB,
MCOL TYPE LVC_S_SCOL,
REP LIKE SY-REPID,
LS_LAYOUT TYPE SLIS_LAYOUT_ALV,
LT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE,
LS_FIELDCAT TYPE SLIS_FIELDCAT_ALV.
START-OF-SELECTION.
ITAB-TEXT1 = 'Красный'.
ITAB-TEXT2 = 'Желтый'.
ITAB-TEXT3 = 'Зеленый'.
DO 5 TIMES.
APPEND ITAB.
ENDDO.
LS_FIELDCAT-TABNAME = 'ITAB'.
LS_FIELDCAT-FIELDNAME = 'TEXT1'.
LS_FIELDCAT-OUTPUTLEN = 10.
LS_FIELDCAT-SELTEXT_L = 'Поле1'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
LS_FIELDCAT-TABNAME = 'ITAB'.
LS_FIELDCAT-FIELDNAME = 'TEXT2'.
LS_FIELDCAT-OUTPUTLEN = 10.
LS_FIELDCAT-SELTEXT_L = 'Поле2'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
LS_FIELDCAT-TABNAME = 'ITAB'.
LS_FIELDCAT-FIELDNAME = 'TEXT3'.
LS_FIELDCAT-OUTPUTLEN = 10.
LS_FIELDCAT-SELTEXT_L = 'Поле3'.
APPEND LS_FIELDCAT TO LT_FIELDCAT.
LOOP AT ITAB INTO LIN.
MCOL-FNAME = 'TEXT1'.
MCOL-COLOR-COL = 6.
APPEND MCOL TO LIN-COLORS.
MCOL-FNAME = 'TEXT2'.
MCOL-COLOR-COL = 3.
APPEND MCOL TO LIN-COLORS.
MCOL-FNAME = 'TEXT3'.
MCOL-COLOR-COL = 5.
APPEND MCOL TO LIN-COLORS.
MODIFY ITAB FROM LIN.
ENDLOOP.
REP = SY-REPID.
LS_LAYOUT-COLTAB_FIELDNAME = 'COLORS'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = REP
IS_LAYOUT = LS_LAYOUT
IT_FIELDCAT = LT_FIELDCAT[]
TABLES
T_OUTTAB = ITAB.