728x90
*&---------------------------------------------------------------------*
*& Report ZMODULEPOOL_B
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT zmodulepool_b.
*SAP-ABAP에는 두 종류의 프로그램이 있음
*1. REPORT PROGRAM
*2. DIALOG PROGRAM.
*user input이 필요하면 dialog programming 사용한거임
*DIALOG program type : ' M'
* - 실행못함. T-code를 만들어야함.
* - REPORT program은 DB에서 just read하지만,
* Dialog Program은 R/3 스크린이 작동하면서 DB와 데이터를 교환함
* (실무에서는 딱히 구분안함)
* PBO ---> SCREEN 1---> PAI PBO ---> SCREEN 2---> PAI
* MODULE-> ---> MODULE ---> ---> MODULE
* (pOH : F1 눌렀을 때 발생하는 이벤트 블록, POV : F4 눌렀을 때 발생하는 이벤트 블록)
* Report program과 다르게 화면을 직접 지정하여 생성할 수 있음
* 화면에서 다음 화면 필드를 빈칸으로 두면 뒤로 back. 화면 번호를 넣으면 액션이 생겼을때 이동함.
* 스크린 속성 --------------------------------------------------------------------
* screen number : 프로그램 내부에서 스크린으 구별하는 4자리 숫자
* screen type : nomal - 스크린이 전체 GUI 창 점유 , Subscreen 영역 안에서 사용하는 스크린
* Modal Dialog Box - 팝업창의 형태
* next screen : 호출한 스크린의 pai실행된 후 다음 실행 스크린 번호 지정
* Cursor position : 스크린 Display 될 때 커서의 위치 지정 ( 기본 값은 첫 번째 필드 )
* Screen group : 스크린이 실행되고 있는동안 SY-DYNGR 에 저장.
* 여러 개의 스크린을 화면 그룹 하나로 지정하여 속성 변경시 유용하게 사용.
* Hold data : 사용자 프로파일에 저장된 데이터를 기본값으로 설정하기 위해 사용.
*--------------------------------------------------------------------
DATA : num1 TYPE iNT8,
num2 TYPE iNT8,
res TYPE iNT8,
ok_code TYPE syucomm.
INCLUDE zmodulepool_bpao.
INCLUDE zmodulepool_bpai.
INCLUDE zmodulepool_bf01.
*&---------------------------------------------------------------------*
*& Include ZMODULEPOOL_BPAO
*&---------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Module STATUS_9000 OUTPUT
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
MODULE status_9000 OUTPUT.
SET PF-STATUS '9000'.
SET TITLEBAR '9000'.
ENDMODULE.
*&---------------------------------------------------------------------*
*& Module STATUS_8000 OUTPUT
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
MODULE status_8000 OUTPUT.
SET PF-STATUS '8000'.
* SET TITLEBAR '8000'.
ENDMODULE.
*&---------------------------------------------------------------------*
*& Include ZMODULEPOOL_BPAI
*&---------------------------------------------------------------------*
MODULE user_command_9000 INPUT.
CASE OK_CODE.
WHEN 'BACK' or 'UP'.
leave to screen 0.
WHEN 'EXIT'.
leave PROGRAM.
WHEN 'SHOW'.
res = num1 + num2.
ENDCASE.
ENDMODULE.
*----------------------------------------------------------------------*
MODULE user_command_8000 INPUT.
CASE OK_CODE.
WHEN 'BACK' or 'UP'.
leave to screen 0.
WHEN 'EXIT'.
leave PROGRAM.
WHEN 'SHOW'.
res = num1 + num2.
ENDCASE.
ENDMODULE.
*&---------------------------------------------------------------------*
*& Include ZMODULEPOOL_BF01
*&---------------------------------------------------------------------*
DATA:num1TYPEi,
num2TYPEi,
resTYPEi.
728x90
'Ⅰ. ERP > 1. ABAP' 카테고리의 다른 글
[ABAP] BDC 레코딩 만들기 (0) | 2023.07.13 |
---|---|
[ABAP] Screen language (0) | 2023.04.27 |
[SAP ABAP] 클래스 만들 때 MESSAGE ID 넣는 방법 (0) | 2023.03.14 |
[SAP ABAP] MESSAGE E를 쓰고 새 창 안띄우고 싶을 때 (0) | 2023.03.14 |
[SAP ABAP] Step by step procedure to enhance the BP using BDT ( 기능 넣는 EXIT 은 아래 박스에 있음 ) (0) | 2023.02.14 |