CICS Related Book)

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 7

CICS 22-02-2010

CICS( customer information control system)

Or

OLTP(On-line transaction processing )

Online processing:

a) Screen based interactive system


b) Only small range of data processing can be done
c) Programs run through (tso)
d)Online system is a system environment where many transactions run concurrently.

Batch Processing:

a) non-screen based interactive system


b) large amount of data processing can be done
c) program runs through cics
d) Batch system is a system environment where jobs run one by one in a sequence

some important points regarding CICS

a)CICS for programmers is nothing but the screen that is used to receive and to send data
from terminal to RDBMS and VSAM

b) but actually CICS is mini operating system

c)it handles multiple program execution at a time

d)earlier CICS was macro level but now command level CICS is available

e)CICS is data base/ data communication control system but IMS is data base control
system it means (IMS cannot be linked with any databases or any access methods

f)it handles data related activities like reading,writing,deleting etc

g)in CICS screen formats need not to be described in the program


Major components that are in cics

a) data communication component


b) data service component
c) application service component
d) distributed service component

data communication component

it takes care of sending and receving of data form terminal to the sreen
that is mainly called as VTAM(virtual telecommunication method)

it takes care of MRO(multi region operaton )

it takes care of Inter System Communication)

data service component

it interacts with data

it interacts with relational data base management system like db2

it interacts with virtual access methods like KSDS,ESDS,RRDS etc

application service component

it handles multiple program execution at a time

it provides the facility of CEDF(execution diagnostic facility) that is nothing but the
debugging of the cics commands that are used in the program

it also provides CECI(cics command interprutter) that is nothing but the pre-testing of the
cics commands that are used in the program

distributed service component

it interacts with other subsystems

CICS tabels
there are about 40 to 50 tabels are available in CICS in that few of them which are
frequently used by the CICS administrator and programmers are

a) PPT(program processing table)


b) PCT (program control table)
c) RCT (resource control table)
d) FCT(file control tabel0
e) DCT(destination control table)
f) SNT(sign-on table)
g) TST(temporary storage table)
h) TCT(terminal control table)

PPT table : information about all the programs and mapset should be entered in ppt table
for execution of the cics programs

Parameters in ppt are

a)name of the program/mapset


b)group name
c)threats(how many programs can be used at a time)

PCT table : information about all the cics transaction should be entered in PCT table

Parameters in PCT table:

a)name of the program


b)transaction id(that is 4 characters)
c)group name
d)task request (eg PF1,PF2………)
e)automatic restart(if transaction or task ends abnormally then use it)
f)priority

FCT table: information about all the VSAM files should entered in this table

Parameters in FCT

a)file name
b)program name
c)group name
d)orginal dataset name
e)key length(if it is KSDS)
f)current status of the dataset
1)read
2)write
3)delete
4)browse

DCT table: information about all tdq and tsq should be entered in this table

a)program name
b)group name
c)trigger level(for intera-partation tdq that is for ATI(automatic task initiation)

RCT table: information about all the db2 tabel should be entered

a)program name
b)group name
c)db2 plan name

SNT :related to log of log on of the CICS region

TCT :CICS terminal related issues are related in this TCT

TST: if any recovery of data form TSQ is required then it is used

Program related ideas:

1)Cics + cobol program


PPT ,PCT, DFHEITVL(translation)

2) CICS + cobol +map + vasm


PPT(pgm),PPT(map),PCT,FCT,DFHEITVL,DFHMAPS

3) CICS + cobol+ db2 + tsq or tdq + maps


PPT(pgm),PCT(map),DCT,RCT,DFHEITVL,DFHMAPS

CICS + cobol ----- translation -----load module -----

MAPS and MAPSETS

Maps can be created manually and also by using SDF tool (screen definition facility)

Maps manually can be created by using BMS macros


These three macros are used to create maps and mapsets

1) DFHMSD
2) DFHMDI
3)DFHMDF

1)DFHMSD: some of the parameters that are in msd are

1) TYPE: a)maps(only physical map will be displayed)


b)&sysparm (both symbolic and physical map will be displayed)
c)Desect (only symbolic map will be displayed)
d)Final (it is used during the end of the DFHMSD)

2) MOD : a)in (it is used only to receive the data from screen)
b)Out (it is used to send data to the screen )
c)Inout (it is used both to send and receive data from the screen)

3) CTRL : a)freekb(to free the keyboard when map is first displayed)


b)Fset (this is regarding to the attribute byte that is MDT(modified data tag)
MDT is nothing but the last bit in the attribute byte it indicates
c)Alarm (when ever map is displayed beep sound will be there)

4)STORAGE: a)auto(all maps in a mapset will be stored in separate memory and its
programmers risk to take care about the map related issues)
b)base:default is base and whole mapset will be stored in single memory)

5)TIOAPEX(terminal input output area prefix)


a)yes: symbolic map will take extra 12 bytes of memory for displaying
and the map will be displayed properly
b)no : symbolic map will not take extra memory and map will not be
displayed properly

6)MAPATTS(color,highlight,outline)
7)DSATTS(color,hilight,outline)
8)EXTATT: yes: if it is then only we can use MAPATTS,DSATTS parameter
9)LANG: cobol ,c,PL/1 etc

Note: compulsory parameters are TYPE, MOD, LANG

2)DFHMDI : some of the parameters that are in msd are

1)SIZE=(24,80) this is the stranded size for a map


Note we can change the size also but standard size used is 24,80
2)LINE=1(if the size is 24,80 then the line will be 1 otherwise line value will changes)
3)COLOUM=1(if the size is 24,80 then the line will be 1 otherwise line value will
changes)

Note: all the three parameters are compulsory

3)DFHMDF: some of the parameters that are in msd are

1)POS=(line,coloum) (where actually the value to be inserted )


2)LENGTH=nn(length of that specific variable)
3)ATTRB=(frset,num,)
4)COLOR=(this is related to CICs region we are using)
5)HIGLIGHT=( this is related to CICs region we are using)
6)OUTLIN=(above,right,left,below,box)
7)JUSTIFY=(right,left)
8)INITIAL=’ nnnn nn ‘(initial value want to be displayed )

Note: compulsory parameters are POS, LENGTH,ATTRB

By using these three parameters we can create map and mapset and once map is created it
should be compiled with DFHMAPS and then it can be used for further process

Once the map is created we can move on to programming logics and table entries

PSEUDO CONVERSATION :

Any CICS program can communicate with a pair of send and receive commands
In between that send and receive command the resource held by the program is released
and once again the program restarts from procedure division this is pseudo conversation
(And the resource may be TSQ,TDQ,VSAM,DB2 tabels etc)

NOTE : all the load modules and copy members are stored in the cics terminal itself

And uses the single copy of load module for execution of more than one program but for
every program there will be separate task because every program uses separate data
hence task will be different

PHYSICAL MAP: the load module of the entire map itself is the physical map

SYMBOLIC MAP : copy members of the map variables that are used in the program

All symbolic map consists of some important variables up to now i come across only few
variables some of them are
Input : depends on the screen variables
Output depends on the screen variables
Attribute 1 byte
Flag 1 byte
Length s9(4) comp

Input variables are used to get data from the screen


Output variables are used to send the data to the screen
Attribute variables are used to change to maintain the characterstics of the map variables
Length variable is used for cursor positioning and also to do get or find the value
changed during in the map send or receive command

You might also like