EXAM0036 is the shipped RPG example - Programming Examples -> Introductory Examples -> Commands.
Here it is as CL program –the compile command is comments at beginning ...........
Code: Select all
/* ===================================================================== */
/* CRTCLMOD MODULE(LRNG_DEMO/EXAM0036L) + */
/* SRCFILE(LRNG_DEMO/SOURCEEXAM) TGTRLS(V5R3M0) */
/* CRTPGM PGM(LRNG_DEMO/EXAM0036L) BNDDIR(LRNGSRV) + */
/* TGTRLS(V5R3M0) ACTGRP(*CALLER) */
/* ===================================================================== */
PGM PARM(&REQACTION &REQPROGRAM &SAVEDSTATE &SYSTEMINFO)
/* Parameters */
DCL VAR(&REQACTION) TYPE(*CHAR) LEN(32)
DCL VAR(&REQPROGRAM) TYPE(*CHAR) LEN(10)
DCL VAR(&SAVEDSTATE) TYPE(*CHAR) LEN(1)
DCL VAR(&SYSTEMINFO) TYPE(*CHAR) LEN(1)
/* Local variables */
DCL VAR(&CURPROGRAM) TYPE(*CHAR) LEN(10) VALUE('EXAM0036L')
DCL VAR(&HANDLED) TYPE(*CHAR) LEN(1)
DCL VAR(&NEWFORM) TYPE(*LGL) VALUE('1')
/* Display File */
DCLF FILE(EXAM0036D)
/* Standard FormView Screen Handling Loop */
MAINLOOP: IF COND(&REQPROGRAM *NE &CURPROGRAM) THEN(GOTO FINISH)
/* Handle the requested action */
CALL PGM(EXAM0012) PARM(&SYSTEMINFO &REQACTION 'EXAM0036 ' &HANDLED)
CHGVAR VAR(&MESSAGE) VALUE('CL variable &REQACTION = "' *CAT &REQACTION *TCAT +
'"')
/* Display the form view and decide what to do next */
FORMVIEW: IF COND( *NOT &NEWFORM) THEN(DO)
CALLPRC PRC('LRNG_SetSendChangesOnly')
ENDDO
CALLPRC PRC('LRNG_Send')
SNDRCVF RCDFMT(FORMVIEW)
CALLPRC PRC('LRNG_Receive')
CALLPRC PRC('LRNG_GetRequestedAction') PARM((&REQPROGRAM) (&REQACTION))
CHGVAR VAR(&NEWFORM) VALUE('0')
GOTO CMDLBL(MAINLOOP)
/* Return control to LRNGDRIVER */
FINISH: ENDPGM