IBM MAINFRAME HELP & SUPPORT FORUMS
Technical Forums for IBM Mainframe Applications like COBOL, JCL, CICS, DB2, FileAid, DFSORT, Endevor, Xpediter, CoolGen, CA-7&11, AbendAid, IMS, IDMS, PL/I, MqSeries, SyncSort, Assembler, ChangeMan, Easytrieve, InterTest, REXX, CLIST etc...
 

Change a string using macro & submit via a batch job - h

THIS IS AN ARCHIVE FORUM: CLICK HERE TO GO TO THE ORIGINAL TOPIC

 
       IBMMAINFRAMES.com - IBM Mainframe Support Forums Index -> TSO/ISPF
View previous topic :: View next topic  
Author Message
crazyf1



Joined: 05 May 2006
Posts: 27

Posted: Fri May 05, 2006 2:32 pm    Post subject: Change a string using macro & submit via a batch job - h  

I am just new with REXX programming and would want to do this as I am always getting a RC(-3)

Thanks

Objective:
From an input dataset, i want to change all READ,WRITE,ALLOC into R,W,A and del all EXEC

REXX
----------------------------
Code:
/**REXX**************************************
********************************************/
 PARSE ARG DSNAME MACRO1                     
 ADDRESS ISPEXEC                             
 "EDIT DATASET('"DSNAME"') MACRO("MACRO1")" 
 EXIT                                       


MACRO - MACRO01
-----------------------------------
Code:
/* REXX */                   
ISREDIT MACRO               
ISREDIT CHANGE READ R ALL   
ISREDIT CHANGE WRITE W ALL   
ISREDIT CHANGE ALLOC A ALL   
ISREDIT CHANGE EXEC(L) '' ALL
ISREDIT CHANGE EXEC(A) '' ALL
END                         


JCL
-------------------------------------
Code:
//REXPROC1 PROC                                         
//STEP010  EXEC PGM=IKJEFT01,DYNAMNBR=20,               
//         PARM='%EDITREXX &ARG01 &ARG02'               
//SYSPRINT DD SYSOUT=*                                   
//SYSOUT   DD SYSOUT=*                                   
//SYSTSPRT DD SYSOUT=(G,,JOHN)                           
//SYSTSIN  DD DUMMY                                     
//SYSPROC  DD DSN=TSGP.PDS.JASON.WORK.REXX,DISP=SHR     
//         PEND                                         
//STEP01   EXEC REXPROC1,ARG01=TSGS.TEST.IDS,ARG02=MACRO01
Back to top  
superk



Joined: 26 Apr 2004
Posts: 3314
Location: Charlotte,NC USA

Posted: Fri May 05, 2006 6:25 pm    Post subject: Re: Change a string using macro & submit via a batch job  

OK.

#1.
Code:
/* REXX */                   
ISREDIT MACRO               
ISREDIT CHANGE READ R ALL   
ISREDIT CHANGE WRITE W ALL   
ISREDIT CHANGE ALLOC A ALL   
ISREDIT CHANGE EXEC(L) '' ALL
ISREDIT CHANGE EXEC(A) '' ALL
END                         

This is NOT valid REXX code, and your ISPF Editor indicates such. ISREDIT and END are not valid REXX constructs. It is, however, valid CLIST code (minus the /* REXX */ statement, of course).

#2.
In your JCL, I don't see any ISPSTART command to invoke ISPF or any DD allocations for the requisite ISPF libraries (ISPLLIB, ISPPLIB, ISPSLIB, ISPMLIB, ISPPROF, ISPTABL, ISPTLIB, ISPLOG, ISPLIST).

For more details on the ISPSTART command, see here in the z/OS V1R7.0 ISPF Dialog Developer's Guide.
Back to top  
crazyf1



Joined: 05 May 2006
Posts: 27

Posted: Fri May 05, 2006 8:25 pm    Post subject:  

if I am to invoke this as a CLIST, do i need to have ISPSTART command in my jcl?
Back to top  
superk



Joined: 26 Apr 2004
Posts: 3314
Location: Charlotte,NC USA

Posted: Fri May 05, 2006 8:39 pm    Post subject: Re: Change a string using macro & submit via a batch job  

You only need to invoke ISPSTART if you want to use ISPF services.
Back to top  
crazyf1



Joined: 05 May 2006
Posts: 27

Posted: Sun May 07, 2006 8:08 pm    Post subject:  

Where do i put ISPSTART in my jcl? do i need to also to do DD allocations for the requisite ISPF libraries? or can i just use ISPSTART?
Back to top  
superk



Joined: 26 Apr 2004
Posts: 3314
Location: Charlotte,NC USA

Posted: Mon May 08, 2006 3:04 am    Post subject: Re: Change a string using macro & submit via a batch job  

here is a great example of an IPSF batch job in the z/OS V1R7.0 ISPF Dialog Developer's Guide.
Back to top  
crazyf1



Joined: 05 May 2006
Posts: 27

Posted: Mon May 08, 2006 8:59 am    Post subject:  

thank you very much! :)
Back to top  
crazyf1



