CICS Tips.

A Mainframe-Tip a Day keeps the bugs away!
Forum rules
All of these Tips/Tuning-suggestions should be tested your own, at your shop, prior to use in Prod.
Previous topicNext topic
User avatar

Topic Author
Anuj Dhawan
Founder
Posts: 2624
Joined: Sun Apr 21, 2013 7:40 pm
Location: Mumbai, India
Zodiac: Sagittarius

CICS Tips.

Post by Anuj Dhawan » Sun Sep 29, 2013 2:06 am

1. When one needs to position the key to the last record in the VSAM data-set, while using a VSAM KSDS data-set in CICS - move HIGH-VALUES to the key field (RIDFLD) and then execute a STARTBTR. This will position the control on the last record of the data-set and a subsequent READNEXT or READPREV can be executed.


Thanks,
Anuj

Disclaimer: My comments on this website are my own and do not represent the opinions or suggestions of any other person or business entity, in any way.

User avatar

Topic Author
Anuj Dhawan
Founder
Posts: 2624
Joined: Sun Apr 21, 2013 7:40 pm
Location: Mumbai, India
Zodiac: Sagittarius

Re: CICS Tips.

Post by Anuj Dhawan » Tue Oct 01, 2013 1:46 pm

2. You're using STARTBR and want to update a particular VSAM record? Following these steps will get you going:
  1. End the browse on the desired record by issuing a READ UPDATE.
  2. REWRITE after changing the the contents.
  3. Issue another STARTBR.
  4. Issue READNEXT twice*.
* - the first READNEXT will reread the same record



Thanks,
Anuj

Disclaimer: My comments on this website are my own and do not represent the opinions or suggestions of any other person or business entity, in any way.

User avatar

Topic Author
Anuj Dhawan
Founder
Posts: 2624
Joined: Sun Apr 21, 2013 7:40 pm
Location: Mumbai, India
Zodiac: Sagittarius

Re: CICS Tips.

Post by Anuj Dhawan » Thu Oct 03, 2013 4:59 pm

3. While testing, some time, while executing a CICS transaction, a transaction might hold the resources because it went in a loop. To terminate this event, use the following command:

Code: Select all

CEMT I TA(*)
With that, all the transactions, running, will get listed. Go to the transaction that is looping and issue FP command against it. This will forcefully purge the transaction and frees the buffer space.


Thanks,
Anuj

Disclaimer: My comments on this website are my own and do not represent the opinions or suggestions of any other person or business entity, in any way.

User avatar

Topic Author
Anuj Dhawan
Founder
Posts: 2624
Joined: Sun Apr 21, 2013 7:40 pm
Location: Mumbai, India
Zodiac: Sagittarius

Re: CICS Tips.

Post by Anuj Dhawan » Mon Nov 25, 2013 4:05 pm

4. One can use the CETR transaction to to see if you have any unnecessary traces running. Once determined, remove any trace you don't need.

In application programming, it's advisable to use DFHRESP function to test the EIB return codes instead of using HANDLE conditions.


Thanks,
Anuj

Disclaimer: My comments on this website are my own and do not represent the opinions or suggestions of any other person or business entity, in any way.


zprogrammer
Global Moderator
Global Moderator
Posts: 605
Joined: Wed Nov 20, 2013 11:53 am
Location: Mars
Zodiac: Libra

Re: CICS Tips.

Post by zprogrammer » Tue Feb 11, 2014 1:01 am

5.You can set the program enable or disable by providing

Code: Select all

CEMT SET PROG(name) ENA/DIS
The same can be done for Transaction as well


zprogrammer


zprogrammer
Global Moderator
Global Moderator
Posts: 605
Joined: Wed Nov 20, 2013 11:53 am
Location: Mars
Zodiac: Libra

Re: CICS Tips.

Post by zprogrammer » Tue Feb 11, 2014 1:05 am

6.You can call a CICS program from batch through. EXCI


zprogrammer


Quasar Chunawala
Registered Member
Posts: 35
Joined: Sun Aug 11, 2013 4:48 pm
Location: Pune
Zodiac: Aquarius

Re: CICS Tips - Online Job Submissions(OJS)

Post by Quasar Chunawala » Tue Mar 11, 2014 11:47 pm

7. Online Job Submissions
Sometimes an online application may need to trigger and run a batch job for processing a large workload, asynchronously. EXEC CICS SPOOLOPEN and EXEC CICS SPOOLWRITE allow you to write information to a SYSOUT dataset. If you write JCL statements to a SYSOUT dataset using SPOOLWRITE and as input to INTRDR, it would submit the JCL.




Quasar Chunawala
Registered Member
Posts: 35
Joined: Sun Aug 11, 2013 4:48 pm
Location: Pune
Zodiac: Aquarius

Re: CICS Tips.

Post by Quasar Chunawala » Sun Mar 16, 2014 6:40 am

8. CICS Dump Analysis -
If you don't have a dump analysis tool like Dump Master at your shop and you like to find out the instruction where the program failed, here's a CICS transaction dump cookbook, which lays down steps on how to find the COBOL statement, WS- or LS-Variable state from the dump.

ftp://ftp.software.ibm.com/software/my/ ... -Dumps.pdf
Interesting - I learnt that in core memory, addressing each 4K block needs a Base Locator. So, you'd have a BLW0, BLW1, BLW2 for each 4k chunk. The BLLs/BLWs addresses can be found in the TGT memory map at the end of the compile listing. And the TGT's address can be found in GPR09(Registers at the time of Interrupt.



Previous topicNext topic

Return to “Tip Of the Day.”