[Info] SE37 - Function 관련 TAB별 내역

2018. 7. 27. 14:59SAP/ABAP

[Info] SE37 - Function 관련 TAB별 내역


T-code : SE37 에서 ABAP Function을 조회/수정/생성 할 수 있음.


Function에는 Attributes / Import / Export/ Changing / Tables / Exceptions / Source code 탭들이 있는데 각 탭별 내용 정보에 대해 정리함.



1. Attributes


Processing Type

  • Normal Function Module : 일반적으로 SAP 내부에서 사용하는 모듈 개발 시 선택함

  • Remote-Enabled Module : RFC 구성 시 선택. 이 Type이 설정된 함수를 RFC Function이라 부름.

  • Update Module : 일괄적으로 DB를 변경하기 위해 추가적인 Function을 포함하는 형태. SAP Bundling 기술의 하나임.
    1. 즉시시작 : DataBase 갱신용으로 사용 시 설정. 높은 우선순위를 가질 경우 선택. 업데이트 에러 시 다시 시작 가능.
    2. Immediate Start, No Restart : 높은 우선순위에 대해 이 옵션을 실행. 단, 업데이트를 다시 시작할 수 없음.
    3. Start Delayed : 낮은 순위의 작업에 대해 설정. 오류 발생 시 다시 시작 가능.
General Data
  • Not released
    1. Edit Lock : 최초 작성 시 체크 가능. 이 때 체크할 경우 최초 개발자만 수정이 가능함.
                    타User에 의해서 변경이 일어나는 것을 막고자 하기 위함.

    2. Global : 체크할 경우 Func.Group 내에서 I/F Parameter를 Global하게 선언함.
                 즉, Function Module내의 변수를 Func.Group의 Global 데이터로 선언하게 됨.
                 이것은 Func.Group 내에서 서브루틴에 있는 Parameter를 Access 할 수 있게 한다.
                 Func.Group내에 동일한 변수명이 존재하는지 체크해야 함.


2. Import

Function Module은 Import Parameter를 통해서 Function을 호출한 프로그램의 변수값을 받음.



  • Type : 매개변수의 타입유형을 결정. Filed로'TYPE', 'LIKE', 'TYPE REF TO' 가 있음.
             TYPE은 권장방식, LIKE는 구형방식임. TYPE REF TO는 Class를 선언할 때 사용함.

  • 참조유형 : 타입유형에 따라 참조할 특정 테이블의 필드나 데이터 유형을 지정할 수 있는 Field.

  • 기본값 : 해당 매개변수의 초기값을 설정하는 Field.

  • 선택(Optional) : 매개변수를 선택적으로 사용할 지 체크하는 필드. 선택해제를 할 경우 필수값이 됨.

  • Passing Value : Filed를 체크할 경우에는 해당 매개변수에 대한 값의 변경이 가능.
                        체크를 하지 않았을 경우는 매개변수 값의 변경이 불가능. ( Active시에 에러 발생함)


3. Export

Function Module 은 Exporting Parameter를 통해서 Function을 호출한 프로그램에 값을 전달함.

Function Module내에서 값을 변경할 수 있음. Exporting Parameter로 선언하는 것은 선택사항임.


4. Changing

Function을 호출한 프로그램과 Parameter를 동시에 주고 받을 수 있음.

Changing Parameter를 통해 Import된 값을 Changing Parameter를 호출한 프로그램에 다시 Return하게 됨.

Function Module 내에서 값을 변경할 수 있으며 선언여부는 선택사항임.


5. Tables

Tables Parameter는 하나의 값이아닌 복수의 값, 즉 Internal Table의 내용을 주고 받을 수 있음.

Table은 ABAP Dictionary에 존재하는 Table, 구조체 이거나 Type Pool에 존재하는 구조체 Type이어야 함.


6. Exceptions

Exception Parameter를 사용하면 Function Module이 실행되는 동안 발생하는 예외 사항을 핸들링할 수 있음.

수행도중 시스템에 에러가 발생할 경우 Function Module은 더 진행 하지 않고 멈춤. 

그러나 Exception을 정의하여 사용하는 경우, 해당 Exception을 SY-SUBRC에 할당시켜서 핸들링 가능.


실질적인 나머지 사항은 Function 생성 후 확인해 보는 걸로....