/* REXX -- @DIRSTAT, DIRECTORY STATS FOR MEMBER CURR. IN EDIT */ Address "ISREDIT"; "MACRO (TOKEN)" TOKEN = TRANSLATE(TOKEN) /*********************************************************************/ /* CREATED BY DAVID MCRITCHIE, APR 2, 1986, */ /* OLD CLIST VERSION STILL AVAILABLE AS @DIRSTAC */ /* CONVERTED BY DAVID MCRITCHIE TO REXX 1992/10/09 */ /* AVAILABLE TO ANYONE WHILE IN EDIT */ /* @DIRSTAT DATA, WILL PLACE NOTE MATERIAL AFTER LINE 0 */ /* INSTEAD OF USING NOTELINES */ /*********************************************************************/ /* ------ example run as ===> @DIRSTAT DATA (starry box begin col 2)*/ /* MEMBER-- VV.MM CREATED- ---MODIFIED--- CURR INIT MOD LASTUSER */ /* @DIRSTAT 01.17 1986/05/07 1992/10/09 22:14 84 68 0 IS03 */ /* IS03 1992/10/09 22:14:10 92283 -- Data Unchanged */ /* IS03 1992/10/09 22:14:31 92283 -- Data Changed */ /* ==================================================================*/ /* */ /* ------ example run as ===> @DIRSTAT (starry box not included)*/ /* DCB=(LRECL=255,BLKSIZE=19069,RECFM=VB,DSORG=PO) NUMBER OFF) */ /*== MEMBER-- VV.MM CREATED- ---MODIFIED--- CURR INIT MOD LAST..*/ /*== @DIRSTAT 01.17 1986/05/07 1992/10/09 22:14 84 68 0 IS03 ..*/ /*=======================================================DATA-CHANGED*/ " (VAR018) = DATAID" " (VAR018A) = DATASET" " (VAR043) = MEMBER" " (DSNX) = DATASET" " (NUMX) = NUMBER" IF "DATA" = TOKEN THEN NULL ELSE IF TOKEN \= "" then VAR043 = TOKEN x = LISTDSI("'"DSNX"'") "DIRECTORY" ZEDLMSG = "DCB=(LRECL="SYSLRECL",BLKSIZE="SYSBLKSIZE",", ||"RECFM="SYSRECFM",DSORG="SYSDSORG") NUMBER "NUMX")" Address "ISPEXEC" "SETMSG MSG(ISRZ000)" LMRC = rc /* CAPTURE RETURN CODE */ IF VAR043 = "" THEN DO "LINE_AFTER 0 = NOTELINE ""STATISTICS NOT AVAILABLE FOR ", "A SEQUENTIAL FILE, ONLY AVAILABLE FOR PDS FILES""" " LOC 0" return 1 END Address "ISPEXEC" "LMINIT DATAID(VAR018) DATASET('"VAR018A"')" Address "ISPEXEC" "LMOPEN DATAID(&VAR018)" Address "ISPEXEC" "LMMFIND DATAID(&VAR018) MEMBER(&VAR043)", "STATS(YES)" LRC = RC IF LRC = 8 THEN NOTFOUND = 1 STARAST = "/"||"*" /* split so it will not look unmatched*/ ASTSTAR = "*"||"/" /* works w/o concatenation also*/ VAR043 = SUBSTR(VAR043,1,8) /************************************************************/ XYZ = VAR043 ZLVERS"."ZLMOD ZLCDATE ZLMDATE XYZ = XYZ ZLMTIME ZLCNORC ZLINORC ZLMNORC XYZ = XYZ LEFT(ZLUSER,8) " (VAR037) = LINENUM .ZLAST" IF ZLCNORC ="" THEN XYZ = VAR043, " "VAR037" *NO ", "STATISTICS* " IF NOTFOUND = "" THEN XYZ = VAR043 , "<<--------------- MEMBER DOES NOT EXIST -------------->>" "(VAR014A) = DATA_CHANGED" if VAR014A = "NO" then do changed = "-- Data Unchanged" end else do changed = "-- Data Changed" end IF VAR014A = "YES" THEN " LINE_AFTER 0 = NOTELINE """||, "===========================================================", ||"=DATA-CHANGED="CHG"""" ELSE " LINE_AFTER 0 = MSGLINE """||, "===========================================================", ||"=================""" " LINE_AFTER 0 = NOTELINE ""=== "XYZ" ==""" " LINE_AFTER 0 = NOTELINE ""=== MEMBER-- VV.MM CREATED- ", "---MODIFIED--- CURR INIT MOD LASTUSER ==""" IF TOKEN = "DATA" THEN DO q.1 = "MEMBER-- VV.MM "||, "CREATED- ---MODIFIED--- CURR INIT MOD LASTUSER" q.2 = XYZ q.3 = " " LEFT(SYSVAR(SYSUID),8), date('o') time('n') date('j') changed Q.4 = substr('=',1,72,'=') Q.5 = " " do qq = 5 to 1 by -1; "LINE_AFTER 0 = DATALINE "" /"||"* "||, substr(q.qq,1,66)||"*"||"/""" end END " LOC 0" IF ZLCNORC ="" THEN return 1 Address "ISPEXEC" "LMCLOSE DATAID(&VAR018)" Address "ISPEXEC" "LMFREE DATAID(&VAR018)" /*********************************************************************/ /* say 'rc='rc 'from lmfree' */ /* Address "ISPEXEC" "SETMSG MSG(ISRZ000)" */ /*********************************************************************/ return