Joined: 05 May 2006
Posts: 27

Posted: Mon May 08, 2006 12:40 pm    Post subject:  

Can someone please help with this... getting a MAXCC=12
Also, I tried searching for my id (using 3.4) and it seems only 'T62811.ISPF.ISPPROF' is only available... so i tried using DUMMY/SYSOUT=* however, job failed.
Code:
//TSOBTCH1  EXEC PGM=IKJEFT01                   
//ISPPROF   DD DSN=TS62811.ISPF.ISPPROF,DISP=SHR
//ISPPLIB   DD DSN=ISP.SISPPENU,DISP=SHR       
//ISPMLIB   DD DSN=ISP.SISPMENU,DISP=SHR       
//ISPSLIB   DD DSN=ISP.SISPSENU,DISP=SHR       
//          DD DSN=ISP.SISPSLIB,DISP=SHR       
//ISPTLIB   DD DSN=TS62811.ISPF.TABLES,DISP=SHR
//ISPTLIB   DD DSN=ISP.SISPTENU,DISP=SHR       
//               DD DSN=ISP.SISPTLIB,DISP=SHR       
//ISPTABL   DD DSN=TS62811.ISPF.TABLES,DISP=SHR
//ISPLOG    DD DSN=TS62811.ISPF.LOG,DISP=SHR   
//ISPLLIB   DD DSN=TS62811.ISPF.LOAD,DISP=SHR 
//SYSEXEC   DD DSN=ISP.SISPEXEC,DISP=SHR           
//SYSPROC   DD DSN=TSGP.PDS.JASON.WORK.REXX,DISP=SHR
//SYSPRINT  DD SYSOUT=*                             
//SYSOUT    DD SYSOUT=*                             
//SYSTSPRT  DD SYSOUT=*                             
//SYSTSIN   DD *                                   
  PROFILE PREFIX(TS62811)                           
  ISPSTART CMD(%EDITREXX TSGS.TEST.IDS MACRO1)     
/*                                                 


TSGS.TEST.IDS ---> Dataset i want to edit
MACRO1 ----> Macro that will edit the dataset
Back to top  
superk



Joined: 26 Apr 2004
Posts: 3314
Location: Charlotte,NC USA

Posted: Mon May 08, 2006 5:44 pm    Post subject: Re: Change a string using macro & submit via a batch job  

Please post the error message(s).
Back to top  
crazyf1



Joined: 05 May 2006
Posts: 27

Posted: Tue May 09, 2006 10:30 am    Post subject:  

I am getting a MAXCC=12 abend 0C4 using this JCL. i really can't find any library allocated to my ispf.
Using 3.4 and searching for my id as HLQ

TS62811.CPPTEMP1.SCPPWORK
TS62811.CPPTEMP2.SCPPWORK
TS62811.CPPTEMP3.SCPPWORK
TS62811.HCD.MSGLOG
TS62811.HCD.TERM
TS62811.HCD.TRACE
TS62811.ISPF.ISPPROF
TS62811.ISPF.ISPPROF.CPUG
TS62811.LOG.MISC
TS62811.SPFLOG1.LIST
TS62811.SPFTEMP0.CNTL
TS62811.SRCHFOR.LIST
TS62811.SUPERC.LIST


JCL <-- substituted all files with SYSOUT=*
---------------------------------------------------------------
Code:
//TSOBTCH1  EXEC PGM=IKJEFT01                   
//ISPPROF   DD SYSOUT=*
//ISPPLIB   DD DSN=ISP.SISPPENU,DISP=SHR       
//ISPMLIB   DD DSN=ISP.SISPMENU,DISP=SHR       
//ISPSLIB   DD DSN=ISP.SISPSENU,DISP=SHR       
//*          DD DSN=ISP.SISPSLIB,DISP=SHR       
//ISPTLIB   DD SYSOUT=*
//ISPTLIB   DD DSN=ISP.SISPTENU,DISP=SHR       
//               DD DSN=ISP.SISPTLIB,DISP=SHR       
//ISPTABL   DD SYSOUT=*
//ISPLOG    DD SYSOUT=*   
//ISPLLIB   DD SYSOUT=* 
//SYSEXEC   DD DSN=ISP.SISPEXEC,DISP=SHR           
//SYSPROC   DD DSN=TSGP.PDS.JASON.WORK.REXX,DISP=SHR
//SYSPRINT  DD SYSOUT=*                             
//SYSOUT    DD SYSOUT=*                             
//SYSTSPRT  DD SYSOUT=*                             
//SYSTSIN   DD *                                   
  PROFILE PREFIX(TS62811)                           
  ISPSTART CMD(%EDITREXX TSGS.TEST.IDS MACRO1)     
/*                               
[/list]
Back to top  
 
       IBMMAINFRAMES.com - IBM Mainframe Support Forums Index -> TSO/ISPF
Page 1 of 1
THIS IS AN ARCIVE FORUM IN READ ONLY MODE. IF YOU WANT TO ASK YOUR DOUBTS USE THE ACTUAL FORUM