The IVP process - IBM - AS/400

The IVP can be run in two separate ways:

  1. If you have the COBOL/400 compiler installed, you can verify that the application development part of CICS/400 is working properly, and then run the sample transaction ACCT.
  2. Alternatively, if you do not have the COBOL/400 compiler, you can choose just to run the application itself. IBM has provided all the necessary COBOL object programs for the application in the CICS/400 sample library and you can omit steps 3 and 4 described below.

As an alternative to the IVP, you could run the sample control region definition program,DEFCICSRGN

The IVP comprises the following steps:

  • “Step 1. Creating a working copy of QCICSSAMP”
  • “Step 2. Adding libraries to the OS/400 library list”
  • “Step 3. Translating the BMS map”
  • “Step 4. Translating the program”
  • “Step 5. Creating the recoverable/nonrecoverable resources”
  • “Step 6. Journaling the CICS/400 recoverable resources”
  • “Step 7. Defining the CICS/400 resources”
  • “Step 8. Creating the CL program”
  • “Step 9. Starting the CICS/400 control region”
  • “Step 10. Starting the sample transaction”

In generating the BMS and COBOL objects, you will use the supplied CL commands CRTCICSMAP (to create the symbolic and physical BMS maps) and CRTCICSCBL (to translate and compile COBOL source code containing CICS API into OS/400 program objects).

Step 1. Creating a working copy of QCICSSAMP
Before generating the BMS and COBOL objects, you should make a security copy of the QCICSSAMP library to CICSWORK by issuing the following command:


When the copy is complete, you will see the message:

Library QCICSSAMP copied to library CICSWORK

This leaves QCICSSAMP as a backup in case of errors. CICSWORK is your working copy and is referred to in the rest of this chapter.

Note: If you choose to use a different library name, all references to CICSWORK in the following sections should be replaced by your own library name.

Step 2. Adding libraries to the OS/400 library list
To use some of the OS/400 CL commands, you need to add the CICSWORK library to the OS/400 library list. You do this by issuing the following command:


When the library has been added, you will see the message:

Library CICSWORK added to the library list

Before you attempt to compile the sample program, you should add the QCICS library to the OS/400 library list. File QLBLSRC in this library holds four copybooks necessary for the compilation of the sample program. You add this library by issuing the following command:


When the library has been added, you will see the message:

Library QCICS added to the library list

The DSPLIBL CL command shows the entire library list. The EDTLIBL CL command shows the user part of the library list and allows you to change items in the library list.

Step 3.Translating the BMS map
Basic Mapping Support (BMS) is the component of CICS/400 that handles the display, mapping, and receiving of data at display terminals. The layout of data is described to BMS in objects known as maps. A map consists of:

  • A source definition
  • A translated program object (physical map) used by BMS
  • A COBOL/400 copybook (symbolic map) used by a COBOL application program

Translating the BMS map using the CRTCICSMAP CL command produces physical and symbolic map objects from the source definition. These objects are used during execution of the sample program. Translation also produces a COBOL/400 copybook, which is later copied into the COBOL programs during compilation.

For this sample program, CRTCICSMAP translates the source member ACCTSET of the file QMAPSRC to the physical map object ACCTSET and the symbolic map member ACCTSET of file QLBLSRC. If the copybook but not the source file is specified in the COPY statement of the COBOL program, the COBOL compiler assumes that the copybook source is in QLBLSRC. Therefore it is recommended that all copybooks are held in QLBLSRC.

To translate the map, enter:

on the CICS/400 command line. Press PF10 to display the additional parameters.


Figure .The Create CICS Map Screen


  1. Enter ACCTSET. This is the name of the physical map that is generated for later use when the sample transaction is executed. The object that is generated is an OS/400 user space object of the same name as specified here.
  2. Enter CICSWORK. This is the name for the library where the physical map is to be created.
  3. Enter CICSWORK. This is the name of the library where the map source is located.
  4. Enter CICSWORK. This is the name of the library where the QLBLSRC file COBOL copybook is located.When you have completed the panel, press Enter.

Step 4. Translating the program
Translate and compile the COBOL programs (ACCT00, ACCT01, ACCT02, ACCT03, and ACCT04) using the CICS/400 supplied CL command CRTCICSCBL. To translate the program, enter:

You need type only in the three fields indicated. The remaining fields have acceptable defaults.

Figure . The Create CICS COBOL screen

The Create CICS COBOL screen


  1. This is the name of the OS/400 program object that is generated for later use when the sample transaction is executed.
  2. This is the library that holds the OS/400 program object.
  3. This is the name of the library that holds the program source code.

Program objects for each of the sample programs are supplied in the library CICSWORK, but you may recompile them all if you wish. To compile the other programs,repeat the CRTCICSCBL command, making the same entries in the same three highlighted fields, changing the Program field as necessary to ACCT01, ACCT02, and so on.

