/* REXX ***************************************************************/ /* -------------------------------------------------------------------*/ /* Name: COLA */ /* Short Set CObol LAbel */ /* Type: REXX-Macro */ /* Author: Norbert Haas */ /* Function: Puts in some labels on special lines in Cobolsource */ /* Syntax: COLA [label] */ /* Parameter: label = one of the inserted labels */ /* Remark: The following labels will be set, dependig of the */ /* existance of the corrosponding lines: */ /* .E = ENVIRONMENT DIVISION. */ /* .C = CONFIGURATION SECTION. */ /* .I = INPUT-OUTPUT SECTION. */ /* .D = DATA DIVISION. */ /* .F = FILE SECTION. */ /* .W = WORKING-STORAGE SECTION. */ /* .L = LINKAGE SECTION. */ /* .P = PROCEDURE DIVISION. */ /* Exampel: COLA .P */ /* Sets the labels and locates on .P */ /* */ /* Version Author Date Why */ /* ------- ------------- ---------- --------------------------------- */ /* V02.01 N.Haas 30.05.2003 english version */ /* V02.00 N.Haas xx.02.1999 REXX-Version */ /* V01.00 N.Haas xx.07.1990 Creation (Clist) */ /**********************************************************************/ "ISREDIT MACRO (loc)" /* Init */ count = 0 list = '' FLAG01: "ISREDIT FIND 'ENVIRONMENT DIVISION' FIRST" IF rc = 4 THEN SIGNAL FLAG02 "ISREDIT LABEL .ZCSR = .E 0" count = count + 1 list = list '.E' FLAG02: "ISREDIT FIND 'CONFIGURATION SECTION' FIRST" IF rc = 4 THEN SIGNAL FLAG03 "ISREDIT LABEL .ZCSR = .C 0" count = count + 1 list = list '.C' FLAG03: "ISREDIT FIND 'INPUT-OUTPUT SECTION' FIRST" IF rc = 4 THEN SIGNAL FLAG04 "ISREDIT LABEL .ZCSR = .I 0" count = count + 1 list = list '.I' FLAG04: "ISREDIT FIND 'DATA DIVISION' FIRST" IF rc = 4 THEN SIGNAL FLAG05 "ISREDIT LABEL .ZCSR = .D 0" count = count + 1 list = list '.D' FLAG05: "ISREDIT FIND 'FILE SECTION' FIRST" IF rc = 4 THEN SIGNAL FLAG06 "ISREDIT LABEL .ZCSR = .F 0" count = count + 1 list = list '.F' FLAG06: "ISREDIT FIND 'WORKING-STORAGE SECTION' FIRST" IF rc = 4 THEN SIGNAL FLAG07 "ISREDIT LABEL .ZCSR = .W 0" count = count + 1 list = list '.W' FLAG07: "ISREDIT FIND 'LINKAGE SECTION' FIRST" IF rc = 4 THEN SIGNAL FLAG08 "ISREDIT LABEL .ZCSR = .L 0" count = count + 1 list = list '.L' FLAG08: "ISREDIT FIND 'PROCEDURE DIVISION' FIRST" IF rc = 4 THEN SIGNAL FLAG09 "ISREDIT LABEL .ZCSR = .P 0" count = count + 1 list = list '.P' /* Well done ? Set message ------------------------------------------ */ FLAG09: "ISREDIT LOCATE .ZFIRST" IF count > 0 THEN DO zedsmsg = count "LABELS" ZEDLMSg = "FOLLOWING LABELS HAVE BEEN SET:" list "ISPEXEC SETMSG MSG(ISRZ000)" END /* locate ----------------------------------------------------------- */ IF loc /= '' THEN "ISREDIT LOCATE" loc EXIT