IBM VisualAge Generator
V4.5 Fix Pack 5 Readme

Effective Date: 1 August 2005
 

Table of Contents


Introduction

Product Enhancements, Support, & Limitations

VisualAge Generator v4.5 Fix Pack 5 Installation Notes

List of APARs

VisualAge Generator Generation Guide Appendix B. Implementing a generation server



Introduction

This VisualAge Generator V4.5 Fix Pack 5 Readme file contains the installation instructions, product support, and limitation information.

For both VisualAge Generator on VisualAge Java and VisualAge Generator on VisualAge Smalltalk, V4.5 Fix Pack 5 is cumulative and includes the V4.5 changes made for FixPak1, FixPak2, FixPak3, and fix pack 4. If you do not already have the V4.5 FixPak1, FixPak2, FixPak3, or fix pack 4 installed, you may install the V4.5 fix pack 5 directly. Note that from fix pack 4 onwards, the term 'fix pack' has been used instead of 'FixPak'.


Product Enhancements, Problem Support, and Limitations

Fix Pack 5

VisualAge Generator V4.5 Fix Pack 5 contains enhancements, problem support, and limitations for the following:


Fix Pack 4

VisualAge Generator V4.5 Fix Pack 4 contains enhancements, problem support, and limitations for the following:


FixPak3

VisualAge Generator V4.5 FixPak3 contains enhancements, problem support, and limitations for the following:

Known Issues

General Improvement

Provide Security exits for web transactions

Web transaction audit exits allow a customer to write exit programs that are called whenever a user interface record (UIR) is transmitted or received by the gateway servlet or host transaction program. The exits have access to the UIR contents as well as transaction program name, UIR name, session identifier, and user identifier.

The customer can use the exits to:

Gateway Servlet Exits

This enhancement enables users to add their own information for their transactions into the gateway servlet by a user developed class and pass it to tier 3 host systems where their web transactions reside on CICS an MVS and IMS system. It also allows users to get UI Record bean, sessionId, userid and password information.

The gateway's exit provides an interface to users to be able to:

To be able to use the functionalities:

1. User specifies hptHostExitName parameter in the gateway properties file. This will provide a name for the user exit on the host system. The name will be sent to the host system by the gateway's communication protocol which was specified as commtype parameter in serverLinkage entries.

2. User specifies hptUserExitClass parameter in the gateway properties file. To deploy the SampleUserExit class, set the hptUserExitClassName parameter in Gateway Properties file as follows:

HptUserExitClassName=com.ibm.hpt.gateway.SampleUserExit

The class that was specified for this parameter will be an implementation of the interface provided for them. Provided interface named GatewayUserExit allows users to implement the following two methods:

void uirAuditInput(VGJUIRecordBean bean, GatewayAccess ga, HttpServletRequest request request, HttpServletResponse response);

This method allows users to:

  1. Reach the UI Record bean before UI record data is sent to tier 3 by gateway servlet.
  2. Work with HttpServletRequest/Response objects.
  3. Set or get the user specific data into/from GatewayAcess object.
  4. Work with the public GatewayAccess object methods.

NOTE: A CICS application can obtain up to 32K of COMMAREA space, so if a large amount of user-specific data is set in the GatewayAccess object it will mean less COMMAREA space is available for application data.

void uirAuditOutput(VGJUIRecordBean bean, GatewayAccess ga, HttpServletRequest request, HttpServletResponse response);

This method allows users to:

  1. Reach the UI record data which was sent back from tier 3 to gateway servlet.
  2. Work with HttpServletRequest/Response objects.
  3. Get the user specific data in GatewayAcess object.
  4. Work with the public GatewayAccess object methods.

The interface imports GatewayAccess class including the following methods which can be used in the implementation class which was specified by the hptUserExitClass parameter:

public String getMyInfo(); This method gets the user specific data.

public void setMyInfo(String myInfo); This method sets the user specific data.

public byte[] getbMyInfo(); This method gets the user specific data.

public void setMyInfo(byte[] myInfo); This method sets the user specific data.

public String getConnectionId; This method gets the connection id

public String getSessionId(); This method gets the sessionId.

public String getUserId(); This method gets the userId.

public String getProgramName(); This method gets the host program name.

public void setErrorRC(int); This method sets the return code.

public void setErrorMessage(String); This method sets the message.

public void setUserState(Object); This method sets the user state.

public Object getUserState(); This method gets the user state.

In addition to the user specific data and UI record bean, GatewayAccess class allows users to be able to reach HttpServletRequest, sessionId, and userId information.

3. If an error code and message are returned by the exit, the transaction is terminated and the error is displayed to the user.

You can find a sample gateway exit program called SampleUserExit.java in the directory: \VGWGS45\

The sample SampleUserExit class implements the GatewayUserExit interface. You can use that class as a model for your own. At installation, you can find the source code for the GatewayUserExit interface and the sample gateway exit program, SampleUserExit.java, in the samples directory of the VisualAge Generator Server product used on tier 3. (The samples directory is at the same hierarchical level as the file hptGateway.jar.)

Host Exits

Host exits are supported in the CICS and IMS environments. The exit name is specified to the gateway servlet in the properties files and passed to the host by the gateway servlet.

The exit is called from at the following points:

The parameters passed to the exit are the UIR buffer and the audit exit information block. The UIR buffer should be referenced only if the UIR length is greater than zero. The information block has the following format when declared as a COBOL structure in the sample exits:
             01 ELA-AUDIT-INFO.
             05 AUDIT-INFO.
             06 AUDIT-ID PIC X(8).
             06 AUDIT-ID-LEVEL PIC X(4).
             06 AUDIT-CONNECTION-KEY PIC X(8).
             06 AUDIT-SESSION-KEY PIC X(8).
             06 AUDIT-USER-ID PIC X(8).
             06 AUDIT-TRANS-NAME PIC X(8).
             06 AUDIT-PROG-NAME PIC X(8).
             06 AUDIT-UIR-NAME PIC X(18).
             06 AUDIT-REASON PIC X(1).
             88 AUDIT-REASON-IN VALUE "I".
             88 AUDIT-REASON-OUT VALUE "O".
             88 AUDIT-REASON-INIT VALUE "N".
             88 AUDIT-REASON-CLOSE VALUE "T".
             88 AUDIT-REASON-ABTERM VALUE "A".
             06 AUDIT-EXTRA-DATA-TYPE PIC X(1).
             88 AUDIT-TEXT VALUE "T".
             88 AUDIT-BINARY VALUE "B".
             06 AUDIT-UIR-LEN PIC S9(9) COMP.
             06 AUDIT-EXIT-MSG-LEN PIC S9(9) COMP.
             06 AUDIT-EXTRA-DATA-LEN PIC S9(9) COMP.
             06 AUDIT-EXIT-RETURN-CODE PIC S9(9) COMP.
             88 AUDIT-EXIT-RC-OK VALUE 0.
             06 AUDIT-RESERVED PIC X(62).
             06 AUDIT-EXIT-MSG PIC X(250).
             06 AUDIT-EXTRA-DATA PIC X(1000).

The audit routines can access and set the exit return code, exit message and length, extra data, and extra data length, and any information in the UIR. The audit information block is kept around for the life of the transaction so that changes made on input are available to the return exit calls. If "extra information" is passed from the servlet to the user exit, the exit must reset the extra information length to zero if the input information should not be passed on to the return exits.

If the exit return code has a value other than 0, the transaction is terminated. The error code is returned to the servlet, and the error message is writen to the user using the CSOERRORUIR user interface record (also used for writing the runtime services error messages).

Two sample exits are shipped with the fix:

ELACICAX for CICS
ELAIMSAX for IMS
The COBOL source for the sample exits is in the VisualAge Generator SELASAMP library. The load modules for the sample exits are in the SELALMD library. The CICS exit requires a PPT entry before it can be used.

The sample exits write audit information to the VisualAge generator default error log (transient data queue ELAD for CICS and message queue ELADIAG for IMS). You can print the audit information with the ELAC transaction (CICS) or the ELAMQJUD BMP JCL in library SELAJCL (IMS).

CSO userid and password exits

The userid/password user exit shipped with VisualAge Generator middleware previously was called to provide the userid and password for calling remote programs on CICS via the CICS External Call Interface or on IMS via IMS APPC. In addition the exit is now called an SQL database (DB2, Oracle, or ODBC) connection when the developer has not specified the SQL userid and password. A future fix will also enable the exit to be called on on a generation file transfer via TCP/IP where the developer has not specified a TCP/IP userid and password.

The VisualAge Generator function that needs a userid and password calls the exit indicating the reason why the password is needed. The customer is responsible for obtaining and storing the userid and password and providing it to VisualAge Generator when the exit is called. If the exit does not return a userid and password, VisualAge Generator looks for the userid/password as it does in the current product.

The exit name is specified in the environment variable CSOUEXIT. The default user exit CSOUIDPW is a C language program that reads environment variables CSOUID and CSOUIDPW to obtain passwords for client server calls. If called for other reasons, or if the environment variables are not set, the exit returns null strings for the userid and password. userid password/specification will be called whenever a password is needed. The source code for CSOUIDPW is shipped with the product.

The exit is passed the following C structure as input:

	struct cmUIDPWD
	 {
	     char loginName[20];
	     char password[20];
	     char systemName[20];
	     long middlewareType;
	     short promptType;
	     short reserved;
	     char* ftpHostName;
	 };

The systemName is the name of the system to which we are connecting for CICS ECI, IMS/APPC, or SQL. If the middleware type is ftp, the ftpHostName is the name of the system to which the files are being transferred.

The middleware type is a code indicating what type of login is being performed. Currently supported values are:

	#define CMST_ECI_C2 7 /* CICS OS/2 ECI */
	#define CMST_ECI_CM 8 /* CICS CLIENT ECI */
	#define CMST_APPC_IMS 11 /* APPC/IMS */

New types for data base and TCP/IP FTP are:

	#define CMST_CMCONCT 12 /*Database Connection */
	#define CMST_GEN_FTP 26 /* Userid/password for FTP */

Promptype is a code indicating whether this an initial request or a request following a login that failed due the bad user ID and password.

	#define CMPR_INITIAL 0 /* Initial prompt */
	#define CMPR_REPROMPT 1 /* Reprompt - bad uid or pw */

Authentication support in VisualAge Generator Gateway Servlet

This VisualAge Generator enhancement provides new options for authentication support. By using this enhancement, you can:

For a detailed explanation of this enhancement, visit: http://www.ibm.com/software/awdtools/visgen/library/authenticate.htm

