The migration tool converts VAGen generation options parts to EGL build descriptor parts. However, some VAGen options have no EGL equivalent. In addition, EGL has several new build descriptor options that you might need to set. You might see errors on the Tasks list due to either of these changes. See IWN.xxx messages on the Tasks list for help in resolving common messages on the Tasks list that are a result of the migration process. You might need a text editor to resolve some of the problems. You need to perform the following steps regardless of whether you used Stage 1 - 3 migration or single file migration:
You need to review the following build descriptor options regardless of whether you plan to generate COBOL or Java:
If you plan to generate COBOL, you need to review or set the following build descriptor options:
VisualAge Generator uses a bind control template to create default bind control commands. The default VAGen template binds a DB2 plan, but you might have modified the template so that it binds a package or made other changes to conform to the standards of your organization. The VAGen templates are stored outside the workspace in files named EFK2MBDA.tpl and EGK2MBDD.tpl. Bind control parts are only required if you need to do a special bind for a particular program.
EGL does not use bind control templates. Instead EGL requires a bind control part. If you bind packages, you can achieve an effect similar to VisualAge Generator templates by creating an EGL bind control part that contains a template to use for all the binds and store this part in your workspace. Note: The technique described in this section does not work if you bind plans. See Establishing a program-specific bind control part if you bind plans.
If you modified the VAGen bind control template so that you bind a package for each program, you can adapt that template for use as an EGL bind control part. It is recommended that you put this bind control part in the same file with other control parts. For example, you might have a VAGen bind control template that looks like the following:
DSN SYSTEM(%MYDB2SUBSYSTEM%) BIND PACKAGE(%MYCOLLECTIONNAME%) - MEMBER(%EZEMBR%) - . . .
In the previous example, MYDB2SUBSYSTEM and MYCOLLECTIONNAME are symbolic parameters you set in your VAGen generation options and EZEMBR is set automatically with the name of the program currently being generated.
For binding packages, the EGL bind control part that you need to create is very similar to the VAGen template, but requires 3 additional lines and a change to the EZEMBR symbolic parameter. The corresponding EGL bind control part looks like the following:
TSOLIB ACTIVATE DA('%DSNLOAD%') ALLOC FI(DBRMLIB) SHR DA('%EZEPID%.%SYSTEM%.DBRMLIB' + '%ELA%.SELADBRM') DSN SYSTEM(%MYDB2SUBSYSTEM%) BIND PACKAGE(%MYCOLLECTIONNAME%) - MEMBER(%EZEALIAS%) - . . .
DSNLOAD, EZEPID, and ELA all have the same meaning as they did in VisualAge Generator. EZEALIAS is the EGL replacement for EZEMBR when you need the name of the program being generated in a bind control part. SYSTEM is the EGL replacement for EZEENV. You might need to modify the first 3 lines of the bind control part if you use different data set naming conventions on your EGL build server. Contact the person who installed and configured the Enterprise Developer build server to determine what the additional 3 lines need to be based on the naming conventions for your organization. You might also need to modify your EGL build descriptor options to set the projectID build descriptor option and the DSNLOAD and ELA symbolic parameters if you did not set these values in VisualAge Generator. See Symbolic parameters for changes to the names of the symbolic parameters. Also see the online helps for more information about using a template for the EGL bind control part and setting the values of EGL symbolic parameters.
In addition to creating the EGL bind control part to serve as a template, you must also modify your build descriptor parts to include the bind build descriptor option to point to your bind control part. It is recommended that you add the bind build descriptor option to one of your existing, common build descriptor parts to minimize the number of build descriptor parts you need to modify.
If you bind plans in VisualAge Generator, then generally each program requires a different bind command. In this case, you need a program-specific bind command to bind a plan for the program with all the other programs that are in the same run unit. The typical way to do this is to create a bind control part called xxxxx.BND, where xxxxx is the name of the program. You then set the VAGen generation option /BIND=BND to specify the suffix that you want VisualAge Generator to use when searching for a program-specific bind command. The .BND suffix can also be used if you bind packages for the rare situations in which one program requires something different from what the template provides.
The EGL bind build descriptor option does not permit you to specify a suffix. Instead, the bind build descriptor option must specify the name of a specific bind control part. In EGL, if you do not specify the bind build descriptor option, then EGL looks for a bind control part with the same name as the program. In general, the easiest technique is to bind packages and follow the process described in Establishing a bind control part to use as a template. However, if you want to bind plans or if you have the situation in which one program requires something other than what is provided by the bind control part template, you can create program-specific bind control parts.
If you have VAGen program-specific bind control parts that used the default .BND suffix, then the migration tool automatically removes the .BND suffix for you and adds the additional statements required for an EGL bind control part. Assuming that your naming convention was programName.BND and you always have program-specific bind command parts, then you do not need to specify the EGL bind build descriptor option for this program. However, if you are using the EGL bind build descriptor to specify a bind control part for most programs to use as a template and you need to provide a program-specific bind control part for a program, then you must create a build descriptor part for this specific program and set the bind build descriptor option to point to the program-specific bind control part. Otherwise, EGL will pick up the bind control part that is the template because that is what your normal bind build descriptor option specifies.
VisualAge Generator provides default linkedit commands based on the target environment and database access. However, in some cases, you might have a program that requires specific linkedit commands. (For example, to link in a PL/I program for the MVS Batch environment.) The typical way to do this is to create a linkedit part called xxxxx.LKG, where xxxxx is the name of the program. You then set the VAGen generation option /LINKEDIT=LKG to specify the suffix that you want VisualAge Generator to use when searching for the program-specific linkedit command.
The EGL linkEdit build descriptor option does not permit you to specify a suffix. Instead, the linkEdit build descriptor option must specify the name of a specific linkedit part. In EGL, if you do not specify the linkEdit build descriptor option, then EGL looks for a linkedit part with the same name as the program. If EGL does not find a linkedit part with the same name as the program, then EGL creates default linkedit commands based on the target environment and database access similar to what VisualAge Generator does. Therefore, the only time you need to specify the linkEdit build descriptor option is if you create a linkedit part with a different name from the program. You might need to do this if you generate the same program for both the zOS Batch and zOS CICS environments.
If you have VAGen program-specific linkedit parts that used the default .LKG suffix, then the migration tool automatically removes the .LKG suffix for you. Assuming that your naming convention was programName.LKG, then you do not need to specify the EGL linkedit build descriptor option for this program. EGL will find the program-specific part first, before it attempts to create a default linkedit command.
If you plan to generate Java, you need to review or set the following build descriptor options:
Create a build descriptor part that contains the build descriptor options that you want to use during debug. See the online helps for guidance on creating a debug build descriptor part.
(C) Copyright IBM Corporation 1992, 2005. All Rights Reserved.