Back To LeighWeb Mainframe Utilities Page
View the documentation associated with this module
ISREDIT MACRO (OPT1 OPT2 OPT3 OPT4 OPT5 OPT6 OPT7 OPT8 OPT9 OPT10)
ISPEXEC CONTROL ERRORS RETURN
/**** SET MESSAGE DISPLAY ON/OFF BASED ON THE DEBUG SWITCH ***/
ISPEXEC VGET (DBGSWTCH) PROFILE
IF &DBGSWTCH = &STR(ON) THEN CONTROL MSG LIST CONLIST SYMLIST NOFLUSH
ELSE CONTROL NOMSG NOLIST NOFLUSH NOPROMPT
IF &OPT1 = HELP THEN GOTO HELPSEC
/**********************************************************************
/* EDIT MACRO : STAMP *
/* AUTHOR : DAVE LEIGH *
/* FUNCTION : MARK LINES WITH A "DATE", "TIME" OR "DATE/TIME" STAMP *
/**********************************************************************
/**********************************************************************
/* PARSE THE INPUT OF THE USER AND SET THE "STAMP TYPE" *
/**********************************************************************
ISREDIT (LN,CL) = CURSOR
IF &STR(&OPT1) = DATE OR +
&STR(&OPT1) = TIME OR +
&STR(&OPT1) = DATETIME OR +
&STR(&OPT1) = TIMEDATE THEN +
DO
SET STAMPTYPE = &STR(&OPT1)
SET OPTIONS = &STR(&OPT2 &OPT3 &OPT4 &OPT5 &OPT6 +
&OPT7 &OPT8 &OPT9 &OPT10)
END
ELSE +
DO
SET STAMPTYPE = DATETIME /* DEFAULT STAMP TYPE */
SET OPTIONS = &STR(&OPT1 &OPT2 &OPT3 &OPT4 &OPT5 &OPT6 +
&OPT7 &OPT8 &OPT9 &OPT10)
END
/**********************************************************************
/* MAKE THE USER PLACE THE CURSOR, OR SPECIFY THE CRITERIA. *
/**********************************************************************
IF &CL = 0 AND &STR(&OPTIONS) = THEN +
DO
SET ZEDLMSG = &STR(CURSOR MUST BE ON A DATA LINE OR +
"LINE QUALIFICATION CRITERIA" MUST +
BE SPECIFIED)
ISPEXEC SETMSG MSG(UTLZ001W)
EXIT CODE(8)
END
/**********************************************************************
/* SET UP THE EDIT PICTURE STRING. *
/**********************************************************************
SELECT(&STAMPTYPE)
WHEN (DATE) DO
SET EQUALS = &STR(========)
SET STAMP = &STR(&SYSSDATE)
END
WHEN (TIME) DO
SET EQUALS = &STR(========)
SET STAMP = &STR(&SYSTIME)
END
WHEN (DATETIME) DO
SET EQUALS = &STR(================)
SET STAMP = &STR(&SYSSDATE&SYSTIME)
END
WHEN (TIMEDATE) DO
SET EQUALS = &STR(================)
SET STAMP = &STR(&SYSTIME&SYSSDATE)
END
END
IF &STR(&OPTIONS) = THEN SET OPTIONS = &STR(&CL .ZCSR .ZCSR)
/**********************************************************************
/* ACTUALLY MAKE THE CHANGE *
/**********************************************************************
SET CHANGECC = 0
ISREDIT CHANGE P'&STR(&EQUALS)' '&STR(&STAMP)' &STR(&OPTIONS)
SET CHANGECC = &LASTCC
IF &CHANGECC > 0 THEN +
DO
SET ZEDLMSG = &STR(THE "STAMPING" PROCESS ENDED IN ERROR WITH +
A RETURN CODE OF "&CHANGECC". CHECK FOR +
BAD LINE QUALIFICATION CRITERIA.)
ISPEXEC SETMSG MSG(UTLZ001W)
END
/**********************************************************************
/* RETURN THE USER TO WHERE THEY WERE *
/**********************************************************************
ISREDIT CURSOR = &LN &CL
EXIT CODE(&CHANGECC)
HELPSEC: +
ISPEXEC SELECT PGM(ISPTUTOR) PARM(HELPSHEL)
SET ZEDLMSG = &STR(*** HELP DISPLAYED FOR STAMP UTILITY +
*** NO PROCESSING PERFORMED ***)
ISPEXEC SETMSG MSG(UTLZ000)
EXIT
|