Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
/* JSMDIRECT 終了プログラム */
 
PGM PARM(&EVENT &SERVICE &SERVERHOST &HOST &PORT +
         &REMOTEUSER &REMOTEADDR &CONTINUE &MESSAGE)
 
DCL VAR(&EVENT)      TYPE(*CHAR) LEN(10)
DCL VAR(&SERVICE)    TYPE(*CHAR) LEN(30)
DCL VAR(&SERVERHOST) TYPE(*CHAR) LEN(80)
DCL VAR(&HOST)       TYPE(*CHAR) LEN(80)
DCL VAR(&PORT)       TYPE(*CHAR) LEN(5)
DCL VAR(&REMOTEUSER) TYPE(*CHAR) LEN(30)
DCL VAR(&REMOTEADDR) TYPE(*CHAR) LEN(45)
DCL VAR(&CONTINUE)   TYPE(*CHAR) LEN(1)
DCL VAR(&MESSAGE)    TYPE(*CHAR) LEN(256)
 
DCL VAR(&JOBNAME)   TYPE(*CHAR) LEN(10)
DCL VAR(&JOBUSER)   TYPE(*CHAR) LEN(10)
DCL VAR(&JOBNUMBER) TYPE(*CHAR) LEN(6)
DCL VAR(&JOBCMD)    TYPE(*CHAR) LEN(50)
DCL VAR(&JOBMSG)    TYPE(*CHAR) LEN(100)
DCL VAR(&JOBCHGSTS) TYPE(*CHAR) LEN(7) VALUE(OK)
 
DCL VAR(&TMPLIB)     TYPE(*CHAR) LEN(10)
DCL VAR(&TMPLIBPOS)  TYPE(*DEC)  LEN(5)
DCL VAR(&TMPLIBLIST) TYPE(*CHAR) LEN(2000)
 
DCL VAR(&CTIME)     TYPE(*CHAR) LEN(6)
DCL VAR(&REQUESTID) TYPE(*CHAR) LEN(24)
 
MONMSG MSGID(CPF0000) /* ライブラリを取得 */
RTVDTAARA  DTAARA(JSMDRTDTA (1 2000))  RTNVAR(&TMPLIBLIST)
 
IF COND(&EVENT *EQ 'ENTRY') THEN(DO)
  /  CONTINUE のデフォルト値は 'Y' /
  /* CHGVAR VAR(&CONTINUE) VALUE('N') */
  /* CHGVAR VAR(&MESSAGE)  VALUE('I do not know you') */
  /* GOTO END */
 
  / *現在のサービスのジョブを準備 */
  /* CALLSUBR SUBR(LOGSTR) */
  CALLSUBR SUBR(ADDLIB)
  GOTO END
ENDDO
 
IF COND(&EVENT *EQ 'EXIT') THEN(DO)
  / *次のサービスのジョブを復元 */
  CALLSUBR SUBR(RMVLIB)
  /* CALLSUBR SUBR(LOGEND) */
  GOTO END
ENDDO   

IF COND( %SUBSTRING (&EVENT 1 3) *EQ 'ERR') THEN(DO)
  / *エラー・のログ */
  CALLSUBR SUBR(LOGERR)
  CALLSUBR SUBR(RMVLIB)
  /* CALLSUBR SUBR(LOGEND) */
  GOTO END
ENDDO