SlideShare a Scribd company logo
SKILLWISE-CICS APPLICATION
PROGRAMMING
Pre-requisites
 MVS and TSO/ISPF subsystem
 JCL & VSAM concepts
 Programming in COBOL
References
TITLE AUTHOR PUBLISHER
CICS for COBOL
programmer
Doug Lowe Mike Murach &
Associates
CICS Handbook Kageyama Tata McGraw Hill
CICS command level
Programming
Alida M Jatich John Wiley and Sons
Inc.,
CICS using COBOL Andrew M. Suhy Galgotia
Course Schedule
Introduction to CICS
Basic CICS commands
Application programming
CICS-Customer Information Control System
• CICS is a transaction manager designed for rapid, high-volume online
processing. This processing is mostly interactive (screen-oriented).
• CICS being a transaction processing system is also called as Online
Transaction Processing (OLTP) Software.
• The initial version of CICS was macro level i.e. assembler type
commands were used to request a CICS service.
• In CICS command level, each command could achieve the function of
what a series of CICS macros could achieve.
CICS System Concepts
Operating system
mDatabase/Data access methods
mTelecommunication Access methods
CICS Application Programs
(COBOL,PLI,Assembler)
Data
Handling
System Services
Monitoring Functions
Data
Communication
Functions
Application Program Services
CICS
CICS System Components
CICS consists of five major system components
Data-Communication Functions
Data-Handling Functions
Application Program Services
System Services
Monitoring Functions
CICS System Components(contd..)
Data Communication Functions :-
Provides an interface between CICS and terminals
or other systems.
Data Handling Functions :-
Provides an interface between CICS and data.
CICS System Components (contd..)
Application Program Services :-
Provides an interface between CICS and application
programs
System Services :-
Provides an interface between CICS and the operating
system.
Monitoring Functions :-
Monitors various events within CICS and provides a series of
statistics to be used for system tuning.
CICS Control Program and Tables
The core portion of CICS(called the CICS nucleus)
consists of IBM-supplied CICS control programs and
corresponding user-specified CICS control tables.
CICS Region
CICS Nucleus
Application program
TCA
TIOA
PCP
PPT PCT
SCPKCP
TCT
TCP
Others
LOADLIB
Terminal
DCA
CICS Control Program and Tables
CICS Control Program CICS Control Tables
FCP(File Control Program) FCT(File Control Table)
JCP(Journal Control Program) JCT(Journal Control Table)
KCP(Task Control Program) PCT(Program Control Table)
PCP(Program Control Program) PPT(Processing Program Table)
SCP(Storage Control Program) No Associated Table.
SCP(System Initialization
Program)
SIT(System Initialization Table)
TCP(Terminal Control Program) TCT(Terminal Control Table)
TDP(Transient Data Program) DCT(Destination Control Table)
TSP(Temporary Storage Program) TST(Temporary Storage Table)
Transaction
• CICS transaction is a collection of logically related
programs in an application
• All CICS transactions have four character identifiers
associated with them known as Trans IDs
CICS Start-Up
CICS itself is a job in which the main job step is the
CICS System Initialization Program (SIP).
Upon execution SIP loads the corresponding System
Initialization Table (SIT), based on which all the
control programs and tables are loaded.
Finally CICS is ready to execute a transaction within
it’s own region.
CICS SIGNON AND SIGNOFF
CICS supplied transaction CESN/CSSN is used to sign
on to the CICS region. The security information of all
users is registered in SignOn Table(SNT).
The primary function of CICS sign-off is used to
disassociate CICS user identifier from CICS in terms of
security.
Structure of CICS Application Program
IDENTIFICATION DIVISION
• Program-ID is required.
ENVIRONMENT DIVISION
• Only the header is required. No other entries such as INPUT-
OUTPUT SECTION, FILE CONTROL or SELECT needed
DATA DIVISION
• FILE SECTION (including FD) not required.
• WORKING-STORAGE SECTION is required.
• LINKAGE SECTION is optional
Structure of CICS Application
Program(Cont..)
PROCEDURE DIVISION
• Code is mixture of standard COBOL statements and special CICS
commands
• The following statements are prohibited:
ACCEPT, DISPLAY, STOP RUN, CURRENT-DATE, DAY
Any I/O statements
(OPEN,CLOSE,READ,WRITE,REWRITE,DELETE.START)
• SORT feature
• CICS application programs must end with CICS RETURN
command.
Compilation of Cobol-CICS program
SOURCE CODE
TRANSLATOR TRANSLATOR LISTING
TRANSLATED SOURCE CODE
COMPILER COMPILER LISTING
OBJECT MODULE
LINKAGE EDITOR
LOAD MODULE
LINK EDIT LISTING
CICS Command Format
• General Command Format:
EXEC CICS Command
[option (value)] ....
END-EXEC
• command : a CICS service request
• option : one of the options available to command
• value : determines the characteristics of the value to be
placed for the option as detailed information
Example: EXEC CICS SEND
FROM(ws-var)
LENGTH(emprec)
END-EXEC
Program Execution Process
• Plan the transaction and design the program
• Code the program
• Translate, compile and link edit the program to create Load
module
• Define Program in PPT
• Define transaction in PCT with program name
• Define the mapset in PPT
• Define the files, if required, in FCT
• Sign on to CICS
• Enter the transaction identifier
CICS Program Invocation
User Enters
TRANS-ID
CICS finds
TRANS-ID in PCT
to get program name
CICS finds
program name
in PPT
CICS loads program
into memory/
starts program
CICS runs program
in address space
TRANS-ID = Transaction Identifier
PCT = Program Control Table
PPT= Processing Program Table
Basic CICS Commands
SEND command:
To sent data to a terminal.
Syntax
EXEC CICS SEND
FROM(variable name)
LENGTH(length of variable)
END-EXEC.
22
Ways of Initiating a Transaction
Entering a transaction identifier in a terminal with
ENTER key.
Transaction identifier associated with a terminal for
pseudo-conversation.
START command which initiates a transaction
specified in the parameter.
Automatic Transaction Initiation(ATI).
By a 3270 attention identifier by defining PF and PA
keys in PCT for IBM 3270 terminal.
23
Basic CICS commands (Cont…)
RECEIVE command:
To receive data from a terminal.
Syntax
EXEC CICS RECEIVE
INTO (variable name)
LENGTH(length of variable)
END-EXEC.
24
Basic CICS commands (Cont…)
• RETURN command:
To terminate the transaction and return control to CICS.
Syntax:
EXEC CICS RETURN
END-EXEC.
25
Exception Handling in CICS
• To handle expected CICS errors
– HANDLE CONDITION
– RESP
– The above errors can be ignored by using IGNORE
CONDITION or NO HANDLE
26
Handle and Ignore Condition
• HANDLE CONDITION
EXEC CICS HANDLE CONDITION
LENGERR (LENGTH-ERR-PARA)
INVREQ (INVREQ-ERR-PARA)
DUPKEY (DUPKEY-ERR-PARA)
ERROR (GEN-ERR-PARA)
END-EXEC.
• IGNORE CONDITION
EXEC CICS IGNORE CONDITION
LENGERR
END-EXEC.
27
RESP Code Handling
WORKING-STORAGE SECTION.
01 WS-RCODE PIC S9(8) COMP.
---------
PROCEDURE DIVISION.
---------
EXEC CICS SEND
FROM (-----)
LENGTH (-----)
RESP (WS-RCODE)
END-EXEC.
IF WS-RCODE = DFHRESP (LENGERR)
PERFORM LENGTH-ERROR-PARA-0100.
28
Handle Aid Command
It is used to specify the label to which control is to be
passed when the specified AID is received.
Example
EXEC CICS HANDLE AID
PF3(END-ROUTINE)
PA1(CANCEL-ROUTINE)
ENTER(NORMAL-ROUTINE)
ANYKEY(WRONG-KEY-ROUTINE)
END-EXEC.
29
EXEC INTERFACE BLOCK
• EIB contains system related information pertaining to a task .
Gives information like
Task number
Transaction ID and Terminal ID
CICS response code from the last command etc.
30
Attention Identifiers
It indicates which method the terminal operator has
used to initiate the transfer of information from the
terminal device to CICS.
Example
IF EIBAID=DFHPF3
PERFORM END-ROUTINE.
IF EIBAID =DFHPA1
PERFORM CANCEL-ROUTINE.
IF EIBAID =DFHENTER
PERFORM NORMAL-ROUTINE.
GO TO WRONG-KEY-ROUTINE.
31
CICS Supplied Transactions
CESN : CICS Execute Sign ON
CEDA : CICS Execute Definition and Administration
CEMT :CICS Execute Master Terminal
CECI : CICS Execute Command Interpreter
CEDF : CICS Execute Debug Facility
CESF : CICS Execute Sign OFF
CEBR : CICS Execute temporary storage BRowse
CICS Hello World – Sample Program
33
Step 1: Open a tso session.
Step 2: Create a new PDS.
Step 3: Code the following program in a new member.
Execution of Hello World Program
34
After the translation and compilation process, Open an CICS
session for Mainframe. Enter your User id and Password
and press the Enter Key.
Defining Resource in Control Tables
• To define a Transaction entry in PCT Table use the below
command in CICS region.
CEDA DEFINE TRANSACTION(TRAN-
ID) PROGRAM(PROGRAM-NAME)
• Once define process is completed , need
the Installation process for Transaction id in PCT table. Use the
below command for installation.
CEDA INSTALL TRANSACTION(TRAN-ID)
• Once Installation is completed for Tran-id, use the below
command in CICS region To Find out a Transaction- Id details
from PCT table.
CEMT INQUIRE TRANSACTION(TRAN-ID)
35
Defining Resource in Control Tables
(Cont…)
• PPT(Processing Program Table) :This Table contains the name
of the program and map details.
• To define a program entry or MAP entry in PPT table , use the
below command in CICS region.
CEDA DEFINE PROGRAM(PROGRAM- NAME) -
For program definition
CEDA DEFINE MAPSET(MAPSET- NAME)
– For Map definition
36
Defining Resource in Control Tables
(Cont…)• Once define process is completed , need the installation
process for Program, Map
CEDA INSTALLATION PROGRAM(PROGRAM-NAME)
CEDA INSTALLATION MAPSET(MAPSET NAME)
• After completing the installation process for entry, use the
command in CICS region to find out the program details from
PPT Table.
CEMT INQUIRE PROGRAM(PROGRAM-NAME)
• By using below command in CICS region, we can find the Tran-
id Details for the specified program.
CEMT INQUIRE TRANSACTION PROGRAM(PROGRAM-NAME)
37
Defining Resource in Control Tables
(Cont…)
• If CICS program is modified or compiled, the new copy of the
load module has to be loaded into main storage. CEMT is used
to refresh the load module
CEMT SET PROGRAM(PROGRAM-
NAME) NEWCOPY (OR)
CECI SET PROGRAM(PROGRAM- NAME) NEWCOPY
• Using below command we can test the map
CECI SEND MAP(MAPNAME) MAPSET(MAPS ET-
NAME)
Skillwise cics part 1