Addition of /OUTFILE to HPTCMD PRINT

The /OUTFILE parameter specifies the name of the sequential file you want to use as the OUTFILE. You can use the OUTFILE as input for other subcommands.

The name must be a valid file name.

See "Sequential file formats" in VG user's guide for a description of the format. If the file specified with the /OUTFILE parameter is already exists, the file will be overwritten with the content of the current PRINT subcommand.

PRINT subcommand example

hptcmd print /app=HptSampleEzereampParts /outfile=d:\temp.out

ITF XFER Emulation for OS/400

If the ITF EZESYS option is set to OS400, then DB2 and Client Access/400 connections remain in effect across an XFER from one program to another. This is consistent with the runtime behavior of generated programs on OS/400.

ITF EBCDIC Option

The ITF EBCDIC option gives the developer the choice of running a test session in ASCII mode or EBCDIC mode. EBCDIC mode more closely emulates the internal storage of data on host systems that use EBCDIC code pages, like OS/390, VSE, VM, and OS/400.

ASCII mode is the default. All character item values are in ASCII and all numeric items are in intel format while the test is running. Data elements must be converted to host format on calls to remote programs and accesses to remote files and databases. Character item comparisons use ASCII collating sequence.

In EBCDIC mode, the data in records, items, and tables is in EBCDIC (character data) or host numeric format so that the data does not have to be translated to host format on remote calls or remote file and database accesses. Parameters are converted to ASCII or Intel format on calls to local C++ routines, EZE math and string functions, and SQL calls so that the the local routines or database calls get the data in the format that they expect. Data in serial, indexed, or relative files and MQ message records is written and retrieved in EBCDIC. Character comparisons in IF and WHILE statements are performed using EBCDIC collating sequence.

GUI programs always run in ASCII mode. If a GUI calls another program running under the test facility when the EBCDIC option is in effect, the parameters are converted from ASCII to EBCDIC on the call.

Except for the GUI program testing described in the previous paragraph, you cannot switch back and forth between EBCDIC and ASCII mode in the same test run. You must stop test facility, change the EBCDIC option selection, and restart test facility to switch modes.

When using MQ message records in EBCDIC mode, do not specify a conversion table in the resource association file for the message queue record. The messages will always be in the EBCDIC host format.

EBCDIC mode is selected from the test options or preferences window. Leave the conversion table field associated with the EBCDIC option blank. The conversion table field is intended for use with bi-directional languages (Arabic and Hebrew) and double-byte languages (Chinese, Japanese, and Korean) which have special ASCII/EBCDIC translation considerations beyond simple code page translation. EBCDIC mode is not supported for these languages in FixPack 3. For other languages, code page translation is performed using Smalltalk ascii-to-ebcdic conversion based on the current locale.

Java Server Generation for Linux, OS/400 and OS390

VisualAge Generator support for Java Server generation has been expanded to include four additional systems: Linux, AIX, OS/400 and OS/390. This new support allows users to generate main batch, called batch, and Web Transaction program parts into Java source code. The Java code is deployed to the target system and compiled for execution. After proper preparation, the compiled java server programs can be executed under VisualAge Generator Server in an e-business environment.

We have determined through our testing that the VAGen generated java code is completely portable, in most cases and can be moved between disparate systems. As such, the java code generated for a Linux or Windows system can be ported to AIX without change as long the code is supported by the respective VisualAge Generator Server product. For instance, VisualAge Generator Server for Windows and VisualAge Generator Server for AIX supports MQ file access, but not VisualAge Generator Server for Linux.

When generating java server programs for the AIX environment, choose LINUX from the target system drop-down list. The AIX option will be available in fix pack 4 of VAGen.

Preparing to Run Java Programs on the Target System:

Users targeting AIX for java server generation should use /SYSTEM=JAVALINUX generation option.

WebSphere Application Server Advanced Edition V4.0 Support

VisualAge Generator provides the same support for WebSphere Application Server V4 that it provided for previous versions of WebSphere. No new enhancements were made to support any new WAS V4 functionality. Users can continue to run the VAGen gateway servlet and the java classes generated for web transactions as before. The only difference users should be aware of is how web transactions are packaged and deployed.

In order to deploy VAGen web transactions to a WAS V4 system, the web transactions must be first assembled into an enterprise archive file, EAR, as a J2EE application. For information on how to package VAGen generated web transactions into an EAR file using the WebSphere Application Assembly Tool and how to deploy the EAR file from the WebSphere Advanced Administrative Console, refer to the newsletter article Deploying VisualAge Generator transactions the WebSphere way at: http://www.ibm.com/software/awdtools/visgen/library

Note: VAGen does not currently make use of the J2C connectors to access CICS. VAGen v4.5 continues to use CICS Transaction Gateway classes to connect to CICS.

The following table shows the combinations of software products and versions that have been tested and verified for VisualAge Generator support of WebSphere Application Server Advanced Edition 4.

Supported WebSphere Platforms Prerequisite Software
WAS 4.01 for Linux/390 -SUSE 2.4.7 kernel - Enterprise Edition 7
-DB2 7.2 fix pack 5
-Websphere GA level - a0150.05 build
WAS 4.01 for Linux/Intel -SUSE 2.4.4-64gb-smp Kernel Version
-redhat 2.4.2-2 Kernel Version
-DB2 v 7.1.0.41 solo426 u475381
-WebSphere 4.01
WAS 4.01 for AIX -AIXVersion 5
-DB2 V7.1.0.43
-WAS4.01
WAS 4.0 for iSeries -iSeries V5R1

MQSeries

If you are working with MQSeries queues and your code ends a unit of work, VisualAge Generator commits or rolls back all recoverable resources being accessed by your program, including databases, message queues, and recoverable files. This outcome occurs whether you use the eze words (EZECOMIT, EZEROLLB) or the calls to MQSeries (MQCMIT, MQBACK); the appropriate eze word is invoked in either case. A rollback occurs if a VisualAge Generator program terminates early because of an error detected by VisualAge Generator run-time services, even in non-transactional environments.


FixPak2

VisualAge Generator V4.5 FixPak2 contains enhancements, problem support, and limitations for the following:

General Improvement

Linux/390 Tier 2 Gateway Support


FixPak1

VisualAge Generator V4.5 FixPak1 contains enhancements, problem support, and limitations for the following:

Java Performance Improvements

VAGen Java API updates

With this FixPak, the signatures of several VAGenUtilityInterface APIs have changed. Current users of the APIs will need to change their code. In addition, new APIs to add menu items to the Packages menu of the VAGen Parts Browser have been added, and a new interface has been added which provides a means for executing code when the product is started.


VisualAge Generator Templates

Product Enhancements

VisualAge Generator V4.5 Fix Pack 4 contains VisualAge Generator Templates (VAGT) enhancements, problem support, or limitations for the following:
Various bugs have been fixed (see the APAR section). The main improvements are listed below:

Fixpak 1
Performance enhancements

Manipulation of the VAGT components is faster. Opening an editor is faster too.

Generated Web Client

Fixpak 2
Enhancement of the browsers

Generated Web Client Generated Java GUI Client Generation Fixpak 3

Generated Java GUI Application

Generated Smalltalk application

Limitations and Known Problems with VAGT

Common Limitations

Templates on Java Limitations

Templates on Smalltalk Limitations

Fix Pack 4 Service Supplied

See Templates APARs Included in Fix Pack 4



VisualAge Generator 4.5 Fix Pack 5 Installation Notes

Important Information

Installing VisualAge Generator Developer on VA Java

The following sections provide detailed instructions for downloading and installing fix pack 5 for VisualAge Generator V4.5. Please be sure to read the sections carefully before you install this fix pack.

Important: If you want to continue using an existing repository, be sure to back it up before you perform any migration. Before you install fix pack 5, you must first install or upgrade to VisualAge for Java 4.0. Refer to the Java 4.0 Installation and Migration Guide for information on how to migrate to VisualAge for Java 4.0. Sections in that guide describe how to migrate an existing shared repository.

Installing VisualAge Generator Developer on VA Java

Installing VisualAge Generator Developer on VA Smalltalk

Installing VisualAge Generator Server

Installing VisualAge Generator Common Services

Fix pack 5 for Common Service is a prerequisite for running the other VisualAge Generator products with fix pack 5. Follow the steps below to install the fix pack 5 for Common Services.


Installation Troubleshooting

Log messages when loading VAGen 4.5 features

If you install VisualAge for Java 4.0, when loading VAGen 4.5 features the following messages will appear in the Log panel. These messages can be ignored:

Message in Log when IBM VisualAge Generator 4.5 + FP5 feature added:

No resources were retrieved for IBM VisualAge Generator Runtime V4.5 FP5 because the store path ..\ivj.dat.pr\IBM VisualAge Generator Runtime\20050712.141615 does not exist on the server ...

Message in Log when IBM VisualAge Generator Utilities 4.5 + FP5 feature added:

No resources were retrieved for IBM VisualAge Generator Runtime V4.5 FP5 because the store path x:\xxxx\ivj.dat.pr\IBM VisualAge Generator Runtime\20050712.141615 does not exist on the server ...

Messages in Log when IBM VisualAge Generator Templates 4.5 + FP4 feature added:

No resources were retrieved for IBM VAGT Emitting Services V4.5.V04a because the store path x:\xxxx\ivj.dat.pr\IBM VAGT Emitting Services\20030326.140930 does not exist on the server ...
No resources were retrieved for IBM VAGT Model Services V4.5.V02a because the store path x:\xxxx\ivj.dat.pr\IBM VAGT Model Services\20010223.110835 does not exist on the server ...
No resources were retrieved for IBM VAGT Runtime V4.5.V02a because the store path x:\xxxx\ivj.dat.pr\IBM VAGT Runtime\20010223.111743 does not exist on the server ...

Messages in Log when IBM VisualAge Generator Templates Quickstart 4.5 + FP4 feature added:

No resources were retrieved for IBM VAGT Emitting Services V4.5.V04a because the store path x:\xxxx\ivj.dat.pr\IBM VAGT Emitting Services\20030326.140930 does not exist on the server ...
No resources were retrieved for IBM VAGT Model Services V4.5.V02a because the store path x:\xxxx\ivj.dat.pr\IBM VAGT Model Services\20010223.110835 does not exist on the server ...
No resources were retrieved for IBM VAGT Runtime V4.5.V02a because the store path x:\xxxx\ivj.dat.pr\IBM VAGT Runtime\20010223.111743 does not exist on the server ...
No resources were retrieved for IBM VAGT QuickStart Runtime V4.5.V02a because the store path x:\xxxx\ivj.dat.pr\IBM VAGT QuickStart Runtime\20010223.115618 does not exist on the server ...
No resources were retrieved for IBM VAGT Standard Visitors V4.5.V04a because the store path x:\xxxx\ivj.dat.pr\IBM VAGT Standard Visitors\20030326.142321 does not exist on the server ...

