ISREDIT MACRO /* CATM0100 EDIT MACRO */ /* 11/15/2008 CL FENTON Updated to create evaluation records. /* 02/28/2009 CL FENTON Update in format of UID data information. /* 03/10/2011 CL FENTON Update in obtain addition information. SET PGMNAME = &STR(CATM0100 03/10/11) SET RETURN_CODE = 0 /* SET RETURN CODE TO 0 */ ISPEXEC CONTROL NONDISPL ENTER ISPEXEC CONTROL ERRORS RETURN SET SYSPROMPT = OFF /* CONTROL NOPROMPT */ SET SYSFLUSH = OFF /* CONTROL NOFLUSH */ SET SYSASIS = ON /* CONTROL ASIS - CAPS OFF */ ISPEXEC VGET ( + CONSLIST + COMLIST + SYMLIST + TERMPRO + TERMMSGS + ) ASIS /* *************************************** */ /* TURN ON MESSAGES */ /* *************************************** */ SET SYSSYMLIST = &SYMLIST /* CONTROL SYMLIST/NOSYMLIST */ SET SYSCONLIST = &CONSLIST /* CONTROL CONLIST/NOCONLIST */ SET SYSLIST = &COMLIST /* CONTROL LIST/NOLIST */ SET SYSMSG = &TERMMSGS /* CONTROL MSG/NOMSG */ /* ERROR ROUTINE */ ERROR DO SET RETURN_CODE = &LASTCC /* SAVE LAST ERROR CODE */ IF &LASTCC GE 16 THEN + WRITE &PGMNAME LASTCC = &LASTCC &ZERRLM RETURN END /* *************************************** */ /* MERGE ENTRIES FOR OMVS SEGMENT */ /* *************************************** */ CATM0100_HOUSEKEEPING: - - ISREDIT (MEMBER) = MEMBER SET RETURN_CODE = 0 ISREDIT (ENDER) = LINENUM .ZLAST /* *************************************** */ /* MAIN LOOP */ /* *************************************** */ CONTROL ASIS ISREDIT CURSOR = 1 1 LOOP: + SET RETURN_CODE = 0 ISREDIT FIND '----------- SEGMENT OMVS' 2 IF &RETURN_CODE NE 0 THEN DO GOTO END_EDIT END ISREDIT (CNT1,COL) = CURSOR ISREDIT LABEL &CNT1 = .B SET UID = &STR( ) SET GID = SET PGM = &STR( ) SET HOME = &STR( ) SET X = &CNT1 + 1 DO UNTIL &SYSINDEX(ACCESSORID = ,&NRSTR(&DATA)) GT 0 OR + &X GT &ENDER ISREDIT (DATA) = LINE &X IF &SYSINDEX(UID = ,&NRSTR(&DATA)) GT 0 THEN DO SET UID = &SUBSTR(15:24,&NRSTR(&DATA)) SET UID = &UID SET LUID = &LENGTH(&UID) SET UID = &SUBSTR(&LUID:10,&STR(0000000000))&STR(&UID) SET UID = U&STR(&UID) SET GID = END IF &SYSINDEX(GID = ,&NRSTR(&DATA)) GT 0 THEN DO SET GID = &SUBSTR(15:24,&NRSTR(&DATA)) SET GID = &GID SET LGID = &LENGTH(&GID) SET GID = &SUBSTR(&LGID:10,&STR(0000000000))&STR(&GID) SET GID = G&STR(&GID) SET UID = END IF &SYSINDEX(HOME = ,&NRSTR(&DATA)) GT 0 THEN + SET HOME = &SUBSTR(15:43,&NRSTR(&DATA)) IF &SYSINDEX(OMVSPGM = ,&NRSTR(&DATA)) GT 0 THEN + SET PGM = &SUBSTR(15:29,&NRSTR(&DATA)) SET X = &X + 1 END ISREDIT FIND PREV 'ACCESSORID = ' 2 ISREDIT (CNT,COL) = CURSOR ISREDIT (DATA) = LINE &CNT SET USER = &SUBSTR(15:22,&NRSTR(&DATA)) SET USER = &SUBSTR(1:8,&USER ) ISREDIT LABEL &CNT = .A SET GRP = &STR( ) SET RETURN_CODE = 0 ISREDIT FIND 'DFLTGRP = ' 2 .A .B IF &RETURN_CODE EQ 0 THEN DO ISREDIT (DATA) = LINE .ZCSR SET GRP = &SUBSTR(15:22,&NRSTR(&DATA)) SET GRP = &SUBSTR(1:8,&GRP ) END ISREDIT LINE_AFTER .ZLAST = DATALINE '&USER &UID.&GID &GRP+ &PGM.&HOME' SET CNT1 = &CNT1 + 1 ISREDIT CURSOR = &CNT1 1 GOTO LOOP /* *************************************** */ /* END PROCESSES */ /* *************************************** */ END_EDIT: - - ISREDIT RESET ISREDIT DELETE 1 &ENDER ISREDIT END EXIT