More Related Content

PPT
Mainframe Architecture & Product Overview
abhi1112
 
PPTX
GDPS and System Complex
Najmi Mansoor Ahmed
 
PDF
Upgrade to zOS V2.5 - Planning and Tech Actions.pdf
Marna Walle
 
PPTX
Z OS IBM Utilities
kapa rohit
 
PPTX
JCL UTILITIES IEBCOPY
janaki ram
 
PPT
CICS basics overview session-1
Srinimf-Slides
 
PPT
System Z operating system
Arpana shree
 
Mainframe Architecture & Product Overview
abhi1112
 
GDPS and System Complex
Najmi Mansoor Ahmed
 
Upgrade to zOS V2.5 - Planning and Tech Actions.pdf
Marna Walle
 
Z OS IBM Utilities
kapa rohit
 
JCL UTILITIES IEBCOPY
janaki ram
 
CICS basics overview session-1
Srinimf-Slides
 
System Z operating system
Arpana shree
 

What's hot (20)

PDF
Sqa esqa-shortage
Maintec Technologies Inc.
 
PDF
Jcl
shivas
 
PPT
JCL MAINFRAMES
kamaljune
 
PPTX
Vsam presentation PPT
Anil Polsani
 
PDF
What's new in MQ 9.1.* on z/OS
Matt Leming
 
DOCX
CCDT(client connection)MQ.docx
sarvank2
 
PPTX
IBM SMP/E
Anderson de Souza
 
PPTX
Resource Access Control Facility (RACF) in Mainframes
Aayush Singh
 
PPTX
DB2 on Mainframe
Skillwise Group
 
PDF
Mainframe IPL Process.pdf
ssuseraa0df4
 
PDF
Tso and ispf
satish090909
 
PPTX
Sistem terdistribusi (dhaa3)
Mawaddah Warahmah
 
PDF
Sysplex in a Nutshell
zOSCommserver
 
PPT
Cics Connectivity
CICS ROADSHOW
 
PDF
Cics tutorial
HarikaReddy115
 
PPT
A Simple History of SOA
Richard Veryard
 
PPT
CICS basic mapping support - session 3
Srinimf-Slides
 
PPTX
Vsam
kapa rohit
 
PPTX
Cloud Computing Principles and Paradigms: 5 virtual machines provisioning and...
Majid Hajibaba
 
PDF
z/OS Communications Server Technical Update
zOSCommserver
 
Sqa esqa-shortage
Maintec Technologies Inc.
 
Jcl
shivas
 
JCL MAINFRAMES
kamaljune
 
Vsam presentation PPT
Anil Polsani
 
What's new in MQ 9.1.* on z/OS
Matt Leming
 
