SE80에서 모듈풀 생성하기
TYPE I 프로그램과 다르게 Selection Screen이 없어서 조회보다는 CRUD 생성, 수정 삭제 목적으로 만드는 프로그램
프로그램명은 SAPM ~으로 시작
Create with TOP Include에 체크해주고 다음
TOP 인클루드 설정할 땐 SAP를 빼고 M부터 시작하는 이름 붙임 ( _는 안 붙임)
INCLUDE 주석 해제해서 생성해줌
모듈풀에서 가장 먼저 할 일은 SCREEN 생성하기
이때 Editing 속성을 200 / 255 최대 사이즈로 설정할 수 있음
OK_CODE는 화면 눌렀을 때 펑션 코드가 있으면 받아와서 변수에 저장할 수 있도록 설정해줌
TOP에 변수로 선언해줘야 함 (SY-UCOMM)
* PBO (Process Before Output)
- 화면이 보여지기 전 실행되는 로직으로,
- executable program의 AT SELECTION SCREEN OUTPUT과 기능이 동일함
- 화면 제목, 데이터 보여주기, 입력 필드 제어 담당 등
- MODULE 적는 순서 상관 없음
* PAI (Process After Input)
- 화면이 보여지고 나서 버튼 누르거나 스크린의 변화를 보여줘야 할 때 실행되는 로직으로,
- executable program의 AT SELECTION SCREEN 과 기능이 동일함
- PBO의 status 로직 (USER COMMAND), 입력값 점검 등
- MODULE 순서 상관 있음
1) AT EXIT COMMAND (프로그램 중단 후 새롭게 화면 그리기 때문)
2) 입력값 점검 ON REQUEST (DB에서 데이터 다시 불러오지 않도록 하기 위함)
3) USER COMMAND
레이아웃 종류와 레이아웃 설정할 수 있는 창
search help 연결, parameter ID 설정해서 GET SET Parameter 연결, Input only, Output only 등등 설정 할 수 있음
화면의 요소(Elements) 이름 ≠ 전역변수 값
TOP에 따로 선언한 변수의 이름과 같으면 PAI가 실행되면서 화면에 값을 전달하는 것
따라서 PBO에서 MOVE-CORRESPONDING 등으로 화면에 값을 전달하는 로직이 필요
모듈풀 프로그램에서 가장 중요한건, 트랜잭션 코드를 생성해주는 것.
생성하지 않으면 프로그램이 실행되지 않음
'SAP > ABAP' 카테고리의 다른 글
#8. ALV GRID (0) | 2023.10.14 |
---|---|
#6. 인터널테이블 (0) | 2023.10.05 |
#5. 프로그램 호출 & 값 전달 (0) | 2023.10.03 |
#4. ABAP EVENT (0) | 2023.09.21 |
#3. INSERT, UPDATE, MODIFY, DELETE (0) | 2023.09.19 |