Problems installing fix pack 5 on VisualAge Generator Developer on VA Smalltalk:

If the following error message or a similar message is displayed during the FP5 installation, it may be necessary to load FP5 on top of a V4.5 Base with a clean image:

Error: 356 Cannot complete the load because the source is missing for ITFGuiTestFacility>>#testComplete and it must be compiled.

Take the following steps:

  1. Version any open editions or scratch editions you want kept, then rename your existing abt.icx image file (located in C:\Vast\image drive and path on a typical installation).
  2. From the C:\Vast\newimage\ directory, copy the clean image abt.icx to the C:\Vast\image (or wherever your abt.icx image file normally resides).
  3. Restart VA Generator, select Load / Unload Features from the Tools drop-down list in the System Transcript, ensuring that the Show Other Features check box is selected, and select the Other: VAGen 45 features from the left-hand pane (there should be three of them: Developer, GUI Settings, and Partitioning Support). These are the V4.5 Base features, and they must be loaded before installing FP5 on a clean image. Move these to the right-hand pane and click OK to perform the load.
  4. Once these features are successfully loaded, select Load / Unload Features from the Tools drop-down list in the System Transcript, ensuring that the Show Other Features check box is selected.
  5. Select the features with FP5 suffix from the Available Features list. Note that VAGen GUI Settings is no longer available, as per earlier note that it now exists within the Vagen Developer feature. If you want to update other features included in fix pack 5, select those as well. Move your selections to the right-hand pane and click OK to perform the load.
  6. Once these features are successfully loaded you will be prompted to save your image, Click the Yes button. After the image is saved you might want to make a backup copy of the abt.icx image file in case you need it later.
  7. Note also that you must reload your development applications from the manager once you have completed the above steps. This can be done from the Applications pane of the Organizer window, or the Applications drop-down list. Load >> Available Applications…

VisualAge Generator Templates Installation Notes

VisualAge Generator Templates Installation

VisualAge Generator Templates (Standard Functions) is installed with VisualAge Generator Developer.

VisualAge Generator Templates Customizer Installation

Hardware/Software Requirements

VisualAge Generator Templates Customizer Version 4.5 Fix Pack 4 requires the following software and hardware:

Note: VisualAge Generator Templates Customizer 4.5 Fix Pack 4 will not install if VisualAge Generator Templates Customizer 4.5 has not been installed previously on the machine.


Installing VisualAge Generator Templates Customizer on Java

To download from FTP site:

  1. Create a temporary directory on your hard drive.
  2. Download the self-extracting executable MDL45V4N.EXE to a temporary directory on your hard drive.
  3. Extract the files contained in the self-extracting EXE file to the same temporary directory

To install VisualAge Generator Templates Customizer on Java:

  1. Set the current directory to the temporary directory you created to store the FixPak files.
  2. Run 'setup'.
  3. When prompted, select VAGT Customizer on Java.
  4. Once Customizer has been installed, reboot.
  5. From the Start menu, select Programs, then select IBM VisualAge for Java for Windows, and then select IBM VisualAge for Java to bring up the product.
  6. For Workspace owner, select Administrator, and then specify your network name.

Installing the VisualAge Generator Templates Customizer feature: You should load the VAGT Customizer feature in a Java workspace that does not contain VAGT 'standard' feature. If you already have VAGT 'standard' feature loaded, then you should unload the feature or install an empty image. You can find an original ide.icx in the VisualAge For Java CD, in ivj353\backup directory.

  1. On the Workbench, select File>>Quick Start.
  2. On the Quick Start dialog, select Features on the left. Add Feature on the right, and then select OK.
  3. Select IBM VisualAge Generator Templates Customizer 4.5 + FP4, and select OK (this will take a few minutes).
  4. Close the Workbench, and, then, close the Log. You will be prompted to save the workspace. Select OK to save the workspace.

Installing VisualAge Generator Templates Customizer on Smalltalk

To download from FTP site:

To install VisualAge Generator Templates Customizer on Smalltalk:

To load the VisualAge Generator Templates Customizer features after installing VisualAge Generator Developer on Smalltalk:



List of APARs

Fix Pack 5

Developer

PQ68002 Java IDE problems related to volume - particularly References search on Windows XP
PQ68022 CICS ECI CTG and SSL enhancements
PQ68312 Index out of range exception/walkback when invalid VAGen part name is processed
PQ70629 VAGen ITF opens VSAM file on VSE/ESA in update mode (OPENIO) when access control says read only
VSAM files incorrectly opened in Read Only mode on VSE/ESA platforms when file operation is I/O
PQ74089 Packed ws fields in ITF when using EBCDIC mode are corrupted by DXFR process
PQ74526 Audit routine in EBCDIC Mode.
PQ75621 HPT.PE.288.E importing a ESF file containing a VisualAge Generator data item definition with a range attribute
PQ76102 Walkback on generate with empty SQLExec
PQ76456 VAGen does not print outline on OS/400 COBOL
PQ76524 Further changes for problems with References search
Java IDE problems related to volume - particularly References search on Windows XP
See Note For Windows XP Users (who have not installed SP2)
PQ76528 Walkback occurs when validating a function or generating a program
PQ76747 Incorrect evaluation when comparing data items using ITF in EBCDIC mode
PQ77279 VAGen generated Cobol report programs that use floating maps may have an extra line inserted before the floating map section
PQ77730 VAGen generated Cobol programs that call DB2 stored procedures do not receive data back from the stored procedure
PQ78760 UI Records generating incorrect program links
PQ78802 VAGen Cobol programs have invalid 'OCCURS' syntax generated when records have multiple substructures and group level items
PQ79050 Errors during runtime generation of Java GUIs on Windows XP
PQ79054 Walkback on print due to failing to read printsetup.txt file
PQ79234 Validation error for programs that contain CREATX call
PQ79802 For VAGen maps that only contain text, the generated MFS source has incorrect digits specified for the "POS=...." statement
PQ79908 Incorrect results comparing fields of different lengths in EBCDIC mode ITF
PQ79914 After importing a UI Record, compilation of VAGen generated UI Record bean fails with "Unable to interpret symbol" error
PQ80061 DBCS literals in "'"s folded to uppercase during import in error
PQ80068 Known parts being shown as unknown
PQ80069 DBCS characters converted to uppercase during validation
PQ80118 When accessing Remote VSAM files on MVS from VAGen ITF, data with non-unique keys is not returned correctly to the record
Data not being moved to record after a Remote VSAM read of Alternate Index
PQ80167 After importing a VAGen function with an SQL statement, the SQL validation fails due to the default 'ORDER BY' clause
PQ80170 SQL ORDER BY numerical statements 2,1 are converted to 2.1 on generation when windows locale settings for decimal are comma
PQ80861 Walkback when testing a breakpoint set on Java code for customisations
PQ80983 Walkback when migrating / importing csp code
PQ81114 Error HPT.CM.897.e generating webTransactions directly accessesing the message table
PQ81682 Generated setupEdits method exceeeds the 65535 bytes limit
PQ83337 Blanks in record properties file name
PQ83377 Walkback occurs when opening MSL Migration window
PQ83379 Errors during SQL Validation when using distributed DB2 to test multiple sessions
PQ83515 IDE export fails when prolog > 60 chars and other conditions
PQ84151 Error ELA00051P with IMS/VS programs generated as Main Transactions and performing a DXFR
PQ84329 Callable ITF when running in EBCDIC mode is not converting data back to ASCII on return to calling program
PQ84670 Renamed parts can contain trailing spaces
PQ85794 partInfo method returns wrong part when name contains '#'
PQ87567 For VAGen maps that only contain text, the generated MFS source may contain VAGen fields in POS=(1,1) which is invalid for 3270
PQ87734 References search walkback on click of Change button
PQ87889 Index out of range exception/walkback on the Java side when invalid VAGen part name is selected
PQ88598 SO/SI chars incorrectly displayed in 3270 Map Preview and ITF modes
PQ88732 References search fails to find function in test statement
PQ89390 ESF export file contains invalid value for KEY attribute associated with SQLROW record part
PQ89870 When generating MFS source for help maps, characters may be dropped off the end of words in the DFLD definition
PQ90292 When importing code from CSP, VAGen may add an ORDER BY clause in situations where it is not permitted
PQ90693 Subsequent generations produce different COBOL around IF/ELSE statements
PQ90930 ITF recursive maps stack overflow
PQ91169 ITF testing of Web Transactions causes Vagen hang when using Trace All and View Trace options
PQ91171 Literal in VAGen SQL WHERE clause > 80 chars causes exception at generation
PQ91173 LAN GEN performance problem with recursive PLPs
PQ91800 References walkback on non-English platforms
PQ93117 Anynumeric map item function parameter fails to compile
PQ93596 VAGen generated Cobol programs on the AS/400 abend when calling ELARSVCS
PQ93676 Statement Editor locks up when validating SQL with syntax error
PQ93699 Error when deleting SQL Password field
PQ98690 Tabs at first char of VAGen prolog will be stripped during COBOL generation
PQ98831 ITF not returning record from inquiry with duplicate key across remote VSAM alternate index
D14989 Java generation does not produce valid Java if the code uses flow statements
PK00697 NORMAL attribute not set correctly for map array items in ITF
PK04287 FCEJBLD.EXE on Windows XP SP2, raises Windows exception abend
PK05797 Walkback occurs when editing Vagen Part
PK06226 Multiple generations of program produce different C++ source
PK06957 SQL statements incorrectly having blank lines added to end of WHERE clause

Server Runtime

