Page History
...
以下のライフ・サイクル・イベントが発生すると、JSMADMIN プログラムは CL プログラム JSMADMEXT を呼び出します。
ENTRY | プログラムが開始します。 |
EXIT | プログラムが正常に終了します。 |
ERRnnnn | nnnnは、4000で始まる4桁の数字です。 |
この終了プログラムのソース・コードは、JSMライブラリのQCLSRCに保管されます。
| Code Block |
|---|
/* JSMADMIN 終了プログラム */ |
...
...
PGM PARM(&EVENT &SERVICE &SERVERHOST &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(&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) |
...
...
MONMSG MSGID(CPF0000) |
...
...
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 |
...
ENDDO |
...
...
IF COND(&EVENT *EQ 'EXIT') THEN(DO) |
...
GOTO END |
...
ENDDO |
...
...
IF COND(%SUBSTRING (&EVENT 1 3) *EQ 'ERR') THEN(DO) |
...
/*エラー・イベントのログ */ |
...
CALLSUBR SUBR(LOGERR) |
...
GOTO END |
...
ENDDO |
...
...
/* =================================================================== */ |
...
/* サブルーチン */ |
...
/* =================================================================== */ |
...
...
SUBR SUBR(LOGERR) |
...
/*エラー・イベントのログ */ |
...
SNDPGMMSG MSG('------- JSMADMIN ERROR -------') |
...
SNDPGMMSG MSGID(CPF9897) MSGF(QCPFMSG) MSGDTA(&EVENT) |
...
SNDPGMMSG MSGID(&EVENT) MSGF(JSMMSGF) |
...
...
SNDPGMMSG MSGID(CPF9897) MSGF(QCPFMSG) MSGDTA(&SERVICE) |
...
SNDPGMMSG MSGID(CPF9897) MSGF(QCPFMSG) MSGDTA(&SERVERHOST) |
...
SNDPGMMSG MSGID(CPF9897) MSGF(QCPFMSG) MSGDTA(&REMOTEUSER) |
...
SNDPGMMSG MSGID(CPF9897) MSGF(QCPFMSG) MSGDTA(&REMOTEADDR) |
...
SNDPGMMSG MSG('------------------------------') |
...
ENDSUBR |
...
...
END: ENDPGM |
...