/*--+------------------------------------------------------------+--*/ /*--+ PROGRAM ID : $DSPWSIP +--*/ /*--+ PROGRAM NAME : CL OF DISPLAY WORKSTATION IP ADDRESS +--*/ /*--+------------------------------------------------------------+--*/ /*--+ VERSION : 1.0 (99/02/25) +--*/ /*--+------------------------------------------------------------+--*/ PGM PARM(&WRKSTN) /*--+------------------------------------------------------------+--*/ /* + DECLARE + */ /*--+------------------------------------------------------------+--*/ /* COMMAND(DSPWSIP) PARAMETER(S) */ DCL VAR(&WRKSTN ) TYPE(*CHAR) LEN( 10 ) /* WORKSTATION ID */ /* SHARED PARAMETERS FOR THIS PROGRAM */ DCL VAR(&SH_MSG ) TYPE(*CHAR) LEN( 80 ) /* MESSAGE */ DCL VAR(&SH_SPACE ) TYPE(*CHAR) LEN( 15 ) /* SPACE */ DCL VAR(&SH_NULL ) TYPE(*CHAR) LEN( 15 ) /* NULL */ /*--+--------------------+--*/ /* + PARAMETERS FOR API + */ /*--+--------------------+--*/ /* QDCRDEVD */ DCL VAR(&QRD_RCVDTA) TYPE(*CHAR) LEN( 917 ) /* RECEIVER */ DCL VAR(&QRD_CATEGO) TYPE(*CHAR) LEN( 10 ) /* DEVICE CATEGORY */ DCL VAR(&QRD_IP ) TYPE(*CHAR) LEN( 15 ) /* IP ADDRESS */ DCL VAR(&QRD_RCVLEN) TYPE(*CHAR) LEN( 4 ) /* LEN OF RECIEVER(B) */ DCL VAR(&QRD_FORMAT) TYPE(*CHAR) LEN( 8 ) /* FORMAT NAME */ DCL VAR(&QRD_DEVICE) TYPE(*CHAR) LEN( 10 ) /* DEVICE NAME */ DCL VAR(&QRD_ERRCD ) TYPE(*CHAR) LEN( ) /* ERROR */ DCL VAR(&QRD_MSGID ) TYPE(*CHAR) LEN( 7 ) /* MESSAGE ID */ /*--+------------------------------------------------------------+--*/ /* + START OF PROGRAM + */ /*--+------------------------------------------------------------+--*/ /*--+------------------------------------------------------------+--*/ /* + INITIALIZE + */ /*--+------------------------------------------------------------+--*/ /*--+-------------------+--*/ /* + SET INITIAL VALUE + */ /*--+-------------------+--*/ /* SHARED PARAMETERS */ CHGVAR VAR(&SH_NULL ) VALUE(X'000000000000000000000000000000') /* QDCRDEVD PARAMETERS */ CHGVAR VAR(%BIN(&QRD_RCVLEN)) VALUE(917) CHGVAR VAR(&QRD_FORMAT) VALUE('DEVD0600') IF (&WRKSTN *EQ '*CURRENT') DO RTVJOBA JOB(&WRKSTN) ENDDO CHGVAR VAR(&QRD_DEVICE) VALUE(&WRKSTN) /*--+------------------------------------------------------------+--*/ /* + M A I N + */ /*--+------------------------------------------------------------+--*/ /* CALL API */ CALL PGM(QDCRDEVD) PARM(&QRD_RCVDTA + &QRD_RCVLEN + &QRD_FORMAT + &QRD_DEVICE + &QRD_ERRCD ) /*--+-----------------------------------+--*/ /* + GET IP ADDRESS FROM RECIEVED DATA + */ /*--+-----------------------------------+--*/ CHGVAR VAR(&QRD_CATEGO) VALUE(%SST(&QRD_RCVDTA 32 10)) CHGVAR VAR(&QRD_IP ) VALUE(%SST(&QRD_RCVDTA 877 15)) /* UNSUCCESSFUL */ IF (&QRD_CATEGO *NE '*DSP' *OR + &QRD_IP *EQ &SH_NULL *OR + &QRD_IP *EQ &SH_SPACE) DO CHGVAR VAR(&SH_MSG ) VALUE(&WRKSTN *BCAT + 'WAS INACTIVE. OR' *BCAT + &WRKSTN *BCAT + 'WAS NOT CATEGORY OF' *BCAT + 'DISPLAY') SNDPGMMSG MSGID(CPF9898) MSGF(QCPFMSG) MSGDTA(&SH_MSG ) + MSGTYPE(*ESCAPE) ENDDO /* SUCCESSFUL */ CHGVAR VAR(&SH_MSG ) VALUE('IP ADDRESS OF ' *BCAT + &WRKSTN *BCAT + 'WAS' *BCAT + &QRD_IP) SNDPGMMSG MSGID(CPF9898) MSGF(QCPFMSG) MSGDTA(&SH_MSG ) + MSGTYPE(*INFO) /*--+------------------------------------------------------------+--*/ /* + END OF PROGRAM + */ /*--+------------------------------------------------------------+--*/ #_EXIT_: ENDPGM