0. 요구사항
– ALV 데이터중 중복 데이터만 Highlight 넣어주세요.
※ 행에 적용하기
1. Output Internal Table에 Field 추가
– lcolor(4)
2. ALV Layout에 Field 추가
– gs_layout-info_fname = ‘LCOLOR’.
3. 대상 데이터에 lcolor필드값 추가
– gs_display-lcolor = ‘C310’.
4. Grid Refresh
CALL METHOD GO_GRID1->REFRESH_TABLE_DISPLAY
EXCEPTIONS
FINISHED = 1
OTHERS = 2.
5. Color code 표
※ 열에 적용하기
1. Output Internal Table에 Field 추가
– TCOLOR TYPE LVC_T_SCOL, ” Tab Color.
2. ALV Layout에 Field 추가
– GS_LAYOUT-CTAB_FNAME = ‘TCOLOR’.
3. 대상 데이터에 tcolor필드값 추가
– color 테이블 채움 (색상표는 위를 참고)
* 거래처 컬럼의 색을 강조.
CLEAR: GT_COLOR. GS_COLOR-COLOR-COL = 3. GS_COLOR-COLOR-INT = 1. GS_COLOR-COLOR-INV = 0. GS_COLOR-FNAME = ‘ZKUNNR’. APPEND GS_COLOR TO GT_COLOR. – Output Internal Table에 추가 APPEND LINES OF GT_COLOR TO GS_DISPLAY2-TCOLOR. 4. Grid Refresh CALL METHOD GO_GRID1->REFRESH_TABLE_DISPLAY EXCEPTIONS FINISHED = 1 OTHERS = 2.
※ 참고 프로그램 : ITSQ_ALV_COLOR
– ALV 행을 선택하게 해주고 싶은데, 잘 안됨. ㅠㅠ 뭐가 틀린거지.
LOOP AT LT_DISPLAY INTO LS_DISPLAY. READ TABLE PT_DISPLAY WITH KEY ZGUBN = LS_DISPLAY-ZGUBN MATNR = LS_DISPLAY-MATNR KVGR4 = LS_DISPLAY-KVGR4 TRANSPORTING NO FIELDS BINARY SEARCH. IF SY-SUBRC = 0. LOOP AT PT_DISPLAY INTO GS_DISPLAY FROM SY-TABIX. IF GS_DISPLAY-ZGUBN NE LS_DISPLAY-ZGUBN OR GS_DISPLAY-MATNR NE LS_DISPLAY-MATNR OR GS_DISPLAY-KVGR4 NE LS_DISPLAY-KVGR4. EXIT. ENDIF. LV_TABIX = SY-TABIX. GS_ROW_NO-ROW_ID = LV_TABIX. APPEND GS_ROW_NO TO GT_ROW_NO. * GS_DISPLAY-CHK = ‘X’. GS_DISPLAY-LCOLOR = ‘C310’. MODIFY PT_DISPLAY FROM GS_DISPLAY INDEX LV_TABIX TRANSPORTING LCOLOR. ENDLOOP. ENDIF. ” IF SY-SUBRC = 0. ENDLOOP. ” LOOP AT LT_DISPLAY INTO LS_DISPLAY. CL_GUI_CFW=>FLUSH( ). CALL METHOD GO_GRID->SET_SELECTED_ROWS EXPORTING * IT_INDEX_ROWS = IT_ROW_NO = GT_ROW_NO IS_KEEP_OTHER_SELECTIONS = ‘ ‘. CL_GUI_CFW=>FLUSH( ).

댓글