| CICS Function | EGL Function | Comments |
|---|---|---|
| Type of Program | ||
| Conversational | segmented program property = NO | |
| Pseudoconversational | segmented program property = YES | The workDBType build descriptor option specifies whether to use a main (MAIN) or auxiliary (AUX) temporary storage queue for saving status across the terminal I/O. |
| Pseudoconversational, different transaction names | Segmented converse with sysVar.transactionID set to the next transaction name | The workDBType build descriptor option specifies whether to use a main (MAIN) or auxiliary (AUX) temporary storage queue for saving status across the terminal I/O. |
| Terminal and Printer Support | ||
| Communication with the terminal | converse for input/output, display for output, or a show statement with a form for output and input specified in the inputForm property. | |
| System printer support | print statement; transient file type for printer file | Associate RDO TDQUEUE for transient data queue with system printer |
| Terminal printer support | print statement; transient file type for printer file | Associate RDO TDQUEUE for transient data queue with terminal printer and trigger FZETPRT transaction to write to printer. |
| JES SPOOL file for printer output for z/OS® CICS | print statement; spool file type for printer file | In an EGL resource association entry, the systemName value identifies these parameters: node, spool writer or user identifier, and class. |
| VSE/POWER SPOOL file for printer support for VSE CICS | print statement; spool file type for printer file on VSE environment | In an EGL resource association entry, the systemName value
identifies these parameters of the VSE/POWER LST queue member:
|
| Dynamic printer support | converseVar. printerAssociation set to alter print destination for print statement | |
| Database and File Support | ||
| DL/I database definition and access | PSBRecord definition, DL/I segment definition, and normal I/O statements as provided for DL/I database access. | EGL creates default SSAs and sets the default PCB number. |
| PSB Scheduling | dliVar.dliPsbName identifies the PSB to be scheduled. | Scheduling is done automatically prior to the first DL/I operation in the unit of work. |
| PSB Termination | Done automatically on sysLib.commit(), sysLib.rollback(), or end of transaction or segment. | A CICS SYNCPOINT
occurs on a transfer to program statement
under the following conditions:
|
| Program restart following abnormal termination due to deadlock in queueing on database records | dliVar.cicsRestart | Variable indicating whether the program was restarted |
| DB2® database definition and access | SQLRecord definition and normal I/O statements as provided for relational database access. | |
| VSAM file support | vsam file type for serial, relative, and indexed files | RDO FILE entry required for file; systemName in EGL resource association entry matches FILE entry name |
| Transient data queue support | fileType property set to transient for serial files | RDO TDQUEUE entry required for file; systemName in EGL resource association entry matches TDQUEUE entry name |
| Function shipping for VSAM data sets and transient data queues | remoteFile type for the fileLink element in the linkage options entry for the file | |
| Specifying SYSID when function shipping. | remoteFile and locationSpec = PROGRAMCONTROLLED for the fileLink element in the linkage options entry for the file; sysLib.remoteSystemID to dynamically set the remote system name | |
| Main temporary storage queue support | tempmain file type for serial or relative file | Records have extra control byte in byte 1 |
| Auxiliary temporary storage queue support | tempaux file type for serial or relative file | Records have extra control byte in byte 1 |
| JES SPOOL file support for z/OS CICS | spool file type for serial file | In an EGL resource association entry, the systemName value identifies these parameters: node (output only), spool writer or user identifier, and class. |
| VSE/POWER SPOOL file for VSE CICS | spool file type for serial file | In an EGL resource association entry, the systemName value
identifies the following parameters that are related to handling VSE/POWER
SPOOL queue members. For input requests, for CICS only, these parameters are identified:
For output requests, for BATCH or CICS, these parameters are identified:
|
| Program Communications | ||
| START transaction | A transfer to program statement or call to vgLib.startTransaction() | |
| RETURN TRANSID | A show statement or a segmented converse statement | |
| Function shipping for START transaction | vgLib.startTransaction() with asynchLink element, type=remoteAsynch in linkage options entry for the record specified in vgLib.startTransaction() | |
| Specifying SYSID when function shipping | asynchLink element, type = remoteAsynch and locationSpec = PROGRAMCONTROLLED in linkage options entry; sysLib.remoteSystemID to dynamically set the remote system name | |
| XCTL to another EGL program | A transfer to transaction statement | If a record is specified, it is transferred in the COMMAREA. |
| XCTL to a non-EGL program | A transfer to transaction statement with externallyDefined option | If a record is specified, it is transferred in the COMMAREA. |
| LINK to program with data in COMMAREA | call statement; callLink element, type = localCall, linkType = "CICSLINK", and parmForm = "COMMDATA" for linkage options entry for called program | |
| Distributed program LINK to program with data in COMMAREA | call statement; callLink element, type = remoteCall, linkType = "CICSLINK", and parmForm = "COMMDATA" for linkage options entry for called program | |
| Specifying SYSID on distributed program LINK | callLink element, type=remoteCall and serverID = "serverName" on linkage options entry for called program | |
| Specifying TRANSID on distributed program LINK | callLink element, type=remoteCall and serverID = "transactionName" on linkage options entry for called program | |
| Specifying SYNCONRETURN on distributed program LINK | callLink element, type=remoteCall and luwControl ="SERVER" on linkage options entry for called program | |
| Miscellaneous | ||
| SYNCPOINT | sysLib.commit() | |
| SYNCPOINT ROLLBACK | sysLib.rollback() | |
| JOURNAL call | sysLib.audit() | |