오랫만에 글을 쓰는데 쓸때마다 느끼는 거지만
정말로 이 편집기로 글을 쓴다는것은 많은 인내심을 요함니당. ㅜㅜ.
아래의 내용은 Function에 대해서 어느정도 사용해 본 후 읽어보면 도움이 됩니다.
물론 저같은 초보자 분들도 도움이 되시길 기대합니다.
반응이 좋으면 다음에 ABAP Dic을 정리해 보도록 하겠습니다.
Function | |||
Function을 만들기전 사전배경지식 | |||
Function 만들기 / Function은 기본적으로 Global 속성을 가지고 있다 call by value를 기본으로 동작하게 되어있다. | |||
Function 구성내역 공간구분) |
ZFM (펑션명) |
LZFMTOP(자동생성) |
Function Group내에서 사용될 Global변수 선언 |
LZFMI01(화면생성후 PAI에 의해 생성) |
Screen 추가 후 PAI를 더블클릭하면 만들수 있다 | ||
LZFMO01(화면생성후 PBO에 의해 생성) |
Screen 추가 후 PBO를 더블클릭하면 만들수 있다 | ||
LZFMUXX(자동생성_작동작성) |
Function Group내에서 Function Module 작성시 코드를 집합함 | ||
LZFMU01(자동생성) |
Function Module작성하면 해당 코드가 저장될 부분으로 자동지정된다 | ||
LZFMU02(자동생성) |
순서대로 자동채번됨. | ||
............... |
순서대로 자동채번됨. | ||
LZFMU99(자동생성) |
순서대로 자동채번됨. |
Function Module 구성표 | ||||
Tab명칭 |
Frame명칭 |
항목명 |
상세항목명 |
설명 |
Attributes |
Classification |
Function Group |
Function Module이 속해있는 그룹을 알려준다. | |
Short Text |
Function Module의 설명을 넣는다. | |||
Processing Type |
Normal Function Moudle |
일반적으로 SAP 내부에서 사용하는 모듈개발시 선택한다 | ||
Remote-Enabled Moudle |
RFC 구성시 선택한다 | |||
Update Module (Bunding 기술선택) |
즉시시작 |
Database 갱신용으로 사용시 설정한다. | ||
Immediate Start, No Restart |
Subroutine의 경우 on commit 으로 할수 있으나 Function은 해당 | |||
|
사항이 없으므로 이설정을 이용하여 bunding할 수 있도록한다 | |||
일괄실행 |
||||
General Data |
Last Changed By |
최근 작성자 | ||
Changed On |
최근 갱신일 | |||
개발클래스 |
소속 개발클래스 | |||
Program Name |
프로그램명 | |||
Include Name |
Include name (실제 Inculde된 저장공간을 말한다) | |||
Original Language |
언어 | |||
Not released |
Edit Lock |
최초작성시 체크하면 최초개발자 만이 수정할수 있다 | ||
Global |
모듈내에서 선언된 변수들이 Group내 Global로 설정된다 |
Tab명칭/ 부연설명 |
항목명 |
상세항목명 |
설명 |
Import Call by Value
itab의 설정방법 1)without header line만가능 2)ABAP Dic Table Type 선언방식으로만 가능 |
매개변수이름 |
DATA : pt_itab TYPE ZQMT0010. 에서 변수명 | |
Typing |
설명 |
DATA : pt_itab TYPE ZQMT0010. 에서 TYPE부분 | |
Type(권장방식임) |
Data Type을 참조하여 선언할 때 사용한다 | ||
Like(구형방식임) |
Data Object를 참조하여 선언할 때 사용한다 | ||
Type Ref To |
Class를 선언할 때 사용한다 | ||
참조유형 |
DATA : pt_itab TYPE ZQMT0010. 에서 ZQMT0010에 해당한다 | ||
기본값 |
호출자가 값을 입력하지 않았을 경우 [이값이] 들어간다 | ||
선택(Optional) |
선택을 체크하지 않으면 필수입력대상이다 | ||
Pass Value |
선택을 체크하면 파라메터 값을 변경할 수 있다 | ||
단문 |
파라메터에 설명을 넣어준다. | ||
Long Text |
|||
Export Call by Value
itab의 설정방법 1)without header line만가능 2)ABAP Dic Table Type 선언방식으로만 가능 |
매개변수이름 |
매개변수이름 | |
Typing |
Type(권장방식임) |
Data Type을 참조하여 선언할 때 사용한다 | |
Like(구형방식임) |
Data Object를 참조하여 선언할 때 사용한다 | ||
Type Ref To |
Class를 선언할 때 사용한다 | ||
참조유형 |
DATA : pt_itab TYPE ZQMT0010. 에서 ZQMT0010에 해당한다 | ||
Pass Value |
선택을 체크하면 파라메터 값을 변경할 수 있다 | ||
단문 |
파라메터에 설명을 넣어준다. | ||
Long Text |
Changing Call by Value and Result
itab의 설정방법 1)without header line만가능 2)ABAP Dic Table Type 선언방식으로만 가능 |
매개변수이름 |
매개변수이름 | |
Typing |
Type(권장방식임) |
Data Type을 참조하여 선언할 때 사용한다 | |
Like(구형방식임) |
Data Object를 참조하여 선언할 때 사용한다 | ||
Type Ref To |
Class를 선언할 때 사용한다 | ||
참조유형 |
DATA : pt_itab TYPE ZQMT0010. 에서 ZQMT0010에 해당한다 | ||
기본값 |
호출자가 값을 입력하지 않았을 경우 [이값이] 들어간다 | ||
선택(Optional) |
선택을 체크하지 않으면 필수입력대상이다 | ||
Pass Value |
선택을 체크하면 파라메터 값을 변경할 수 있다 | ||
단문 |
파라메터에 설명을 넣어준다. | ||
Long Text |
|||
Tables( 구형방식임 ) Call by Reference
itab의 설정방법 1)without header line만가능 2)ABAP Dic Table Type 참조가능 매우편리하여 버리기에 아까운 기능임 |
매개변수이름 |
||
Typing |
Type(권장방식임) |
Data Type을 참조하여 선언할 때 사용한다 | |
Like(구형방식임) |
Data Object를 참조하여 선언할 때 사용한다 | ||
Type Ref To |
Class를 선언할 때 사용한다 | ||
참조유형 |
DATA : pt_itab TYPE ZQMT0010. 에서 ZQMT0010에 해당한다 | ||
Pass Value |
선택을 체크하면 파라메터 값을 변경할 수 있다 | ||
단문 |
파라메터에 설명을 넣어준다. | ||
Long Text |
Exception |
Exception |
Exception 기호를 지정해 준다. Ex) Excp_Num1 | |
단문 |
Exception 기호에 대한 설명을 달아준다. | ||
Long Text |
|||
Source Code | |||
Exceptions 호출 |
DATA : l_fun(30), l_exc(30), l_txt(80). |