배치 잡 = 일괄처리
빽잡 = 뒷 서버에서 돌아가는거 ( 벡그라운드 잡 )
잡 카탈로그 란 ? = 비즈니스 로직을 정의 해 놓은 객체
스케줄 기능을 등록해 놓은 것이 바로 잡 카탈로그 entry
배치잡 관련한 패키지 위치나 코딩을 보자면
일단 배치잡 돌리려면 이클립스에서 기본 셋팅이 되어야함
배치잡은 따로 cts 딸 필요없음

저 파란구슬 같은거 필요함
이런 구조로 Application Job 과 Job Templates 가 필요하다
( 원래 핸들러만 돌려서 처리할라했는데 메시지 처리가 안되어서 백잡을 돌리기로함 )
지금 만든 RAP001 은 핸들러에서 배치잡을 불러옴
그 배치잡 클래스를 런치패드에 등록해서 스케줄을 돌릴 수 있음
런치패드 안에서 클래스 등록과 스케줄 설정 가능.

클래스에서 돌릴때 이 인터페이스 두개도 필요함
잡 돌릴때 많이 들 쓰는 변수
DATA lv_job_text TYPE cl_apj_rt_api=>ty_job_text VALUE 'Demo_Job'.
DATA lv_template_name TYPE cl_apj_rt_api=>ty_template_name.
DATA ls_start_info TYPE cl_apj_rt_api=>ty_start_info.
DATA ls_scheduling_info TYPE cl_apj_rt_api=>ty_scheduling_info.
DATA ls_end_info TYPE cl_apj_rt_api=>ty_end_info.
DATA lt_job_parameters TYPE cl_apj_rt_api=>tt_job_parameter_value.
DATA ls_job_parameters TYPE cl_apj_rt_api=>ty_job_parameter_value.
DATA ls_value TYPE cl_apj_rt_api=>ty_value_range.
DATA lv_jobname TYPE cl_apj_rt_api=>ty_jobname.
DATA lv_jobcount TYPE cl_apj_rt_api=>ty_jobcount.
DATA lv_status TYPE cl_apj_rt_api=>ty_job_status.
DATA lv_statustext TYPE cl_apj_rt_api=>ty_job_status_text.
이런 변수 써주는데 cl_apj_rt_api는 SAP 환경에서 'Application Job'(백그라운드 작업)을 프로그램 코드로
제어하기 위한 표준 API 클래스
써주면 Scheduling , Monitoring , Cancellation , 로그 확인 같은걸 쓸 수 있게 해줌
[핵심 메서드]
schedule_job : 준비한 파라미터와 시간을 가지고 작업을 실제로 예약한다.
get_job_status : 발급된 Job Name과 ID를 넣어 현재 상태를 가져온다.
cancel_job : 아직 실행되지 않은 작업을 리스트에서 삭제한다.
에러 처리 부분
TRY.
" 1. 잡 예약 시도
cl_apj_rt_api=>schedule_job( ... ).
CATCH cx_apj_rt INTO DATA(lx_error).
" 2. 에러가 나면 여기로
" lx_error->get_text( ) 를 통해 왜 실패했는지 이유를 알 수 있음
DATA(lv_error_message) = lx_error->get_text( ).
ENDTRY.
CATCH cx_apj_rt를 써주면 프로그램이 죽지 않고 안전하게 다음 로직으로 넘어갈 수 있음
PS. 이렇게 설정 안해도 따로 Gui 안에서도 딸 수 있음
티코드는 sm36 과 sm37
custom cds view Detail
'SAP HANA CLOUD' 카테고리의 다른 글
| [SAP CAP] 트라이얼 처음 셋팅과 기본적인 틀 (1) | 2026.01.23 |
|---|---|
| [SAP RAP] Draft 테이블만 따로 만드는법 (0) | 2026.01.23 |
| [SAP RAP] Exit 사용방법 (0) | 2026.01.14 |
| [SAP RAP] 메세지 띄우기 (0) | 2026.01.14 |
| [SAP RAP] Value help 넣는 방법 (0) | 2026.01.13 |