cics
DESCRIPTION
cicsTRANSCRIPT
DBSS Training Centre
CICS 1
C I C S(Customer Information Control System)
C I C S(Customer Information Control System)
DBSS Training Centre
CICS 2Table of ContentsTable of Contents
• Introduction to CICS
• Basic Mapping Support
• Program Control
• File Control
• Queues
• Interval and Task Control
• Recovery and restart
• Program preparation
• CICS Supplied Transactions
• Screen Definition Facility
DBSS Training Centre
CICS 3
Introduction to CICSIntroduction to CICS
DBSS Training Centre
CICS 4
Introduction Introduction
• Customer Information Control System -CICS developed in late 1960s as a DB/DC control system
• CICS provides an interface between the Operating System and application programs
• Macro Level CICS - initial version Assembler macro to request CICS services
• Command Level CICS - high level lang.version - commands to request CICS services - Single command can replace series of macros
DBSS Training Centre
CICS 5
Batch & Online : DifferencesBatch & Online : Differences
• BATCH SYSTEM
1. Input data is prepared and given in sequence (file)
2. Processing sequence is predictable and hence restarting the process in case of failure is easy.
3. Programs and files can’t be shared
4. Programs are scheduled through jobs
• ONLINE SYSTEM
1. Data is entered as needed not in sequence (terminal)
2. Since processing seq. is unpredictable, special recovery/restart proc. is reqd. in case of failure.
3. Programs and files can be shared
4. Transaction can be run at any time
DBSS Training Centre
CICS 6
CICS & Operating System CICS & Operating System
Operating System
CICS
User’sApp.Prg
Files &Database
Enter Code :
DBSS Training Centre
CICS 7
DB/DC System DB/DC System
Terminals
Central System
Data Base
DBSS Training Centre
CICS 8
CICS System ServicesCICS System Services
• Data-Communication Functions
• Data-Handling Functions
• Application Program Services
• System Services
• Monitoring Functions
DBSS Training Centre
CICS 9
Task &Transaction Task &Transaction
• Task :- A basic unit of work which is scheduled by the
operating system or CICS
Ex -Read from and write to the terminal
• Transaction :- An entity which initiates execution of a task. In CICS, transaction is identified by the transaction identifier (Trans-id)
DBSS Training Centre
CICS 10Application Programming Concepts
Application Programming Concepts
• Pseudo-Conversational
• Multitasking
• Multithreading
• Quasi-Reentrancy
DBSS Training Centre
CICS 11
Terminal ConversationTerminal Conversation
• Conversational : A mode of dialogue between program and terminal based on a combination of sending message and receiving message within the same task
• Since human response is slower than the CPU speed, a significant amount of resource will be wasted just waiting
• Pseudo-Conversational. A mode of dialogue between program and terminal which appears to the operator as a continuous conversation but which is actually carried by a series of tasks
DBSS Training Centre
CICS 12Conversational Transaction Example
Conversational Transaction Example
PROCEDURE DIVISION.
:
FIRST-PROCESS.
EXEC CICS RECEIVE ---- <= TSK1,12345
END-EXEC.
: process
EXEC CICS SEND ----- <= EMP(12345) Details
END-EXEC.
* - - - - - - Program Waits For Response - - - - -
SECOND PROCESS.
EXEC CICS RECEIVE ----- <= User Enters Data
END-EXEC.
: process
DBSS Training Centre
CICS 13Pseudo-Conversational Example
Pseudo-Conversational Example
Transaction TSK1
Program PROG1
PROCEDURE DIVISION.
:
EXEC CICS RECEIVE
END-EXEC.
:
EXEC CICS SEND
END-EXEC.
EXEC CICS RETURN
TRANSID (‘TSK2’)
END-EXEC.
Transaction TSK2
Program PROG2
PROCEDURE DIVISION.
:
EXEC CICS RECEIVE
END-EXEC.
:
EXEC CICS SEND
END-EXEC.
EXEC CICS RETURN
END-EXEC.
DBSS Training Centre
CICS 14
CICS ComponentsCICS Components
• Control Programs (or Management Modules)Programs that interface between OS and app. pgm
Handle the general functions that are crucial to operation of CICS
• Control Tables Define the CICS environment
Functionally associated with the management module
• Control Blocks (or Areas)Contain system type information. Eg. Task Control Area contains
information about the task
DBSS Training Centre
CICS 15Management Pgms. & Ctrl. Tables
Management Pgms. & Ctrl. Tables
• Programs
Program Control PCP
File control FCP
Terminal Control TCP
Task Control KCP
Temporary Storage TSP
Transient Data TDP
Storage Control SCP
Interval Control ICP
Journal Control JCP
• Tables
Processing Progm Table PPT
File Control TableFCT
Terminal Control Table TCT
Program Control Table PCT
Temp. Storage TableTST
Destin. Control TableDCT
DBSS Training Centre
CICS 16
CICS Program ConsiderationsCICS Program Considerations
• Considerations
- Must eventually return control to CICS
- Can’t modify procedure division instructions ‘cause CICS programs may be shared by many tasks
- Can modify working storage since a unique copy of working storage is created for each task
DBSS Training Centre
CICS 17
CICS Program RestrictionsCICS Program Restrictions• Restrictions
- No CONFIG. SECTION, I/O SECTION to be specified in the ENVIRONMENT DIVISION.
- FILE SECTION, OPEN, CLOSE, and non-CICS READ & WRITE statements are not permitted because file management is handled by CICS.
- COBOL commands such as ACCEPT, DISPLAY, EXHIBIT, TRACE, STOP RUN, GOBACK are avoided. (STOP RUN & GOBACK are sometimes included in order to eliminate compiler diagnostic but never executed)
DBSS Training Centre
CICS 18
Sample CICS ProgramSample CICS ProgramIDENTIFICATION DIVISION.
PROGRAM-ID. SAMPLE.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-INPUT.
05 WS-TRANSID P IC X(4).
05 FILLER PIC X(1).
05 WS-IN-EMP-CD PIC X(4) VALUE ALL ‘X’.
01 WS-OUTPUT.
05 FILLER PIC X(16) VALUE ‘EMP CODE : ‘.
05 WS-OUT-EMP-CD PIC X(4).
01 WS-LENGTH PIC S9(4) COMP.
LINKAGE SECTION.
DBSS Training Centre
CICS 19
Sample Program Contd.Sample Program Contd.PROCEDURE DIVISION.
000-MAINLINE.
PERFORM 100-RECV-INPUT.
PERFORM 200-SEND-OUTPUT.
EXEC CICS RETURN END-EXEC.
STOP RUN.
100-RECV-INPUT.
MOVE 9 TO WS-LENGTH.
EXEC CICS RECEIVE
INTO (WS-INPUT) LENGTH (WS-LENGTH)
END-EXEC.
MOVE WS-IN-EMP-CODE TO WS-OUT-EMP-CODE
200-SEND-OUTPUT.
EXEC CICS SEND
FROM (WS-OUTPUT) LENGTH (20) ERASE
END-EXEC.
DBSS Training Centre
CICS 20
Basic Mapping Support Basic Mapping Support
DBSS Training Centre
CICS 21
Topics in BMSTopics in BMS
• Introduction to BMS
• Physical and Symbolic Map
• Map and Mapset
• Map Definition Macros
• Screen Manipulation/Handling
• Screen Design Considerations
• Interfacing with Terminal using a Map
DBSS Training Centre
CICS 22
Introduction to BMS Introduction to BMS
• Primary functions of BMS• Removal of device dependent codes from Application Program
• Removal of constant information from Application program (Headers, Titles...)
• Construct NMDS - Native Mode Data Stream
• Text handling
• Terminal Paging & Message routing
• Contents of the screen defined thru’ BMS is called Map.
• Map is a program written in assembly language.
• BMS macros are available for Map coding.
DBSS Training Centre
CICS 23
Map and Mapset Map and Mapset
• Representation of one screen format is called Map (screen panel).
• One or more maps, linkedited together, makes up a Mapset (load module).
• Mapset must have a entry in PPT
• Mapset name has two parts.• Generic name 1- 7 chars. Used in App. Pgm.
• Suffix 1 char. To identify the device type
• Multimap Panel
• Dynamically constructing a screen panel with multiple maps at the execution time
DBSS Training Centre
CICS 24
Types of MAPSTypes of MAPSThere are 2 types of MAPS
• Physical Map
Physical Map is a map used by CICS ( CSECT)
Ensure device independence in the application program
• Symbolic Map
Ensure device and format independence in the app prog
Symbolic Map is a map used by Application Program (DSECT)
DBSS Training Centre
CICS 25
Example Of Symbolic MapExample Of Symbolic Map
01 EMPRECI.
02 FILLER PIC X(12).
02 EMPNAL PIC S9(4) COMP.
02 EMPNAF PIC X.
02 FILLER REDEFINES EMPNAF.
03 EMPNAA PIC X.
02 EMPNAI PIC X(21).
01 EMPRECO REDEFINES EMPRECI.
02 FILLER PIC X(12).
02 FILLER PIC X(03).
02 EMPNAO PIC X(21).
DBSS Training Centre
CICS 26
Physical & Symbolic Map - Logic FlowPhysical & Symbolic Map - Logic Flow
BMSsource
Assembler
Physical MAP
Linkage editor
Symbolic MAP
Load module (MVS)
DBSS Training Centre
CICS 27
Map definition MacrosMap definition Macros
General Format
1 16 72
setname operation operands contd.
Example
EMPMAP DFHMSD TYPE=MAP, X
MODE=INOUT, X
LANG=COBOL, X
STORAGE=AUTO, X
TIOAPFX=YES
*
* ANY COMMENTS
DBSS Training Centre
CICS 28
Order of MacrosOrder of Macros
• DFHMSD TYPE=DSECT Mapset
• DFHMDI Map
• DFHMDF A field
• DFHMDF A field
• :
• DFHMDI Map
• DFHMDF A field
• DFHMDF A field
• :
• DFHMSD TYPE=FINAL Mapset
• END
DBSS Training Centre
CICS 29
DFHMSD MacroDFHMSD Macro
• Define a mapset and its characteristics or to end a mapset definition
• Only one mapset is allowed in one assembly run.
• Example
EMPMSET DFHMSD TYPE=&SYSPARM , X MODE=INOUT, X
LANG=COBOL, XSTORAGE=AUTO, XTIOAPFX=YES, XCNTL=(FREEKB,FRSET,PRINT)
DBSS Training Centre
CICS 30
DFHMDI MacroDFHMDI Macro
• Define a map and its characteristics
• Example
EMPMAP DFHMDI SIZE=(ll,cc),X
LINE=nn,X
COLUMN=mm,X
JUSTIFY=LEFT/RIGHT
DBSS Training Centre
CICS 31
Screen LayoutScreen Layout
• Where& Attribute character
n Unprotected numeric
- Cursor
&Customer No. :&nnnnnnnn
DBSS Training Centre
CICS 32DFHMDF Macro For The Above Layout
DFHMDF Macro For The Above Layout
• Define a field and its characteristics
• Example DFHMDF POS(ll,cc), X
INITIAL=‘Customer No. :’, X
ATTRB=ASKIP, X
LENGTH=14
CUSTNO DFHMDF POS=(ll,cc), X
ATTRB=(UNPROT,NUM,FSET,IC), X
JUSTIFY=RIGHT, X
PICIN=‘9(8)’, X
PICOUT=‘9(8)’, X
LENGTH=8
DBSS Training Centre
CICS 33
Attribute characterAttribute character
• Invisible one byte character
• Defines the characteristics of a fieldThru’ ATTRB param. of DFHMDF.
• There are different kinds of attributes - Attributes to control the display intensity of the field
- Keyboard Attributes
- Attribute Related to the Field Modification
- Cursor Control Attribute
DBSS Training Centre
CICS 34
Modified Data TagModified Data Tag
• Indicates the field has been modified or not
• Effective use of MDT reduces the amount of data traffic.
• MDT setting/resetting- when the user modifies a field on the screen
- CNTL=FRSET, defined in map/mapset
- FSET in ATTRB parameter of DFHMDF
DBSS Training Centre
CICS 35
Skipper TechniqueSkipper Technique
• Unlabelled 1-byte field with the autoskip attribute
• DFHMDF POS(ll,cc),ATTRB=ASKIP,LENGTH=1
• To skip the cursor to the next unprotected field after one unprotected field.
• Screen Layout :&xxxxx&$ &xx
where$ Skipper field
& Attribute byte
X Unprotected field
DBSS Training Centre
CICS 36
Stopper TechniqueStopper Technique
• Unlabelled 1-byte field with the protect attribute
• DFHMDF POS(ll,cc),ATTRB=PROT,LENGTH=1
• To stop the cursor in order to prevent erroneous field overflow by terminal user.
• Screen Layout :
&xxxxx&$#&$
where
# Stopper field
DBSS Training Centre
CICS 37
Cursor Positioning TechniquesCursor Positioning Techniques
• Static positioning (map definition)
• Dynamic/Symbolic Positioning (app.pgm)
• Dynamic/Relative Positioning (app. pgm)
• Checking Cursor Position by EIBCPOSN.
DBSS Training Centre
CICS 38
AID KEYSAID KEYS• Indicates the method to initiate the transfer of info. from
terminal to CICS.
• PF keys, PA keys, ENTER & CLEAR key
• EIBAID contains , recently used AID code
• Standard AID list - DFHAID
• HANDLE AID establish the routines that are to be invoked when the aid is detected by a RECEIVE MAP command
• Syntax :EXEC CICS HANDLE AID
Option (label)
END-EXEC Conditions : INVREQ
DBSS Training Centre
CICS 39Numeric Sign/Decimal Pt Handling
Numeric Sign/Decimal Pt Handling
• Numeric Sign : For input operations, Separate fields or CR/DR field approach can be used and for output operations, PICOUT parameter can be given in macro
• Decimal Point : For input operations, Virtual decimal point or Separate fields approach can be used and for output operations, PICOUT parameter has to be given in the field definition macro.
DBSS Training Centre
CICS 40
SEND MAP SEND MAP• Writes formatted output to a terminal.
• Syntax :EXEC CICS SEND MAP(mapname)
[[ FROM(dataname) ] [DATAONLY] | MAPONLY]
[ MAPSET(mapsetname) ]
[ CURSOR(VALUE) ]
[ FREEKB ][ ERASE ][ FRSET ]
[ HANDLE | NOHANDLE
[ RESP (dataname) ] ]
END-EXEC
Conditions : INVREQ,LENGERR
DBSS Training Centre
CICS 41
RECEIVE MAP RECEIVE MAP• To receive input from a terminal
• Syntax :
EXEC CICS RECEIVE MAP (mapname)
[ SET(pointer) | INTO(dataname) ]
[LENGTH(msg-len)]
[ MAPSET(mapsetname) ]
[ HANDLE | NOHANDLE
[ RESP() ] ]
END-EXEC
Conditions: INVREQ, MAPFAIL
DBSS Training Centre
CICS 42
Types of BMS Panel operationsTypes of BMS Panel operations
• Single Map panel
• Text Panel
• Multipage Message
• Multimap Panel
• Multimap/Multipage Message
DBSS Training Centre
CICS 43
Screen Design ConsiderationsScreen Design Considerations
• Functional Screen Design
• User-Friendly Screen Design
DBSS Training Centre
CICS 44
ACCT
Operating System
TerminalControl
System Services
StorageManage-ment
Program Library
Account File
1
2 3
CICS Transaction (Initiation) Flow :-
DBSS Training Centre
CICS 45
Menu Screen
Operating System
File
Control
BMS
Program
Program Library
Account File
CICS Transaction Flow :-( SEND MAP)
ACCT00
DBSS Training Centre
CICS 46
User’sNext input
Operating System Program Library
Account File
FileControl
ProgramACCT01
BMS
6 78
CICS Transaction Flow :-( RECEIVE & SEND MAPs)
DBSS Training Centre
CICS 47
PROGRAM CONTROLPROGRAM CONTROL
DBSS Training Centre
CICS 48
Program Control CommandsProgram Control Commands
• LINK
• XCTL
• RETURN
• LOAD
• RELEASE
DBSS Training Centre
CICS 49
LINKLINK
• Used to pass control from one application program to another
• The calling program expects control to be returned to it
• Data can be passed to the called program using COMMAREA
• If the called program is not already in main storage it is loaded
DBSS Training Centre
CICS 50
LINK Syntax LINK Syntax
EXEC CICS LINK
PROGRAM(name)
[COMMAREA(data-area)
[LENGTH(data-value)]]
END-EXEC.
Conditions : PGMIDERR, NOTAUTH, LENGERR
DBSS Training Centre
CICS 51
XCTLXCTL
• To xfer control from one application program to another in the same logical level
• The program from which control is transferred is released
• Data can be passed to the called program using COMMAREA
• If the called program is not already in main storage it is loaded
DBSS Training Centre
CICS 52
XCTL Syntax XCTL Syntax
EXEC CICS XCTL
PROGRAM(name)
[COMMAREA(data-area)
[LENGTH(data-value)]]
END-EXEC.
Conditions : PGMIDERR, NOTAUTH, LENGERR
DBSS Training Centre
CICS 53
RETURNRETURN
• To return control from one application program to another at a higher logical level or to CICS
• Data can be passed using COMMAREA when returning to CICS to the next task
DBSS Training Centre
CICS 54
RETURN SyntaxRETURN Syntax
EXEC CICS RETURN
[TRANSID(name)
[COMMAREA(data-area)
[LENGTH(data-value)]]]
END-EXEC.
Conditions : INVREQ, LENGERR
DBSS Training Centre
CICS 55
PROG A LINKRETURN
CICS
PROG BXCTL
PROG CLINKRETURN
PROG DXCTL
PROG ERETURN
Level 0
Level 1
Level 2
Level 3
Application ProgramLogic Levels
DBSS Training Centre
CICS 56
LOADLOAD• To load program/table/map from the CICS DFHRPL
concatenation library into the main storage
• Using load reduces system overhead
• Syntax :
EXEC CICS Load
Program(name)
[SET (pointer-ref)]
[LENGTH (data-area)]
END-EXEC.
Condition : NOTAUTH, PGMIDERR
DBSS Training Centre
CICS 57
RELEASERELEASE• To RELEASE a loaded program/table/map
• Syntax :
EXEC CICS RELEASE
PROGRAM(name)
END-EXEC.
Conditions : PGMIDERR, NOTAUTH, INVREQ
DBSS Training Centre
CICS 58
COMMAREA COMMAREA
• Data passed to called program using COMMAREA in LINK and XCTL
• Calling program - Working Storage defn
• Called program - Linkage section defn under DFHCOMMAREA
• Called program can alter data and this will automatically available in calling program after the RETURN command ( need not use COMMAREA option in the return for this purpose )
• EIBCALEN is set when COMMAREA is passed
DBSS Training Centre
CICS 59
POSSIBLE ERRORSPOSSIBLE ERRORS• Conditions that aren't normal from CICS's point of view
but that are expected in the pgm.
• Conditions caused by user errors and input data errors.
• Conditions caused by omissions or errors in the application code.
• Errors caused by mismatches bet. applications and CICS tables, generation parameters & JCL
• Errors related to hardware or other system conditions beyond the control of an appl. pgm.
DBSS Training Centre
CICS 60Error Handling MethodsError Handling MethodsWhen the error (exceptional conditions) occur, the program
can do any of the following
• Take no action & let the program continue - Control returns to the next inst. following the command that has failed to execute. A return code is set in EIBRESP and EIBRCODE. This state occurs ‘cause of NO HANDLE /RESP/IGNORE conditions
• Pass control to a specified label - Control goes to a label in the program defined earlier by a HANDLE CONDITION command.
• Rely on the system default action - System will terminate or suspend the task depends on the exceptional condition occurred
DBSS Training Centre
CICS 61
HANDLE CONDITIONHANDLE CONDITION• HANDLE CONDITION condition[(label)]... 'condition'
specifies the name of the condition, and 'label' specifies the location within the program to be branched
• Remains active while the program is executing or until it encounters IGNORE/another HANDLE cond.
• Syntax :EXEC CICS HANDLE CONDITION
ERROR(ERRHANDL)
LENGERR(LENGRTN)
END-EXEC
This example handles DUPREC cond. separately, all the other ERRORs together. LENGERR will be handled by system
DBSS Training Centre
CICS 62
Alternative to HANDLE ConditionAlternative to HANDLE Condition
• NOHANDLE to specify “no action to be taken for any condition or attention identifier (AID) “
• RESP(xxx) "xxx" is a user-defined fullword binary data area. On return from the command, it contains a return code. Later, it can be tested by means of DFHRESP as follows,
• If xxx=DFHRESP(NOSPACE) ... or
If xxx=DFHRESP(NORMAL) ...
DBSS Training Centre
CICS 63
IGNORE CONDITIONIGNORE CONDITION
• IGNORE CONDITION condition condition ...
• ‘condition’ specifies the name of the condition that is to be ignored( no action will be taken)
• Syntax :
EXEC CICS IGNORE CONDITION
ITEMERR
LENGERR
END-EXEC
This command will not take any actions if the given two error occurs and will pass the control to the next instruction
DBSS Training Centre
CICS 64
PUSH & POPPUSH & POP
• To suspend all current HANDLE CONDITION, IGNORE CONDITION, HANDLE AID and HANDLE ABEND commands.
• Used for eg. while calling sub-pgms (CALL)
• While receiving the control, a sub-program can suspend Handle commands of the called program using PUSH HANDLE
• While returning the control, it can restore the Handle command using POP HANDLE
DBSS Training Centre
CICS 65
Syntax of Push & PopSyntax of Push & Pop• Syntax of Push :
EXEC CICS Push
Handle
END-EXEC.
• Syntax of Pop :
EXEC CICS Pop
Handle
END-EXEC.
DBSS Training Centre
CICS 66
EXEC Interface Block (EIB)EXEC Interface Block (EIB)
• CICS provides some system-related information to each task as EXEC Interface Block (EIB)
• unique to the CICS command levelEIBAID Attention- Id (1 Byte)
EIBCALEN Length of DFHCOMMAREA (S9(4) comp)
EIBDATE Date when this task started (S9(7) comp-3)
EIBFN Function Code of the last command ( 2 Bytes)
EIBRCODE Response Code of the last command (6 Bytes)
EIBTASKN Task number of this task (S9(7) comp-3)
EIBTIME Time when this task started (S9(7) comp-3)
EIBTRMID Terminal-Id (1 to 4 chars)
EIBTRNID Transaction-Id (1 to 4 chars)
DBSS Training Centre
CICS 67
Processing Program Table - PPTProcessing Program Table - PPT
DFHPPT TYPE=ENTRY
PROGRAM |MAPSET= name
[PGMLANG= ASM|COBOL|PLI]
[RES= NO|FIX|YES]
:
: other options
:
Eg.
DFHPPT TYPE=ENTRY,PROGRAM=TEST,
PGMLANG=COBOL
DBSS Training Centre
CICS 68
PCT EntryPCT EntryDFHPCT TYPE=ENTRY
TRANSID= name
PROGRAM=name
TASKREQ=pf6
RESTART=yes/no ( TRANSEC = 1to 64)
RSLKEY= 1 to 24 resource level key
SCTYKEY= 1 to 64 security key
:
:
other options
DBSS Training Centre
CICS 69
File HandlingFile Handling
DBSS Training Centre
CICS 70
VSAMVSAM
Different types of VSAM Datasets used in CICS are :
• ESDS Entry Sequenced Dataset
• KSDS Key Sequenced Dataset
• RRDSRelative Record Dataset
DBSS Training Centre
CICS 71
Services Provided By CICSServices Provided By CICS
• Basic Operations required for a file are
Adding a Record.
Modifying an Existing Record.
Deleting an Existing Record.
Browsing One or Selected or All Records.
• In Addition, CICS Provides
Exclusive Control. (Record Level Locking).
Data Independence.
Journalling.
Opening and closing Files.
DBSS Training Centre
CICS 73
Defining A File to CICSDefining A File to CICS
• Files should be defined in FCT (File Control Table).
• FCT will contain all the Information about a File. (like dataset name, access methods, permissible file service request, etc.)
• Defining Files can be done either by CEDA Transaction or DFHFCT Macro.
DBSS Training Centre
CICS 74
Syntax of DFHFCT Macro Syntax of DFHFCT Macro
DFHFCT TYPE=FILE,ACCMETH=VSAM,
DATASETNAME=NAME, SERVRQ=(ADD,BROWSE,DELETE,READ,UPDATE),
FILSTAT=(ENABLED,OPENED)
DBSS Training Centre
CICS 75
File Handling in ProgramsFile Handling in Programs
• Files should not be defined in the Program.
• Program should not open or close a File.
• Records can be written in any order. A number of records can be added at a time.
• Records can be inserted, updated or deleted.
DBSS Training Centre
CICS 76
Important Key-WordsImportant Key-Words
• Dataset/File :- Name in the FCT.
• Into/From (WS-Rec) :- Working-Storage Area defined in the program where the CICS Puts/Gets the Data.
• RIDFLD :- Contains the Record Key.
• RESP :- Contains the return code of the executed command.
• LENGTH :- Length of the Record to be Retrieved or Written.
DBSS Training Centre
CICS 77
Random READRandom READ
EXEC CICS READ File(filename)
[SEt() | Into()]
RIdfld(Rec-Key)
END-EXEC.
Condition: DISABLED, NOTOPEN, NOTFND, LENGERR, DUPKEY, IOERR.
DBSS Training Centre
CICS 78
Example for Random Read Example for Random Read
EXEC CICS READ
File( 'INVMAS ')
Into(WS-INVMAS-REC)
Length(WS-INVMAS-LEN)
RIdfld('7135950602') | RIdfld(WS- INVMAS-KEY)
END-EXEC.
DBSS Training Centre
CICS 79
Sequential ReadSequential Read
• Sequential Read is done by Browse Oper.
• Establish the pointer to the First Record to be Read Using StartBr.
• Next and Previous Records can be Read as required Using ReadNext and ReadPrev.
• End the Browse Operation at last.
• Browse can be re-positioned.
• During Browse Operation, Records cannot be Updated.
DBSS Training Centre
CICS 80
Syntax for STARTBRSyntax for STARTBR
EXEC CICS STARTBR
FILE(filename)
RIDFLD(data-area)
END-EXEC.
Condition : DISABLED, IOERR, NOTFND, NOTOPEN.
DBSS Training Centre
CICS 81
Reading the Record after STARTBRReading the Record after STARTBR
• Sequentially the Next or Previous Record can be read by a READNEXT or READPREV.
• The first READNEXT or READPREV will read the Record where the STARTBR has positioned the File Pointer.
DBSS Training Centre
CICS 82
Syntax of READNext/READPrev Syntax of READNext/READPrev
EXEC CICS READNext | READPrev
FILE(name)
INTO(data-area)|SET(ptr-ref)
RIDFLD(data-area)END-EXEC.
Condition : DUPKEY, ENDFILE, IOERR, LENGERR, NOTFND.
DBSS Training Centre
CICS 83
ENDBRowseENDBRowse
• ENDBRowse terminates a Previously issued STARTBR.
• SYNTAX :-
EXEC CICS ENDBR
FILE(filename)
END-EXEC.
Condition: INVREQ
DBSS Training Centre
CICS 84
RESETBRRESETBR
• Its effect is the same as ENDBR and then giving another STARTBR.
• Syntax :
EXEC CICS RESETBR
FILE(filename)
RIDFLD(data-area)
END-EXEC.
Condition: IOERR, NOTFND.
DBSS Training Centre
CICS 85
WRITE CommandWRITE Command• Adds a new record into the File.
• For ESDS, RIDFLD is not used but after write execution, RBA value is returned and Record will be written at the end of the File.
• For KSDS, RIDFLD should be the Record Key. The record will be written depending on the Key.
• MASSINSERTion must be done in ascending order of the Key.
DBSS Training Centre
CICS 86
Syntax for WRITE Syntax for WRITE
EXEC CICS WRITE
FILE(filename)
FROM(data-area)
RIDFLD(data-area)
END-EXEC.
Condition: DISABLED, DUPREC, IOERR, LENGERR, NOSPACE, NOTOPEN.
DBSS Training Centre
CICS 87
REWRITE CommandREWRITE Command
• Updates a Record which is Previously Read with UPDATE Option.
• REWRITE automatically UNLOCKs the Record after execution.
DBSS Training Centre
CICS 88
Syntax for REWRITESyntax for REWRITE
EXEC CICS REWRITE
FILE(filename)
FROM(data-area)
END-EXEC.
Condition: DUPREC, IOERR, LENGERR, NOSPACE.
DBSS Training Centre
CICS 89
DELETE CommandDELETE Command
• Deletes a Record from a dataset.
• Record can be deleted in two ways, RIDFLD with the full key in it. and
the record read with READ with UPDATE will be deleted.
• Multiple Records Delete is possible using Generic Option.
DBSS Training Centre
CICS 90
Syntax of DELETESyntax of DELETE
EXEC CICS DELETE
FILE(filename)
RIDFLD(data-area) Optional
END-EXEC.
Condition: DISABLED, DUPKEY, IOERR, NOTFND, NOTOPEN.
DBSS Training Centre
CICS 91
UNLOCKUNLOCK
• To Release the Record which has been locked by READ with UPDATE Command.
• Syntax :
EXEC CICS UNLOCK
FILE(filename)
:
[other options]
END-EXEC.
Condition: DISABLED, IOERR, NOTOPEN.
DBSS Training Centre
CICS 92
General ExceptionsGeneral Exceptions
• The following Exceptions usually will occur for ALL CICS File Handling Commands.
FILENOTFOUND,
NOTAUTH,
SYSIDERR,
INVREQ
In Addition to the above, Exceptions shown along the systax will occur.
DBSS Training Centre
CICS 93
Communication With DatabasesCommunication With Databases
DBSS Training Centre
CICS 94
CICS - DB2CICS - DB2
• CICS provides interface to DB2.
• DB2 requires “CICS Attachment Facility” to connect itself to CICS
• CICS programs can issue commands for SQL services in order to access the DB2 database.EXEC SQL function
[options]
END-EXEC
DBSS Training Centre
CICS 95
Operating system
CICS REGION DB2 REGION
App. Pgm. EXEC SQL.. CICS Attachment Facility
DB2Database
DB2 Database access by CICS
DBSS Training Centre
CICS 96
RCT EntryRCT Entry
• The CICS-to-DB2 connection is defined by creating and assembling the resource control table (RCT)
• The information in RCT is used to control the interactions between CICS & DB2 resources
• DB2 attachment facility provides a macro (DSNCRCT) to generate the RCT.
• The RCT must be link-edited into a library that is accessible to MVS
DBSS Training Centre
CICS 97DB2 - PrecompilerDB2 - Precompiler Source Program (EXEC SQL...
| EXEC CICS...)
DB2 Precompiler
|
CICS command translator
|
Compile By COBOL
|
Linkedit by Linkage editor
|
Load Module
DBSS Training Centre
CICS 98
QUEUESQUEUES
DBSS Training Centre
CICS 99
Transient data ControlTransient data Control
• Provides application programmer with a queuing facility
• Data can be stored/queued for subsequent internal or external processing
• Stored data can be routed to symbolic destinations
• TDQs require a DCT entry
• Identified by Destination id - 1 to 4 bytes
DBSS Training Centre
CICS 100
TDQsTDQs• Intra-partitioned - association within the same CICS
subsystemTypical uses are
- ATI (Automatic Task Inititation ) associated with trigger level
- Message switching
- Broadcasting etc
• Extra-partitioned - association external to the CICS subsystem, Can associate with any sequential device - Tape, DASD, Printer etc
Typical uses are
- Logging data, statistics, transaction error messages
- Create files for subsequent processing by Non-CICS / Batch programs
DBSS Training Centre
CICS 101
TDQsTDQs
• Operations
Write data to a transient data queue (WRITEQ TD)
Read data from a transient data queue (READQ TD)
Delete an intrapartition transient data queue (DELETEQ TD).
DBSS Training Centre
CICS 102
WRITEQ TDWRITEQ TD
• Syntax :
EXEC CICS WRITEQ TD
QUEUE(name)
FROM(data-area)
[LENGTH(data-value)]
[SYSID(systemname)]
END-EXEC.
Conditions: DISABLED, INVREQ, IOERR, ISCINVREQ, LENGERR, NOSPACE, NOTAUTH, NOTOPEN, QIDERR, SYSIDERR
DBSS Training Centre
CICS 103
READQ TDREADQ TD
• Reads the queue destructively - Data record not available in the queue after the read.
• Syntax :
EXEC CICS READQ TD
QUEUE(name)
{INTO(data-area) | SET(ptr-ref) }
[LENGTH(data-value)]
[NOSUSPEND]
END-EXEC.
Conditions : DISABLED, IOERR, INVREQ, ISCINVREQ, LENGERR, NOTAUTH, NOTOPEN, QBUSY, QIDERR, QZERO, SYSIDERR
DBSS Training Centre
CICS 104
DELETEQ TDDELETEQ TD
• Deletes all entries in the queue
• Syntax :
EXEC CICS DELETEQ TD
QUEUE(name)
END-EXEC.
Conditions: INVREQ, ISCINVREQ, NOTAUTH, QIDERR, SYSIDERR
DBSS Training Centre
CICS 105
Destination Control TableDestination Control Table
• DCT is to register the information of all TDQs
• Destination Control Program (DCP) uses DCT to identify all TDQs and perform all I/O operations.
• DFHDCT is a macro to define intra & extra partition TDQs TYPE=INTRA/EXTRA
• REUSE option specified along with intra partition TDQ tells whether the space used by TDQ record will be removed & reused after it has been read.
DBSS Training Centre
CICS 106
Automatic Task InitiationAutomatic Task Initiation
• Facility through which a CICS transaction can be initiated automatically
DFHDCT TYPE=INTRA DESTID=MSGS
TRANSID=MSW1
TRIGLEV=500
When the number of TDQ records reaches 500, the transaction MSW1 will be initiated automatically
• Applications Message switching & Report printing
DBSS Training Centre
CICS 107
Temporary Storage ControlTemporary Storage Control
• Provides application programmer the ability to store and retrieve data in a TSQ
• Application can use the TSQ like a scratch pad
• TSQs are - Created and deleted dynamically
- No CICS table entry required if recovery not required
- Identified by Queue id - 1 to 8 bytes
- Typically a combination of termid/tranid/operid
• Each record in TSQ identified by relative position, called the item number
DBSS Training Centre
CICS 108
TSQsTSQs
• Operations• Write and Update data
• Read data - Sequential and random
• Delete the queue
• Access• Across transactions
• Across terminals
• Storage• Main - Non-recoverable
• Auxiliary - Recoverable
• TST entry required, VSAM file DFHTEMP
DBSS Training Centre
CICS 109
TSQs - Typical uses TSQs - Typical uses
• Data passing among transactions
• Terminal Paging
• Report printing
DBSS Training Centre
CICS 110
WRITEQ TSWRITEQ TS• Syntax :
EXEC CICS WRITEQ TS
QUEUE(name)
FROM(data-area)
[LENGTH(data-value)]
[NUMITEMS(data-area) |
ITEM(data-area) [REWRITE] ]
[MAIN|AUXILIARY]
[NOSUSPEND]
END-EXEC.
Conditions : ITEMERR, LENGERR, QIDERR, NOSPACE, NOTAUTH, SYSIDERR, IOERR, INVREQ, ISCINVREQ
DBSS Training Centre
CICS 111
READQ TSREADQ TS
• Syntax :
EXEC CICS READQ TS
QUEUE(name)
{INTO(data-area) | SET(ptr-ref) }
LENGTH(data-value)
[NUMITEMS(data-area)]
[ITEM(data-area) | NEXT ]
END-EXEC.
Conditions : ITEMERR, LENGERR, QIDERR, NOTAUTH, SYSIDERR, IOERR, INVREQ, ISCINVREQ
DBSS Training Centre
CICS 112
DELETEQ TSDELETEQ TS
• Deletes all entries in the queue
• Syntax :
EXEC CICS DELETEQ TS
QUEUE(name)
END-EXEC.
Conditions: INVREQ, ISCINVREQ, NOTAUTH, QIDERR, SYSIDERR
DBSS Training Centre
CICS 113
INTERVAL AND TASK CONTROLINTERVAL AND TASK CONTROL
DBSS Training Centre
CICS 114
ASKTIMEASKTIME
• Used to obtain current date and time
• Syntax :
EXEC CICS ASKTIME[ABSTIME(data-area)]
END-EXEC.
• EIBDATE and EIBTIME updated with current date and time
• ABSTIME returns value of time in packed decimal format
DBSS Training Centre
CICS 115FORMATTIMEFORMATTIME• Syntax :
EXEC CICS FORMATTIME ABSTIME(data-ref)
[YYDDD(data-area)]
[YYMMDD(data-area)]... etc.
[DATE(data-area) [DATEFORM[(data-area)]]]
[DATESEP[(data-value)]]
[DAYOFMONTH(data-area)]
[MONTHOFYEAR(data-area)]
[YEAR(data-area)].....
[TIME(data-area) [TIMESEP[(data-value)]]]
END-EXEC.
Condition: INVREQ
DBSS Training Centre
CICS 116
DELAYDELAY
• Used to DELAY the processing of a task
• The issuing task is suspended for a specified interval or Until the specified time
• Syntax :
EXEC CICS DELAY
INTERVAL(hhmmss) | TIME(hhmmss)
END-EXEC
Conditions: EXPIRED, INVREQ
DBSS Training Centre
CICS 117
STARTSTART• Used to start a transaction at the specified terminal
and at the specified time or interval
• Data can be passed to the new transaction
• Syntax :
EXEC CICS START
TRANSID(transid)
[TERMID(termid)
TIME(hhmmss) | INTERVAL(hhmmss) ]
END-EXEC
Conditions : INVREQ, LENGERR,TERMIDERR, TRANSIDERR
DBSS Training Centre
CICS 118Other Interval Control Commands
Other Interval Control Commands
• POST - to request notification when the specified time has expired.
• WAIT EVENT - to wait for an event to occur.
• RETRIEVE - Used to retrieve the data passed by the START
• CANCEL -Used to cancel the Interval Control requests. eg. DELAY,POST and START identified by REQID.
• SUSPEND - Used to suspend a task
• ENQ - to gain exclusive control over a resource
• DNQ - to free the exclusive control from the resource gained by ENQ
DBSS Training Centre
CICS 119
Recovery & RestartRecovery & Restart
DBSS Training Centre
CICS 120
The Need for Recovery/RestartThe Need for Recovery/Restart
• The possible failures that can occur outside the CICS system are Communication failures (in online systems)
Data set or database failures
Application or system program failures
Processor failures & Power supply failures.
• Recovery/Restart facilities are required to minimize or if possible, eliminate the damage done to the online system, in case of the above failures to maintain the system & data integrity.
DBSS Training Centre
CICS 121
RECOVERYRECOVERY
• An attempt to come back to where the CICS system or the transaction was when the failure occurred
• Recoverable ResourcesVSAM files
Intrapartition TDQ
TSQ in the auxiliary storage
DATA tables
Resource definitions & System definition files
DBSS Training Centre
CICS 122
RESTARTRESTART
• To resume the operation of the CICS system or the transaction when the recovery is completed
DBSS Training Centre
CICS 123
Facilities for Recovery/RestartFacilities for Recovery/Restart
• Facilities for CICS Recovery/Restart
- Dynamic Transaction Backout
- Automatic Transaction Restart
- Resource Recovery Using System Log
- Resource Recovery Using Journal
- System Restart
- Extended Recovery Facility (XRF)
DBSS Training Centre
CICS 124Dynamic Transaction Backout (DTB)
Dynamic Transaction Backout (DTB)
• When the transaction fails, backing out the changes made by the transaction while the rest of the CICS system continues normally is called DTB
• CICS automatically writes the ‘before image’ information of the record into the dynamic log for the duration of one LUW ,the work between the two consecutive SYNC points
• When an ABEND occurs, CICS automatically recovers all recoverable resources using the info. in dynamic log (Set DTB=YES in PCT)
DBSS Training Centre
CICS 125
LUW & SYNC pointLUW & SYNC point
• The period between the start of a particular set of changes and the point at which they are complete is called a logical unit of work- LUW
• The end of a logical unit of work is indicated to CICS by a synchronization point (sync pt).
• Intermediate SYNC pt. can be done by
• Syntax :
EXEC CICS SYNCPOINT
[ROLLBACK]
END-EXEC
DBSS Training Centre
CICS 126
LUWs & SYNC ptsLUWs & SYNC pts
|- - - - - - - - - - - - LUW - - - - - - - - - |
Task A|---------------------------------------------|
SOT EOT-SP
|- - - LUW- - |- - - LUW- - |- - -LUW- - |
Task B|---------------->--------------->--------------|
SOT SP SP EOT-SP
When the failure occurs, changes made within the abending LUW will be backed out.
DBSS Training Centre
CICS 127
Automatic Transaction RestartAutomatic Transaction Restart
• CICS capability to automatically restart a transaction after all resources are recovered through DTB
• If the transaction requires automatic restart facility, Set RESTART=YES in PCT
• Care should be taken in order to restart the task at the point where DTB completes in the case of intermediate SYNC point
DBSS Training Centre
CICS 128
Extended Recovery Facility-XRFExtended Recovery Facility-XRF
• XRF is to increase the availability of CICS by automating the fast recovery of CICS resources
• There are two systems with same configuration
• All the resources are shared by the two systems
• If the failure occurs in one system, the other system will continue
• The system downtime can be reduced to few minutes if XRF is used
DBSS Training Centre
CICS 129
ACF/NCP
ActiveSession
Back-up Session
System Files
CICS Files
Application Files
MVS/XAACF/VTAMCICS/MVS
MVS/XAACF/VTAMCICS/MVS
30903090
Active System Shared Resources Alternate system
Communication Controller (3725)
XRF-Concept
DBSS Training Centre
CICS 130
Program PreparationProgram Preparation
DBSS Training Centre
CICS 131
Introduction Introduction
• Preparing a Program to run in CICS Environment.
• Defining the Program in the CICS Region.
• Executing the Program.
DBSS Training Centre
CICS 132
Preparing a ProgramPreparing a Program
• CICS requires the following steps to prepare a Program.• Translating the Program.
• Assemble or Compile the Translator Output. &
• Link the Program.
DBSS Training Centre
CICS 133
TranslationTranslation
• Translates the ‘EXEC CICS’ Statements into the Statements your Language (COBOL) Compiler can Understand.
• The Translator gives two outputs, a Program Listing as SYSPRINT and a Translated Source in SYSPUNCH.
• The SYSPUNCH is given as the input to the Program Compiler.
• If any Copy Books are used in the Program, there should not be any CICS Statements in the Copy Book.
DBSS Training Centre
CICS 134
Compiling or LinkingCompiling or Linking
• As the CICS Commands have been translated, The Compilation of the CICS Program is the same as Language Program.
• Hence, the Compiler Options can be specified as required.
DBSS Training Centre
CICS 135
Defining the Program Defining the Program
• The Application should be defined and Installed into the PPT.
• This can be done either by using CEDA Trans. or DFHPPT.
DBSS Training Centre
CICS 136
CICS Supplied TransactionsCICS Supplied Transactions
DBSS Training Centre
CICS 137
CESN/CESF TransactionsCESN/CESF Transactions
• To sign on to CICS system
• CESN [USERID=userid] [,PS=password] [,NEWPS=newpassword][,LANGUAGE=l]
• Userid & password values can be from 1-8 chars.
• In RACF, the Userid given in CESN is verified.
• NEWPS to change the password and LANGUAGE to choose national language
• Sign off by CESF which breaks the connection between the user and CICS
• If the Sign on is done twice for the same userid at the terminal, the previous operator will be signed off
DBSS Training Centre
CICS 138CECI - Command Level Interpreter
CECI - Command Level Interpreter
• To build and test the effect of EXEC CICS commands
• CECI ASSIGN is used to get the current userid,sysid, terminal id, application id etc..
• Before using the maps in programs, it can be tested using CECI to check how it appears on the screen.
• CECI gives the complete command syntax of the specified command.
• CECI READQ TD QUEUE(TESTL001) will read the current record of the given TDQ
DBSS Training Centre
CICS 139CEMT-Master Terminal Transaction
CEMT-Master Terminal Transaction
• CEMT provides the following services• Displays the status of CICS & system resources
• Alter the status of CICS & system resources
• Remove the installed resource definitions
• Perform few functions that are not related to resources
DBSS Training Centre
CICS 140 CEDF-Execution Diagnostic Facility
CEDF-Execution Diagnostic Facility
• To test command level application programs interactively
• CEDF [termid/sysid/sessionid] [,ON/,OFF]
• Termid - the identifier of the terminal on which the transaction to be tested is being run
• Sessionid - To test/monitor a transaction attached across an MRO/ISC session
• Sysid - To test a transaction across an APPC session
DBSS Training Centre
CICS 141
CEDF - Contd.CEDF - Contd.
• The points at which EDF interrupts execution of the program and sends a display to the terminal• At transaction initialization, after EIB has been initialized and
before the app. pgm given control
• Start of execution of each CICS command (auguement values can be changed at this point)
• End of execution of each CICS command and before the Handle condition mechanism is invoked (response code values can be changed)
• At program termination & at normal task termination
• When an ABEND occurs & at abnormal task termination.
• EIB values can be changed..& CEBR can be invoked
DBSS Training Centre
CICS 142CEBR-Temporary Storage Browse
CEBR-Temporary Storage Browse
• To browse the contents of CICS temporary storage queues (TSQ)
• CEBR by default will show the queue associated with the current terminal ‘CEBRL001’ which can be overridden to view any other queue
• TERM to browse TSQ for another terminal
• QUEUE to make the named queue, current
• PUT to copy the current queue contents into TDQ
• GET to fetch TDQ for browsing
• PURGE erases the contents of the current queue
DBSS Training Centre
CICS 143
Screen Definition Facility SDF - IIScreen Definition Facility SDF - II
DBSS Training Centre
CICS 144
INTRODUCTION - SDFINTRODUCTION - SDF
• An interactive tool for defining information to be displayed on the screen
• Objects created by SDF are used by various systems like CICS/BMS, IMS, ISPF etc..
• The SDF objects are Panel and Panel Groups (etc..) corresponding to map and mapset in CICS/BMS
DBSS Training Centre
CICS 145
SDF FunctionsSDF Functions
• Creation of objects which is common for all the systems
• Provides functions to alter and test the objects
• Generation function to create code for the objects like macro codes for CICS/BMS
• Provides utilities to print, migrate & convert objects
• Provides functions to develop application prototypes
DBSS Training Centre
CICS 146Panel CommandsPanel Commands
• SDF has panel commands like ‘TOP’ ‘BOTTOM’ ‘UP’ ‘DOWN , to browse through the the panels
• PRESERVE to protect the panel
• AUTOSAVE to set the automatic save option on
• commands ‘SAVE’ to record the changes and CANCEL/CCANCEL to quit the changes
• TEST to test the appearance of the object
• Commands are available to edit the panels... like to create,alter & view the fields and its attributes E.g.. ATTRIBUTE,EDIT,SHOW,HIDE etc..
DBSS Training Centre
CICS 147
Panel & Line CommandsPanel & Line Commands
• SDF has got panel commands to do the following.• To browse through the panel
• To quit/save the changes
• To protect the panel and to restore the panel in case or errors
• To test the appearance of the panel
• Panel editor commands to create, alter & view the fields and its attributes
• And Line commands to copy, move, delete, repeat & insert lines
DBSS Training Centre
CICS 148
PanelsPanels
• To create a panel, Enter a existing panel which is to be used as a skeleton for the new panel OR Enter a device type
• Panel text can be defined by typing the text in the required panel position in format mode.
• Variable fields can be defined by variable field marks. and arrays can be defined by specifying a dimension and direction.
• Variable fields can be defined by variable field marks
DBSS Training Centre
CICS 149
Panels Contd. Panels Contd.
• A panel can be included in another panel with few restrictions
• Default attributes are assigned to fields which can be changed. E.g.. for attributes are,• color,protection,intensity,cursor position,justify, field
format,field validation, modified data flag, etc.
• To change the panel,• Enter the panel name and library identifier where the panel
resides
DBSS Training Centre
CICS 150
Panel GroupsPanel Groups
• A panel group contains information about a group of panels, and the names of the panels that belong to the panel group.
• Procedure of Creating and editing panel group is same as panel
• Define the global parameters of the panel group thru’ ‘Panel Group Characteristics’ opt.• E.g.. BMS characteristics like generation name(later used in
generation) & logical device code etc.
DBSS Training Centre
CICS 151
Generation Generation
• As SDF objects are stored in internal rep. they have to be generated to be used in applications
• Output of generation , depends on the object type • Panel => Map
• Panel group => Mapset
• One or more data structures(used in Cobol) or control blocks (BMS macros) can be generated
DBSS Training Centre
CICS 152
SDF LibrariesSDF Libraries
• Define libraries(created in ISPF) to be used by SDF II to store and retrieve objects
• SDF II library is a partitioned data set with a three-level dataset name (project.group.dgipnl)
• Only the first two levels can be defined & third level added by sdf depends on the object type• DGIPNL-for panels, DGIGRP-for panel groups and DGIPST-
for partition sets
• 'ID' is assigned for each library which is used to search the objects in the library
• password can be given to protect the library.
DBSS Training Centre
CICS 153
SDF utilitiesSDF utilities
• Print :- To print utility produces printouts of panels, panel groups,partition sets etc..
• Migration:- To migrate objects from various sources into SDF libraries. Eg. Maps, map sets & partition sets defined with CICS/BMS macros
• Conversion utility :-To convert objects from one target system to a new target system.
DBSS Training Centre
CICS 154
Application PrototypeApplication Prototype
• To test the flow of panels, before they are incorporated into application programs.• Simulative prototype :- Simulates the primary interaction
between the application & user.
• Used to validate and determine the initial user requirements before designing the program
• Prototype definition• Identify the panel by giving name & library ID
• Define the prototype rules based on the CURRENT panel,the ACTION to be performed & NEXT PANEL to be displayed if certain CONDITIONS are met.
DBSS Training Centre
CICS 155Sample MacroSample MacroTULMAP DFHMSD TYPE=MAP,LANG=COBOL,MODE=INOUT,
STORAGE=AUTO,SUFFIX=C
TULMAP DFHMDI SIZE=(12,60),CTRL=(FREEKB,ALARM,FRSET), *
COLUMN=1,LINE=1,DATA=FIELD, *
TIOAPFX=YES,JUSTIFY=(LEFT,FIRST)
DFHMDF POS=(3,14),LENGTH=6,INITIAL='Name:', *
ATTRB=(PROT,NORM)
NAME DFHMDF POS=(3,21),LENGTH=10,ATTRB=(UNPROT,BRT,ASKIP)
DFHMDF POS=(3,32),LENGTH=1,ATTRB=(PROT,NORM)
DFHMDF POS=(4,14),LENGTH=6,INITIAL='Age :', *
ATTRB=(PROT,NORM)
AGE DFHMDF POS=(4,21),LENGTH=3, ATTRB=(UNPROT,NORM),
DFHMDF POS=(4,25),LENGTH=1,ATTRB=(PROT,NORM)
DFHMSD TYPE=FINAL
DBSS Training Centre
CICS 156
Thank YouThank You