SAP에서 백그라운드 작업(Background Job)은 사용자가 GUI 화면을 통해 작업하는 포그라운드 작업과 달리 SAP 시스템의 백그라운드에서 수행되는 작업을 말합니다.
백그라운드 작업은 정상적인 작업에는 영향을 주지 않고 정해진 시간에 작업을 수행할 수 있습니다.
백그라운드 작업은 여러가지 이점을 가지고 있습니다.
- 작업시간이 긴 대량의 데이터를 집계할 때 많이 사용하게 됩니다.(업무 간소화)
- 정상적인 근무 시간에 작업하기에는 SAP 시스템 전체에 부하가 발생하는 작업을 실행해야 할 경우 근무 외 시간에 작업할 수 있도록 예약할 수 있습니다.(시스템 부하 감소)
- 여러 단계의 복잡한 트랜잭션 처리를 정해진 시간에 일괄적으로 처리(작업 자동화)할 수 있습니다.(예: 생산의 공정 실적처리, 영업의 영업문서 일괄 생성, 회계의 전표 처리 등)
이번 글에서는 SAP에서 백그라운드 작업 정의를 설정하고 예약하는 방법에 대해 알아보겠습니다.
SAP에서 백그라운드 작업 정의
– 트랜잭션코드 : SM36
1. SAP에서 백그라운드 작업을 추가로 정의하기 위해 트랜잭션코드 [SM36]을 실행합니다.
2. 아래 화면은 SM36(백그라운드 작업 정의)의 초기 화면입니다.
3. 백그라운드 작업을 구분할 [작업 이름]을 적당하게 입력하고, [작업 클래스]를 선택해 줍니다.
※ 작업 클래스에 대한 설명은 본문 하단에 별도로 정리해 놓았습니다.
4. 백그라운드 작업의 시작 시간을 지정하기 위해 [시작 조건] 메뉴를 클릭해 줍니다.
5. 시작 시간에서 [즉시], [일자/시간], [작업 후] 등의 선택 옵션이 있는데 대부분 시작 일자와 시간을 지정해서 백그라운드 작업을 정의하므로 [일자/시간]을 선택해 줍니다.
6. [일정 계획된 시간]에 백그라운드 작업이 처음 시작될 일자와 시간을 각각 지정해 줍니다.
7. 주기적으로 반복되는 작업이라면 좌측 하단의 [정기 작업]을 체크해 주고, [기간 값] 버튼을 클릭해 줍니다.
8. 기간값 선택 창에서 원하는 반복 작업 실행 기간을 선택해 줍니다.
- 시간별 : 매 시간마다 반복 실행
- 일별 : 하루에 한번 반복 실행
- 주별 : 1주일에 한번 반복 실행 (주말에 백그라운드 작업을 예약할 때 주로 사용)
- 월별 : 한달에 한번 반복 실행 (월 결산 관련 작업 및 월 데이터 집계 작업을 백그라운드로 예약할 때 주로 사용)
- 다른 기간 : 몇 개월, 몇 주, 몇 일, 몇 시간, 몇 분 단위로 반복 작업을 지정할 때 사용 (최소 1분 단위까지 지정 가능)
9 예제에서는 [일별]을 선택했습니다. ⑦[점검]을 클릭해서 오류가 없는지 확인하고 ⑧[저장] 아이콘을 클릭해서 기간값을 지정합니다.
10. 전체적인 점검을 위해 ⑨[점검]을 클릭해서 다시 한번 오류가 없는지 확인하고 ⑩[저장] 아이콘을 클릭해서 [시작 조건]을 생성합니다.
11. 실제로 작업할 프로그램을 지정하기 위해 [단계] 메뉴를 선택합니다.
사실, 작업 이름을 입력하고 엔터를 치면 [단계] 설정 화면으로 자동으로 넘어가게 됩니다. 앞에서 [시작 조건]을 먼저 설명한 것은 메뉴 순서대로 설명하기 위함 때문입니다.
12. 아래는 백그라운드 작업의 단계 생성 화면입니다.
13. [ABAP 프로그램]을 선택하고 ABAP 프로그램 이름에 실제 프로그램 이름을 입력합니다.
14. 변형이 있는 프로그램인 경우 변형도 함께 지정해 줍니다. 어떤 프로그램은 변형을 필수로 입력 받는 경우도 있습니다.
15. ABAP 프로그램과 변형을 지정하고 [점검]을 클릭해서 오류가 없는지 확인하고 [저장] 아이콘을 클릭해서 [단계]를 생성합니다.
16. 정상적으로 단계가 만들어지면 [단계리스트개요]에 리스트로 출력됩니다.
17. 단계를 더 추가해서 만들수도 있고, 만들어진 단계를 변경하거나 삭제할 수도 있습니다.
※ 단계를 추가한다는 의미는 해당 백그라운드가 실행될 때 여러 ABAP 프로그램이 실행된다는 의미입니다.
18. [이전화면(Back)] 아이콘을 클릭해서 백그라운드 작업 정의 초기화면으로 돌아옵니다.
19. 백그라운드 작업 정의 초기 화면에 계획된 시간, 작업빈도, 작업 단계가 모두 표시되는 것을 확인할 수 있습니다.
20. [저장] 아이콘을 클릭해서 백그라운드 작업을 저장하고, 작업 스케쥴에 실행합니다.
21. 백그라운드 작업이 제대로 실행되고 있는지는 트랜잭션코드 SM37을 통해 확인할 수 있습니다.
※ SAP 백그라운드 작업 상태를 확인하는 방법은 SAP에서 백그라운드 작업 상태를 확인하거나 변경, 삭제하는 방법 글에서 확인하실 수 있습니다.
SAP 백그라운드 작업 클래스(유형)
– SAP 백그라운드 작업 클래스에는 작업 우선순위를 결정하는 3가지 유형이 있습니다.
- A – 최고 우선순위 : 작업 클래스 A 작업은 상대적으로 중요한 작업이나 최우선적으로 작업해야 긴급 작업을 예약할 때 사용합니다.
- B – 중간 우선순위 : A 클래스의 작업이 완료한 후 다음으로 실행되는 작업을 예약할 때 사용합니다.
- C – 최저 우선순위 : SAP 백그라운드 작업에서 우선순위가 가장 낮은 작업 유형입니다. A 클래스, B 클래스 작업이 완료되면 실행됩니다.
※ 작업 클래스(유형)은 동시에 여러 작업이 실행되어야 할 경우 우선순위를 정하는데 사용됩니다. 하지만 대부분 백그라운드 작업 예약은 서로 다른 시간대로 정의하기 때문에 백그라운드 작업에 크게 영향을 미치지는 못합니다.
※ 함께 읽으면 도움이 될 만한 다른 포스팅 글입니다.
이 글이 도움이 되었기를 바랍니다. ^-^