PQ77511 Moving data type UIRNUM to a CHA fails to compile under MSVC C++
PQ77773 Right justified DBCS char stored in DB without padded spaces.
PQ78093 Documentation for filetype of IBMCOBOL for VAGen C++ generated programs is vague. It is not supported with MS C++ compiler.
PQ78618 No commit occurs when remote C++ program called via CICS client
PQ79030 VAGen application failure: MQCONN 02071 MQRC-STORAGE-NOT-AVAILABLE on AIX 4.3.3/TXSeries 5.
PQ80166 Display date in runtime trace file (fcwtrace)
PQ83033 Unresolved external when compiling/linking VAGen application on Windows.
PQ83740 VAGen C++ runtime enters endless loop after converse
PQ84218 Core dump produced when loading FCW error message
PQ84380 Endless loop during converse of native screen on Windows XP.
PQ85078 ASRA abend in VAGEN C++ runtime from GetEnvVar
PQ87251 VAGen support for IBM VA C++ 6.0 and Oracle 9i on AIX 5.x.
PQ89085 FCWT transaction abends with ASRA under MS C++ 6.0 environment.
PQ89186 FCWABEND abends under Windows MSVC environment.
PQ89653 VAGen exception during termination under MSVC compiler on CICS 5
PQ92748 Multiple dlopens of VAGen apps cause memory leak on AIX 5.x
PQ94992 VAGen C++ server leaks memory with message queue records.
PQ95765 Memory leak in VAGen C++ server on AIX 5.X
PQ97176 Free SQL record after single row select
PQ98919 Memory leak in VAGen C++ program with serial records.
PK04742 Update runtime scripts with current version.
PK09094 FCWCICSINSTALL script references incorrect VAGen version.

Common Services

PQ84800 CSOTCPUI dumps core when unable to load GetUserIDPassword DLL.

Templates APARs

None.

Other Product APARs

hpt.jar

PQ76025 Poor performance when reading large linkageTables.
PQ79441 Null indicator is not being passed from one DB2 table column to another for runtime Web Transaction programs
PQ80863 Final VGJBigNumber problems resolved
PQ80863 VGJBigNumber multiply and precision problems
PQ84392 Change AS/400 connection to only use a GUI when one is available (runtime call)
PQ87619 Create the ability for VAGen Java user to override the JVMs default char encoding
PQ88461 Exception when running Vagen to EGL Migration Tool
PQ88599 Change VGJBigNumber multiply to use Java BigDecimal
PQ90018 API to set GSSCredentials on the jt400 AS400 access object
PQ93240 Disappearing numeric web fields after a while on AS400 WAS
PQ94532 New tracing for arithmetic overflow errrors
PQ94532 Continued math errors and additional tracing on overflow conditions
PQ94700 API to cancel currently running AS400 jobs
PK01346 Gateway logging too verbose.

hptGateway.jar

PQ71475 Allow external date format to be specified for web transactions via the gateway properties file.
PQ73211 New SessionID process - Separate IDManager no longer required
Removing CICS Temporary Storage Queues
PQ76157 Maintain user session across http and https protocol.
PQ77815 New property for VAGen managed persistence.
PQ77965 SIGN_NONE not being checked at runtime.
PQ79744 CTG connection failure message should not be displaying the IP address and port number
PQ82575 CTG connection problems in persistence mode
PQ82973 Allow passing of locale between programs using fixed field HPT_VGPAGELOCALE
PQ84392 Change AS/400 connection to only use a GUI when one is available (Webtransaction)
PQ87792 EditField message puts web transaction into reshow loop
PQ89579 CTG GatewayRequest class def not found
PQ90561 Changes to allow unbind to remove csotcp_u listener processes.
PQ91801 Log shows shortened request URL
PQ93806 NullPointerException thrown when unbinding GatewaySessionData
PQ94809 NullPointerException when HptVAGenManagedPersistence = Y
PQ94809 Additional changes for NullPointerException when in persistent mode and using CICS
PQ97178 Follow on change to PQ87619 to support VAGen encoding under WAS 5
PK01346 Gateway logging too verbose.
PK05948 NullPointerExceptions in Gateway caused by image button array and Mozilla browser.

vgjwgs.jar

PQ80345 Exception when override vgj.properties file is supplied
PQ98916 JDBC EZECONCT parameters are not trimmed leading to connection error when using VAGen 4 GL fields that are longer than the actual parameter length

Other

PQ88461 New version of VisualAge Generator Utilities Project - Exception occurs when running ESF to EGL Migration Tool

Fix Pack 4

Developer

PQ28607 Table variable not defined in generated UI Bean for Web-side edit function
PQ52578 VA C++ folding functions are not sensitive to the current locale in Windows development environments.
PQ52967 BATCH GENERATION OF WEB TRANSACTION FAILS IF VAJAVA AND VAGEN BATCH MONITOR ISN'T ACTIVE
PQ53021 IMPLEMENTATION OF APP REUSE FOR C++ GENERATED PROGRAMS
PQ53268 "HANG" SITUATION WHEN RUNNING HPTCMD LOADING AND UNLOADING
PQ54515 WB WHEN COPY PASTE DATAITEM IN UI REC WHEN DBCS CHARS EXIST
PQ55594 VAGEN OUTPUT INCONSISTENT BETWEEN ITF AND RUNTIME
PQ55714 VALIDATE WORKS AND GEN FAILS WHEN accessing msg table from web trans logic
PQ56033 VISUALAGE GENERATOR PARTS BROWSER DOES NOT SELECT COLLAPSED
PQ56547 VAGEN V4.5 FP3 - HPTCMD SEEMS TO HAVE A MEMORY LEAK WHEN
PQ56870 HEBREW CHARACTERS BEING DROPPED FROM THE LITERAL WHICH INCLUDES EXTRA SINGLE QUOTES
PQ57069 ANYNUM PARMS GEN IN JAVA DIFFERENTLY
PQ57273 VAGEN V4.5 FP3 - PERFORMANCE PROBLEM WHEN EXECUTING HPTCMD
PQ57703 UNABLE TO GENERATE JAVA WRAPPER FOR EXISTING VAGEN CICS
PQ57722 WALKBACK WHEN PERFORMING REFERENCES SEARCH FOR A PART.
PQ57908 ITF does not issue warning message, HPT.CM.455.W when using EBCDIC mode
PQ57935 WALKBACK USING VISUALAGE GENERATOR MSL MIGRATION TOOL
PQ58231 ITF incorrectly setting length fields on maps
PQ58318 WALKBACK USING MIGRATION TOOL WHEN MOVING PROGRAM FROM PARTS
PQ58345 SYNCHRONIZE THE JAVA CLASS THAT CALLS THE C CODE TO READ THE LINKAGE TABLE. Java Class = CSOPowerServer JNI; Project = com.ibm.vgj.cso; IBM VisualAge Generator Runtime
PQ58531 Debugger window opened after msg hpt.cm.207.e
PQ59063 ITF OPENS FILES INCORRECTLY
PQ59084 WALKBACK ENCOUNTERED AFTER APPLYING FP3 FOR VISUALAAGE GENERATO
PQ59315 EXTRANEOUS VARIABLE DECLARATIONS INCLUDED IN VISUALAGE GENERATOR COBOL PROGRAMS.

Customer can specify following SYMPARM option when generating: /SYMPARM=EZONEAS2,'YES' When the option is specified, the generated COBOL includes copybook VGNAHAS2 once in the linkage section and generates code to set the address of the copybook everytime the variables in the copybook are referenced. This causes a small increase in execution time, but allows the program to compile.

