CSP/AD 3.3 required CSP/370RS 1.1 to generate COBOL programs. This section lists the considerations for migrating from COBOL generation using CSP/370RS 1.1 to COBOL generation using VisualAge Generator Developer.
To migrate from CSP/370RS 1.1 COBOL Generation to the VisualAge Generator Developer, first migrate your MSLs to VisualAge Generator and save the external source format (ESF) file used for migration.
In CSP/AD, some generation options were saved in the application MSL member and some options were specified in COBOL generation options files.
In VisualAge Generator, generation information is not saved in the application MSL member. If you want to use the same generation options for more than one generation, you must specify the options in generation control files, such as the generation options file and the resource association file.
The COBOL generation options file was accessed as a sequential file (ddname EKZGOPT) in CSP/370RS 1.1 COBOL generation. Override situations were handled using concatenated files. For example, an installation options file was allocated to the EKZGOPT ddname. Project and user options files were concatenated after the installation options file. The last value encountered for a generation option was the option that was used, so the user options overrode the installation options.
VisualAge Generator Developer for OS/2 also uses generation options; however, they have a different format. Override situations are handled using the /OPTIONS keyword to point to a lower priority option file. Because the first value encountered for a generation option is the option that is used, the /OPTIONS keyword on the GENERATE subcommand should specify the user options member.
In addition, VisualAge Generator Developer enables you to use a generation options default file where you can specify installation defaults and prevent them from being overridden.
Note: | VisualAge Generator uses the default file name EFKOPxxx.OPT for the options file, where xxx varies based on the target environment. The 8775-1C, 2C, 3C, or 4C devices are not valid in the /MFSDEV generation option. |
Generation options used in CSP/370RS 1.1 can be migrated for use with the application generator. The file format for the generation options files is similar to that of other workstation products. You must convert any host options files that you want to use to this format. The migration utility EZERCNVO.CMD is provided to perform this conversion. See Appendix H. Host Options File Conversion Utility for more information on migrating host options files.
In CSP/AD 3.3 with CSP/370RS 1.1 COBOL Generation, information associating application record definitions with physical files in the target environment was saved in the application MSL member from one generation to the next. With VisualAge Generator, if you want to use the same file resource association information across more than one generation, you must specify the information in a resource association file.
Resource association information saved in application MSL members can be converted for VisualAge Generator by doing the following:
Note: | The resource association file used by the VisualAge Generator Developer is not compatible with the resource association file used by the Interactive Test Facility (ITF). There is no method for migrating CSP/370AD 4.1 resource association information for use by ITF. |
In CSP/AD with CSP/370RS COBOL generation, the SETGEN batch command enabled the developer to choose which map groups and tables to generate with an application. The SETGEN command also enabled the application developer to set table related options, such as SHARED, RESIDENT, and KEEP AFTER USE, during generation. VisualAge Generator Developer provides the following:
The generation options RESIDENT, SHARED, and KEEP AFTER USE were generation options in CSP/370AD 4.1. They are specified at definition time with VisualAge Generator. SHARED and RESIDENT are specified within table definition. KEEP AFTER USE is specified on the Tables and Additional Record panel in application definition.
The compatible linkage type is DYNAMIC OSLINK.
The CSP/AD 3.3 with CSP/370RS 1.1 COBOL generation command interface is similar to the format used for the VisualAge Generator Developer commands. If you have CSP/AD 3.3 commands that you want to use, you must convert them to the workstation format. Utilities are not provided to do this conversion.
The default reserved words for VisualAge Generator Developer are kept in the EFK2RSV.RSV file. This file identifies reserved names that are assigned aliases in generated COBOL applications. The member contains some additional words in VisualAge Generator Developer. If you modified the reserved words in the file specified by EKZRESVD (CSP/370RS 1.1), you need to make the same modifications in the EFK2RSV.RSV file. Refer to the Generating VisualAge Generator Applications document for information on modifying the reserved word file.
Different templates (model JCL members for generating preparation and
execution JCL) are shipped with VisualAge Generator Developer. The
VisualAge Generator Developer templates might require customization to fit
installation requirements for JCL usage and data set names. The
CSP/370RS 1.1 templates cannot be used with VisualAge Generator
Developer because the names were changed and templates were combined.
See Table 2 for a list of the CSP/370RS 1.1 template names and
the corresponding VisualAge Generator Developer names.
Table 2. CSP/370RS 1.1 Template Names and Corresponding VisualAge Generator Developer Template Names
CSP/370RS 1.1 Template Names | VisualAge Generator Developer Template Names |
---|---|
EKZMMCL | EFK2MPBA |
EKZMMPCL | EFK2MPBC |
EKZMMCLB | None, messages are in tables |
EKZDMCL | EFK2MPBA |
EKZDMPCL | EFK2MPBB |
EKZDMCLB | None, messages are in tables |
EKZBMCL | EFK2MPIA |
EKZBMPCL | EFK2MPIB |
EKZBMCLB | None, messages are in tables |
EKZIMCL | EFK2MPIC |
EKZIMPCL | EFK2MPIE |
EKZIMCLB | None, messages are in tables |
EKZITCL | EFK2MPIC |
EKZITPCL | EFK2MPIE |
EKZITCLB | EFK2MPID |
EKZMCCL | EFK2MPBA |
EKZMCPCL | EFK2MPBC |
EKZMCCLB | None, messages are in tables |
EKZDCCL | EFK2MPBA |
EKZDCPCL | EFK2MPBB |
EKZDCCLB | None, messages are in tables |
EKZBCCL | EFK2MPIA |
EKZBCPCL | EFK2MPIB |
EKZBCCLB | None, messages are in tables |
EKZICCL | EFK2MPIC |
EKZIPCL | EFK2MPIE |
EKZICCLB | None, messages are in tables |
EKZBIND | EFK2MBDB, EFK2MBDA, or EFK2MBDD, depending on the target environment and database usage |
EKZBINDR | EFK2MBDC |
EKZMSP | EFK2MMCB for MFS mapping services program or EFK2MMCA for batch mapping services program |
EKZMFSU | EFK2MMSU |
EKZMFST | EFK2MMST |
EKZTBL | EFK2MMCA |
EKZBMP | EFK2MEIB |
EKZBMP2 | EFK2MEIA |
EKZMDLI | EFK2MEBC |
EKZMDB2 | EFK2MEBD |
EKZMDBS | EFK2MEBB |
EKZMBACH | EFK2MEBE |
EKZCALL | EFK2MEBA |
EKZQSDDI | EFK2MSDI |
EKZQSDDO | EFK2MSDO |
EKZVSDDI | EFK2MVSI |
EKZVSDDO | EFK2MVSO |
EKZGSDDI | EFK2MGSI |
EKZGSDDO | EFK2MGSO |
EKZMDBDD | EFK2MDLI |
EKZMDGSM | EFK2MIMS |
EKZUMSDD | None, messages are in tables |
EKZMMSDB | None, messages are in tables |
VisualAge Generator Developer uses different library naming conventions. An environment qualifier has been added as the middle-level qualifier of the data set names for generation output libraries. Refer to the Generating VisualAge Generator Applications document for a description of how to set up libraries for generation for VisualAge Generator Developer.
Static calls to PL/I programs are supported by VisualAge Generator. However, you must generate the application again using a linkage table if you want to call PL/I applications directly. Refer to the Generating VisualAge Generator Applications document for a description of how to set up a linkage table.
Initialization for fields in an SQL row record structure is based on the /INITRECD generation option. If the /INITRECD generation option is specified, SQL row records are initialized based on the data item type (blanks for CHAR or DBCS data and zero for numeric data).
If the /NOINITRECD generation option is specified, these records are not initialized.
Initialization of the following record types is not controlled by the /INITRECD generation option:
If any SQL applications in a run unit were generated on CSP/370RS to use a DB2* message database, then include the database request module DBRM module ELADBRM2 in the plan associated with the run unit.