ID #1262

IPアドレスの取得

/********************************************************************/
/* RTNIPADDR:  指定DEVICEのIPアドレスを取得                   */
/*                                                                  */
/*  COMPILE OPTIONS:                                                */
/*                                                                  */
/*    CRTCMD CMD( RTNIPADDR )                                       */
/*           PGM( RTNAPADDR )                                       */
/*           SRCMBR( RTNIPADDR )                                    */
/*           ALLOW( *IPGM *BPGM )                                   */
/*                                                                  */
/*  PARMS:                                                          */
/*    IN:     DEVD  :    *NAME LEN(10)                              */
/*   OUT:     IPADDR:    *CHAR LEN(15)                              */
/*                                                                  */
/*           RTNIPADDR  DEVD(&DEVD) IPADDR(&IPADDR)                 */
/********************************************************************/

 RTNIPADDR:  CMD        PROMPT('IPアドレスの取得')

             PARM       KWD(DEVD) TYPE(*NAME) LEN(10) DFT(*) +
                          SPCVAL((*)) MIN(0) EXPR(*YES) +
                          PROMPT('DEVICE')

             PARM       KWD(IPADDR) TYPE(*CHAR) LEN(15) RTNVAL(*YES) +
                          PROMPT('IP ADDRESS             (15)')


<< CLP >>

 RTNIPADDR:  PGM        PARM(&RTVDEV &TCPADDR)

             DCL        VAR(&RTVDEV)  TYPE(*CHAR) LEN(10)
             DCL        VAR(&TCPADDR) TYPE(*CHAR) LEN(15)
             DCL        VAR(&DEVNAM)  TYPE(*CHAR) LEN(10)
             DCL        VAR(&ERROR)   TYPE(*CHAR) LEN(4) +
                          VALUE(X'00000000')
             DCL        VAR(&PROTOCOL) TYPE(*CHAR) LEN(1) VALUE(X'02')
             DCL        VAR(&RCVVAR) TYPE(*CHAR) LEN(1024)

             IF         (&RTVDEV *EQ '*') THEN(RTVJOBA +
                          JOB(&RTVDEV))
             CHGVAR     VAR(&RCVVAR) VALUE(' ')
             CHGVAR     VAR(&TCPADDR) VALUE(' ')

             CALL       PGM(QDCRDEVD) PARM(&RCVVAR X'00000400' +
                          'DEVD0600' &RTVDEV &ERROR)
             CHGVAR     VAR(&DEVNAM) VALUE(%SST(&RCVVAR 22 10))
             IF         (&DEVNAM *NE ' ') THEN(DO)
             IF         (%SST(&RCVVAR 859 1) *EQ &PROTOCOL) +
                          THEN(DO)
             CHGVAR     VAR(&TCPADDR) VALUE(%SST(&RCVVAR 878 15))
             ENDDO
             ENDDO
             ENDPGM

タグ: -

関連エントリー: -

最終更新: 2015-02-01 11:16
製作者:
改訂: 1.4

Digg it! Share on Facebook このレコードを印刷する 友達に教える PDF ファイルで表示する
Propose a translation for Propose a translation for
この FAQ を評価してください:

評価点数: 0 (0 件の投票)

完全に役に立たない 1 2 3 4 5 最も価値がある

このエントリーにコメントできません。