PQ59350 Code for setting SOSI edit present was copied from data item to UI record data item. A flag for SOSI for the data item overlays the flag for TRANSACT attribute for records.
PQ59482 TCP/IP Communications Limitation between images
PQ59545 HPT.CM.158.E issued when validating pgm with /LISTING option
PQ59557 JAVA SERVER PROGRAM GENERATION FAILS WITH LINKTYPE=REMOTE ENTRY
PQ59579 PREPROCESSOR FOR OS/400 IS DOING SOME SPECIAL CHECKS THAT ARE
PQ59628 resident shared tables wipe out on call when EBCDIC
PQ59744 EBCDIC value incorrectly used for EZEDEST files names instead of ASCII
PQ59914 WalkBack when PRINTING TO DBCS PRINTER
PQ60003 JDBC NOT VALID FOR DBMS OPTION
PQ60051 references on applications from parts browser
PQ60054 Garbage in table contents when generating
PQ60124 PGM FAILS VALIDATION IF CALL TO PGM USING EZEDLPCB PARAMETER
PQ60165 GENERATING JAVA WRAPPERS WHEN REC CONTAINS ITEM NAMED DESCRIPTION
PQ60258 SET map CLEAR AND EZESCOPY
PQ60305 Data conversion attempt on Alternate file causes WB
PQ60411 COMMITS AND DLI (ST and JAVA)
PQ60584 ITF IF STATEMENT RESULT IS INCORRECT WHEN "RUN IN EBCDIC MODE"
PQ60678 HPTCMD does not support UNC format for /OUTFILE
PQ60744 WB GENERATING PROGRAM THAT CONTAINS TABLES WHEN IN EBCDIC
PQ61022 PASSING A LITERAL ON A EZE FUNCTION CAUSES WB WHEN SIGNALLING TESTPOINTS
PQ61069 SQL RETRIEVE OF NOT NULLABLE GRAPHIC ITEM
PQ61073 RECORD WITH ONLY LEVEL77 ITEMS
PQ61170 NO MSG WHEN INPUT NOT RECEIVED FOR A REQUIRED FIELD
PQ61299 VALIDATING SQL STATEMENT WITH ; AT BEGINNING
PQ61499 CPP GENERATION CAUSES RUNTIME FAILURE
PQ61936 SETTING EZETST ON MOVEA WITH ARRAYS
PQ61944 SELECTED INDEX DOES NOT WORK CORRECTLY FOR UI RECORD IN ITF
PQ62092 WB WHEN LOCAL STORAGE OR LEVEL77 ON DLI CALL
PQ62228 EBCIDC W/NO CONVERSION TABLE CAUSES INVALID RESULTS WITH FRACTIONS
PQ62598 TEST NUMERIC FOR SQL ITEMS WHEN BLANKS EXIST
PQ62644 CHA DATAITEM COMPARED TO NUM LITERAL IN EBCDIC
PQ62728 SQLCODE -313 ON UPDATE WHEN DYNAMIC EXECUTION TIME STMT BIND
PQ62786 XFER w/ UIRECORD when ERRORS EXIST
PQ62832 SORTING OF PACKAGES ON IMPORT
PQ63133 PRINTING A PROGRAM WHICH USES INDEX FILES
PQ63144 JAVA IDE MAY HANG WHEN A JAVA METHOD EXECUTES A TOOL SERVER API AND THE VISUALAGE GENERATOR FEATURE IS LOADED WITHIN IDE.
PQ63164 INCORRECT PACKAGES LISTED IN PARTS BROWSER
PQ63167 ADD SUPPORT FOR NEW JAVA STARTUP PARMS
PQ63265 VAG server for Z/OS, Java puts not serialized in session.
PQ63296 VALIDATION OF VAR LENGTH RECORDS TO HOST ENVIRONMENTS
PQ63383 VALIDATION OF PROGRAMS CAUSES PERFORMANCE PROBLEMS
PQ63578 ADD TO FILE AFTER INQUIRY WHEN LOCAL FILE ACCESS
PQ63661 INITIALIZATION OF FCWPARMBLOCK FOR CICS CALLED APPS
PQ65219 PRINTING WHEN MOVEA EXISTS
PQ65342 &
PQ54431
5Meg limit on Image Component communication between Java and Smalltalk. This had been causing problems with Parts Browser (General Protection Fault) when listing large numbers of Vagen parts, and various other errors.
PQ65711 GENERATED SOURCE FOR MFS MAPS DOES NOT INCLUDE THE OUTL'HH' STATEMENT WHEN MULTIPLE OUTLINE CHARACTERISTICS ARE SELECTED.
PQ65804 LOGIC TO OPEN AND CLOSE SEQUENTIAL FILES IN GENERATED COBOL DOES NOT WORK PROPERLY WHEN RECURSIVELY CALLING SUBPROGRAMS.
PQ65907 MAP ATTRIBUTES ARE NOT BEING SET CORRECTLY IN ITF AFTER INITIAL CONVERSE OF THE MAP.
PQ65994 VAGEN USERS GENERATING SEGMENTED CICS TRANSACTIONS USING MQ/SERIES WILL HAVE MISSING WORKING STORAGE DATA ITEM.
PQ66111 NEW "Commit without XFER" TEST OPTION
PQ66161 Too many CTG connections opened.
PQ66384 DATA RETURNED TO ITF FROM A REMOTE PGM IS CORRUPTED
PQ66593 HOURGLASS ON IMPORT WINDOW
PQ66871 CALCULATE RECORD OFFSET INCORRECT WHEN PRINTING
PQ66881 TRAILING SPACES AND HIDDEN FILES ON UI RECORDS
PQ66882 Leading blanks stripped from hidden fields in UI rec.
PQ67435 BLANKING OUT NUMERIC FIELDS ON A MAP
PQ67778 DBCS /LISTING print does not pad lines with correct number of spaces when used in a DBCS environment
PQ67840 Incorrect number formatting when testing web transactions in ITF.
PQ67934 Trace output out of sync with command line after calling assignment functions.
PQ67935 Commented SQL code is incorrectly generated into C++ source code
PQ68002 References utility hangs when run on Windows XP platforms
PQ68022 CICS ECI enhancement to support calling CICS from Java applications
PQ68096 DXFR WITH ARGUMENTS (ON UI RECORD) FAILS IN W\STORAGE RECORD.
PQ68222 After applying VAG 4.5 FP3 FT18 and FIX for PQ59350, the "SHIFT-IN/SHIFT-OUT" option no longer functions.
PQ68280 Walkback in ITF using EBCDIC mode with conversion table - due to not enough memory
PQ68376 Walkback during Java Gen - String does not understand hptJavaResolveType
PQ68694 MAKE SQL RECD DEFINITIONS UNIQUE FOR EACH APPLICATION BY ADDING PROGRAM TO SQL RECORD PREFIX IN GENERATED C++
PQ68743 Stack overflow in ITF when setting testpoints and executing functions containing statements that assign negative literals to working or local storage variables
PQ68745 The length of UI DBCS fields had double the correct length when the create UI record from map function was used.
PQ68748 1. SQL subscripted host variable did not work when generated on a DBCS machine.
2. Long DBCS host variables where not faked for SQL names but caused a WB.
PQ68798 Walkback in ITF when trying to display un-initialized local dataitems after being used in a function call.
PQ68817 APPREUSE FOR THE CICS PLATFORM ON AIX 5.1 IS CAUSING SEGMENTATION VIOLATIONS.
PQ68834 ITF does not show floating map as per set attributes after the first converse of a map
PQ69376 IS MODIFIED function not working correctly with generated Web Transactions
PQ69484 ITF Map fields of datatype Mixed are not justified correctly
PQ70177 Session ID manager abends with 9999 active sessions.
PQ70401 MODIFYING VAGEN TABLE FORCES USER TO REGENERATE THE PROGRAM
PQ70435 ForUpdateOf Clause in SQL Update and SetUpd functions does not remove commented code from generated C++
PQ70524 GetSecureGatewayURL has missing index.
PQ70587 Index is missing from JSP for subscripted drop down lists
PQ70976 TEST CURSOR STATEMENT RETURNS FALSE WHEN MAP ITEM IS PASSED AS PARAMETER TO A VISUALAGE GENERATOR FUNCTION.
PQ71524 Numeric UIRecords show fill to the right of data
PQ71538 Walkback when validating during ITF test run in EBCDIC mode
PQ71751 4GL fillers not generated correctly into Java Wrapper source
PQ71835 Remote variable length record item defined outside of record structure.
PQ72254 Server loop when SessionIDManager no available.
PQ73079 Package name missing from generated Java
PQ73196 CPP Generation of Map Items incorrect when passing to functions for update
PQ73739 XFER ON UI RECORDS WHEN EZEAPP IS SET TO BLANK, FAILS IN GENERATION.
PQ74413 LNR7200 CAUSING MCH3601 IN VAGEN COBOL PRINT PROGRAM POINTER NOT SET
PQ75012 Walkback occurs when generating java editables
PQ76065 Compile errors in a generated COBOL program on AS/400 due to field EZEHAST-SMOD.

Server Runtime

PQ60878 COMPILE ERROR WHEN PREPARING VISUALAGE GENERATOR COBOL PROGRAM THAT PERFORMS MQ CALLS.
PQ65531 AN INVALID MEMORY LOCATION ERROR IS ISSUED WHEN CALLING A C++ PROGRAM W/ APPREUSE TURNED ON.
PQ67068 USER GETS COMPILE ERRORS WHILE TRYING TO GENERATE A VG GENERATED C++ PROGRAM ON AIX 5.1.
PQ68540 LEFT JUSTIFY ON DBCS FIELDS DOES NOT DROP THE LEADING SPACE ON AIX-CICS, IT TREATS ANY LEADING SPACES AS VALID.
PQ68541 WHEN JUSTIFICATION "NONE" IN DBCS FIELD, BLANK CHARACTERS ARE SAVED AS SBCS CHARACTERS.
PQ68592 EZEMSG FIELD MAY OVERFLOW INTO AN ADJACENT FIELD IF THE MESSAGE CONTAINS DBCS FIELDS.
PQ68941 MBCS FIELDS NOT DROPPING LEADING BLANK SPACES WHEN LEFT JUSTIFIED.
PQ69125 FCWTRACE FILE STOPS LOGGING TRACE INFORMATION
PQ69340 VAGEN CICS APPLICATIONS ON AIX5L PRODUCE INTERMITTENT ABENDS
PQ69431 VAGEN FAILS TO CONNECT TO DB2 ON AIX 5.1
PQ69463 AFTER A VALIDATION ERROR, THE CURSOR IS NOT RETURNED TO THE FIRST CHARACTER POSITION OF THE FIELD IN ERROR.
PQ69561 WEB TRANS X ERROR USING IS MODIFIED FUNCTION
PQ69864 ACCESS VIOLATION UNDER WINDOWS WHEN VAGEN APP RUN MULTIPLE TIMES
PQ71528 PROBLEM CONNECTING VAGEN 4.5 ON AIX TO CTG 5.0
PQ71857 CALLING A CICS PROGRAM USING NOMAPS WILL NOT UPDATE SCREEN ON RETURN WHEN MAP IS CHANGED.
PQ72103 RIGHT JUSTIFICATION OF A MAP FIELD WITH NULL FILL RESULTS IN GARBAGE CHARACTERS IN FIELD
PQ72469 SQL OPERATIONS FAIL WITH ERROR FCW0045E, RC=100. USING AIX 4.3.3 & CICS 5.0
PQ72642 VISUALAGE GENERATOR SERVER 4.5 MSGFCW0008E FOR FILE NAME DEFINED IN UPPER CASE RC=2
PQ73696 AIX CICS PROGRAM CALLING A NATIVE AIX PROGRAM, IS UNABLE TO WRITE TO A SEQUENTIAL FILE.
PQ74803 C++ RUNTIME DOES NOT SET EZEAID CORRECTLY WHEN A UI RECORD IS CONVERSED IN A DXFRED WEB TRANSACTION
PQ75194 TRAP IN FCW.DLL WHEN EZEUIERR USES NO INSERTS
PQ75280 OVERFLOW OCCURS WHEN MULTIPLYING AND DIVIDING NUMBERS IN A VAGEN CALCULATION.
PQ75418 MEMORY LEAK IN VAGEN C++ RUNTIME ON AIX 5.1
PQ75829 SQL NUMBERS ARE ROUNDED IF SELECTED INTO A SHORTER DATA ITEM

Common Services

PQ56988 Decimals moved to pack displays incorrectly
PQ60975 MACHINE HANGS AND PRODUCES INVALID MEMORY ERROR MESSAGES WHEN TRYING TO CALL A VG PROGRAM IN ITF VIA JAVA WRAPPER.
PQ64219 TRAP WHEN USING CSOPOWERSERVER APIS TO CALL ITF
PQ65545 MISSING C++ DLL ON SERVER CAUSES ACCESS VIOLATION ON JAVA CLIENT.
PQ65955 WHEN USING EZEPOW TO RAISE TO THE POWER OF ZERO THE AIX RUNTIME PRODUCES AN ABEND/RC16
PQ70088 VAGEN V4.5 FP3: HANDLE COUNT CONTINUES TO BUILD WITH EACH ACCESS TO THE GATEWAY SERVLET.

Templates APARs

PQ70631 Generator throws exception on setFillCharacter method.
This has changed to PQ75004 (from PQ70631), as the original APAR was raised under the wrong component ID.
PQ71651 Import of views from DB2 v7 on AIX results in SQL error.
PQ75004 Generator throws exception on setFillCharacter method
PQ75174 FO-REQ-CHK function in data control program has incorrect value for number of messages variable
PQ75178 FE-CTRL function not generated if 'control location' set to 'server'
PQ75223 Duplicate values in web application drop-down list
PQ75225 Unnecessary database access when BO logical key has numeric data type
PQ75226 CONTROL-DATA-ELEMENT should be set to an uppercase value in function FO-N-MAIN
PQ75227 Data Element column label field not taken into account by Smalltalk Web UI Generator
PQ75228 FW-ENTRY-INIT function not correctly generated when ExtractCriteriaDisplayed parameter = false.
PQ75229 Generation error when target interface unit does not contain any business object
PQ75230 Java GUI with updateable list does not properly refresh interface if all rows on a page are deleted.
PQ75231 Reverse of a complete or whole package stops with ArrayIndexOutOfBoundsException.
PQ75234 Text is truncated in error messages displayed in GUI error window.
PQ75379 Map numeric variable field length > 18 with numeric edits are truncated to length = 18

