Page 1 of 1

WORKING-STORAGE options for CICS

PostPosted: Fri Aug 10, 2012 8:54 pm
by paulmac1968
I know this flies in the face of CICS transactions being pseudo-conversational, but I'm asking anyway. Is there a way of making working storage in a program executing in CICS static? In other words, changes between tasks in working storage persist between tasks. The program is essentially a non-CICS program executing in a CICS region and accessed using a CALL.

Thx.

Paul

Re: WORKING-STORAGE options for CICS

PostPosted: Sat Aug 11, 2012 2:12 pm
by mongan
That is what the DFHCOMMAREA or CONTAINERS are for!

Re: WORKING-STORAGE options for CICS

PostPosted: Sat Aug 11, 2012 7:21 pm
by Robert Sample
Talk to your site CICS support. Depending upon exactly what you need, there may be ways to do what you need, but there may be negative system impacts and hence talking to your site support group should be your first step.

Re: WORKING-STORAGE options for CICS

PostPosted: Mon Aug 13, 2012 11:46 am
by mongan
There are a lot of issues involved, for example the program is not reentrant anymore, what happens if the program or CICS crashes, .....
Explain what you want and need to do.

Re: WORKING-STORAGE options for CICS

PostPosted: Mon Aug 13, 2012 6:20 pm
by paulmac1968
essentially, i want to cache results from a database. for a batch job, it's easy since a batch job is single threaded. chk WS, not filled, go to the database and populate. for the rest of the transactions in the batch job they don't need to hit the database. i'd like to do the same. i am familiar with DFHCOMMAREA and TS queues but am trying to hit it from another angle. Thx.

Re: WORKING-STORAGE options for CICS

PostPosted: Mon Aug 13, 2012 8:32 pm
by Monitor
It seems that "your angle" is not correct!
You should take a look at EXternat Cics Interface, EXCI. This is a way to call a CICS program from Batch, passing data using DFHCOMMAREA.
More details in IBM manual(s).

Re: WORKING-STORAGE options for CICS

PostPosted: Tue Aug 14, 2012 6:53 pm
by paulmac1968
That's not exactly what my issue is. Let me be more precise. I have a program that executes in a CICS region. When this program is called, unique transaction information is passed into it via LINKAGE. This unique information is then compared to information on a rules-based database. These rules are static. What I would like to do is cache the results of the call to the rules database so I won't have to go to the database for every transaction. In Java this is done using static beans and attributes. Only when the JVM is refreshed would a hit to the database be needed. DFHCOMMAREA isn't a solution since that holds information unique to a specific termid/transaction. Plus, the program I'm talking about is not CICS precompiled. It's accessed through a CALL. Not an EXEC CICS command.

Re: WORKING-STORAGE options for CICS

PostPosted: Tue Aug 14, 2012 7:18 pm
by Robert Sample
It is possible that EXEC CICS LOAD PROGRAM would do what you want, but you need to discuss the situation with your site support group before attempting to implement such a program. There can be system implications to doing something like this, and your site support group should proivde you guidance.