메뉴 건너뛰기

SAP 한국 커뮤니티

안녕하세요 초보 ABAP 개발자입니다.

 

기존에 REUSE_ALV_GRID_DISPLAY' 으로 구현된 ALV 에서 CELL 값 변경시 해당 CELL의 값을 체크해서 색상을 변경 시킬려고 하는데 잘 되지 않아 질문드립니다.

 

 

*----- TYPE-POOLS
TYPE-POOLS SLIS.

 

 

*----- LIST VIEWER
DATA EVENTCAT TYPE SLIS_T_EVENT WITH HEADER LINE,
       SELFIELD TYPE SLIS_SELFIELD.
DATA FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
       FIELDCAT_2 TYPE SLIS_T_FIELDCAT_ALV,
       FIELDCAT_IN LIKE LINE OF FIELDCAT,
       FIELDCAT_IN2 LIKE LINE OF FIELDCAT.
DATA SORT TYPE SLIS_T_SORTINFO_ALV,
       SORT_IN LIKE LINE OF SORT .
DATA COL_POS TYPE I,
       G_LAYOUT_S  TYPE SLIS_LAYOUT_ALV .

 

**********************************************************************

FORM START_GRID_DISPLAY .
  GS_GRIDSET-EDT_CLL_CB 'X'.
  G_LAYOUT_S-COLTAB_FIELDNAME 'CELLSCOL'.

*  CLEAR GV_DCHECK .
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      I_CALLBACK_PROGRAM       SY-REPID
      I_CALLBACK_PF_STATUS_SET 'SET_PF_STATUS'
      I_CALLBACK_USER_COMMAND  'USER_COMMAND'
      I_GRID_SETTINGS          GS_GRIDSET
      IS_LAYOUT                G_LAYOUT_S
      I_DEFAULT                'X'
      I_SAVE                   'A'
      IS_VARIANT               ALV_VARIANT
      IT_EVENTS                GT_EVENTS[]
      IT_FIELDCAT              FIELDCAT
      IT_SORT                  SORT
    TABLES
      T_OUTTAB                 IT_LT[].
  IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
          WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.

 

 

******************************************************************************

FORM MARK_CHANGED_A USING
RR_DATA_CHANGED TYPE REF TO CL_ALV_CHANGED_DATA_PROTOCOL
RS_MOD_CELLS TYPE LVC_S_MODI.

 

DATA P_SELFIELD TYPE SLIS_SELFIELD.

READ TABLE IT_LT INDEX RS_MOD_CELLS-ROW_ID.

 

  IF GV_PAN1   NE IT_LT-FOB.
    CLEAR GS_SCOL.
    GS_SCOL-FNAME 'PAN'.
    GS_SCOL-COLOR-COL 6.
*          GS_SCOL-COLOR-INT = 0.
    GS_SCOL-COLOR-INV 1.

    APPEND GS_SCOL TO GT_SCOL.

    INSERT LINES OF GT_SCOL INTO TABLE IT_LT-CELLSCOL.

    MODIFY IT_LT INDEX  RS_MOD_CELLS-ROW_ID.

    CALL METHOD RR_DATA_CHANGED->MODIFY_CELL
      EXPORTING
        I_ROW_ID    RS_MOD_CELLS-ROW_ID
        I_FIELDNAME 'CELLSCOL'
        I_VALUE     GT_SCOL..

    REFRESH GT_SCOL.

    PERFORM USER_COMMAND USING 'RE' P_SELFIELD. -> 강제 REFRESH

  ENDIF.

********************************************************************

FORM USER_COMMAND USING R_UCOMM TYPE SY-UCOMM
                        LS_SELFIELD  TYPE SLIS_SELFIELD .

  DATA LS_SELFIELD1 TYPE SLIS_SELFIELD.



  CASE R_UCOMM.
    WHEN '&IC1'.
    WHEN 'INS' .
      CLEAR IT_LT .

     IT_LT-ZHOSNM   P_ZHOSNM .
      IT_LT-AEDAT    P_AEDAT .
      IT_LT-PTEXT    GV_PTEXT .
      APPEND IT_LT .

      LS_SELFIELD-REFRESH 'X'.
      LS_SELFIELD-COL_STABLE 'X'.
      LS_SELFIELD-ROW_STABLE 'X'.
    WHEN 'DEL'.
      DELETE IT_LT WHERE MARK 'X'.
      IF SY-SUBRC <> .
        MESSAGE E000 WITH TEXT-013 .
      ENDIF .

      LS_SELFIELD-REFRESH 'X'.
      LS_SELFIELD-COL_STABLE 'X'.
      LS_SELFIELD-ROW_STABLE 'X'.

    WHEN OTHERS.
      LS_SELFIELD-REFRESH 'X'.
      LS_SELFIELD-COL_STABLE 'X'.
      LS_SELFIELD-ROW_STABLE 'X'.
  ENDCASE .
ENDFORM .                    "USER_COMMAND

 

이런식으로 구현해봤는데 반영이 되질 않습니다.ㅠㅠ

 

고수님들 도움 부탁드리겠습니다.

번호 제목 글쓴이 날짜 조회 수
6507 매개변수 ID 가 SUBSCREEN 과 일반 SCREEN 에서 인식하는게 다른가요? 초밥 2024.05.02 6
6506 [ABAP] CHAR TYPE 필드 MAX 값 구하기.. [2] Mckee 2024.04.24 77
6505 read table 구문중 데이터 많을때.. [1] happy_boy 2024.04.23 67
6504 INITIALIZATION과 DEFAULT의 차이점 [1] BINY 2024.04.16 125
6503 BAPI_ROUTING_CREATE 실행 시 에러 파뤼타임 2024.04.15 50
6502 값을 필드명으로 쓸 수 있을까요?? [1] 비행청년 2024.04.09 128
6501 제발 도와주세요 ㅠㅠ (count) [1] 뚜비둡 2024.04.05 128
6500 abap 코드 오류 도와주세요.. [6] 대생힘들다 2024.04.03 163
6499 대학 과제인데 모르는 부분이 있어서요. [8] 대생힘들다 2024.04.02 204
6498 ABAP JOIN문 질문 [1] 뚜비둡 2024.03.29 129
6497 SKF 기표 취소 관련 문의 asfasf 2024.03.26 50
6496 넘버레인지 interval cts에 관해서 문의드립니다. [2] happy_boy 2024.03.22 79
6495 abap 으로 DFS 알고리즘 구현해보신분 계실까요...? Juenkdo1 2024.03.13 122
6494 SFTP 전송 방법 질문 드립니다. [4] 초밥 2024.03.04 214
6493 CDS 뷰 필드추가 백상아리 2024.02.28 150
6492 Screen 화면을 새 창으로 띄워서 원래 창에서도 작업 가능한 방법 Aranha 2024.02.23 99
6491 DYNP_VALUES_READ 함수 질문 [2] eeeaass 2024.02.22 124
6490 Try ~ CATCH [1] 곰작 2024.02.19 170
6489 public method 호출 시 오류 [1] wid5785 2024.02.10 116
6488 ALV 총계/소계 상단 정렬 방법 문의 [1] 쌥쌥잇 2024.02.09 115