Follow

Five-minute CICS Transaction Demo

Overview

You can read the CICS Section of the Getting Started Guide for a better understanding of how Elastic COBOL and Elastic Transaction Platform combine to provide full CICS functionality in a stand-alone server environment or on the Enterprise Legacy Platform-as-a-Service environment.  Or, you could just follow this cookbook recipe and attached programs to run a CICS transaction within 5 minutes or so.  

The CICS demo transaction here represents the pseudo-conversational nature of CICS/COBOL programming, roughtly akin to way Web services programming is used today in Web 2.0 applications.  It shows BMS (green screen) user interface and CICS journalling (debugging log) facility.

You can use the enclosed demo programs to add more transactions that use SQL or CICS file I/O mapped to SQL databases or other advanced features.  See the Getting Started Guide for a more complete demo and screenshots of the various Eclipse and Elastic COBOL dialog boxes mentioned here.

Cloud or Desktop Based Demos

You can run this demo in the cloud using the trial or free versions of  Elastic COBOL and Enterprise Legacy Platform-as-a-Service.  Sign up for the free version of each and "Power On" instances of your development environment and deployment environment through the portal at https://paas.heirloomcomputing.com.  No other setup is required.

Or, you can set up the Elastic COBOL interactive development environment and a JEE Application Server (which acts as the CICS region or LPAR) on your desktop.

Desktop Setup

Register for the 30-day free trial or non-commercial use version of Elastic COBOL https://paas.heirloomcomputing.comat .  Download the Eclipse development environment with the Elastic COBOL IDE plug-in from that site.  Also download the latest Geronimo Application Server and install it on your desktop system.

COBOL Project Setup

A COBOL Project within Eclipse sets up the executable programs for one or more CICS transactions.  Use the two files attached to this article to set up the project.

  1. Start Eclipse with a new workspace directory and switch to the "Elastic COBOL" perspective using the Perspectives button in the upper-right.
  2. Create a new COBOL Project with the Eclipse "File" > "New" menu.  
  3. From the New COBOL Project dialog box, name the project "ctst" and select "Compatibility" pull-down selection of "Elastic Transaction Platform Template" 
  4. Copy the "CICSCTST.CBL" file into the "ctst" project's "cobol_source" folder (e.g., by dragging the file name from a Windows Explorer window to the Eclipse Navigator window, cobol-source folder) 
  5. Copy the "BMSCTST.BMS" file into the "ctst" project's "resources" folder. 
  6. Right-click on "BMSCTST.BMS" and select "Elastic COBOL BMS" > "Generate Copyfile" 
  7. Right-click on "BMSCTST.BMS" and select "Elastic COBOL BMS" > "Generate HTML" 
  8. Use Eclipse menu "Project" > "Clean" to recompile the program 
  9. Deployment Project Setup

An ETP Project sets up the CICS configuration (SYSID, APPLID, transaction mappings) that are necessary to tie the COBOL program to a set of CICS names.

  1. Create a new ETP Project named "ctst-deploy" with the Eclipse "File" > "New" menu
  2. Double-click on the "ctst-deploy" file "project.etp_deploy_settings" to begin editing the ETP Deployment Settings 
  3. In the General tab, select the "ctst" project and set the SYSID to "ctst" 
  4. In the Programs tab. add the program "cicsctst" and select "cicsctst" class from the list of classes 
  5. In the Transactions tab, add the transaction "init" and associate it with the program "cicsctst" 
  6. In the Journals tab, add the journal "info" as type "SYSOUT" for this output to go to Geronimo's "geronimo.out" logging file or as type "TextFile" and specify a filename like "C:\\temp\\ctst.txt" to have a separate log 
  7. Click "Apply" in the ETP Deploy Settings 

Deploy the CICS Region

This series of steps define the CICS Region embedded in the ear file toy our JEE Application Server.  If running in the cloud (your region was started with the paas.heirloomcomputing.com portal) choose to deploy as "Cloud".  If running on a desktop, choose "Traditional."

  1. Right click on the "ctst-deploy" project in the Eclipse Navigator pane and select "Export" > "Elastic COBOL" > "Elastic Transaction Platform Deploy Wizard" 
  2. In the ETP Deploy Wizard dialog box, use "Browse" next to "Ear File" to select a folder in which to place the Enterprise Archive then append "/ctst.ear" to it 
  3. In the ETP Deploy Wizard dialog box, click "Finish" and "OK" and "OK" 
  4. Start Geronimo or other JEE App Server. This can be done from within Eclipse with the "Servers" view or from Geronimo's startup.bat command 
  5. For Geronimo, access "http://localhost:8080/console" and enter "system" and "manager"  (in the cloud use your registration name (email box without the "@company name") and password you registered as)
  6. On the "Deployer" tab, select the "ctst.ear" file you exported

Run the CICS Transaction

  1. Enter "http://localhost:8080/ctst/servlet" in a new browser tab to start the transaction 
  2. Enter "123 " in the first field and either "$1234.56" or "1234.56" in the second field and hit the "Enter" button 
  3. If started in Eclipse and the journal has been set to "SYSOUT" or "SYSERR" the CICS journal message will appear in Eclipse's console. If using a Text File journal, the entry will be sent to the file you specified.

Homework

This demo is not complete.  For example, if you hit PF3 it will attempt

EXEC CISC
    RETURN TRANSID('CMNU')
END-EXEC

but there is no menu transaction.  It will ABEND with code AEI0 error PGMIDERR.  Copy the code and map and rename everything CMNU, adding in the new program and transaction into the deploy settings.  Change the map and the logic to act like a menu selecting CTST.   Add other features from your CICS usage into this project.  Have fun with CICS!  According to a May 2013 study 15% of all new programs built by IT are done are in COBOL!

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.
Powered by Zendesk