CICS VSAM Transparency for z/OS, Version 1.2


FBEs and IRDs – differences and similarities

When you map a VSAM file, you define the association between the record in its VSAM and DB2® forms.

In Figure 1, each field is mapped to one column in DB2. To process a GET-type VSAM call, CICS® VT performs the following steps:

  1. The DDM retrieves a row from DB2.
  2. CICS VT takes each column value, transforming it when necessary, and moves it to the position in the VSAM record according to the mapping.
  3. When every byte of the VSAM record is built, it is returned to the requesting application program.
To process a PUT/WRITE/REWRITE VSAM call, the process is as follows:
  1. CICS VT takes each field value according to the mapping, transforming it where necessary, and moves it to the appropriate position in the DB2 record.
  2. When every byte of the VSAM record is processed, the DDM issues the appropriate SQL UPDATE or INSERT call.

If you have mapped an FBE on a field, it is responsible for building the field values and performing any data transformation. It must do this for GET-type calls and PUT/WRITE/REWRITE calls. An example of how to map an FBE is shown in Mapping an FBE. You can map multiple FBEs in the same file, and you can use a single FBE to build several fields or columns. When an FBE ends, CICS VT builds the remaining fields in the record.

An IRD operates at record-level, and is only invoked for PUT/WRITE/REWRITE calls. You can only have one IRD for any DIM.

An IRD is always processed after the entire DB2 record is built. If you have FBEs and an IRD on the same file, the FBEs will always have executed before the IRD. When you map an IRD, you specify the specific point in the VSAM call that the exit is invoked. The options are as follows:

A parameter is passed to the IRD to indicate the point at which it is being invoked.

An example of mapping an IRD is shown in Mapping an IRD.



Concept topic


Last updated: February 8, 2013 20:44:1