Event 호출로 백그라운드 작업 실행(Event Batch)
비동기 처리를 위한 백그라운드 작업 실행
RFC, OData 인터페이스시 비동기 처리
비동기 처리를 위해 백그라운드 작업을 만들어서 프로그램을 실행할수 있습니다.
백그라운드 작업을 동적으로 생성하면 해당 프로그램을 실행할 User ID를 동적으로 지정할수 있고 여러가지 상황에서 유연하게 활용할 수 있습니다.
2023.06.22 - [ABAP/개발Tip] - [개발Tip] 비동기 처리를 위한 백그라운드 작업 생성
[개발Tip] 비동기 처리를 위한 백그라운드 작업 생성
비동기 처리를 위한 백그라운드 작업 생성 RFC, OData 인터페이스시 비동기 처리 여러가지 이유로 SAP에서 비동기 처리를 해야 할 경우가 생기게 됩니다. (예 : 실시간 인터페이스시 SAP에서 처리 시
playabap.tistory.com
단, 단계로 등록되는 프로그램의 변형(Variant)도 작업 생성시마다 동적으로 생성되다 보니 VARI 및 TBTCO의 Variant 필드 오버플로우가 발생할 가능이 있습니다.
(실제 해당 필드의 길이가 넉넉하여 오버플로어가 발생한 가능성은 적지만 VARI 테이블 레코드가 지속적으로 증가한다는건 부담스럽긴 합니다)
User ID를 동적으로 지정할 필요가 없다면 Event에 의해 실행되는 백그라운드 작업을 등록하여, 소스코드내에서 해당 Event를 호출하여 비동기 처리를 구현할 수 있습니다.
이 경우 Variant와 Event Number가 증가되지 않습니다.
#1. Event 생성
T-Code : SM62

#2. 백그라운드 작업 등록
1) 시작 조건을 "After Event(이벤트 후)"로 선택 후 SM62에서 생성한 Event ID를 입력
- Event : SM62에 생성한 Event ID
- Parameter : 공란 (Event를 호출하는 소스코드내에서 Parameter 값 입력하기 위해)
- Periodic Job : 체크

1) Step(단계)에 실행할 리포트 프로그램 입력
- User : 프로그램을 실행할 ID
- ABAP Program : 실행할 프로그램과 Variant 입력

#3. 프로그램내에서 Event 호출
#4. 백그라운드 작업에 등록한 프로그램에서 Event 정보 조회
#테스트 결과
1) 이벤트 호출

2) 이벤트 배치 작업 결과

3) 이벤트 배치에 등록된 프로그램의 실행 결과

'ABAP > 개발Tip' 카테고리의 다른 글
[개발Tip] CL_GUI_COLUMN_TREE 사용 방법 (0) | 2023.10.16 |
---|---|
[개발Tip] CL_GUI_SIMPLE_TREE 사용 방법 (0) | 2023.10.16 |
[개발Tip] ALV Field catalog(필드 카탈로그) 만드는 3가지 방법 (0) | 2023.08.25 |
[개발Tip] RESTful API 호출 2가지 방법(CL_HTTP_CLIENT, CL_REST_HTTP_CLIENT) (0) | 2023.06.28 |
[개발Tip] REPLACE의 REGEX (정규표현식)를 이용한 특수문자 제거 (0) | 2023.06.22 |
댓글