데이터베이스 처리


  1. 프로그램 개요
					
      사용자 데이터베이스를 읽어 전체 사용자에게 메세지를 발송한다.

  2. 프로그램 소스

      /*  Send Message to User  */
      PGM PARM(&msg)
          DCLF userlib/userdb RCDFMT(urec)
          DCL  VAR(&msg) TYPE(*CHAR) LEN(50)     
        DB_READ:                                        /* Label  */
          RCVF RCDFMT(urec)                                       
               MONMSG MSGID(CPF0864) EXEC(GOTO JOB_END) /* if EOF */ 
          SNDBRKMSG  MSG(&msg) TOMSGQ(&wstid)                       
                     MONMSG MSGID(CPF2469)                          
          GOTO DB_READ                                               
        JOB_END:
      ENDPGM                                                             

  3. 프로그램 해설

      1) 2행 PGM PARM(&msg)
            - 프로그램 실행시 전달할 메세지를 매개변수로 입력 받는다.
            - 변수 &msg는 4행에서 문자변수 50자리로 선언 되어 있다.

      2) 6행 RCVF RCDFMT(urec)
            - 데이터베이스를 순차적(Sequence)으로 읽는다.

      3) 7행 MONMSG MSGID(CPF0864)
            - 데이터베이스가 마지막에 도달하면 메세지 CPF0864가 발행되는데 
            - 이를 모니터링하여 EOF 조건을 처리한다.