설치 검증

본 장에서는 OpenFrame Batch(이하 Batch) 설치 후, COBOL을 활용하여 설치가 정상적으로 완료되었는지를 검증하는 방법을 설명한다.

1. 개요

Batch 시스템은 JCL로 작성된 JOB을 실행하기 위한 시스템이며 메인프레임에서 실행되던 Batch JOB을 동일하게 실행하는 TJES 환경을 제공한다.

2. 설치 검증 절차

  1. 서버 기동

    tmadmin 툴을 이용해 Batch JOB을 수행하기 위한 서버가 기동되어 있는지 확인한다.

    $ tmadmin
    --- Welcome to Tmax Admin (Type "quit" to leave) ---
    
    $$1 NODE1 (tmadm): si
    ------------------------------------------------------------------------
      clh   svrname    (svri)   status     count   qcount   qpcount  emcount
    ------------------------------------------------------------------------
        0   TPFMAGENT  (   4)      RDY         0        0         0        0
        0   ofrsasvr   (   5)      RDY         0        0         0        0
        0   ofrlhsvr   (   6)      RDY         0        0         0        0
        0   ofrdmsvr   (   7)      RDY         0        0         0        0
        0   ofrdsedt   (   8)      RDY         0        0         0        0
        0   ofrcmsvr   (   9)      RDY         0        0         0        0
        0   ofruisvr   (  10)      RDY         0        0         0        0
        0   ofrsmlog   (  11)      RDY         0        0         0        0
        0   obmjmsvr   (  12)      RDY         0        0         0        0
        0   obmjschd   (  13)      RDY         1        0         0        0
        0   obmjinit   (  14)      RDY         2        0         0        0
        0   obmjhist   (  15)      RDY         0        0         0        0
        0   obmjspbk   (  16)      RDY         0        0         0        0
        0   ofrpmsvr   (  17)      RDY         0        0         0        0
        0   obmtsmgr   (  18)      RDY         0        0         0        0
        0   obmjtimr   (  19)      RDY         0        0         0        0
  2. COBOL 작성

    문자열을 출력하는 COBOL을 작성한다. COBOL 작성 후 해당 코드를 NetCOBOL을 통해 컴파일한 후 등록한다. 예시는 다음과 같다.

           IDENTIFICATION                     DIVISION.
           PROGRAM-ID.                        COBOLA.
           AUTHOR.                            COBOLA.
           ENVIRONMENT                        DIVISION.
           DATA                               DIVISION.
           WORKING-STORAGE                    SECTION.
           PROCEDURE                         DIVISION.
    
           DISPLAY '  ***   BATCH JOB TEST   *** '.
  3. JCL 작성

    COBOLA(COBOL PROGRAM)을 호출하는 JCL을 작성한다. 예시는 MVS 문법 기준으로 다음과 같다.

    //TEST JOB
    //JOBLIB DD DSN=PROD.BATCHLIB,DISP=SHR
    //STEP01 EXEC PGM=COBOLA
    //SYSOUT DD SYSOUT=*
  4. JOB Submit

    tjesmgr RUN 옵션을 사용해 JOB을 submit 한다. submit을 하게 되면 JOB은 START 상태로 JOBQ에 적재되고, PS 명령어를 통해 JOBQ에 적재된 JOB을 확인할 수 있다.

    tjesmgr RUN TEST NODE=NODE1
    
    >
    Command : [RUN /home/binstall64/OpenFrame/volume_DEFVOL/SYS1.JCLLIB/TEST NODE=NODE1]
    Node name : NODE1
    (JOB00405) /home/binstall64/OpenFrame/volume_DEFVOL/SYS1.JCLLIB/TEST is submitted as TEST(JOB00405).
  5. 정상 동작 확인

    tjesmgr 툴의 옵션을 통해 JOB Status를 확인하고 정상 동작하는 것을 확인한다.

    • tjesmgr PSJ [JOBID] 명령어를 통해 JOB이 Done(R00000)으로 종료된 것을 확인한다.

      JOB  ID    : JOB00405      NODE NAME  : NODE1
      JOBG NAME  : SYSGRP        JOB  NAME  : TEST
      JOB  CLASS : A , JOB STATUS : Done(R00000) , JOB PRTY : 0 , JCLRUNNER INDEX : 0
      JOB  USER  : ROOT
      JCL  PATH  : /home/binstall64/OpenFrame/volume_DEFVOL/SYS1.JCLLIB/TEST
      TIME STAMP : READY : 20250701/18:18:32, START : 20250701/18:20:05
                                              END   : 20250701/18:20:07
      RES  USAGE : PROCESS - 2s CPU - (0s,0%)  MEM - 0Byte
      
      STEP LIST  :
      -
      [        ] START : 20250701/18:20:06, RC=R0000, CPU - 0s (0s)
      -
      
      SPOOL LIST :
      -
      NO  STEP              DDNAME       SIZE  DSNAME
      -
      0   -                 INPJCL          88 INPJCL
      1   -                 SYSMSG          1K SYSMSG
      2   -                 CATPROC         88 CATPROC
      3   -                 CONVJCL        723 CONVJCL
      4   -                 CONMSG         665 CONMSG
      5   -                 JESMSG         582 JESMSG
      6   -                 JESJCL         1K  JESJCL
      7   STEP01            SYSOUT         1K  oframe3.TEST.JOB00405.D000001
      -
      
      OUTPUT PROCESSING STATUS : all outputs were processed
    • tjesmgr PODD [JOBID] [DI=<dd-index> | DN=<dd-name>] 명령어를 통해 COBOL에서 출력한 DISPLAY문이 정상 수행되었는지 확인한다.

         ***   BATCH JOB TEST   ***