Other Product APARs

PQ69928 Accessing plugins is possible although a previous logon was not successful. This for example allows access to DL/I resources even if a invalid userid or password has been entered. This APAR concerns remote DL/I access to VSE systems.

FixPak3

PQ39119 NLS CHARACTERS NOT FOLDED TO UPPERCASE
PQ42119 VISUALAGE GENERATOR PRINT SETUP SETTINGS NOT SAVED WHEN USER EXITS OUT OF THE IDE.
PQ42636 C++ GEN SHOULD NOT SPLIT STRINGS WHEN MAX LINE LENGTH EXCEEDED
PQ42786 COBOL COMPILE ERROR, IGYPS2121-S, <DATA ITEM> WAS NOT DEFINED AS A DATA-NAME.
PQ42786 COBOL COMPILE ERROR, IGYPS2121-S, <DATA ITEM> WAS NOT DEFINED AS A DATA-NAME
PQ42938 DROPDOWN LIST INCLUDED IN FORM INSTEAD OF PLAIN PARAGRAPH TEXT WHEN USING VISUALAGE GENERATOR UIRECORD PART TO BUILD HTML PAGE.
PQ44450 ERROR RECEIVED DURING VALIDATE OF A CONVERSE FUNCTION REFERENCING A MAP WHOSE NAME HAS CHANGED
PQ44587 AN IMAGE COMMUNICATIONS ERROR OCCURS WHEN MIGRATING A CONFIG MAP FROM V3.1 TO V4.5
PQ44628 GUI MIGRATION DOES NOT HANDLE PROMOTED EXECUTE OF PROGRAMS
PQ44849 WALKBACK CREATING VAGEN VARIABLE WHICH HOLD A PROGRAM
PQ45042 GENERATION ERROR WHEN MAP ITEM PARM IS ANYCHAR
PQ45721 TRAP IN EFKAYZ45.DLL IF /SPZERO GENOPT USED W/ NUM RETURN VALUE
PQ45839 GENERATED COBOL FAILS TO COMPILE WITH MSGIGYPS0037-S. STATEMENT REFERENCES AN UNQUALIFIED NON-UNIQUE DEFINED NAME.
PQ46576 TAB Character identification Utility - The "Tabs" utility is in V4.5. The Smalltalk code is released in map "VAGen Java Interop" and the Java code is released in Project "IBM VisualAge Generator Utilities" and this project is released in solution "IBM VisualAge Generator Solution"
PQ46825 SQL RETURN CODE -519 RECEIVED WHEN RUNNING
PQ46916 WALKBACK WHEN PERFORMING 'ASSOCIATES' ON MAP GROUP
PQ47330 MQ ON IMS FAILS WITH ABEND S0C4.
PQ47402 IMPORT COMMAND ISSUES RETURN CODE 8 (RC=8) EVEN THOUGH THE IMPORT COMMAND WAS SUCCESSFUL.
PQ47502 USER GETS AN IMAGE COMMUNICATIONS ERROR WHEN EXPORTING W/ ASSOC
PQ47661 VAGEN: WALKBACK CREATED WHEN MIGRATING FROM V3.1 TO V4.5 IF THE APPLICATION BEING MIGRATED HAS SUBAPPLICATIONS
PQ47718 WALKBACK SAVING VISUALAGE GENERATOR SQLROW RECORD PART AFTER ADDING ADDITIONAL SHARED DATA ITEMS
PQ47753 DATA FILE CONVERSION TOOL CONVERTS FILE INCORRECTLY
PQ47797 HOST VARIABLE IN VISUALAGE GENERATOR SQL CLAUSE SHOULD NOT HAVE
PQ47853 VALUE OF EZEDEST IS RESET AFTER SEGMENT BREAK WHEN TESTING
PQ47888 PROGRAM EXECUTING ON CICS FILLS TEMPORY STORAGE AND THEN ABENDS WITH SHORT ON STORAGE CONDITION.
PQ47961 USER RECEIVES ERROR ON PREPARE FOR WEB TRANS DUE TO INCOR. PERMISSION.
PQ48083 PERFORM STATEMENT GENERATED FOR A MOVE CORRESPONDING IS NOT CORRECT WHEN THE ITEM IS A MULTIPLE OCCURING FIELD
PQ48087 JAVA PROJECTS CONTAINER DOES NOT DISPLAY THE SELECTED PROJECT WHEN DEFINING VISUALAGE GENERATOR BATCH SETTINGS.
PQ48184 CONVERSION TABLE NAME INCORRECT ON SUBSEQUENT CALLS FROM JAVA PROGRAM
PQ48221 validate of UIREC is MODIFIED not resulting in error msg
PQ48223 MESSAGE HPT.CG.62.E ISSUED WHEN GENERATING WEB TRANSACTION PROGRAM.
PQ48230 WALKBACK ISSUED WHEN TESTING OR VALIDATING WEB TRANSACTION PROGRAM
PQ48287 MESSAGE FROM BROWSER INDICATING DOCUMENT CONTAINED NO DATA WHEN DATA WITH VISUALAGE GENERATOR TESTPOINT DATA IS MODIFIED
PQ48291 ERROR SETTING EZEUIERR FOR DROPDOWN LIST OF UIRECORD.
PQ48373 ABENDELAE CALLING REMOTE CICS VAGEN PROGRAM FROM GUI CLIENT USING ELACNKOR CONVERSION TABLE
PQ48443 RESOURCE BUNDLE GENERATED FOR UIRECORD WITH /NOGENRESOURCEBUNDL
PQ48476 GENERATED FILES NOT DELETED EVEN IF DELETE_FILES=Y
PQ48488 SEARCH OF A PART FROM VAGEN PARTS BROWSER REFERENCES RESULTS IN FATAL APPLICATION ERROR - EXIT DUE TO ERROR: 53
PQ48491 GENERATING WEBTRANSATION PROGRAM RESULTS IN WALKBACK, HPTJSPREPEATELEMENT D/N/U SCRIPTLETVARIABLEDECLARATIONCLASS
PQ48525 VAGEN V4.5 - HPT.CM.107.E RECEIVED IN ITF AFTER SETTING A BREAKPOINT ON AN ARGUMENT
PQ48555 ITF MONITOR STARTS WHEN EDITING A VAJAVA VISUAL CLASS IF
PQ48576 GW ERROR MESSAGE FOR IMS ABEND ERROR SHOWS INDEX OUT OF RANGE
PQ48656 QUIET OPTION ON EFKSND.REX DOES NOT WORK WHEN USING TEMPLATES
PQ48659 HPT.INI CONTENTS ARE LOST WHEN WALKBACK OCCURS DURING THE UPDATE TO THE FILE ON PRODUCT SHUTDOWN
PQ48730 WHEN USING EZEUIERR THE DATA ITEM IN ERROR IS NOT DISPLAYED
PQ48981 RECORD EDITOR WILL SAVE RECORD > 32000 BYTES
PQ48988 PASTING DATA ITEM INTO RECORD DEFINITION CREATES NEW EDITION OF THE DATA ITEM IN REPOSITORY.
PQ49155 AFTER FP2, WHEN STARTING THE PRODUCT, ERROR MSG IS RECEIVED
PQ49156 GETTING A COMPILER ERROR WHEN USING LOCAL STORAGE ON DXFR
PQ49235 WALKBACK GENERATING REDEFINED RECORD WITH UNDEFINED SHARED DATA ITEM
PQ49282 SUBMIT BYPASS NOT IGNORING UI RECORD EDITS
PQ49341 INSERT LEVEL77/PARENT/SUBSTRUCT NOT AVAILABLE FROM MENU OPTIONS
PQ49345 WALKBACK 'HPT40MIGRATOR CLASS DOES NOT UNDERSTAND MIGRATIONERROR.' MIGRATING APPLICATION FROM 3.1 TO 4.5.
PQ49441 PASSWORD EXPOSED IN ITF TRACE
PQ49445 VISUALAGE GENERATOR REFERENCES TOOL NOT HANDLING SQL CLAUSE CORRECTLY
PQ49449 INDEX OUT OF RANGE WALKBACK WHEN USING VISUALAGE GENERATOR IMPORT UTILITY
PQ49462 VAGEN V4.5: HPT.CM.375.E - USERID DOES NOT HAVE A VALID PART TYPE FOR THIS USAGE, WHEN SAVING PART IN MAP EDITOR
PQ49551 When remote VSAM and relative, convert NUM record ID to BIN
PQ49672 HPT.CM.249.E ISSUED WHEN GENERATING A VISUALAGE GENERATOR
PQ49676 DBSTRING D/N/U SSTURLENCODE WALKBACK WHEN BIN ITEM IN PGM LINK>
PQ49680 CUSTOMER RECEIVING HPT.CG.13.I WHEN TRYING TO GENERATE.
PQ49684 UI RECORD IS USING THE VALUE OF THE SUBMIT BUTTON LABEL RATHER THAN THE SUBMIT VALUE.
PQ49854 INCORRECT DATA IS BEING MOVED INTO MAP ARRAY ON A MOVE CORRESPONDING.
PQ49943 ERROR RETURNING FUNCTION VALUE TO DATA ITEM TOO SMALL
PQ50142 PERFORM CHANGES ON PART CAUSES DUPLICATE FUNCTION OPTION LINES
PQ50164 HPT.CM.646.E ( MSGHPTCM646E ) ISSUED WHEN PERFORMING A BATCH
PQ50313 EZELOC/EZECONVT NOT PICKED UP USING GUI RUNTIME
PQ50386 MIGRATING 4GL MAPS VIA ESF PRODUCED BY CSP 3.3.0
PQ50426 REMOVE OBSOLETE REFERENCES TO VISUALAGE GENERATOR DATA ITEMS DEFINED AS PIC A IN THE GENERATED COBOL
PQ50434 LINK ERROR "REDEFINEDRECORD::SETUP(VOID*)" UNRESOLVED EXTERNAL
PQ50435 V3 TO V4 MIGRATION TOOL DOES NOT HANDLE CONFIGURATION MAPS WITH TWO CHARACTER NAMES
PQ50517 RUNTIME ERROR: HPTFLOWMODEL DOES NOT UNDERSTAND FINDOPTIONTEXT
PQ50583 INCORRECT COBOL GENERATED FOR MOVE CORRESPONDING
PQ50744 INCOMPATIBLE TYPE FOR METHOD. CAN'T CONVERT JAVA.LANG.STRING TO COM.IBM.VGJ.WGS.VGJNUMERICITEM
PQ50823 COMPILE ERROR PREPARING VISUALAGE GENERATOR COBOL PROGRAM THAT CONTAINS FUNCTIONS USING LOOSE TYPING IN PARAMETER LIST
PQ50828 VALIDATION FAILS INTERMITTENTLY WITH HPT.CM.782.E
PQ50830 EZECONV DOES NOT CONVERT DATA AS EXPECTED AFTER GENERATING THE
PQ51125 THE VG MIGRATION GUIDE STATES THAT "THE VISUAL TABLE PART FROM THE DATA ENTRY CATEGORY ON
PQ51160 WB when validating when undefined functions exists in pgm
PQ51177 DIFFERENT MATH RESULTS BETWEEN ITF AND C++ WGS
PQ51198 WALKBACK WHEN PROGRAM IS VALIDATED AND A SQL WHERE STATEMENT CONTAINS A SEMI-COLON.
PQ51402 DECIMAL POINT SET TO X'00' WHEN LOCALE IS SET TO 'C' IN CICS
PQ51788 IGYDS0023-E COBOL COMPILE ERROR GENERATED DUE TO RECORD LENGTH MORE THAN 30 CHARACTERS.
PQ51800 EZEAID VALUE IS NOT RESET ACROSS A DXFER IN A WEB TRANSACTION
PQ51940 VISUALAGE GENERATOR PROGRAM LISTING ENHANCEMENTS
PQ51992 "PACKAGE NAME" INFORMATION WINDOW DOES NOT REMEMBER PREVIOUS PACKAGE NAME ENTERED AND INSTEAD DEFAULTS TO MSL NAME.
PQ52240 EZERT8 NOT RESET AFTER CALL TO ANOTHER CICS PROGRAM
PQ52358 VisualAge Generator Test Facility Enhancement to Allow Testing
PQ52448 INCORRECT JAVA GENERATED FOR LOCAL STORAGE RECORD
PQ52618 VAGEN V4.0 FP3 - FP3 DID NOT INCLUDE THE JAVA TAB UTILITY
PQ52670 INCORRECT VALIDATION OF PCB SEGMENTS
PQ52786 GARBAGE CODE INSERTED DURING C++ GENERATION ON DBCS.
PQ52862 ADD CAPABILITY TO SEARCH A LARGE VAGEN TABLE CONTENTS
PQ52928 MISSING HELP CAUSES WALKBACK.LOG TO BE GENERATED.
PQ53007 VAGEN DISPLAYS INVALID DBCS IN MAP VARIABLE
PQ53011 CORRELATION NAME SHOULD BE REMOVED FOR DELETE CLAUSE
PQ53021 IMPROVE PERFORMANCE ON REPEATED CALLS TO THE SAME VG C++ PROGAM
PQ53165 SUBMIT VALUE ITEM NOT UPDATED WHEN A SUBMIT BYPASS PUSH BUTTON
PQ53177 MAP FIELD CURSOR IS INCORRECT IF SET IN CALLED FUNCTION.
PQ53205 MSGFCW0015EWHEN PROCESSING HEX DATA RETRIVED FROM VISUALAGE
PQ53210 INCORRECT COBOL GENERATED FOR MOVE CORRESPONDING.
PQ53309 APAR TO CHANGE THE BEHAVIOR OF HPTLOGOUT
PQ53323 VAGEN V4.5 FP2: HPT.CM.435.E FOLLOWED BY WALKBACK.LOG WHEN
PQ53473 SUBMIT ITEM VALUE NOT MOVED TO UIRECORD SUBMIT ITEM DATA ITEM.
PQ53751 FUNCTIONS LOCAL STORAGE IS NOT UPDATED WHEN USED IN A VISUALAGE
PQ53756 VAGEN V4.5: DEVELOPMENT APAR TO CREATE A WEB TRANSACTION AUDIT
PQ53757 VAGEN V4.5 FP2: WHEN USING EZETST IN SUBSCRIPT OF A WHILE LOOP
PQ53819 VAGEN WALKBACK WHEN PROMOTING BYTECHARACTER DATA WITH TYPE PACK
PQ53860 INCORRECT SEARCH PATH FOR CALLED APPLICATION ON AIX
PQ54010 USING VALIDATE & FORMAT FROM THE FUNCTION EDITOR WILL INSERT A
PQ54021 VAGEN V4.5 FP2: SCAN, UPDATE, DELETE, SCAN DOESN'T WORK FOR
PQ54394 WB WHEN USING A RETURN VALUE AND EZERTN
PQ54407 WALKBACK TRYING TO OPEN THE VISUALAGE GENERATOR RESOURCE
PQ54676 A representative defect for PQ54676
PQ54738 HPT.CM.218.E IN ITF TESTING SQLEXEC STMT W/O ETSB
PQ54744 CROSS REFERENCE INFORMATION NEEDS TO BE ADDED TO PRINT FOR PART
PQ55169 FILL CHARACTER DOES NOT SHOW ON UI RECORD WHEN USING ITF
PQ55221 CANNOT REPOSITION CURSOR IN ITF WHEN USING CALLABLE ITF.
PQ55390 WALKBACK UNDEFINED OBJECT ODES NOT UNDERSTAND CANBERUN WHILE
PQ55391 WALKBACK UNDEFINED OBJECT DOES NOT UNDERSTAND ADDSERIAL TESTING
PQ55428 WALKBACK OCCURS IN ITF AFTER EDITING A MEMBER ASSOCIATED WITH THE PROGRAM BEING TESTED
PQ55429 WALKBACK TESTING PROGRAM UNDER ITF
PQ55430 BATCH GENERATION OF VISUALAGE GENERATOR PROGRAM RESULTS IN WALKBACK.
PQ55431 USING VISUALAGE GENERATOR FILE CONVERSION UTILITY RESULTS IN WALKBACK
PQ55435 WALKBACK VALIDATING VISUALAGE GENERATOR PROGRAM.
PQ55500 /OUTFILE OPTION ADDED FOR HPTCMD PRINT
PQ55537 VISUALAGE GENERATOR COMPLICATION FAILS WITH MSG IGYPS2121-S.
PQ55651 HPT.CM.143.E WHEN RECORD IS A REDEFINE AND INCLUDES AN OCCURS
PQ55666 WALKBACK WHEN SORTING CXSTRING VALUES
PQ55715 WIDGET ALREADY DESTROYED WALKBACK ISSUED RUNNING VISUALAGE
PQ55716 MESSAGE WRITE FAILED, RC = 232 WALKBACK ISSUED RUNNING VISUALAGE
PQ55721 VARIOUS INDEX OUT OF RANGE WALKBACKS OCCURRING WITHIN VISUALAGE GENERATOR DEVELOPER
PQ55722 TRANSCRIPTTTY DOES NOT UNDERSTAND SHELL WALKBACK RECEIVED
PQ55723 OBJECT>>#AT: DUE TO INDEX OUT OF RANGE IN ARGUMENT 1 WALKBACK RUNNING VISUALAGE GENERATOR DEVELOPER
PQ55724 UNDEFINEDOBJECT DOES NOT UNDERSTAND TYPE WALKBACK RUNNING
PQ55725 EBADF (9) BAD FILE DESCRIPTOR WALKBACK ISSUED RUNNING VISUALAGE
PQ55726 UNDEFINEDOBJECT DOES NOT UNDERSTAND STATEMENTASSTACKLEVEL: WALKBACK RUNNING VISUALAGE GENERATOR DEVELOPER
PQ55727 UNDEFINEDOBJECT DOES NOT UNDERSTAND ISVISIBLE WALKBACK RUNNING
PQ55728 UNDEFINEDOBJECT DOES NOT UNDERSTNAD HELPMAPKEY RUNNING VISUALAGE GENERATOR DEVELOPER
PQ55729 UNDEFINEDOBJECT DOES NOT UNDERSTAND RELEASECACHEDIVS WALKBACK RUNNING VISUALAGE GENERATOR DEVELOPER
PQ55730 RECEIVER MUST BE A BOOLEAN WALKBACK RUNNING VISUALAGE GENERATOR DEVELOPER
PQ55731 UNDEFINEDOBJECT DOES NOT UNDERSTAND WALKBACK ISSUED FROM VISUALAGE GENERATOR DEVELOPER
PQ55732 UNDEFINEDOBJECT DOES NOT UNDERSTAND ASDICTIONARY WALKBACK RUNNING VISUALAGE GENERATOR DEVELOPER
PQ55733 WALKBACK UNDEFINEDOBJECT DOES NOT UNDERSTAND REFERENCE ISSUED IN VISUALAGE GENERATOR DEVELOPER
PQ55734 UNDEFINEDOBJECT DOES NOT UNDERSTAND CLOSE.
PQ55735 UNDEFINEDOBJECT DOES NOT UNDERSTAND ISMAPPED WALKBACK ISSUED.
PQ55736 UNDEFINEDOBJECT DOES NOT UNDERSTAND CANCELLED WALKBACK ISSUED.
PQ55892 PGM FAILS VALIDATION FOR CICS IF INDEX FILENAME CONTAINS @#$
PQ55898 VAGEN V4.5: GENERATE ERROR: HPT.CM.255.E AN ERROR OCCURRED IN DLL EFKAYZ45.DLL. THE RETURN CODE IS 1008.
PQ55899 VAGEN V4.5 FP2: WALKBACK OCCURED IN ITF, IN CGDRAWABLE CLASS
PQ55922 GENERATING APPLICATION SEVERAL TIME PRODUCES DIFFERENT COBOL PGM.
VisualAge Generator was generating the function each time it was invoked and did not keep track of previously generated functions. Before a function gets generated, check to see if it has already generated. If it has then do not generate it again. Otherwise, go ahead and generate it.
PQ56038 COMMON USER EXIT FOR USERID/PASSWORD SPECIFICATION IN
PQ56107 UNDEFINEDOBJECT DOES NOT UNDERSTAND DUPLICATENAME
PQ56108 (EXCLDTOBJECTNOTFOUND) OBJECT NOT FOUND WALKBACK USING VISUALAGE GENERATOR PROGRAM EDITOR
PQ56168 Negative port number
PQ56240 EZEPRINT TO FILE SHOULD REPLACE ATTRIBUTE MARKERS WITH SPACES
PQ56659 MQGET MQGMO_WAIT OPTION IS IGNORED BY VAGEN C++ WGS
PQ56780 INCORRECT COBOL GENERATED FOR ASSIGNMENT STATEMENT WHEN COMMA IS USED AS DECIMAL SYMBOL IN REGIONAL SETTINGS.
PQ56940 WALKBACK ITFREDEFINEDRECORD DOES NOT UNDERSTAND BYTEOFFSET
PQ57221 EZERT8 NOT SET WHEN EOF OCCURS ON A SEQUETIAL READ
PQ57304 VAGEN V4.5 FP2 - GENERATOR ERROR, WALKBACK HANGS LAN SERVER

