I wonder why I didn't get the original request.
I'm going to be THAT GUY who responds by not answering your question, and instead point out that there are way more efficient ways to do this than by starting up ISPF once per member. For example, you can start ISPF once with an exec that opens the library once, then iterates through the members. If you only want to process specific members, you can still have the list in a file that you read, then process each one. Starting up ISPF is slow, and so it opening and closing the PDS once per member. For example: 1. LMINIT ENQ(SHRW) to generate a data id for the library 2. LMOPEN to open for output 3. LMMLIST LIST STATS(YES) to create a list of the members, with statistics While LMMLIST rc = 0 If ZLCNORC = 0 LMPUT to write your NONE line LMMLIST again 4. LMMLIST FREE 5. LMCLOSE 6. LMFREE -----Original Message----- From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> On Behalf Of Mark Zelden Sent: Tuesday, January 9, 2024 4:54 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: EDIT MACRO REQUEST On Tue, 9 Jan 2024 22:41:50 +0000, Steely.Mark <steely.m...@ace.aaa.com> wrote: >I would like to check each member of a PDS and if it is empty (0 Lines) - I >would like to add a line with the text of *NONE*. > >I would like to do this in batch using this format: > >//TSOBTCH1 EXEC PGM=IKJEFT01 >//SYSTSPRT DD SYSOUT=* >//SYSLIST DD SYSOUT=* >//ISPLOG DD DSN=&ISPLOG, >// DISP=(NEW,PASS),UNIT=SYSALLDA,SPACE=(CYL,(1,1,10)), >// DCB=(RECFM=FB,BLKSIZE=3120,LRECL=80) >//ISPPROF DD DSN=&ISPPROF, >// DISP=(NEW,PASS),UNIT=SYSALLDA,SPACE=(CYL,(1,1,10)), >// DCB=(RECFM=FB,BLKSIZE=3120,LRECL=80) >//ISPMLIB DD DSN=ISP.SISPMENU,DISP=SHR >//ISPPLIB DD DSN=ISP.SISPPENU,DISP=SHR >//ISPSLIB DD DSN=ISP.SISPSENU,DISP=SHR >//ISPTLIB DD DSN=ISP.SISPTENU,DISP=SHR >//ISPTABL DD DSN=XXXXXX.ISPF.ISPTLIB,DISP=SHR >//SYSPROC DD DSN=XXXXXX.CLIST,DISP=SHR >//SYSTSIN DD * > PROFILE PREFIX(XXXXXX) > ISPSTART CMD(%EDITREXX XXXXXX.TSS.CTM.DATA(PADM3) EMPTREXX) > ISPSTART CMD(%EDITREXX XXXXXX.TSS.CTM.DATA(PPCT3) EMPTREXX) > ISPSTART CMD(%EDITREXX XXXXXX.TSS.CTM.DATA(PCO13) EMPTREXX) > Etc...... > >EMPTREXX - would be the ISREDIT Macro to perform the task. > >Any help would be appreciated. > >Thank You Not sure what part you need help with. Probably the EMPTREXX, which I will leave to someone else to help you with as I don't have time, but if you need help with the "EDITREXX" part, see "EDMACALL" on my web site / CBT file 434. URL of my web site below. The source code has a simple example of an edit macro. Regards, Mark -- Mark Zelden - Zelden Consulting Services - z/OS, OS/390 and MVS ITIL v3 Foundation Certified mailto:m...@mzelden.com Mark's MVS Utilities: http://www.mzelden.com/mvsutil.html ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN