CICS is the power of mainframe. It has all the capabilities to handle online transactions. The ppt covers highly useful CICS concepts to refresh your CICS knowledge quickly.
Size: 778.19 KB
Language: en
Added: Jul 02, 2017
Slides: 45 pages
Slide Content
CUSTOMER INFORMATION
CONTROL SYSTEM (CICS)
Day 1 – Session 1
Updated in Nov 2004
COURSE OBJECTIVES
After completing this course you should be able to
Appreciate the salient features of CICS as a
Transaction Processing system and as a DB/DC
System
Create user interfaces using CICS Basic Mapping
Support (BMS).
Access and modify VSAM files, database tables.
Handle normal and abnormal CICS exception
conditions.
Use advanced features of CICS: Data Tables,
Intercommunication, etc.
SESSIONS OUTLINE
CICS – Overview
CICS - Application Programming Considerations
CICS - Screen Handling - Basic Mapping Support
CICS - Error and Exception Handling
CICS - File and Database Handling
CICS - Program Control
CICS - Queuing Facility
CICS - Interval &Task Control
CICS - Testing and Debugging
SESSIONS OUTLINE – ADVANCED
TOPICS
CICS - Storage Control
CICS - CICS Intercommunication
CICS - Restart and Recovery
CICS - Administration and Set-up
DB2-CICS - Case Study
CICS - OVERVIEW
Session 1
SESSION 1 : OBJECTIVES
To Understand the
Business requirements for an online transaction processing
environment
Features and Strengths of CICS
CICS Interface and Languages available to access CICS
CICS Concepts and Terminologies
Transaction Flow
Batch System Online System
Batch System
Online
System
Transaction file
MASTER FILE
REPORTS
VSAM / DATABASE
Terminals
BATCH AND ONLINE SYSTEM
AN ONLINE SYSTEM
ONLINE processing allows a user to interact with a
computer and access its resources via a terminal
Example :Railway Reservation system
Sales Processing system
Costing system
Stock Clearing System
WHAT IS CICS ?
Stands for Customer Information Control SystemCustomer Information Control System
A world-class transaction processing system - by IBM
in 1960s
Availability
•Four versions in OS/390, CICS Transaction server 2.1 in z/OS
•AS/400, RISC/6000 & OS/2
•PC Servers
Provides an interface between application programs
and operating system services, such as data access
and communication access
CICS INTERFACE
CICS CONCEPTS
CICS runs as a batch job and can handle hundreds of interactive users
that are using a variety of applications
More than one CICS system (or re gion) can run on the same computer
at the same time.
Programs running in one region do not interfere with programs running
in another region
TRANSACTIONS AND TASKS
CICS locates a application program using a four character
code called Transaction-identifier
Application programs are associated with a transaction which
when invoked starts a Task
A task is the execution of an application program for a
specific user
Several users may invoke the same transaction, with each
given a separate task
Transactions and Tasks
TASK 1 TASK 2
TXNA TXNA
working
storage for
task 1
working
storage for
task 2
TASK 1 started at terminal1 by user1
executes TXNA.
TASK 2 started at terminal2 by user2
executes the same TXNA.
These two tasks use the same load
module associated with TXNA.
However, the working storage for
each task is different.
FEATURES AND STRENGTHS OF
CICS
Multitasking within a single address space provided by the
Operating System
Multithreading allowing one copy of program loaded and
shared by all users
Reentrancy of programs providing separate copy of working
storage for each Task
Quasi-re-entrant
Priority handling
CICS – USER INTERFACES
Majority of CICS applications written for 3270 display
terminals or PCs that are emulating 3270 terminals
Pre se ntatio n and Busine ss lo gic pro vide d by CICS
the use r inte rface is imple me nte d using Basic Mapping Suppo rt (BMS)
CICS can also be used with other types of user
interfaces
CICS at the back-end provides business logic
Front end provides presentation logic
A VB pro g ram
A fro nt-e nd pro g ram writte n in a no the r platfo rm
We b applicatio ns run in a We b bro wse r thro ug h HTTP
CICS PROGRAMMING
LANGUAGES COBOL
Most used in mainframe
Assembler language
Fairly popular till 1970s
PL/I
Alternative to COBOL in 1970s & 1980s
C and C++
Object oriented classes can be developed that access CICS services
Java
Newest language for writing CICS applications
Object oriented classes can be developed that access CICS services
System services
Monitoring functions
Application program
services
CICS SYSTEM
Operating System ( MVS/ESA)
Database
Access
Method (DL/I,
DB2)
Data
Access
(VSAM/
BDAM )
Telecommunication
Access method
(VTAM,TCAM,BTAM)
CICS/MV
S
Data
handling
functions
Data
Storage
Data
communication
functions
CICS APP PROGRAMS (Cobol, PL/I, Assembler)
Terminal
Other systems
CICS - TERMS AND DEFINITIONS
Logical Unit of Work (LUW)
Synchronization Point (Syncpoint)
Basic Mapping Support
Transaction Types
LOGICAL UNIT OF WORK (LUW)
From the application designer's point of view, a LUW is
a
sequence of actions that needs to be completed before
any of
the individual actions can be regarded as complete as
shown
below
- - - - - - - - - - - - - - - LUW - - - - - - - - - - - - - - -
Task A |----------------|---------------------|---------------------------¦
SOT Update Delete EOT
File - 1 2 records (SP)
SYNCHRONIZATION POINT
(SYNCHPOINT)
CICS automatically issues a SYNCPOINT at the end
of each task
All the updates made by the task so far will be
committed
All the resources maintained by the dynamic log will
be released
BMS
Interface between the application program and the terminal
control (3270 devices)
Consists of supplied BMS modules and user-defined screen
maps
Provides format independence which simplifies positioning of
data on terminal
Uses maps as requested by the application program to
control the formatting of terminal I/O data
Maps created using the online tool SDF/CICS
CICS APPLICATION PGM
COMMUNICATION
TRANSACTION TYPES
Conversational Program
Program (transaction) remains idle when waiting for
user response
Program, data areas, control blocks remain in main
storage resulting in high virtual storage utilization
Pseudo-conversational Program
Program ends after it sends data to a terminal
Program is in storage only when processing data,
otherwise storage released for other
transactions/tasks.
TRANSACTION TYPES (CONTD.)
Non-Conversational Program
Programs (transactions) that are executed without
user intervention
Examples : Automatic Task Initiator, Batch Jobs
CICS SAMPLE SCREEN – CUSTOMER
INQUIRY
STRUCTURE CHART OF A
CUSTOMER INQUIRY PROGRAM
CONVERSATION TYPE -
ILLUSTRATION
EXEC CICS SEND
SEND MAP(map_name) MAPSET(mapset_name)
FROM(data_area)
END_EXEC.
IF CONVERSATION-TYPE = CONVERSATIONAL THEN
EXEC CICS RECEIVE
MAP(map_name) MAPSET(mapset_name)
INTO(data_area)
END_EXEC
END-IF
EXEC CICS RETURN
TRANSID(txn_name)
END_EXEC.
CICS TRANSACTION FLOW
CICS- CONTROL PROGRAMS AND
TABLES
(IBM SUPPLIED)
CICS
File
Contro
l
(FCP)
Progra
m
Control
(PCP)
Task
Contro
l
(KCP)
Journal
Contro
l
(JCP)
Terminal
Control
(TCP)
Transien
t
Data
(TDP)
Temporar
y
Storage
(TSP)
Storag
e
Contro
l
(SCP)
CICS CONTROL PROGRAMS & TABLES
(USER SPECIFIED)
Terminal Control Program - TCT
Task Control Program - PCT
Program Control Program - PPT
File Control Program - FCT
Resource Control Program - RCT
Journal control Program - JCT
Temporary Storage Program - TST
Transient Data Program - DCT
Storage Control Program - SCT
TERMINAL CONTROL FLOW (TCT)
The Terminal Control
Table (TCT) has an entry
for each terminal
Together with Basic
Mapping Support, terminal
control provides an
application program, the
ability to communicate
with a terminal
TASK CONTROL (PCT)
Task control validates
transactions by checking the
Program Control Table (PCT)
Task is created after the
transaction is validated
Concurrent processing of more
than 1 task is possible
(multitasking)
Error message is sent to the
terminal by task control for an
invalid transaction
PROGRAM CONTROL (PPT)
Task Control passes control to
Program Control, which keeps
track of the location of every
application program
The Processing Program Table
(PPT) contains the program
size, program source language,
and other program information
Stores the program library
address the first time to make
subsequent loading of program
faster
USER APPLICATION PROGRAMS
The application program processes the input
and issues commands to request services
that are needed in performing the function of
the application
FILE CONTROL AND DATABASE
The application program issues
a command to retrieve a record
from a VSAM file
VSAM/(B)DAM are the only files
used in CICS and they should
be defined in the File Control
Table (FCT)
For access to relational
database as DB2, define the
attachment to DB2 in the
Resource Control Table (RCT)
JOURNAL CONTROL
The Journal control facility
automatically logs the changes
on the system log, when an
application changes record in a
file
System log defined in the
Journal Control Table (JCT)
enables CICS to back-out
changes when a task fails
Maximum of 99 journals
TRACE CONTROL
Tracing is a CICS debugging
aid
CICS can write trace entries in
a Trace Table (TRT)
Execute Diagnostic Facility
(EDF) is another feature that
enables interactive debugging
Command Interpreter (CECI)
allows a programmer to enter
and test CICS commands at the
terminal directly
DUMP CONTROL
In case of serious error
conditions, CICS will
abend the task with a task
dump
The CICS transaction
ABEND message
contains the ABEND
code.
TEMPORARY STORAGE CONTROL
Controls storage of data in main
storage or on disk for later
retrieval
Records can be retrieved in the
same sequence in which they
are stored
Records reside in Temporary
Storage Queue (TSQ) unless
deleted or when CICS closes
Temporary Storage Table
(TST) is required for recovery
purpose
TRANSIENT DATA CONTROL
CICS queuing function –
sequential queue
The Destination Control
Table (DCT) contains the
queue definitions
Transient data has 2 types
of queue:
Intra-partition transient data
Extra-partition transient data
ENDING THE TRANSACTION
Output of a CICS process
Program extracts necessary fields from the VSAM record and setup an output area to
be sent to the terminal
Task ends when the application program issues the
RETURN command
All storage associated will be released
Other tasks can use the storage just released
STARTING A TASK
TXN1
Trans. Program
TXC1 MAPPGC1
TXC2 MAPPGC2
TXN1 TXNPGM1TXN1 TXNPGM1
TXN2 TXNPGM2
PCT
Program. Location
MAPPGC1 In Storage
MAPPGC2 On Disk
TXNPGM1 In StorageTXNPGM1 In Storage
TXNPGM2 On Disk
PPT
Load Module Library
MAPPGC1 MAPLIB
MAPPGC2 MAPLIB
TXNPGM1 PGMLIBTXNPGM1 PGMLIB
TXNPGM2 PGMLIB
CICS Address Space
TXNPGM1
MAPPGC1
CICS SYSTEM RESPONSIBILITIES
Systems Programmer
Operators (Administrators)Application Programmer
IT Management
SESSION 1: SUMMARY
• Overview of Online transaction processing environment
• CICS Terms and Definitions
•Transaction, task, LUW, conversational and
pseudo-conversational style
• CICS control programs and control tables
•CICS System Responsibilities
REFERENCES
Yukihisa Kageyama, CICS Handbook, McGraw Hill Book Co.
CICS/ESA Application Programming Guide, Ver.3, Release
2.1.
CICS/ESA Intercommunication Guide
Joseph Le Bert, CICS Made Easy, McGraw Hill International
Editions, 1987
Raul Menendez and Doug Lowe, CICS for the COBOL
Programmer, Part 1&2, Mike Murach & Associates, 1992