CCDT(client connection)MQ.docx
sarvank2
 
Resource Access Control Facility (RACF) in Mainframes
Aayush Singh
 
DB2 on Mainframe
Skillwise Group
 
Mainframe IPL Process.pdf
ssuseraa0df4
 
Tso and ispf
satish090909
 
Sistem terdistribusi (dhaa3)
Mawaddah Warahmah
 
Sysplex in a Nutshell
zOSCommserver
 
Cics Connectivity
CICS ROADSHOW
 
Cics tutorial
HarikaReddy115
 
A Simple History of SOA
Richard Veryard
 
CICS basic mapping support - session 3
Srinimf-Slides
 
Cloud Computing Principles and Paradigms: 5 virtual machines provisioning and...
Majid Hajibaba
 
z/OS Communications Server Technical Update
zOSCommserver
 
Ad

Similar to Skillwise cics part 1 (20)

PPT
SDNSADNASDSANDSJADNJSADNJSADNSASASASAD SAD AS DSASASDSS
solomonrajuRD
 
PPT
Cics application programming - session 2
Srinimf-Slides
 
DOC
Cics faqs
kapa rohit
 
PDF
Understanding IBM Tivoli OMEGAMON for DB2 Batch Reporting, Customization and ...
Cuneyt Goksu
 
ODP
SHARE 2014, Pittsburgh CICS scalability
nick_garrod
 
ODP
SHARE 2014, Pittsburgh CICS scalability
nick_garrod
 
PDF
Siemens s7 300 programming
satyajit patra
 
PDF
CS304PC:Computer Organization and Architecture Session 33 demo 1 ppt.pdf
Guru Nanak Technical Institutions
 
PDF
Parallel Processing Techniques Pipelining
RNShukla7
 
PPT
Pipelining (COA)okokokokokokokokokokok.ppt
srzonea
 
PPT
Unit 3-pipelining & vector processing
vishal choudhary
 
PPT
Computer_Architecture_3rd_Edition_by_Moris_Mano_Ch_09.ppt
HermellaGashaw
 
PDF
M&m comparison for elcetrical engineering
chauhangopal7354
 
PDF
syn3-en.pdf
FrangoCamila
 
PDF
IBM MQ - Monitoring and Managing Hybrid Messaging Environments
MarkTaylorIBM
 
