Introduction To CICS: What Is Mean by Re-Enterant Program
Introduction To CICS: What Is Mean by Re-Enterant Program
What is mean by re-enterant program
A Re-entrant program is one which does not modify itself so that it can
reenter into itself and continue processing after an interruption by the
operating system. Hence a non-reentrant program cannot be used in a
Muti-threading environment.
The reentrant programs are used in online systems, and they make it
possible for the operating system to establish a multithreading
environment which most online systems require.
Physical Map
Are assembly language programs created and placed in a load library.
Physical maps control screen alignment plus the sending and receiving
of constants and data to and from terminal.
Symbolic Map
Is to store named variables data in a COBOL program. Maps will be
placed at source library.
Pseudo-conversational pgms
The programming technique in which the task will not wait for the
end-user replies on the terminal. Terminating the task every time the
application needs a response from the user and specifying the next
transaction to be started when the end user presses any attention key.
Conversational
Online program that reads a second input from the terminal (waits for
response to do additional process holds resources during 'wait')
Non-Conversational
Online program that processes one input responds and ends.
EIB area
Some of the information available in EIB area
EIBAID : attention identifier associated with the last input operation
EIBCALEN : length of the commarea passed field
EIBDATE : date
EIBRCODE : the CICS response code returned after the function
requested by the task has been completed.
IEBRCODE : 6 bytes codes indicating the response code resulting
from the last command issued
EIBTRANID : Transaction identifier of the current task
How can you start CICS transaction other than by keying the
transaction ID at the terminal?
1. By coding an EXEC CICS START in the application pgm
2. By coding the transid and a trigger level on the DCT table
3. By coding transid in the EXEC CICS RETURN
4. By associating an attention key with the Program Control Table
5. By embedding the TRANSID in the first four positions of a screen
sent to the terminal
CICS Components
Data handling component: it is an interface between CICIS and data.
VSAM, BDAM, DB2, DL/I, etc.,
LINK :
It is used to pass control from an application program at one logical
level to an application program at the next lower logical level. If the
linked to program is not already in main storage, it will be loaded.
When the RETURN command is executed in the linked to program,
control is returned to the program initiating the linkage at the next
sequential executable instructions.
XCTL :
It is used to transfer control fron one application program to another at
the same logical level. The program from which control is transferred
is released. If the program to which control is transferred is not already
in main storage, it will be loaded.
START :
It is used to start a task, on a local or remote system, at a specified
time. The starting task may pass data to the started task, and may also
specify a terminal.
The TRANSID, TERMID and FROM options specify the transaction
to be executed, the terminal to be used and the data to be used
respectively.
HANDLE ABEND
During abnormal termination of a task, to provide a progra-level abend
exit facility so that you can include an exit routine of your own that
can be executed when required.
Tips
1. In CICS the ENTER key does not fall under the ANYKEY option.
But all other attention identifier keys that are not defined in
HANDLE CONDITION fall under ANYKEY
2. Abend codes
AEID = EOF
AE19 = MAPFAIL
AEIV = LENGERR
AE10 = DUPKEY