Archive

Archive for the ‘programming’ Category

Exploiting CICS TG on z/OS from .NET

May 19, 2009 raruston Leave a comment

A quick plug for Supportpac CA73: CICS TG V7.2 .NET application support which uses the new ECI v2 API provided with CICS TG v7.2 to provide .NET support.

The practical upshot of this is that you can now easily write and deploy .NET applications which can take advantage of the unique qualities of service you get from running CICS TG on z/OS. This is certainly something we have been asked for by many clients over the last year or so. It’s also worth pointing out that this is a category 3 SupportPac, which means that it is also supported by IBM.

Categories: API, SupportPac, programming Tags:

CICSPlex SM API Performance Improvement

April 18, 2008 Grant Leave a comment

Towards the end of last year we did some work on making some performance improvements to the CICSPlex SM API.

Most CICSPlex SM API commands (EXEC CPSM) will schedule an XDNR task to run in the CMAS that the MAS, or the batch job/TSO user is connected to. A number of these requests are very quick, so the overhead of CICS attaching and detaching the task compared to the processing actually performed by XDNR can be quite large.

APARs PK44521(CICSPlex SM 3.1) and PK51200(CICSPlex 3.2) have changed the XDNR processing so that these tasks can hang around for a short period of time and wait for more work. (Similar to the way CICS long running mirrors used to work.) If no work is received, the XDNR task will end, otherwise if the XDNRs keep getting work, they will stay running.

For heavy EXEC CPSM users, these changes can make worthwhile reductions in CMAS CPU usage and may improve the elapsed time of CICSPlex SM API programs.

Though of course as with all things performance related “results may vary”…..

Grant.

CICSPlex SM API COBOL copybooks

April 17, 2008 Grant Leave a comment

<rant>

I hate the CICSPlex SM COBOL copybooks that IBM supplies for Resource Tables. Well maybe hate is a bit extreme, so how about strong dislike?

Now Chris will probably mutter something obscene into his Irn-Bru when he reads this, but I write CICSPlex SM API programs using COBOL…. I find it quick and easy to throw something together.

So what don’t I like about the copybooks?

Read more…

Categories: CICSPlex SM, programming, rant

A SupportPac for creating Atom feeds

April 7, 2008 Peter Havercan 7 comments

SupportPac CA8K, released on 20 March 2008, shows you how to introduce some of the very latest Web technologies into your CICS TS system. The primary technology it demonstrates is how to create an Atom feed from existing CICS data, such as a Temporary Storage queue. The purpose of the SupportPac is to show that this can be done today, using existing CICS facilities. So it uses the funky new URIMAP and PIPELINE resources to map Atom feed request URLs into CICS resources that you want to publish. In its simplest form, this means that if you want to publish some data into a feed, all that your application needs to do is write the data on to a TS queue, and then let the SupportPac code do the heavy lifting of the Atom protocol.

Now you might have thought that PIPELINE definitions were only for use by SOAP and Web Services, but that’s not strictly true. You can also configure a pipeline to execute an arbitrary program as a message handler for any protocol, and that’s just what this SupportPac does to handle Atom. But it also uses the pipeline’s XML configuration file to provide some of the Atom metadata, and to help you to specify exactly which CICS resource you want to publish, and how its data is laid out.

If you want to publish CICS data that is not in a CICS TS queue, the SupportPac lets you do that, too. It can link to a program that you provide, which can extract data from wherever it likes – from your database manager, for instance – and return it in a container for insertion into the feed. There is a sample program that demonstrates using the sample FILEA file that is distributed with CICS.

Once you can deliver stuff into an Atom feed, it’s then fairly easy to request it from a Web browser using Ajax technology, and the SupportPac also includes some JavaScript to help you to do this. This could lead you on to develop mashups that incorporate CICS data, but the SupportPac doesn’t go that far.

The SupportPac doesn’t only let you request data from CICS, it also lets you manipulate it using a REST interaction style. So, as well as using the HTTP GET method to request TS queue items, you can use the POST, PUT, and DELETE methods to create, update and destroy them as well. The ability to use all four of these methods in a pipeline request did show up a CICS problem, so you have to apply the fix for PK58721 before using the SupportPac.