PGM PARM(&USER &PASSWRD &PRFHND &CURHND) /*---------------------------------------------------------*/ /* LOGIN : 仮想ログイン */ /*---------------------------------------------------------*/ DCL VAR(&MSG) TYPE(*CHAR) LEN(80) DCL VAR(&USER) TYPE(*CHAR) LEN(10) DCL VAR(&PASSWRD) TYPE(*CHAR) LEN(48) DCL VAR(&CURHND) TYPE(*CHAR) LEN(12) DCL VAR(&PRFHND) TYPE(*CHAR) LEN(12) MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(ERROR)) /*( 現在のユーザーでのハンドルを保存 )*/ CALL PGM(QSYS/QSYGETPH) PARM('*CURRENT ' + &PASSWRD &CURHND) /*( 新しいユーザーでのハンドルを取得してセッションを開始 )*/ CALL PGM(QSYS/QSYGETPH) PARM(&USER &PASSWRD &PRFHND) CALL PGM(QSYS/QWTSETP) PARM(&PRFHND) RETURN ERROR: RCVMSG RMV(*NO) MSG(&MSG) SNDMSG: SNDPGMMSG MSG(&MSG) MSGTYPE(*DIAG) ENDPGM