My office have some very old homemade programs to create a permanent code (ID) for the minimum security revenu. Some ones are running in z/OS 1.9 and one call them.
We are planning to migrate from CICS TS 3.1 to TS 4.1. I read the IBM’s technical bulletin swg21264616 but the direct access to the TCA is unsupported.
...
Code:
REMPSUIT EQU *
L R1,IDEPASCA BELONG TO THIS ASCB
C R1,PSAAOLD-PSA(R0) OUR ADRESS SPACE ?
BNE NEXTCHA NO, GO TO NEXT IDEPLAG
CLC IDEPASTS(8),ASCBINTS-ASCB(R1) EST-CE BIEN LA NOTRE ?
BNE NEXTCHA NON, SUIVANT !
L R1,PSATOLD-PSA(R0) CURRENT TCB
L R1,TCBEXT2-TCB(R1) TCB EXTENTION
L R1,TCBCAUF-TCBXTNT2(R1) AUTH CONTROL BLOCK
L R1,AFCSA-DFHAFCB(R1) CICS CSA ADR
L R1,CSAQRTCA-DFHCSADS(R1) ADR TCA USER
L R1,TCASYAA-DFHTCADS(R1) ADR TCA SYSTEM
C R1,IDEPTCAA OUR TCA ?
BNE NEXTCHA
CLC IDEPTCID+1(3),TCAKCTTA-DFHTCADY(R1) SAME TASKID
BNE NEXTCHA NO NEXT
...
I know this instruction is unsupported in CICS TS 3.2. I am not an expert in CICS control blocks and assembler.
What’s is the best method to replace this instruction
(to follow cics storage chains, to create an assembler sub-program, ...) ?
Thanks a lot for guiding me and has a nice end of day.
Thanks Bill for the answer. Does it exist a way to get the same information following chain CICS Control Blocks ? I would like to see a overview of CICS control blocks between TCA address user and a SPI command.
Yvon
Joined: 14 Jan 2008 Posts: 2501 Location: Atlanta, Georgia, USA
Actually, it's an IBM Macro DFHKERN and not an API, which you use to obtain the TCA user-address.
Keyword STACK_AVAIL must always be NO. If it's YES then you'll have to use BAKR's as well as PC/PT instructions. BAKR is non-reentrant and should never be used in CICS.
Based upon the code that you sent, the following line -
Code:
L R1,CSAQRTCA-DFHCSADS(R1) ADR TCA USER
Can be replaced with -
Code:
LA R15,10 RE-DISPATCH MAX (MORE THAN ENOUGH)
REDSPTCH EQU *
*
DFHKERN FUNCTION=INQUIRE_TASK,TCAADDRESS=R1,STACK_AVAIL=NO
*
LTR R1,R1 VALID TCA-USER ADDRESS?
BNZ ADTCASYS YES, ADR TCA-SYSTEM AREA
BCT R15,REDSPTCH TRY IT AGAIN
ADTCASYS EQU *
L R1,TCASYAA-DFHTCADS(,R1) ADR TCA SYSTEM