-
[ABAP] EnhancementABAP 2024. 2. 19. 18:47
Enhancement 란?
: SAP에서 제공하는 표준 기능을 확장하는 작업
예를 들면 SAP에서 항공편 조회 기능을 제공했다고 가정하자.
근데 조회기능에 내가 조회 조건을 추가 하고 싶다. 이럴 경우에 Enhancement를 사용한다.
Enhancement를 하는 방법은 크게 아래 단계로 나눠진다.
- 해당 표준 프로그램이 enhancement 가능한 프로그램인지 확인한다.
- enhancement 가능한 지점, exit spot을 확인한다.
- cmod를 이용한 project를 생성한다.
- 생성된 project에 2번에서 찾은 enhencement를 할당한다.
- 할당한 enhencement에 compoment를 넣고 활성화한다.
- 3번에서 생성한 project에서 원하는 추가기능을 구현한다.
sap 표준 프로그램 중
SAPBC425_FLIGHT라는 프로그램이 있다. 항공편을 조회하는 프로그램인데,
조회를 할 때 현재 날짜보다 이전 날짜를 입력 못하게 하는 로직을 추가해 보자.
1. 해당 표준 프로그램이 enhancement 가능한 프로그램인지 확인한다.
프로그램에서
위에 FIND 아이콘 클릭
Search Term에다가 Call customer-function 을 검색한다.
그럼 뭐가 막 나오는데 결과가 있으면 이 프로그램은 Enhancement가 가능한 프로그램이다.
2. enhancement 가능한 지점, exit spot을 확인한다.
tcode입력
+ 확장을 누르고
Component 이름에
EXIT_<program이름>_*
이렇게 검색하면 된다.
검색하면 이렇게 지정한곳이 나온다. short text를 보고 어떤 spot인지 확인한다.
3. cmod를 이용한 project를 생성한다.
만들어서 활성화 해
4. 생성된 project에 2번에서 찾은 enhencement를 할당한다.
아까 확인했던거 추가하자 Enhancement 버튼 클릭
아까 찾은 spot을 입력해준다.
5. 할당한 enhencement에 compoment를 넣고 활성화한다.
클릭!
sap에서 지정해준 component가 자동으로 뜬다. 더블클릭
그럼 프로그램이 생성된다. 여기다가 코딩하는게 아니라!! include 뒤에 프로그램을 더블클릭해서
그 안에서 코드를 작성한다 !
6. 3번에서 생성한 project에서 원하는 추가기능을 구현한다.
코드 다 작성하고
활성화까지 해주면 완료 !
'ABAP' 카테고리의 다른 글
[ABAP] NUMBER_RANGE 일련번호 생성하기 (0) 2024.04.22 [ABAP] 기본 TOOLBAR 제거하기 (0) 2024.04.19 [ABAP] Statement is not accessible 오류 해결 (0) 2024.02.06 [SYNC] 실습코드 개선 _ RANGE TABLE (2) 2024.01.31 [ABAP] ALV_특정 셀 색칠하기 (1) 2024.01.31