Upload
munhs72
View
316
Download
0
Embed Size (px)
Citation preview
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
V-Project 지원팀
SAP ABAP 1SAP ABAP 1 주차 교육주차 교육
2003. 1
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
1. System Architecture1. System Architecture
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
1.1.1 System Kernel1 System Kernel
1. R/3 system 의 특징 R3 System is a client system.
Logon 한 client 의 data 만 access 가능 . A Client is an independent unit in the R/3system.
각 client 는 자신의 데이터를 갖고 있다 User master record 는 client 에 대해 dependent 하다 . Program 과 table 등은 client 에 대해 independent -> repository object 에 저장되기 때문 . DB table 마다 MANDT 필드가 있고 그 필드에 client 번호가 저장되어 있다 .
TIP : t-code 및 node 찾기 1) T-code 입력 : /n search_sap_menu 2) 찾을 t-code 나 keyword 를 아래 처럼 입력
3) 결과 화면
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
1.1 System Kernel1.1 System Kernel
Dispatcher : 비어있는 work process 에 할당하는 기능• work process 를 통해 load 되는 트랜젝션의 분산• presentation level 의 interfacing
Dialog Step Dataflow• SAPGUI : 사용자가 화면에서 질의하고 응답받은 것을 자신의 포멧으로
바꾸고 dispatcher 에 전달한다 .• Dispatcher : SAPGUI 와 work process 간의 정보 교환을 관리하여 모든
사용자가 적은 work process 들을 공유한다 .• Processing 이 끝나면 dispatcher 는 work process 의 결과들을 SAPGUI
에 돌려준다 .
Presentation
SAPGUI SAPGUISAPGUI
Application
Database
Buffer
Communication
WorkProcess
WorkProcess
WorkProcess
Dispatcher
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
1.1 System Kernel1.1 System Kernel
R/3 Database Interface• R/3 database interface 는 syntax 를 검사 . • SAP buffer 들에 optimum utilization 을 공급한
다 . ( 각 application server 의 shared memory 에 지역적으로 위치 )
• buffer 에 저장된 data 는 application 들에 의해 사용됨 .
• ABAP/4 application 은 또한 EXEC-SQL instruction 을 사용하여 database 에 직접 접근할 수 있다 . ABAP/4-OpenSQL 대신에 R/3 database interface 는 다른 DBMS 들을 지원한다 .
• R/3 Database Interface 주로 Open SQL 사용 <-> Native SQL Open SQL 은 버퍼링하기 때문에 처리속도가
빠름
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
1.1 System Kernel1.1 System Kernel
R/3 Instance(Central System)• Instance 란 하나 또는 그 이상의 services 를 제공하는 R/3 System 의 components 를 묶어
놓은 administrative unit 이다 . 이 services 는 동시에 시작하고 끝나게 되며 , 어떤 instance 에 속한 components 는 common instance profile 에서 parameters 로서 specified 되어진다 .
• Central R/3 system 은 모든 필요한 SAP services 를 포함하는 단일 instance 로 구성된다 .
• 각각의 instance 는 자신의 SAP buffer area 를 가진다 .
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
1.2 System Administration1.2 System Administration
• Background job monitor : SM37• Display application severs : SM51• Manage user sessions : SM04, AL08• Manage work processes : SM50, SM66• Administer lock entries : SM12• Administer update records : SM13, SM14• Analyze system logs : SM21• Send system messages : SM02• (Cross-system) monitoring : RZ20
이러한 정보는 TSTC table 에서 볼 수 있다 .
System Administration T-Code
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2. ABAP Workbench 2. ABAP Workbench Concepts and ToolsConcepts and Tools
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.1 Introduction to the ABAP Workbench2.1 Introduction to the ABAP Workbench
1. Program Type
Type
Icon
명칭
1
= Executable Program= List Program= Report Program
M
= Module pool program
= Screen program
= (screen)Transaction program
= Online program
= Dynpro program
R/3 Repository : 모든 개발 object(program, db table 정의 , global type) 를 포함한다 .Development Class 사용 목적 : 관리용이 , transport 시키기 위해 .Repository Information System : Repository object 를 빠르게 검색할 수 있다 .(Tcode : SE84)
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.1 Introduction to the ABAP Workbench2.1 Introduction to the ABAP Workbench
Program Type 확인
System-status -> program double click -> Goto-Attribute
더블클릭
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.1 Introduction to the ABAP Workbench2.1 Introduction to the ABAP Workbench
• Object Navigator(SE80) : 모든 object 처리- 메뉴 (context menu) 선택 : 마우스 오른쪽 버튼 클릭- Navigation( 오브젝트에서 더블클릭 ) : 관련 툴바를 보이게 하고 , 해당 되는 곳으로 이동-Forward Navigation : 오브젝트가 없을 경우 더블클릭하여 생성하는 것
ABAP Editor(SE38) : program 코드 작성 / 수정• ABAP Dictionary(SE11) : table 처리• Menu Painter(SE41) : 메뉴바 , 표준툴바 , application 툴바 , 기능키 디자인• Screen Painter(SE51) : module pool 프로그램의 screen 디자인• Function Builder(SE37) : function module 처리• Class Builder(SE24) : central classes 처리
2. ABAP Workbench Tools
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.1 Introduction to the ABAP Workbench2.1 Introduction to the ABAP Workbench
Debugging Function Key F5(Single step) : Statement by statement F6(Execute) : Lines by line F7(Return) : Return to the main program F8(continue) : To the stop point/, Break poin
t/Cursor/, watch point/ 로 이동
• Debugging 6 가지 방법• se38 에서 Debugging button 사용• se80 : context menu 사용 (execute – debug
ging)• stop point 사용 : 조회하면에서 사용• break point 사용 : syntax 에서 사용• command field 내에서 /h 걸기 : screen
에서 처리 , 스탠다드 주로 사용• command field 내에서 /hs 걸기 : selectio
n screen 에서 처리 * se38, se80 에서 /h 사용하면 안됨 :
자신을 멈춤
3. Debugging
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.1 Introduction to the ABAP Workbench2.1 Introduction to the ABAP Workbench
프로그램은 individual statement 로 구성 각 statement 는 마침표 (.) 로 끝남 문장의 첫 단어는 keyword 로 시작 전체 주석 : 맨 앞에 (*) 뒤에 기재 문장 주석 : statement 끝에 (”) 뒤에 기재 chained statement : (,) 표기 줄 바꾸기 : WRIGHT: 뒤에 (/) 표기 들여쓰기와 keyword 대문자 변경 설정 : Pretty Printer 옵션 선택
4. General ABAP Syntax
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.1 Introduction to the ABAP Workbench2.1 Introduction to the ABAP Workbench
Documentation(help) 보기 : keyword 에서 F1 또는 클릭 프로그램 구성 : 선언부 , 추출부 , transfer 부 , 출력부 Check : Syntax 체크 Save : Repository Object 로 저장 Activate : check + Save + Compile Extended program check : more comprehensive check & activate 된 것만 가능
4. General ABAP Syntax( 계속 )
실습 1. Development class 와 Change request number 생성 ,Local development class 를 development class 로 변환
5. 알아둬야 할 System Field SY-DATUM : 날짜 SY-UZEIT : 시간 SY-UNAME : user SY-CPROG : 프로그램 SY-SUBRC : 리턴코드 (0:success, 그 외는 exception error) ( 시스템 필드 보기 : SE11 에서 SYST structure 에서 확인 )
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.2 ABAP Statements and Data Declarations2.2 ABAP Statements and Data Declarations
1. Types
Type is type : data passing 이 안됨 . Data passing 이 되면 data object 가 된다 .즉 , 선언 해 줄때만 사용한다 .
ABAP Dictionary Global Types (SE11 에서 작업 )Data Element(=Field type, component type)Structure (type) : data passing 이 되면 work area 가 된다 . ( 둘 이상의 field 로 구성 )Table type : data passing 이 되면 internal table 이 됨 .
Local type and Global typeSAP system 에서
Local type : 프로그램에 기술된 attributeGlobal type : ABAP Dictionary 에 있는 누구나 쓸수 있는 type.
Program 내부에서Local type : 서브루틴내에서 정의된 타입 .Global type : 전역변수로 선언된 것 .
Using Elementary Dictionary TypesData Elements 라고 불리며 , technical type, 길이 , 소수점 길이 등을 갖고 있다 .Data Element 는 Field Label, Field Documentation, Search Help 를 포함한다 .
Finding ABAP Dictionary Typesscreen fields 에서 F1 키 클릭 -> Technical info. 클릭 -> data element 를 더블클릭se84 에서 search.
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.2 ABAP Statements and Data Declarations2.2 ABAP Statements and Data Declarations
2. Standard Type 종류
Local types in programs C : Character N : Number Text D : Date(YYYYMMDD) T : Time(HHMMSS) X : Byte I : Integer P : Packed Number F : Floating Point Number STRING : Character String XSTRING : String of Bytes(X String)
C, N, P 는 자릿수 선언 가능 .I, P, F 는 numeric. 그 외는 alpha numeric 이다 .
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.2 ABAP Statements and Data Declarations2.2 ABAP Statements and Data Declarations
3. Data Object 의 종류
Data Element Structure
Table type
A
BA
BA
BA
BA
Data element 정의 DATA : <varname> TYPE <user-defined-type> DATA : <varname> TYPE <ABAP-dictionary-type> DATA : <varname> LIKE <data-object>.
<varname> 은 최대 30 자 까지 , ( ) + . , : 등은 이름으로 사용 못함 . Default 는 C type, 1 length 이다 . DATA : PACK TYPE P DECIMALS 3 VALUE '-123.23'. "소수점은 ' '로 묶고 , 초기값은 value 로 정의 .
4. Data Elements
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.2 ABAP Statements and Data Declarations2.2 ABAP Statements and Data Declarations
Changing Variables Move var1 TO var2 var2 = var1 ADD 1 TO I I = I + 1 Clear: counter => field reset COMPUTE => 계산식 ( 생략가능 ) CASE … WHEN … ENDCASE => 하나의 값으로 비교 수행 (data object 만 가능 ) IF … ENDIF => 조건식으로 비교 수행 (logical expression 가능 )
CASE <data object1>.WHEN <data object2>.
…WHEN <data object4> OR <data
object5>.…
WHEN OTHERS.…
ENDCASE.
IF <logical expression>.…
ElSEIF <logical expression>.…
ElSEIF <logical expression>.…
ELSE.…
ENDIF.
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.2 ABAP Statements and Data Declarations2.2 ABAP Statements and Data Declarations
5. Structures
정의 DATA <name> TYPE <structure_type>. TABLES <ABAP-Dictionary-Structure>.
ex) DATA : SDYN_CONN TYPE SDYN_CONN TABLES : SDYN_CONN. ( 가능하면 이 문장을 이용한다 .)
* Open SQL 을 사용하지 않으면 database 단의 data 핸들 못 한다 .
•Assigning values field for field
• MOVE-CORRESPONDING <rec1> TO <rec2>.
• rec1, rec2 는 structure type 을 가져야 한다 .
• 순서는 상관없이 일치하는 field 명에 대해서만 대입한다 .
• MOVE A TO B : 무조건 순서대로 대입
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.2 ABAP Statements and Data Declarations2.2 ABAP Statements and Data Declarations
6. Internal Tables
정의 : Data 를 쌓아 놓게 해 놓은 내부 테이블 . Run time 시만 존재 .
• Internal Table 종류
실습 2. Table Type 만들기
종류Access
With index
Access
With Key
Unique/Non Unique key
Access
UsingStandard tables
Sorted tables
Hashed tables
Non Unique
Unique / non-unique
Unique
Mainly Index
Mainly Keys
Keys Only
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.2 ABAP Statements and Data Declarations2.2 ABAP Statements and Data Declarations
6. Internal Tables
정의 : Data 를 쌓아 놓게 해 놓은 내부 테이블 . Run time 시만 존재 .• internal table 에서 Single record 다루는 법
•APPEND <wa> TO <it>.•INSERT <wa> INTO <it> <condition>.•READ TABLE <it> INTO <wa> <condition>.•MODIFY TABLE <it> <cond>.•DELETE <it> <cond>.
• Internal table 에서 multiple record 읽는 법 .• Loop 이용 : IT 를 바로 출력할 수 없고 WA 를 사용해야 함
LOOP AT IT INTO WA.WRITE:/ WA-CARRID, WA-CONNID.
ENDLOOP.
• Index 를 이용READ TABLE IT INTO WA INDEX 3. “3 번째 레코드를 읽음WRITE:/ WA-CARRID, WA-CONNID.
• Key 를 이용READ TABLE IT INTO WA.WITH TABLE KEY CARRID = ‘LH’.IF SY-SUBRC = 0. “ 0 – SUCCESSFUL, 기타 - EXCEPTION
WRITE:/ WA-CARRID, WA-CONNID.ENDIF.
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.2 ABAP Statements and Data Declarations2.2 ABAP Statements and Data Declarations
6. Internal Tables
Header line 을 가지는 internal table.
사용예 )APPEND <itab>.LOOP AT <itab>.
* SAP 에서는 header line 이 없는 internal table 을 쓸 것을 recommend 한다 .
DATA : <itab> TYPE <itabtype> [WITH HEADER LINE].
7. ABAP Statement Attribute
Message 쓰는 법SE91 (Message Class 생성 )ID(number) 관리Program 내에서 사용
MESSAGE (ZXXX) with OO.
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.2 ABAP Statements and Data Declarations2.2 ABAP Statements and Data Declarations
7. ABAP Statement Attribute
Message 쓰는 법 SE91 (Message Class 생성 ) ID(number) 관리 Program 내에서 사용
(A, X 는 roll-back 에서 쓰임 ) A : termination X : short dump E : error W : warning I : information S : success
: Message ID(000~999) (ZXXX) : message class 메세지 변수는 4 개 까지만 사용 .
MESSAGE (ZXXX) with OO.
실습 3. Message 작성
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.3 Database Dialog I2.3 Database Dialog I
Reading Database Tables
1) Select 문
2) Open sql 문장은 database interface 에 의해 database-specific 한 SQL 문으로 변경된다 .
3) Single Record 처리
• Select single * 문장의 경우 where 절에 key field 가 모두 쓰여졌을 경우 , 즉 unique entry 의 경우 사용 .
• ENDSELECT 사용 안함 .
• Work area 에 넣기 위해서는 INTO절 사용 .
• CORRESPONDING FIELDS OF : into 다음에 사용 . 구조가 틀리더라도 이름이 같은 field 와 매칭시켜 넣어줌 .
• SELECT single 이 SELECT 보다 퍼포먼스가 좋다 .
SELECT <result> FROM <table> INTO <destination> WHERE <condition>.…ENDSELECT.
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.3 Database Dialog I2.3 Database Dialog I
4) Array Fetch
• INTO TABLE <itab> : internal table <itab> 으로 곧 바로 insert 함 .
• ENDSELECT 가 필요 없다 .
• 가장 퍼포먼스가 좋다 .
5) Reading multiple database tables
1) Methods of global classes
2) Methods of business object
3) Function group
4) Logical DB
SELECT <field1>, <field2> FROM <table> INTO TABLE <itab> WHERE <condition>.
실습 4. Single record ,select loop, Array fetchAuthority-check 사용법
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.4 Internal Program Modularization2.4 Internal Program Modularization
1) Processing block 은 ABAP 에서 가장 작은 단위이다 .
종류
• Event blocks
• Subroutine
• Modules
2) Event block 과 selection screen
• 필드 길이 : PARAMETERS 는 8, DATA 는 30 자리까지 가능
PARAMETERS: pa_date LIKE sy-datum “ 시스템 필드와 Data object 는 LIKE 를 사용
DEFAULT sy-datum. " 초기값을 줄 때 사용
INITIALIZATION. "selection screen 나오기 전 변수값 변경하기 위해 사용 .
pa_date = pa_date - 7.
START-OF-SELECTION.
WRITE:/ pa_date.
ABAP event blocks
Event Block
Event Block
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.4 Internal Program Modularization2.4 Internal Program Modularization
3) ABAP runtime 실행 순서
a) INITIALIZATION 을 부른다 .
b) Presentation server 로 selection screen 을 보낸다 .
c) START-OF-SELECTION 을 call 한다 .
d) Write, skip, uline 과 같은 문장이 있으면 START-OF-SELECTION 은 list buffer 를 채우게 된다 .
e) List buffer 의 내용이 순서로 화면에 보내짐 .
Event block 의 순서는 ABAP runtime 이 제어 .
Default event block : START-OF-SELECTION.
4) Subroutine interface
Interface parameters it accesses(read-only) : USING 뒤에 사용
Interface parameters it changes : CHANGING 뒤에 사용
PERFORM <subroutine name> USING a1 CHANGING a2 a3.
FORM <subroutine name> USING value(fv1) value(fv2) fr3.
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.4 Internal Program Modularization2.4 Internal Program Modularization
3) 파라미터 call 하는 방법
a) Perform 문에서 선언한 변수들은 1 대 1 로 FORM 문에 매칭된다 .
b) Calling by reference
• Actual parameter 의 address 가 call 됨 .
• Variable 이 formal parameter 이름을 사용하여 address 됨 .
• 변경된 값이 global variable 에 즉각 반영됨 .
• Using 이나 changing 뒤에 value 가 없을 경우 .
c) Calling by value
• actual parameter 값이 formal parameter 값으로 복사되고 , actual parameter 값은 변하지 않음 .
• Form 에서 using뒤에 value 가 올 경우 .
d) Calling by value and by result
• actual parameter 값이 formal parameter 값으로 복사되고 , ENDFORM 을 만날 때 formal parameter 값이 actual parameter 값으로 돌려줌 .
• Changing뒤에 value 가 올 경우 .
실습 5. Subroutine 예제
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.5 User Dialog : Lists2.5 User Dialog : Lists
1) Text symbol 을 사용하면 여러 언어로 표시 가능하며 반복되는 text도 입력이 가능 .
TEXT-<xxx>
‘<text>’(<xxx>)
2) Basic list -> Detail list 보는 3 가지 방법
Line 에 위치 후 double-clicking
Line 에 위치 후 F2 키
Line 에 위치 후 ‘ PICK’ 버튼
실습 6. List 프로그램 예제
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.6 User Dialog : Selection Screens2.6 User Dialog : Selection Screens
Entering selection
범위 지정 : 녹색은 포함 , 적색은 제외
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.6 User Dialog : Selection Screens2.6 User Dialog : Selection Screens
Select - options
SELECT-OPTIONS <name> FOR <data object>.
• name 은 헤더를 가진 internal table임 .
SELECT <field> FROM <table> INTO <wa> WHERE <field> IN <name>
-> Select-options 를 사용하면 IN 을 사용
• Internal Table 구조
- sign : 포함 또는 배제 코드 (예 . I / E)
- option : 연산자 (예 . GE, LE, NE, BT 등 )
- low : 범위의 최저값 또는 단일값
-high : 범위의 최대값
Selection screen events
Selection screen 은 INITIALIZATION event block 이후에 표시
AT SELECTION-SCREEN : data type 이 맞으면 시스템이 이 screen 실행
User 가 execute 선택하면 START-OF-SELECTION 실행
실습 7. Selection screen 예제
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.7 User Dialog : Screens2.7 User Dialog : Screens
Module pool program 사용법
1. SE80/SE51(T-CODE) 에서 프로그램명을 SAPMZxxx 로 생성 (with TOP include 체크 )
2. Include program 들을 생성
i. Include _______TOP ( 선언부 )
ii. * Include _______O01 (PBO 처리부 )
iii. * Include _______i01 (PAI 처리부 )
iv. * Include _______F01 (subroutine 처리부 )
v. * Include _______E01 (Event 처리부 )
* 된 것을 삭제하고 v 는 추가해준다 .
3. Transaction code 생성 (SE93) or other object 에서 zxxx 로 생성 .
1. Normal screen type 으로 생성 (100 번 단위 )
2. Element list 내에서 OK_CODE 입력
3. Program 의 Include ____TOP 내에서 OK_CODE 정의
Ex) DATA:OK_CODE like sy-ucomm,
SAVE_OK like OK_CODE.
* ok_code 는 user 가 누른 function code 를 저장하기 위한 변수이다 .
Screen 들을 Module pool program 에 붙이는 법
실습 8.Module pool 예제
문서명 : SAP ABAP 전달교육 문서번호 : V-Project 지원팀 -200212-1
개정일 : 2002.11개정차수 : v1_r1_m1
2.8 Reuse components2.8 Reuse components
Reuse components 종류Object, Function Group, Business object, LDB(LogicalDatabase)
• Function group 구성 : Data objects, Subroutines, Screen• Function Module : 파라미터가 interface 에 pass 됨 . Import parameters, Export
parameters, Changing parameters, Exceptions element 로 구성• BAPIs : Business Object Repository 를 사용할 수 있게 하는 business object 의 method.• LDB : Executable program 과 결합하는 data collection program. Data 는 계층구조를 갖고
transfer 됨 . Selection screen 을 만들 수 있으며 권한체크를 할 수 있음 .
• LDB 특징 ( 확인은 SE36 에서 )• SAP 이 제공하는 특별한 data collection programs.• Database 에서 논리적으로 구성된 데이터를 읽기 위해 사용함 .• 테이블의 hierarchy 를 갖는 structure 를 갖는다 .• Performance 를 높여 준다 .• Dynamic selection screen 을 제공한다 .• 권한체크를 할 수 있음 .• 하나의 프로그램에는 하나의 LDB 를 붙일 수 있다 .• LDB 에서는 테이블을 Node 라고 한다 .• Nodes 의 기능 : 1. Work Area 의 역할 , 2. Selection screen 효과
NODES: <node> <node>.
GET GET <node> FIELDS <field> <field>.
WRITE:/ <field>, <field>, <field>.