CL Parameters Example


/********************************************************************/
/*                                                                  */
/* This program has three parameters:                               */
/*                                                                  */
/*    1) Input/output parm.  This is a 20 byte character field.     */
/*       Replace the first 10 bytes of the field with our value.    */
/*                                                                  */
/*    2) Input parm.  This is a two byte binary number.             */
/*                                                                  */
/*    3) Output parm.  This is a two byte binary number.  Its       */
/*       value is parm 2 + 1.                                       */
/*                                                                  */
/********************************************************************/
QSYS/PGM PARM(&PARM1 &PARM2 &PARM3)
QSYS/DCL   VAR(&PARM1) TYPE(*CHAR) LEN(20)       /* I/O PARM        */
QSYS/DCL   VAR(&PARM2) TYPE(*CHAR) LEN(2)        /* INPUT PARM      */
QSYS/DCL   VAR(&PARM3) TYPE(*CHAR) LEN(2)        /* OUTPUT PARM     */
QSYS/CHGVAR VAR(%SST(&PARM1 1 10)) VALUE('Testing 3 ')
QSYS/CHGVAR VAR(%BINARY(&PARM3 1 2)) +
            VALUE(%BINARY(&PARM2 1 2) + 1)
ENDPGM