Step 5.Creating the recoverable/nonrecoverable resources
In the QCICS library there are two sample files: AAEGCICSTR, which is used for recoverable temporary storage and transient data queues, and AAEGCICSTN, which is used for nonrecoverable temporary storage and transient data queues. These files need to be copied from the QCICS library to the CICSWORK library. Use the OS/400 CL command CRTDUPOBJ to copy them, noting that the four characters following AAEG are the four-character CICS/400 system ID. For this IVP, use SAMP as the system ID. Enter the following commands:



Step 6.Journaling the CICS/400 recoverable resources
Set up an OS/400 journal file for the previously-created recoverable file AAEGSAMPTR. To do this, enter the following commands:

TEXT(’Journal receiver for CICS/400 system id SAMP’)

TEXT(’Journal for CICS/400 system identifier SAMP’)

Start journaling the recoverable physical file by entering:

You will see the message


Step 7. Defining the CICS/400 resources
In most cases, you would not use a program to define resources. You would use a CL command or a menu-driven approach using the CEDA transaction. For the IVP, a program to define resources has been supplied, to speed up the resource definition stage.

This program is in member ACCTRES in file QCLSRC in library CICSWORK. To run the IVP you do not need to make any changes to it but the source is provided in case you wish to make any changes to it later.

Step 8. Creating the CL program
To create the OS/400 CL program from this source you use the OS/400 CL command CRTCLPGM.
Alternatively, if you are interested only in creating the object, you can enter:

When this program has been compiled, run it by entering the following:


whereCICSWORK is the name of the target library.

This program runs for several minutes (depending on size and loading of your OS/400) and creates all the resource definition objects required by the sample program in the named library, using the details supplied. When this has finished successfully, you can start up the CICS/400 control region.

Figure . Resource definitions for the IVP

Resource definitions for the IVP
Resource definitions for the IVP

Resource definitions for the IVP
Resource definitions for the IVP
Resource definitions for the IVP

Notes: The following notes apply to the above source:

  1. The CRTCICSGRP CL command is used here to create a group to hold the resource definitions that will be used when the control region is started.
  2. Note: RECOVER (*YES) and CLRGROUP(*YES) are specified. This means that any previous resource definitions done for this group will be lost when this program is run.
  3. The system initialization table entries contain various parameters that are used when the control region is started. In this example, some of the parameters have been changed from their defaults,to illustrate some of the things that you can do.
  4. The ADDCICSTCT command is used to define devices to CICS.If you want to add the capability for more terminals and printers to run against this control region, you will have to add additional ADDCICSTCT commands.
  5. The ADDCICSFCT command adds file control table entries for the two file objects that will be used by the sample transaction. If you specified a different library from CICSWORK when you created these OS/400 physical file objects earlier, do not forget to change it here as well.
  6. Then this control region is started, all the IBM supplied transactions are required.
  7. The ADDCICSPPT command is used to define programs that are used by the sample transaction. If you worked through steps 2 and 3 of the IVP to regenerate the COBOL/400 object code from the supplied source, make sure that you specify the correct OS/400 library name. Within the processing program tables (PPT) you also specify the location of the BMS objects. The CICSMAP (*YES) operand is specified to identify that the object is a CICS BMS map rather than a program object.
  8. The transactions that can be run under this control region are defined.
  9. Finally, an intrapartition transient data queue for the CSMT log is defined.

Step 9.Starting the CICS/400 control region
In this example, the control region is run as a batch OS/400 job. To do this enter the following:


where SAMP is the four-character system ID that you specified earlier when you created the TD and TS files.This command submits an OS/400 job and you must make sure that any additional parameters that you may want to specify, like job description, are added to the command invocation string.

When the job has started, you watch its progress by using the OS/400 CL command


Pressing PF5 while this screen is active refreshes its contents. When the status of the control region job has changed to DEQW, you can start the sample transactions.

Step 10. Starting the sample transaction
To start the sample transaction, enter the following from an OS/400 CL command line:


where SAMP is the four-character CICS/400 system identifier specified earlier. The terminal that you use to do this should be one that you specified earlier in the TCT entries.(The DEVD parameter of the ADDCICSTCT CL command identifies the name of the OS/400 device that can be used.) If the terminal from which you issue the command has not been specified in the TCT entry, there is a small delay while CICS creates the necessary internal definitions for the terminal to work with this transaction.

You will now see the first data entry screen of the sample transaction.
The appearance of this screen verifies that the IVP has completed successfully. You do not need to do anything other than press CLEAR to exit. However, ACCT provides a simple update application that enables you to add, update, and delete records to verify further that your system has been installed correctly.

When you are satisfied that you have completed your IVP, end the control region by typing:


All rights reserved © 2020 Wisdom IT Services India Pvt. Ltd Protection Status

IBM - AS/400 Topics