Server 4.5 APARs Included in FixPak3

Template APARs Included in FixPak3
PQ57278 - Import error when acessing Korean DB2 on MVS

PQ57279 - Import of database tables from AS400 does not work.

PQ57281 - Quick Reverse - smalltalk field converter setting is correctly reversed

PQ57282 - Java GUI. Generation Technology. Parameter from property connection not generated properly

PQ57283 - Java GUI. Generation Technology. BeanInfo incomplete action.actionPerformed(java.awt.event.ActionEvent) is not valid.

PQ57285 - Generator Registry Browser. Sort order of classes does not work

PQ57284 - Generated applications - server: Empty function should use MoveA instead of Move.

Pq57288 - Generated applications - web: FILL UI Function should not reset control-error flag

PQ57287 - Generated applications - Java GUI: Extract and sort criteria not initialized properly (less than, descending)

PQ57290 - Generated applications - Java GUI: Refresh does not reset sort criteria.

PQ57291 - Generated applications - Java GUI: Read Only combo boxes are not disabled properly

PQ57292 - Generated applications - Java GUI: Setting ws GUI letter width to minimum or maximum has no effect

PQ57293 - Generated applications - Java GUI: Busy cursor remains after submit

PQ57294 - Generated applications - Java GUI: Redundant connection to repaint

