EXECUTE block INPUT extracts personnel information from a report. Statement DO BLOCK calls EXECUTE block CHECK to process this information.
The information extracted from the report is passed as arguments to EXECUTE block CHECK.
EXECUTE block CHECK is located after EXECUTE block FIN that terminates the rule. Block CHECK can only be activated by statement DO BLOCK in block INPUT.
Figure 186 DO BLOCK Statement Example
LIBRARY : CTB.PROD.RULES RULE : RULEMP
COMMAND ===> SCROLL===> CRSR
+-----------------------------------------------------------------------------+
===========================================================================
EXECUTE INPUT UPON C
ON FILE FILENAME CTB.PROD.EMPREP
MODE PG LINECT 0060 DATASTAMP
WHEN LINE 001 - 060 COL 013 - 014 STOP AND/OR
STRING = #
DO EXTRACT = NAME
LEVEL 0 LINE +000 COL -002 - +013 PROCESS TYP
DO EXTRACT = SICK
LEVEL 0 LINE +000 COL +087 - +088 PROCESS TYP
DO EXTRACT = VAC
LEVEL 0 LINE +000 COL +093 - +094 PROCESS TYP
DO BLOCK = CHECK ARG NAME,SICK,VAC C
DO
WHEN LINE - COL - STOP AND/OR
STRING =
DO
===========================================================================
EXECUTE FIN UPON C
ON DATA
ALWAYS
DO PRINT = +--+---------------+------+-----+ F C
DO PRINT = CHECKED %%CNTR USERS, FOUND %%ERR ERRORS F C
DO REMARK = CHECKED %%CNTR USERS, FOUND %%ERR ERRORS
DO
IF ERR > 5 C
DO TERMINAT = NOTOK COD 2000
DO
===========================================================================
EXECUTE CHECK UPON C
ON DATA
ALWAYS
DO SET = CNTR=CNTR+1 C
DO
IF BARG02 > 90 OR BARG03 > 30 C
DO PRINT = | |%%BARG01| %%BARG02 | %%BARG03 | F C
DO SET = ERR=ERR+1 C
DO
(ENTER "ALWAYS", "IF" OR "ELSE")
===========================================================================
EXECUTE UPON C
ON
======= >>>>>>>>>>>>>>> END OF RULE DEFINITION PARAMETERS <<<<<<<<<<<<<<< =====
Parent Topic |