IBM Mainframe Forum Index
 
Register
 
IBM Mainframe Forum Index Mainframe: Search Log in to check your private messages Log in
 

TWS PIF (EQQYCOM) Rexx - Occurrence Segments


 
IBM Mainframe Forums -> IBM Tools
Post new topic   Reply to topic
View previous topic :: :: View next topic  
Author Message
Richard Baker

New User


Joined: 16 Sep 2020
Posts: 1
Location: Australia

PostPosted: Wed Sep 16, 2020 10:45 am
Reply with quote

Hi All

I'm trying to get the predecessor and successor segments of an occurrence record in the current plan of TWS (IBM Workload Scheduler for z/OS) version 9.3.

If I go to the TSO TWS ISPF dialog and pick an Application occurrence in the current plan that has external predecessors and pass that application ID and input arrival time into my JCL as a parameter argument for my Rexx, I only get the common segment.

Here is my JCL:
Code:

//BATCHTSO EXEC PGM=IKJEFT01,                             
// PARM='OPCPIFT SYS3.TWS OPCx PxxxXxxxCONSLBLD2009161205'
//SYSTSPRT DD SYSOUT=*                                   
//SYSTSIN  DD DUMMY                                       
//SYSEXEC  DD DISP=SHR,DSN=UxxxJ.PUBLIC.EXEC             


And my Rexx:
Code:

/* REXX */                                                       
arg hlq ssn data                                                 
address tso                                                       
storage_action  = left('GET',8)                                   
storage_area    = left('00000000'x,4)                             
storage_pred    = left('00000000'x,4)                             
storage_length  = left('00000026'x,4)                             
storage_parm    = 'storage_action storage_area storage_length'   
address LINKPGM "EQQSTOR" storage_parm                           
if rc /= 0 then exit                                             
                                                                 
"ALLOC F(EQQMLIB) DA('"hlq".SEQQMSG0') SHR REUS"                 
"ALLOC F(EQQMLOG) DA(*)"                                         
action_code     = left('INIT',8)                                 
resource_code   = left(ssn,8)                                     
data_area       = left('00000000'x,4)                             
arg_names       = left(' ',8)                                     
comm_block      = left('00000000'x,4)                             
return_code     = left('00000099'x,4)                             
arg_values      = left('0000000000000000'x,8)                     
parm_list       = 'action_code resource_code data_area',         
                  'arg_names arg_values comm_block return_code'   
address LINKPGM "EQQYCOM" parm_list                               
if return_code /= '00000000'x then exit                           
                                                                 
action_code   = left('SELECT',8)                                 
resource_code = left('CPOC',8)                                   
arg_names     = left('ADID    IA',16)                             
ptr = c2d(storage_area)                                           
data = storage(d2x(ptr),26,data)                                 
arg_values = x2c(d2x(ptr,8))||x2c(d2x(ptr+16,8))                 
address LINKPGM "EQQYCOM" parm_list                               
if return_code /= '00000000'x then exit                           
                                                                 
dump = storage(c2x(data_area),130)                               
say dump                                                         
                                                                 
action_code     = left('TERM',8)                                 
address LINKPGM "EQQYCOM" parm_list                               
if return_code /= '00000000'x then nop                           
                                     
storage_action  = Left('FREE',8)     
address LINKPGM "EQQSTOR" storage_parm
exit                                 


Output:
Code:

****** ******************************************************* Top of Dat
000001 CPOC                       ö   öPxxxXxxxCONSLBLD2009161205CRITICAL
       CDDC44440002000044444444000C000CDCEDECEDCDDEDCDCFFFFFFFFFFCDCECCCD
       376300000000000000000000001C001C7533753336523234200916120539939313
-------------------------------------------------------------------------


I have read the manual over and over, any ideas how I can get to the CPOCPRE and CPOCSUC segments as their offsets aren't in the output above?

EQQYCOM is in our LINKLST and appears to have come with the product.

I also tried initializing with user level 9 and 10 without luck.

Can someone please try the above to see if you get the same output?

Thanks
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic All times are GMT + 6 Hours
Forum Index -> IBM Tools
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Forum Replies
No new posts Calling Assembler from REXX PL/I & Assembler 5
No new posts REXX/CLIST tool for BCSR and EDSR CLIST & REXX 2
No new posts Calling Rexx program from Cobol CLIST & REXX 12
No new posts REXX script to beautify XML CLIST & REXX 1
No new posts Call Natural program with rexx CLIST & REXX 2

Back to Top