ALV 조회, 변경 mode
1. 라디오 버튼 생성
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: r_r RADIOBUTTON GROUP g1 DEFAULT 'X' USER-COMMAND m1.
SELECTION-SCREEN POSITION 3. "텍스트 시작위치
SELECTION-SCREEN COMMENT (8) TEXT-r01 FOR FIELD r_r. "텍스트 길이
PARAMETERS: r_u RADIOBUTTON GROUP g1.
SELECTION-SCREEN POSITION 15.
SELECTION-SCREEN COMMENT (11) TEXT-r02 FOR FIELD r_u.
SELECTION-SCREEN END OF LINE.
2. ALV 모드
ALV가 화면에 뿌려지기 전에 이 로직을 타야하므로 set_table_for_first_display 전에 perform문을 입력한다.
FORM edit .
IF r_r = 'X'. "조회일때
CALL METHOD g_alv->set_ready_for_input
EXPORTING
i_ready_for_input = 0.
ELSE.
CALL METHOD g_alv->set_ready_for_input
EXPORTING
i_ready_for_input = 1.
ENDIF.
ENDFORM.
3. 필드 카탈로그 edit 속성 사용
필드 카탈로그를 구성하는 구문에서 편집할 필드에 edit 속성을 사용한다.
gs_fieldcat-fieldname = 'MAKTX'.
gs_fieldcat-coltext = '자재명'.
gs_fieldcat-just = 'C'.
gs_fieldcat-edit = 'X'.
APPEND gs_fieldcat TO gt_fieldcat. CLEAR: gs_fieldcat.
4. SAVE 버튼 비활성화
조회일 경우엔 변경할 데이터가 없으므로 저장 버튼이 필요가 없다. 변경일 경우에만 SAVE 버튼을 활성화해준다.
FORM edit .
DATA: BEGIN OF ls_extab,
fcode TYPE c LENGTH 10,
END OF ls_extab,
lt_extab LIKE TABLE OF ls_extab.
IF r_r = 'X'.
ls_extab-fcode = 'SAVE'. " 조회일때 SAVE 버튼 비활성화
APPEND ls_extab TO lt_extab.
SET PF-STATUS 'S100' EXCLUDING lt_extab.
ENDIF.
ENDFORM.
Author And Source
이 문제에 관하여(ALV 조회, 변경 mode), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@1000nion/ALV-조회-변경-mode저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)