티스토리 뷰

Batch 업무는 특성상 배치 실행여부를 확인하기 위해 반환값에 의존할 수 밖에 없는데 
Proframe에서는 Batch Jop information을 지원하여 조금 더 수월하게 배치 실행 정보를 확인 할 수 있다.

배치 실행 정보는 PFM_BATCH_JOB 테이블에 기록되는데, 기본적인 status, 시간, 배치모듈 정보 외에도 
다음의 API를 사용하여 배치 성공과 실패에 대한 추가적인 정보를 기입 할 수 있다.


배치 성공시:
PfmBatchSuccessJobTable pfmBatchSuccessJobTable;
strcpy( pfmBatchSuccessJobTable.job_last_key, "100" );
pfmBatchSuccessJobTable.job_nrm_cnt = 30;
strcpy( pfmBatchSuccessJobTable.job_nrm_ctnt, "정상 처리하였습니다. " );
PFM_TRYNJ(pfmBatchSuccessJobInfo( &pfmBatchSuccessJobTable ) );

배치 실패시:

strcpy( pfmBatchErrorJobTable.job_last_key, "100" );
strcpy( pfmBatchErrorJobTable.job_err_code, "ERRR01" );
pfmBatchErrorJobTable.job_err_cnt = 70;
strcpy( pfmBatchErrorJobTable.job_err_ctnt, "에러 처리하였습니다. " );
PFM_TRYNJ(pfmBatchErrorJobInfo( &pfmBatchErrorJobTable ));




만약 정상적으로 PFM_BATCH_JOB 테이블에 기록되지 않았다면 다음 2가지 정보를 확인 해야한다.

  • 배치 Job Information 정보를 데이터베이스 테이블에 삽입하는 서버가 정상적으로 동작 하는지 확인한다.

 
배치 Job Information 을 처리하는 서버와 서비스
서버명
TPFMADM03
서비스명
PFMADMSVC31

주의할점: TPFMADM03 서버가 2개 이상 떠있고 같은 배치 모듈을 연속적으로 실행했을때 나중에 실행된 배치의 job information이 먼저 DB에 기록되어 먼저 실행된 배치의 job information이 정상적으로 기록되지 않는 현상이 발생할 수 있으므로 TMAX 설정에서 TPFMADM03 서버는 min, max 값을 1로 가져가야한다.

  • 배치 파라미터 테이블에 “JOB_INFO_FLAG” 값이 “1” 설정되어 있는지 확인한다. 배치 파라미터로 배치 Job Information 동작 여부를 확인할 있으며, 만약 동작하지 않도록 설정되어 있다면 배치 파라미터의 값을 변경하여 테스트할 있다.



댓글