PQ57295 - Generated applications - Java GUI: Dynamic change of readOnly property not handled properly

PQ57296 - Generated applications - Java GUI: autoResizeMode - java GUI list columns not sized properly

PQ57297 - Java Generation - NLS. Labels should default to english when language is not supported

PQ57299 - Java Generators Launching Business Object Server Generator with server layers = 3-tiers results in generation failed.

PQ57300 - Smalltalk Generators: Concurrency column are using an old API.

FixPak2


FixPak1


VisualAge Generator Generation Guide


Appendix B. Implementing a generation server

Because generation is a resource-intensive operation, you may wish to generate on a system other than the workstation on which you normally run VisualAge Generator Developer. You can set up a generation server to handle your generation jobs or the generation jobs of multiple programmers.

To implement a LAN generation server, you must customize the VisualAge Generator Developer configuration on the generation server and on the client. On the server, most of the customization is handled automatically. On the client, more manual customization is required.

When you are installing VisualAge Generator Developer on a LAN generation server, shared files are placed in a directory on a shared drive that is used for communication between the client and the server. Before you begin installation, you need to know what type of network you will be using and which drive will be shared.

Sample files

VisualAge Generator Developer provides sample REXX programs to help you implement a generation server. During installation, these sample files are placed in the installation directory (by default, C:\Program Files\IBM\VisualAge for Java or C:\Program Files\Vast). You must customize these files for your specific LAN server and operating system environment to provide the required processing support. These sample programs are command-driven and are not directly available on the graphical user interface.

You can use the user interface for generation to create generation command files that invoke the EFKREQ.CMD or EFKREQ.REX client code if the following criteria are true:

Note:
The sample REXX programs are the recommended method for running VisualAge Generator Developer on a generation server. It is recommended that you do not use the NET RUN service.

To run these REXX programs on Windows NT you will need to obtain and install REXX support; this is provided by the product IBM Object REXX for Windows NT and Windows 95 (5801-AAR). You need the interpreter edition (Feature 1569, part number 10J9392).

Figure B-1 shows the names of the sample files provided for OS/2 and Windows NT.

Figure B-1. Sample files provided for LAN generation on for OS/2 and Windows NT

File name Description
EFKSERV.CMD (OS/2) or EFKSERV.REX (Windows NT) This REXX file contains commands that receive server requests. The EFKSERV.CMD or EFKSERV.REX program runs on the LAN server and continually checks the server input queue for generation requests. The server input queue is specified in the EFKGEN.INI file.
EFKREQ.CMD (OS/2) or EFKREQ.REX (Windows NT) This REXX file contains commands that submit server requests. The EFKREQ.CMD or EFKREQ.REX program runs on the client, gathers generation option information, and places the generate request on the server input queue. EFKREQ also supports command options of PAUSE, STOP, and START. These command options control the processing of EFKSERV.
EFKLIST.CMD (OS/2) or EFKLIST.REX (Windows NT) This REXX file contains commands that list the contents of the server input queue. The EFKLIST program runs on the client and displays a list of all requests waiting to be processed by the EFKSERV program.
EFKGEN.INI This file defines the locations for different files. This file also defines other parameters used by the REXX command files. This file is installed on the client and server.
LANGEN.TXT This file contains additional configuration guidance for the implementation of generation clients and generation servers.

Setting up Object REXX support on Windows NT

The tasks described in this section are required only on Windows NT. OS/2 provides integrated support for REXX. The tasks on Windows NT are as follows:

Setting up the generation server

This section describes how to set up a LAN generation server. Before you begin, you need to know what type of network you are using, which directory on each generation server will be shared, and which drive on the generation clients will be used to access the shared directory.

To set up a LAN generation server, complete the following steps on each system that you want to use for remote generation:

  1. Install the VisualAge for Java or VisualAge Smalltalk client.
  2. For Windows NT, install and tailor Object REXX. See Setting up Object REXX support on Windows NT.
  3. Install VisualAge Generator Developer.
    1. In the Setup Type window, select Configure LAN Generation Server.
    2. In the LAN Generation Server window, be sure that the shared drive you specify supports long names. If the file system does not support long file names, you must modify the long file names in the sample REXX programs to use file names each with a base name no longer then eight characters and an extension no longer than three characters.

    The installation software completes the following steps:

  4. If you are running the Smalltalk version of VisualAge Generator, copy the following files from the VisualAge Generator Developer installation directory to C:\LANGENSVR\cmd:
  5. Edit the EFKSERV and EFKREQ scripts to point to the appropriate input and working directories. Do this in C:\LANGENSVR\cmd, not in the VisualAge Generator Developer installation directory. This ensures that any fixpak changes to EFKSERV and EFKREQ do not destroy your changes.
  6. Copy the VisualAge Generator Developer templates (*.TPL files) to C:\LANGENSVR\template and modify the copied files in C:\LANGENSVR\template as needed. Be sure to point your generation options to the modified version of the templates. The directory that contains the original version of the templates depends on whether you are running the Java or Smalltalk version of the product:
  7. Share the C:\LANGENSVR directory. On Windows do not accept the default share name, LANGENSVR shorten it to eight or fewer characters, for example, LANGEN.
  8. Set the PATH environment variable to include C:\LANGENSVR\cmd before the VisualAge Generator Developer installation directory cited at the end of Step 6.
  9. If you are running on a Novell Netware LAN environment, set the EZERUSRID environment variable to the LAN user ID of the generation server.
  10. Reboot your system for the changes to take effect.
  11. Start EFKSERV from a command prompt.
  12. For Windows NT, if the repository is not on the generation server system, ensure that the date style and time style in the regional settings on the generation server system match the corresponding information on the system where the repository is located.

Setting up the generation client

This section describes how to set up a LAN generation client. Before you begin, you need to fulfill the following prerequisites:

To set up a LAN generation client, complete the following steps on each system that you want to be able to use a generation server:

  1. Install the VisualAge for Java or VisualAge Smalltalk client.
  2. For Windows NT, install and tailor Object REXX. See Setting up Object REXX support on Windows NT.
  3. Install VisualAge Generator Developer. The generation client should use the same repository that the generation server uses.
  4. Map the generation server drive so that drive h: on the client workstation points to C:\LANGENSVR on the server machine.
  5. Set the GENERATE_INI environment variable to point to h:\cmd\EFKGENCL.INI.
  6. Modify the EFKGENCL.INI file on the generation server system as follows:
  7. Set the PATH environment variable to include h:\cmd and the path name of the VisualAge Generator Developer installation directory. The former directory must be included before the latter so that you can use EFKREQ from the generation server.
  8. If you are running on a Novell Netware LAN environment, set the EZERUSRID environment variable to the LAN user ID of the client workstation.

    For Windows NT, this should be a user environment variable, because it varies depending on which user is logged in.

  9. On each generation client system, specify EFKREQ for generation, as follows:
    1. From the VAGen Parts Browser window, select Window then Options.
    2. In the VisualAge Generator Options window, in the left pane select Generation.
    3. In the right pane select the CALL EFKREQ radio button and Apply.
  10. Exit from VisualAge Generator Developer and reboot your system for the changes to take effect.
  11. For Windows NT, ensure that the date style and time style in the regional settings on the client system match the corresponding information on the system where the repository is located.

After setting up the generation client

You can submit server requests even if the EFKSERV program is not running. The EFKREQ program places the generation request in input queue of the server.

The HPTCMD command output listings are placed in the directory specified by the gen_listing_dir parameter in the EFKGEN.INI file. The generated source and related program objects are placed on the server machine in the directory specified by the /GENOUT generation option.

When you specify a value for the /GENOUT generation option, use symbolic parameters to avoid conflicts with other generation requests. Figure B-2 shows how to use a symbolic parameter.

Figure B-2. Example showing the use of symbolic parameters

/GENOUT=F:\OUTPUT\%EZEPID%\%EZEENV%

If your target system is CICS for OS/2 and your project is USERA, the generated output is placed in the directory F:\OUTPUT\USERA\OS2CICS. If the directory you specify does not exist, it is created for you.


Useful Websites:

IBM VisualAge Generator

http://www.ibm.com/software/awdtools/visgen

IBM VisualAge Smalltalk

http://www.ibm.com/software/awdtools/smalltalk

IBM VisualAge Java

http://www.ibm.com/software/awdtools/vajava

IBM Application & Web Development Tools

http://www.ibm.com/software/awdtools

IBM Software Homepage

http://www.ibm.com/software

IBM Corporation Homepage

http://www.ibm.com