PPTX
BTCS501_MM_Ch9.pptx
AshokRachapalli1
 
PPTX
Service-Level Objective for Serverless Applications
alekn
 
PPT
An Effective Approach to Migrate Cassandra Thrift to CQL (Yabin Meng, Pythian...
DataStax
 
PPTX
Software Defined Service Networking (SDSN) - by Dr. Indika Kumara
Thejan Wijesinghe
 
SDNSADNASDSANDSJADNJSADNJSADNSASASASAD SAD AS DSASASDSS
solomonrajuRD
 
Cics application programming - session 2
Srinimf-Slides
 
Cics faqs
kapa rohit
 
Understanding IBM Tivoli OMEGAMON for DB2 Batch Reporting, Customization and ...
Cuneyt Goksu
 
SHARE 2014, Pittsburgh CICS scalability
nick_garrod
 
SHARE 2014, Pittsburgh CICS scalability
nick_garrod
 
Siemens s7 300 programming
satyajit patra
 
CS304PC:Computer Organization and Architecture Session 33 demo 1 ppt.pdf
Guru Nanak Technical Institutions
 
Parallel Processing Techniques Pipelining
RNShukla7
 
Pipelining (COA)okokokokokokokokokokok.ppt
srzonea
 
Unit 3-pipelining & vector processing
vishal choudhary
 
Computer_Architecture_3rd_Edition_by_Moris_Mano_Ch_09.ppt
HermellaGashaw
 
M&m comparison for elcetrical engineering
chauhangopal7354
 
syn3-en.pdf
FrangoCamila
 
IBM MQ - Monitoring and Managing Hybrid Messaging Environments
MarkTaylorIBM
 
BTCS501_MM_Ch9.pptx
AshokRachapalli1
 
Service-Level Objective for Serverless Applications
alekn
 
An Effective Approach to Migrate Cassandra Thrift to CQL (Yabin Meng, Pythian...
DataStax
 
Software Defined Service Networking (SDSN) - by Dr. Indika Kumara
Thejan Wijesinghe
 
Ad

More from Skillwise Group (20)

PPTX
Skillwise Consulting New updated
Skillwise Group
 
PPTX
Email Etiquette
Skillwise Group
 
PDF
Healthcare profile
Skillwise Group
 
PDF
Manufacturing courses
Skillwise Group
 
PDF
Retailing & logistics profile
Skillwise Group
 
PPTX
Skillwise orientation
Skillwise Group
 
PPTX
Overview- Skillwise Consulting
Skillwise Group
 
PPTX
Skillwise corporate presentation
Skillwise Group
 
PDF
Skillwise Profile
Skillwise Group
 
PDF
Skillwise Softskill Training Workshop
Skillwise Group
 
PDF
Skillwise Insurance profile
Skillwise Group
 
PDF
Skillwise Train and Hire Services
Skillwise Group
 
PDF
Skillwise Digital Technology
Skillwise Group
 
PDF
Skillwise Boot Camp Training
Skillwise Group
 
PDF
Skillwise Academy Profile
Skillwise Group
 
PPTX
Skillwise Overview
Skillwise Group
 
PPTX
SKILLWISE - OOPS CONCEPT
Skillwise Group
 
PPTX
Skillwise - Business writing
Skillwise Group
 
PPTX
Imc.ppt
Skillwise Group
 
PPTX
Skillwise AML
Skillwise Group
 
Skillwise Consulting New updated
Skillwise Group
 
Email Etiquette
Skillwise Group
 
Healthcare profile
Skillwise Group
 
Manufacturing courses
Skillwise Group
 
Retailing & logistics profile
Skillwise Group
 
Skillwise orientation
Skillwise Group
 
Overview- Skillwise Consulting
Skillwise Group
 
Skillwise corporate presentation
Skillwise Group
 
Skillwise Profile
Skillwise Group
 
Skillwise Softskill Training Workshop
Skillwise Group
 
Skillwise Insurance profile
Skillwise Group
 
Skillwise Train and Hire Services
Skillwise Group
 
Skillwise Digital Technology
Skillwise Group
 
Skillwise Boot Camp Training
Skillwise Group
 
Skillwise Academy Profile
Skillwise Group
 
Skillwise Overview
Skillwise Group
 
SKILLWISE - OOPS CONCEPT
Skillwise Group
 
Skillwise - Business writing
Skillwise Group
 
Skillwise AML
Skillwise Group
 

Recently uploaded (20)

PDF
Doc9.....................................
SofiaCollazos
 
PDF
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PDF
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
PPTX
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
AgileNetwork
 
PDF
The Future of Artificial Intelligence (AI)
Mukul
 
PDF
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
PDF
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
PDF
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
PDF
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
PPTX
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
AgileNetwork
 
PPTX
The Future of AI & Machine Learning.pptx
pritsen4700
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PDF
Peak of Data & AI Encore - Real-Time Insights & Scalable Editing with ArcGIS
Safe Software
 
PDF
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
PDF
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
PDF
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PDF
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
Doc9.....................................
SofiaCollazos
 
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
AgileNetwork
 
The Future of Artificial Intelligence (AI)
Mukul
 
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
AgileNetwork
 
The Future of AI & Machine Learning.pptx
pritsen4700
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
Peak of Data & AI Encore - Real-Time Insights & Scalable Editing with ArcGIS
Safe Software
 
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
Presentation about Hardware and Software in Computer
snehamodhawadiya
 

Skillwise cics part 1

  • 2. Pre-requisites  MVS and TSO/ISPF subsystem  JCL & VSAM concepts  Programming in COBOL
  • 3. References TITLE AUTHOR PUBLISHER CICS for COBOL programmer Doug Lowe Mike Murach & Associates CICS Handbook Kageyama Tata McGraw Hill CICS command level Programming Alida M Jatich John Wiley and Sons Inc., CICS using COBOL Andrew M. Suhy Galgotia
  • 4. Course Schedule Introduction to CICS Basic CICS commands Application programming
  • 5. CICS-Customer Information Control System • CICS is a transaction manager designed for rapid, high-volume online processing. This processing is mostly interactive (screen-oriented). • CICS being a transaction processing system is also called as Online Transaction Processing (OLTP) Software. • The initial version of CICS was macro level i.e. assembler type commands were used to request a CICS service. • In CICS command level, each command could achieve the function of what a series of CICS macros could achieve.
  • 6. CICS System Concepts Operating system mDatabase/Data access methods mTelecommunication Access methods CICS Application Programs (COBOL,PLI,Assembler) Data Handling System Services Monitoring Functions Data Communication Functions Application Program Services CICS
  • 7. CICS System Components CICS consists of five major system components Data-Communication Functions Data-Handling Functions Application Program Services System Services Monitoring Functions
  • 8. CICS System Components(contd..) Data Communication Functions :- Provides an interface between CICS and terminals or other systems. Data Handling Functions :- Provides an interface between CICS and data.
  • 9. CICS System Components (contd..) Application Program Services :- Provides an interface between CICS and application programs System Services :- Provides an interface between CICS and the operating system. Monitoring Functions :- Monitors various events within CICS and provides a series of statistics to be used for system tuning.
  • 10. CICS Control Program and Tables The core portion of CICS(called the CICS nucleus) consists of IBM-supplied CICS control programs and corresponding user-specified CICS control tables.
  • 11. CICS Region CICS Nucleus Application program TCA TIOA PCP PPT PCT SCPKCP TCT TCP Others LOADLIB Terminal DCA
  • 12. CICS Control Program and Tables CICS Control Program CICS Control Tables FCP(File Control Program) FCT(File Control Table) JCP(Journal Control Program) JCT(Journal Control Table) KCP(Task Control Program) PCT(Program Control Table) PCP(Program Control Program) PPT(Processing Program Table) SCP(Storage Control Program) No Associated Table. SCP(System Initialization Program) SIT(System Initialization Table) TCP(Terminal Control Program) TCT(Terminal Control Table) TDP(Transient Data Program) DCT(Destination Control Table) TSP(Temporary Storage Program) TST(Temporary Storage Table)
  • 13. Transaction • CICS transaction is a collection of logically related programs in an application • All CICS transactions have four character identifiers associated with them known as Trans IDs
  • 14. CICS Start-Up CICS itself is a job in which the main job step is the CICS System Initialization Program (SIP). Upon execution SIP loads the corresponding System Initialization Table (SIT), based on which all the control programs and tables are loaded. Finally CICS is ready to execute a transaction within it’s own region.
  • 15. CICS SIGNON AND SIGNOFF CICS supplied transaction CESN/CSSN is used to sign on to the CICS region. The security information of all users is registered in SignOn Table(SNT). The primary function of CICS sign-off is used to disassociate CICS user identifier from CICS in terms of security.
  • 16. Structure of CICS Application Program IDENTIFICATION DIVISION • Program-ID is required. ENVIRONMENT DIVISION • Only the header is required. No other entries such as INPUT- OUTPUT SECTION, FILE CONTROL or SELECT needed DATA DIVISION • FILE SECTION (including FD) not required. • WORKING-STORAGE SECTION is required. • LINKAGE SECTION is optional
  • 17. Structure of CICS Application Program(Cont..) PROCEDURE DIVISION • Code is mixture of standard COBOL statements and special CICS commands • The following statements are prohibited: ACCEPT, DISPLAY, STOP RUN, CURRENT-DATE, DAY Any I/O statements (OPEN,CLOSE,READ,WRITE,REWRITE,DELETE.START) • SORT feature • CICS application programs must end with CICS RETURN command.
  • 18. Compilation of Cobol-CICS program SOURCE CODE TRANSLATOR TRANSLATOR LISTING TRANSLATED SOURCE CODE COMPILER COMPILER LISTING OBJECT MODULE LINKAGE EDITOR LOAD MODULE LINK EDIT LISTING
  • 19. CICS Command Format • General Command Format: EXEC CICS Command [option (value)] .... END-EXEC • command : a CICS service request • option : one of the options available to command • value : determines the characteristics of the value to be placed for the option as detailed information Example: EXEC CICS SEND FROM(ws-var) LENGTH(emprec) END-EXEC
  • 20. Program Execution Process • Plan the transaction and design the program • Code the program • Translate, compile and link edit the program to create Load module • Define Program in PPT • Define transaction in PCT with program name • Define the mapset in PPT • Define the files, if required, in FCT • Sign on to CICS • Enter the transaction identifier
  • 21. CICS Program Invocation User Enters TRANS-ID CICS finds TRANS-ID in PCT to get program name CICS finds program name in PPT CICS loads program into memory/ starts program CICS runs program in address space TRANS-ID = Transaction Identifier PCT = Program Control Table PPT= Processing Program Table
  • 22. Basic CICS Commands SEND command: To sent data to a terminal. Syntax EXEC CICS SEND FROM(variable name) LENGTH(length of variable) END-EXEC. 22
  • 23. Ways of Initiating a Transaction Entering a transaction identifier in a terminal with ENTER key. Transaction identifier associated with a terminal for pseudo-conversation. START command which initiates a transaction specified in the parameter. Automatic Transaction Initiation(ATI). By a 3270 attention identifier by defining PF and PA keys in PCT for IBM 3270 terminal. 23
  • 24. Basic CICS commands (Cont…) RECEIVE command: To receive data from a terminal. Syntax EXEC CICS RECEIVE INTO (variable name) LENGTH(length of variable) END-EXEC. 24
  • 25. Basic CICS commands (Cont…) • RETURN command: To terminate the transaction and return control to CICS. Syntax: EXEC CICS RETURN END-EXEC. 25
  • 26. Exception Handling in CICS • To handle expected CICS errors – HANDLE CONDITION – RESP – The above errors can be ignored by using IGNORE CONDITION or NO HANDLE 26
  • 27. Handle and Ignore Condition • HANDLE CONDITION EXEC CICS HANDLE CONDITION LENGERR (LENGTH-ERR-PARA) INVREQ (INVREQ-ERR-PARA) DUPKEY (DUPKEY-ERR-PARA) ERROR (GEN-ERR-PARA) END-EXEC. • IGNORE CONDITION EXEC CICS IGNORE CONDITION LENGERR END-EXEC. 27
  • 28. RESP Code Handling WORKING-STORAGE SECTION. 01 WS-RCODE PIC S9(8) COMP. --------- PROCEDURE DIVISION. --------- EXEC CICS SEND FROM (-----) LENGTH (-----) RESP (WS-RCODE) END-EXEC. IF WS-RCODE = DFHRESP (LENGERR) PERFORM LENGTH-ERROR-PARA-0100. 28
  • 29. Handle Aid Command It is used to specify the label to which control is to be passed when the specified AID is received. Example EXEC CICS HANDLE AID PF3(END-ROUTINE) PA1(CANCEL-ROUTINE) ENTER(NORMAL-ROUTINE) ANYKEY(WRONG-KEY-ROUTINE) END-EXEC. 29
  • 30. EXEC INTERFACE BLOCK • EIB contains system related information pertaining to a task . Gives information like Task number Transaction ID and Terminal ID CICS response code from the last command etc. 30
  • 31. Attention Identifiers It indicates which method the terminal operator has used to initiate the transfer of information from the terminal device to CICS. Example IF EIBAID=DFHPF3 PERFORM END-ROUTINE. IF EIBAID =DFHPA1 PERFORM CANCEL-ROUTINE. IF EIBAID =DFHENTER PERFORM NORMAL-ROUTINE. GO TO WRONG-KEY-ROUTINE. 31
  • 32. CICS Supplied Transactions CESN : CICS Execute Sign ON CEDA : CICS Execute Definition and Administration CEMT :CICS Execute Master Terminal CECI : CICS Execute Command Interpreter CEDF : CICS Execute Debug Facility CESF : CICS Execute Sign OFF CEBR : CICS Execute temporary storage BRowse
  • 33. CICS Hello World – Sample Program 33 Step 1: Open a tso session. Step 2: Create a new PDS. Step 3: Code the following program in a new member.
  • 34. Execution of Hello World Program 34 After the translation and compilation process, Open an CICS session for Mainframe. Enter your User id and Password and press the Enter Key.
  • 35. Defining Resource in Control Tables • To define a Transaction entry in PCT Table use the below command in CICS region. CEDA DEFINE TRANSACTION(TRAN- ID) PROGRAM(PROGRAM-NAME) • Once define process is completed , need the Installation process for Transaction id in PCT table. Use the below command for installation. CEDA INSTALL TRANSACTION(TRAN-ID) • Once Installation is completed for Tran-id, use the below command in CICS region To Find out a Transaction- Id details from PCT table. CEMT INQUIRE TRANSACTION(TRAN-ID) 35
  • 36. Defining Resource in Control Tables (Cont…) • PPT(Processing Program Table) :This Table contains the name of the program and map details. • To define a program entry or MAP entry in PPT table , use the below command in CICS region. CEDA DEFINE PROGRAM(PROGRAM- NAME) - For program definition CEDA DEFINE MAPSET(MAPSET- NAME) – For Map definition 36
  • 37. Defining Resource in Control Tables (Cont…)• Once define process is completed , need the installation process for Program, Map CEDA INSTALLATION PROGRAM(PROGRAM-NAME) CEDA INSTALLATION MAPSET(MAPSET NAME) • After completing the installation process for entry, use the command in CICS region to find out the program details from PPT Table. CEMT INQUIRE PROGRAM(PROGRAM-NAME) • By using below command in CICS region, we can find the Tran- id Details for the specified program. CEMT INQUIRE TRANSACTION PROGRAM(PROGRAM-NAME) 37
  • 38. Defining Resource in Control Tables (Cont…) • If CICS program is modified or compiled, the new copy of the load module has to be loaded into main storage. CEMT is used to refresh the load module CEMT SET PROGRAM(PROGRAM- NAME) NEWCOPY (OR) CECI SET PROGRAM(PROGRAM- NAME) NEWCOPY • Using below command we can test the map CECI SEND MAP(MAPNAME) MAPSET(MAPS ET- NAME)