manual : user exitdocshare02.docshare.tips/files/26954/269547270.pdf · user exit번호와 function...
TRANSCRIPT
Manual : User Exit
목차
1. Exit 의 원리
2. Exit 이란
3. Customer Exit 찾기 14. Customer Exit 찾기 25. User Exit 과 Customer Exit 의 연결
6. Function Exit Parameter7. CO-PA 주요 Exit8. User Exit 번호와 Function Exit 연결 ( 특성유도 )9. CO-PA 특성유도 User Exit 설명
10. User Exit 번호와 User Exit Logic11. User Exit 번호와 Function Exit 연결 ( 평가 )12. FI 전표 유효성점검과 대체
13. FI 전표 유효성점검 IMG14. FI 전표 유효성점검 Logic 만들기
15. FI 전표에서의 예산 Check16. 매출채권 , 받을어음의 손익센타 대체 (FI)부록 : Exit 에서 사용하는 간단한 ABAP 구문
Exit 의 원리
User 자신의 Program 이 불리어 지는 SAP Program 의 PointUser 자신의 Program 이 불리어 지는 SAP Program 의 Point
SAP S
tandard Program Flow
User ExitInclude ZGGBR000
SAP Standard Program Flow 중 User 가원하는 대로 Control(Data 의 변화나 오류 점검 )을 할 수 있도록 SAP 에서 구멍을 뚫어 놓은 것
Activate(OBBH)
평소는 Direct 로 Process 가 흐르지만 Enhancement를 활성화 하면 그 곳을 거쳐가게 된다 .
Add On Program 으로는 Exit 과 같은 효과를 낼 수없다 .Exit 이 없으면 Table 을 직접 건드려야 하는 일이 발생또는 Source 를 고쳐야 한다 .
Exit 이란
SAP 가 준비한 Standard Enhancement Program 생성 , 변경 : SMOD
Customer Exit 을 사용하는 User Program생성 , 변경 : CMOD일반 Developer 가 Project 성격에 따라 수정( 통상 Customer Exit 의 Include 문 사용 )
Customer ExitCustomer Exit
User ExitUser Exit
Project(CMOD)Project(CMOD)
기능확장 지정기능확장 지정
Function Exit ModuleFunction Exit Module
Include 문Include 문
User LogicIF Exit_No = ‘U10’. …ENDIF.
User LogicIF Exit_No = ‘U10’. …ENDIF.
평가전략 U10특성유도 ( 기능확장 ) U20기타 특성으로 인한 평가 ( 기능확장 ) U30
User Exit
Customer Exit, Enhancement
필요한 Customer Exit 만 선택하여 활성화
Customer Exit 찾기
Exit 을 걸기 전에 내가 걸고자 하는 기능의 Customer Exit 이 있는 곳과 가능성을 파악해야 한다 .
Application 구성요소를 찾아 Customer Exit 을 찾는다 .
선택을 한 후 Double Click
T-code : SMODT-code : SMOD
SAP 가 미리 준비한 기능확장 (= Enhancement = Customer Exit)각 모듈별로 가능한 기능이 정리되어 있다 .기능확장 Component 별로 어떤 기능을 갖고 있는지 확인 ( 다음 Page)
Customer Exit 찾기 2
찾은 Customer Exit 을 조회한다 .
Customer Exit 에는 1 개 이상의 Function Module Exit 이 있으며각 설명을 볼 수 있다 .
Function Module Exit 을 Double Click 하면Source Code 가 보인다 .
각 Function Module Exit 에 대해 Document 를찾아보면 아래와 같은 설명과 User Exit 예제가제공된다 .
User Exit 과 Customer Exit 의 연결
T-Code : CMODT-Code : CMOD
Project 를 생성하여 사용할 Customer Exit 을지정한 후 거기에 소속된 Function ModuleExit 의 Include 문에 User 의 Logic 을 입력한다 .
Include 문에 User Logic 을 입력
Include 문에 User Logic 을 입력
처음에는 Include 문이 비어있음생성하고
처음에는 Include 문이 비어있음생성하고활성화를 시키면
파란불
Function Exit Parameter
ImportImport
ExportExport
EXIT_SAPLKEDRCOPA_001
Function Module Exit 의 Source 를 보고당황하지 말자Tab Page 의 Import, Export 를 보면 자세한정보를 알 수 있다즉 Import Data 를 이용하여 Export Data 를변경하는 것이다 .
구조 CE0XXXX( 경영단위 )
결국 IMG Setting 에 의해 유도된 특성을 Table 에Write 하기 전에 User 가 변경할 수 있는 여지를 제공한 것
CO-PA 주요 Exit
특성유도특성유도
평가평가
CustomerEnhancement
CustomerEnhancement
COPA0001COPA0001
COPA0002COPA0002
EXIT_SAPLKEAA_001 4.X 이상에서 사용 안함EXIT_SAPLKEAA_002 4.X 이상에서 사용 안함EXIT_SAPLKEDRCOPA_001 4.X 이상버전 특성유도에 사용
EXIT_SAPLKEAA_001 4.X 이상에서 사용 안함EXIT_SAPLKEAA_002 4.X 이상에서 사용 안함EXIT_SAPLKEDRCOPA_001 4.X 이상버전 특성유도에 사용
EXIT_SAPLKEAB_001 Actual Data ValuationEXIT_SAPLKEAB_002 Plan Data ValuationEXIT_SAPLKEAB_003 Valuation Using ConditionsEXIT_SAPLKEAB_004 Flexible Assignment Costing Key
EXIT_SAPLKEAB_001 Actual Data ValuationEXIT_SAPLKEAB_002 Plan Data ValuationEXIT_SAPLKEAB_003 Valuation Using ConditionsEXIT_SAPLKEAB_004 Flexible Assignment Costing Key
Function Module ExitFunction Module Exit
구조 CE0XXXX
Table CE1XXXX, CE2XXXX KOMK/KOMP( 가격결정 )
구조 COPA_EXIT_KEAB_004( 원가계산키 )
CO-PA 특성유도 User Exit 설명
영업사원 특성 유도 기능확장 SAP R/3 표준으로 영업사원 특성유도 실패영업사원정보를 HR Master 사용시 영업사원별 PA 배부 불가
영업사원 특성 유도 기능확장 SAP R/3 표준으로 영업사원 특성유도 실패영업사원정보를 HR Master 사용시 영업사원별 PA 배부 불가
사용자정의 특성 WW100 등록특성추출정의에서 기능확장으로 정의 (U20)판매오더의 파트너 (VBPA) Table 에서 영업사원을 읽어서 유도유도된 영업사원번호별 성명을 인사 Master Table 에서 찾아서 Update
사용자정의 특성 WW100 등록특성추출정의에서 기능확장으로 정의 (U20)판매오더의 파트너 (VBPA) Table 에서 영업사원을 읽어서 유도유도된 영업사원번호별 성명을 인사 Master Table 에서 찾아서 Update
예제예제
1. 특성구조 CE0EH00 와 동일 구조 Data 정의 (TABLE: CE0_EH00 LIKE CE0EH00)2. 영업사원번호 특성 WW100 의 점검 Table(T2500) 과 Text Table(T25A0) 과 동일 구조 Data 정의 BEGIN OF T_2500 OCCURS 0. INCLUDE STRUCTURE T2500. END OF T_2500.3. 경영단위와 User Exit 번호를 Check (Case ~ When ~ Endcase, 혹은 IF ~ ELSE ~ ENDIF 사용4. 특성 정보를 사용자 정의 구조에 복사 CE0_EH00 = I_COPA_ITEM.5. 기 유도 특성인 판매오더로 VBPA TABLE( 파트너 ) 에서 영업사원을 검색 ) SELECT SINGLE * FROM VBPA ( 영업문서 : 파트너 Table) WHERE VBELN = CE1_EH00-KAUFN ( 판매오더 번호 ) AND PARVW = ‘AF’.6. 검색된 값으로 구조의 특성치를 변경 (CE0_EH00-WW100 = VBPA-PERNR)7. 변경이 완료되었으면 Exporting 구조에 사용자 정의 구조를 복사 E_COPA_ITEM = CE0_EH00.
User Exit 번호와 Function Exit 연결 ( 특성유도 )
CO-PA 평가 User Exit Logic
1. Import Parameter 중 Data 구조를 확인 ( 예 ) EP_SOURCE. (CE1EH00)2. 해당 구조를 복사할 구조 (DATA) 을 정의 ( 예 ) DATA: CE1_EH00 LIKE CE1EH00.3. Data 구조를 사용자가 정의한 구조로 복사 ( 예 ) CE1_EH00 = EP_SOURCE) CE1EH00 의 Data 가 EP_SOURCE 를 통하여 CE1_EH00 으로 Import4. 경영단위와 User Exit 번호일 때를 조건으로 지정 ( 예 ) WHEN ERKRS. CASE ‘EH00’ WHEN EXIT_NR CASE ‘U10’5. 이미 유도된 특성치를 이용 , Table 에서 원하는 특성을 찾는다 . 찾을 Table 의 Key 를 확인 ( 예 ) SELECT * FROM MBEW WHERE MATNR = CE1_EH00-ARTNR AND …6. Table 에서 찾은 값을 사용자 정의 구조에 입력 ( 예 ) CE1_EH00-VV006 = MBEW-STPRS.7. Logic 이 완료되면 Export 구조로 복사 ( 예 ) EP_TARGET = CE1_EH00.
예제예제
SD 에서 VPRS 를 못 받는 경우 Material Master 에서 직접 표준원가 가져오는 Exit( 영업의 판매사원에게 제조원가 정보를 보이지 않게 하기 위하여 SD 의 Pricing Procedure 에서 VPRS 를제외하고 대신 판매오더 원가 Simulating 용 조건유형 EK02 를 사용한다 .(CO IMG))CO-PA 는 SD 의 조건유형 VPRS 로 부터 제조원가를 받게 되는데 이 값이 0 이므로 CO-PA 는 직접 Table을 찾아서 값을 가져와야 한다 .
SD 에서 VPRS 를 못 받는 경우 Material Master 에서 직접 표준원가 가져오는 Exit( 영업의 판매사원에게 제조원가 정보를 보이지 않게 하기 위하여 SD 의 Pricing Procedure 에서 VPRS 를제외하고 대신 판매오더 원가 Simulating 용 조건유형 EK02 를 사용한다 .(CO IMG))CO-PA 는 SD 의 조건유형 VPRS 로 부터 제조원가를 받게 되는데 이 값이 0 이므로 CO-PA 는 직접 Table을 찾아서 값을 가져와야 한다 .
User Exit 번호와 Function Exit 연결 ( 평가 )
평가전략평가전략
COPA0001COPA0001
경영단위CE1EH00 : 경영단위통화CE1EH00 : 회사코드통화User Exit No
FI 전표 유효성점검과 대체
1. 개요
기본적으로 사용할 수 있는 BKPF 나 BSEG FLD 로 User 의 Logic 이 불충분 할 경우 User Exit 을사용한다 . FI 전표의 Exit 은 Validation 을 위한 RGGBR000 와 Substitution 을 위한 RGGBS000 로 구성된다 .각 Program 에 FORM <User Exit No> ~ ENDFORM 문을 사용하여 Logic 을 입력하며 User Exit No 를 유효성점검이나 대체의 단계에 지정한다 .
FI 전표를 생성할 때 오류를 방지하기 위한 유효성점검 (Validation) 과 특정필드를 다른 값으로바꾸기 위한 대체 (Substitution) 이 있다 .
2. 절차
FI IMG 의 유효성점검 또는 대체 항목에서 선행조건과 점검 , 메시지 , 대체 등에 User 가 간단한Boolian Logic 으로 오류 Check 또는 특정필드의 바꾸기를 지정한다 .이 때 각각 FI 전표가 입력되는 시점의 정보를 이용하므로 BKPF( 전표 Header Table) 과 BSEG( 전표 Line Item Table) 의 FLD 를 전부 조건으로 사용할 수 있다 .
3. User Exit
특별목적원장 IMG
FI 전표의 Exit 을 사용하려면 RGGBR000, RGGBS000 를 COPY 한 ZRGGBR000, ZRGGBS000 를특별목적원장 IMG 에서 Setting 해야 한다 .
앞으로 위의 Program 에 의해 Exit 이 걸린다는 것을IMG 에서 Setting 하는 것
FI 전표 유효성점검 IMG
다음 IMG Path 를 통하여 유효성점검과 그 하위에 단계를 생성
선행조건 만들기 : BKPF, BSEG 등의 FLD와 Boolean 연산자를 이용
Double ClickDouble Click
점검란에 종료 (Exit 의 번역 ) 란에User Exit 번호를 입력
회사코드별 유효성확인을 생성호출점 : Header, Item, 전표완료활성화
단계마다 선행조건 , 점검 , 메시지 지정
Double ClickDouble ClickUser Exit 번호User Exit 번호
FI 전표 유효성점검 Logic 만들기
T-Code : SE38 (ABAP Editor) 초기에 RGGBR000 와 RGGBS000 를 ZRGGBR000, ZRGGBS000로 Program Copy
1. Table 선언 Exit 에서 사용할 Table 들을 정의
2. EXIT 선언
3. Exit 본문전표에 입력한 Cost Center 를 CSKS(CCtr Master Table) 에서 찾아 코스트센타 범주에 따라 제조경비 , 판관비를 서로 기표하지못하게 하는 내용
FI 전표 Exit Source Program 재생성
Exit Program 은 Client Independent 이기 때문에 동일 Server 를 사용할 경우 문제가 없지만개발 Server 에서 운영 Server 로 옮긴 후 Substitution/Validation/Rule 등이 제대로 넘어가지않는 경우가 있어 그럴 때에는 다음 화면과 같이 Reporting Program 을 돌려서 Program 을재생성 한다 .
RGUGBR00 Program 을 실행시켜서아래 Check Box 에 Click 하고 Run 하면
GBAAAAAGBT XXXXXGBS XXXXX
GBAAAAAGBT XXXXXGBS XXXXX
과 같은 Source Program 이 생성된다 .
이와 같이 생성되는 Program 은 절대로CTS 시키면 안되고 반드시 이 Program을 통해 생성해야 한다 .
이와 같이 생성되는 Program 은 절대로CTS 시키면 안되고 반드시 이 Program을 통해 생성해야 한다 .
FI 전표에서의 예산 Check
예제예제
예산통제를 받을 Object( 예산번호 ) 로 Internal Order 를 사용예산번호 (I/O) 에 Plan Version 20 번으로 원가요소별로 계획한 후 예산으로 간주예산 Check 해당계정으로 FI 전표 Line Item 입력시 COSP Table 에서 해당 오더별 원가요소별 예산 (Version 20) 과 과거실적 (Actual)+ 현재 기표하고자 하는 금액 (BSEG-HSL) 을 비교하여 초과 여부를 판단 , Error Message 를 보여주는 User Exit
예산통제를 받을 Object( 예산번호 ) 로 Internal Order 를 사용예산번호 (I/O) 에 Plan Version 20 번으로 원가요소별로 계획한 후 예산으로 간주예산 Check 해당계정으로 FI 전표 Line Item 입력시 COSP Table 에서 해당 오더별 원가요소별 예산 (Version 20) 과 과거실적 (Actual)+ 현재 기표하고자 하는 금액 (BSEG-HSL) 을 비교하여 초과 여부를 판단 , Error Message 를 보여주는 User Exit
FI IMG 유효성점검의 선행조건에서 오더가 Null 이 아니면서 예산 Check 해당계정이면 (SET 으로등록 , IN 구분 사용 ), 점검의 종료 (Exit 을 번역한 말 ) 에 User Exit 번호를 입력
FI IMG 유효성점검의 선행조건에서 오더가 Null 이 아니면서 예산 Check 해당계정이면 (SET 으로등록 , IN 구분 사용 ), 점검의 종료 (Exit 을 번역한 말 ) 에 User Exit 번호를 입력
1. 오더 범주가 ‘ 1’( 내부오더 ) 이 아니면 Return2. COSP 에서 값유형 = 01, Version 20 인 WKG001~WKG12 총 Sum Budget3. COSP 에서 값유형 = 04, WKG001~WKG12 총 Sum Actual4. BSEG-HSL + Actual > Budget 인 경우 Error Message message E(001) “예산을 초과하였습니다 .”
참고 : FI 의 통화유형 CO 의 통화유형
GLT0 COSP 거래통화 TSL 거래통화 WTG 회사코드통화 HSL 오브젝트통화 WOG 그룹통화 KSL 관리회계통화 WKG
FI 전표 대체 (Substitution)
대체의 단계를 생성하면 아래와 같이 대체할 필드를 선택하게 된다 .
상수값 : 일정 조건일 때 상수값 대체종료 (Exit) : Exit 사용하는 번호필드 – 필드 : BSEG 의 FLD 를 타 필드로 대체
Exit No
FI 전표 대체 (Substitution)
대체는 ZRGGBS000 에서 정의한다 .
CO 내부전기에 대한 유효성점검
완료 후 활성화
처음에는 Menu 에서 찾아서 입력
유효성점검 생성
단계 생성
점검 생성Exit 번호 지정
Double Click
CO 내부전기에 대한 유효성점검 (Exit Logic)
Program : ZRGGBR000 참조 구조
COBL_GENERALCOBL_SENDERCOBL_RECEIVER
Receiver 의 코스트센터 범주에 따라 판관비 , 제조경비 구분 CheckReceiver 의 코스트센터 범주에 따라 판관비 , 제조경비 구분 Check
생산오더 저장시 원가추정 여부 Check
SAP 표준에서 표준원가 Release 가 안 되어 있어도 생산이 진행된다 .생산 확정에서 입고 , SD 의 출고까지 Error 없이 진행되다가 SD 대금청구시 Error 가 난다 .이 때 표준원가 Release 를 하려면 이미 물류 전표가 생성되었으므로 Release 가 되지 않는다 .
SAP 표준에서 표준원가 Release 가 안 되어 있어도 생산이 진행된다 .생산 확정에서 입고 , SD 의 출고까지 Error 없이 진행되다가 SD 대금청구시 Error 가 난다 .이 때 표준원가 Release 를 하려면 이미 물류 전표가 생성되었으므로 Release 가 되지 않는다 .
생산오더 생성시 표준원가 추정 Release 여부를 Check 하여 Release 안된 제품에 대해서는생산오더가 생성되지 않게 하는 Exit생산오더 생성시 표준원가 추정 Release 여부를 Check 하여 Release 안된 제품에 대해서는생산오더가 생성되지 않게 하는 Exit
SAP 표준의 문제SAP 표준의 문제
Exit 개요Exit 개요
Customer Exit : PPC00006 ( 오더헤더필드에 대해 디폴트를 지정하기 위한 기능확장 )Function Exit : EXIT_SAPLCOZF_003
IF CAUFVD_IMP-MATNR NE ''.
SELECT SINGLE * FROM MBEW WHERE BWKEY = CAUFVD_IMP-WERKS AND MATNR = CAUFVD_IMP-MATNR AND BWTAR = ' '.
IF MBEW-LPLPR = 0. MESSAGE E000(ZCA001) WITH TEXT-101. EXIT. ENDIF.ENDIF.
IF CAUFVD_IMP-MATNR NE ''.
SELECT SINGLE * FROM MBEW WHERE BWKEY = CAUFVD_IMP-WERKS AND MATNR = CAUFVD_IMP-MATNR AND BWTAR = ' '.
IF MBEW-LPLPR = 0. MESSAGE E000(ZCA001) WITH TEXT-101. EXIT. ENDIF.ENDIF.
CAUFVD_IMP : 생산오더 헤더 Data 구조MATNR : 생산오더의 자재번호MBEW : 자재 평가 DataLPLPR : 표준원가 Release 된 금액
판매오더 원가추정의 통제
제품의 표준제조원가를 영업사원에게 노출시키지 않으면서 총원가개념 ( 원가계산표 사용 ) 의원가를 볼 수 있게 하기를 원함
제품의 표준제조원가를 영업사원에게 노출시키지 않으면서 총원가개념 ( 원가계산표 사용 ) 의원가를 볼 수 있게 하기를 원함
판매오더 저장시 총원가 ( 조건유형 : EK02) 가 자동저장 되며 판매오더의 원가계산 화면에서는 원가추정을 할 수 없게 함
판매오더 저장시 총원가 ( 조건유형 : EK02) 가 자동저장 되며 판매오더의 원가계산 화면에서는 원가추정을 할 수 없게 함
현업요구 특징현업요구 특징
ProcessProcess
Customer Exit : COPCP005 ( 자재평가에 대한 User Exit ( 전략 U))Function Exit : EXIT_SAPLCK21_002
IF SY-TCODE = 'VA01' OR SY-TCODE = 'VA02' OR SY-TCODE = 'VA03'. IF IMP_KLVAR = 'IPC4' AND SY-DYNNR = '4611' AND SY-UCOMM = 'PKAL'. MESSAGE E000(ZCA001) WITH TEXT-601. EXIT. ENDIF.ENDIF.
IF SY-TCODE = 'VA01' OR SY-TCODE = 'VA02' OR SY-TCODE = 'VA03'. IF IMP_KLVAR = 'IPC4' AND SY-DYNNR = '4611' AND SY-UCOMM = 'PKAL'. MESSAGE E000(ZCA001) WITH TEXT-601. EXIT. ENDIF.ENDIF.
IMP : 원가추정 Data 구조KLVAR : 원가계산 변형SYST : System Parameter 구조SY-TCODE : 현행 Transaction CodeSY-DYNNR : 화면번호SY-UCOMM : 실행 Icon 의 Code
SD->FI 전표의 참조 FLD 에 영업사원 사번과 영업팀을 입력
SD 로부터 발생된 FI 전표의 참조필드에 영업사원 사번과 영업팀 ( 영업그룹 ) 을 기록SD 로부터 발생된 FI 전표의 참조필드에 영업사원 사번과 영업팀 ( 영업그룹 ) 을 기록
판매오더 저장시 총원가 ( 조건유형 : EK02) 가 자동저장 되며 판매오더의 원가계산 화면에서는 원가추정을 할 수 없게 함
판매오더 저장시 총원가 ( 조건유형 : EK02) 가 자동저장 되며 판매오더의 원가계산 화면에서는 원가추정을 할 수 없게 함
현업요구 특징현업요구 특징
ProcessProcess
Customer Exit : SDVFX002 (User Exit for A/R Line (transfer to accounting))Function Exit : EXIT_SAPLV60B_002
DATA: LV_PERNR(10) TYPE C.
SELECT SINGLE PERNR INTO LV_PERNR FROM VBPA WHERE VBELN = CVBRP-AUBEL AND ( PARVW = 'AF' OR PARVW = 'VE' ).
XACCIT-XREF1 = LV_PERNR.XACCIT-XREF2 = CVBRP-VKGRP.
DATA: LV_PERNR(10) TYPE C.
SELECT SINGLE PERNR INTO LV_PERNR FROM VBPA WHERE VBELN = CVBRP-AUBEL AND ( PARVW = 'AF' OR PARVW = 'VE' ).
XACCIT-XREF1 = LV_PERNR.XACCIT-XREF2 = CVBRP-VKGRP.
VBPA : 영업문서 파트너PARVW : Partner FunctionCVBRP : 대금청구 HeaderXACCIT : 회계 Interface 구조
Report Painter 실행시의 권한 Check Exit
자기 부서 ( 현장 ) 의 Data 만 조회자기 부서 ( 현장 ) 의 Data 만 조회
Report Painter Report 의 실행시 선택화면의 FIELD 정보를 참조하여 권한 CheckReport Painter Report 의 실행시 선택화면의 FIELD 정보를 참조하여 권한 Check
현업요구 특징현업요구 특징
ProcessProcess
Customer Exit : GRWTAUTH (Report Painter Authorization)Function Exit : EXIT_SAPFGRWX_001
선택화면 입력정보 : I_T_SELSCREEN_PARAMS일반정보 : Report, Report Group, Library 등
선택화면 입력정보 : I_T_SELSCREEN_PARAMS일반정보 : Report, Report Group, Library 등
Report Painter 실행시의 권한 Check Exit ( 실행화면 )
Field Exit
T-Code : RSMODPRF • 특정 Field 에 정해진 값만 제한하여 받게 하는 사용자 정의 Exit• 모든 경우에 전부 적용하려면 Global 로 , 특정 프로그램에만 적용하려면 Program 명과 화면번호를 지정한다 .• 그 Field 의 값을 제한하는 Coding 을 한다 .
• 특정 Field 에 정해진 값만 제한하여 받게 하는 사용자 정의 Exit• 모든 경우에 전부 적용하려면 Global 로 , 특정 프로그램에만 적용하려면 Program 명과 화면번호를 지정한다 .• 그 Field 의 값을 제한하는 Coding 을 한다 .
Exit 에서 사용하는 간단한 ABAP 구문
SELECT Table 에서 하나 이상의 특정 Record 를 찾는다 .
DATA:
TABLES:
IF ~ ELSEIF ~ ENDIF
CASE ~ WHEN ~ ENDCASE
Program 에서 사용할 변수 , 구조 , Internal Table 등을 선언
Program 에서 사용할 Table 을 선언
특정조건에 따라 Statement 문이나 타 Program 으로의 Branch
IF 조건문과 비슷하나 경우가 많을 경우
간단한 ABAP 구문
SELECT SINGLE <col>/* [INTO <f1>] FROM <itab> WHERE …SELECT * FROM <itab> WHERE …
SELECT : Table 에서 Record Read
정의 : TABLE, DATA
INSERT, UPDATE,
APPEND
CASE <f1>. WHEN <f10> OR <f11>. <statement1> WHEN <f20> OR <f21>. <statement2> … WHEN OTHERS.ENDCASE.
IF <f10> OR <f11> <statement1>ELSEIF <f20> OR <f21> <statement2>ELSEIF <f30> OR <f31> <statement3>ELSE <statement4>ENDIF
SY-SUBRC