IBM VisualAge Generator
V4.5 Fix Pack 5 Readme Effective Date: 1 August 2005 |
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 |
VisualAge Generator V4.5 Fix Pack 5 contains enhancements, problem support, and limitations for the following:
None.
Target: C:\Vast\bin\NODIALOG.EXE -iunlock.icx "-default:C:\Vast\image\abt.ini" Start in: C:\Vast\unlock
Click Apply, and OK the window.
If the change was successful, the icon should change to the Smalltalk icon. If the icon has not changed, check that the changes have been done as shown, or if you installed Smalltalk to different directories then change the parameters to those directories.
Note for Windows XP Users (who have not installed SP2)
VisualAge Generator on Java uses TCP/IP to communicate between the workspace and the repository. Some customers who have moved to Windows XP but who have not installed Service Pack 2 are experiencing problems, particularly when performing large Reference searches or during generation. These problems usually cause VAGen to hang or stop responding. It has been determined that these problems are caused by changes in TCP/IP processing on Windows XP that require the Windows Registry to be updated.
A Registry update file, TCPIP.REG, is available from IBM VisualAge Generator Support.
Important: Before installing this patch it is essential to back up your Windows Registry as a precaution.
The fix is installed by typing in TCPIP.REG from the file location on the command line, or by double-clicking the file name in Windows Explorer.
The file will update your Registry with several new items (DWORDS) contained in the TCPIP.REG file. Be careful not to edit or make changes to this TCPIP.REG file or the Windows Registry.
Installing this file should resolve the problems with hanging or unresponsiveness during some VAGen operations. You should also install this fix pack as there are source code changes that are included for Windows XP performance issues.
The TCPIP.REG file can also be added to the Windows Registry for Windows 2000 users without causing any problems. However as the problems are not seen on Windows 2000 it is unlikely to have any effect on performance.
External date format (PQ71475)
A new property has been added to the gw.properties file. hptExDateMask allows you to specify an external date format for I/O in the UIRecords. The date mask works in the same way as the existing hptDateMask which is used for VAGen internal date formats. The external date mask is used to format dates on a UIrecord and to parse and validate the dates entered by the user.
Removing CICS Temporary Storage Queues (PQ73211)
When running VAGen web transactions on CICS, temporary storage queues are created in CICS for each request handler. These temporary storage queues can now be removed when the Gateway session is removed.
This process does not run by default. The process is enabled by adding the new 'tsqmod' property to the csogw.properties file. For example:
serverLinkage.mvscics.commtype=CICSECI serverLinkage.mvscics.contable=csoE037 serverLinkage.mvscics.location=MYMVS serverLinkage.mvscics.ctgLocation=MYMVS serverLinkage.mvscics.ctgPort=2006 serverLinkage.mvscics.serverid=CPMI serverLinkage.mvscics.javaProperty=my.pkg serverLinkage.mvscics.tsqMod=ELACDELQ
This allows different modules to be called on different servers or to disable the process on particular servers. Sample modules and setup instructions are shipped in the document TSQSAMP.doc in the samples folder.
Disabling the SessionIDManager (PQ73211)
A new SIDM process has been added to the VAGen gateway servlet. This new process is part of the GatewayServlet code and uses a time based algorithm to generate unique ids. The new process does not require that the sessionIDManager be started and runs only as part of the servlet with no remote calls or dependencies. Using this new process eliminates the current SIDM problem of no automatic recovery when the SessionIDManager fails. In summary:
hptDisableRMIIDManager=Y #hptSessionIDPrefix=KS
For further information on these properties see the sample gw.properties file shipped with this fix pack.
The session ID is 8 characters long starting with the prefix. The remainder of the ID is used for the variable part consisting of alphanumeric values between 0-Z made up of a unique generated value and an incremented counter determined by the length of the prefix.
**where: P = prefix, x = unique value, i = incremented counter
VAGen managed persistence (PQ77815)
A new property, hptVAGenManagedPersistence, has been added to the gw.properties file. hptVAGenManagedPersistence indicates that VAGen Session Data bound to the httpSession should be managed by VAGen. VAGen will force a new bind of the sessionData after each service call to ensure the VAGen session data is updated in the database. This should only be necessary for WAS3.x running in persistent mode. From WAS4.x the writeAll option in the WAS Session Manager should be used to manage session Data when running in persistent mode. This option should not be used in WAS5.x and other application servers.
Passing the locale between programs (PQ82973)
The existing method for setting a program's locale via the use of EZEUILOC and passing this setting to another program by the use of editFunctions can cause problems. To avoid these problems it is now possible to pass and update the locale in the target program before any other processing is done without the need to use the editFunctions. To use this facility you need to add an additional standard hidden field 'HPT_VGPAGELOCALE CHAR 8' to the UIRecord / Form. This field, if it exists, will be automatically set when the EZEUILOC function is called. The field and value will then be written to the JSP/HTML page.
When the page is submitted the value is passed to the target program which then sets it's locale before doing any other processing. The target program uses the EZUILOC function to set the locale so, if it exists in the target program, the HPT_VGPAGELOCALE will be automatically set. The locale field can also be included in hyperlinks and will be picked up by the target program in the same way. If the HPT_VGPAGELOCALE field is not specified, there is no change to the current processing.
Allow use of GSS Credential on AS400 server calls (PQ90018)
The CSOAS400Driver has been modified to look for a
GSS Credential object in the passed CSOCallOptions. If this
object is found it is used to create the AS400 server connection
instead of the User ID and Password.
A new method has been added to the CSOCallOptions which allows
customers to set the GSS Credential if desired.
public void setGSSCredential(Object gssCredential) { _GSSCredential = gssCredential; }
Terminating long running or looping AS400 server jobs (PQ94700)
When a thread calls an AS400 server program the thread will wait for the server job to finish, this can leave the client 'hanging' if the server program is in a loop.
A new method has been added to the CSOLocalPowerServerProxy which will allow a new thread to terminate the server program and force the original thread to return from the server call.
Note: The original thread will return from the call with a CSOException ("Connection dropped")
The new method is:public boolean endAs400Job() throws CSOException returns true if the AS400 end job command is executed succesfully.
Additional Support in VAGen V4.5 Server and Developer (II13763)
Refer to the Information APAR II13763 for additional guidelines and support information on the following topics in relation to VisualAge Generator v4.5:
Calling Java Applications Through C TCP/IP Client
The existing VisualAge Generator Client/Server architecture did not support Smalltalk GUIs or C++ applications calling generated Java Applications. The newly developed C driver which is called JTCPIP, will allow you to call Java Programs from SmallTalk GUIs using the existing CSO CMCALL API. The enhanced Java TcpIp Listener makes this scenario possible by handling the incoming calls from the JTCPIP driver.
The new client driver is valid for Windows clients, but is also able to call Java Applications running on different platforms where the Java TcpIp Listener resides (for example, UNIX platforms such as Linux and AIX).
The new communication is specified in the linkage table using REMOTECOMTYPE and REMOTEAPPTYPE entries. The new driver is in use when REMOTECOMTYPE is TCPIP and REMOTEAPPTYPE is VGJAVA in the linkage table. For example:
REMOTECOMTYPE=TCPIP REMOTEAPPTYE=VGJAVA
A package name needs to be specified in the linkage table. It contains the Java program to be run. The package name can be specified in linkage table using PACKAGE entry inside double quotes. For example:
PACKAGE="COM.COMPANY.COMPANYPACKAGE"
To be able to set up communication between JTCPIP client and Java Tcpip listener the same port numbers must be used. The process of setting up port numbers on both the client and listener side is similar to what we have today for C TcpIp client and Java TcpIp Listener.
On the client side an entry needs to be added to the windows services file. The service name must match the serverid in the linkage table and the port number needs to match the PORT parameter in tcpiplistener.properties file.
Serverid=VAGenJTcp
VAGenJTcp 1420/tcp
tcpiplistener.port=1420
Conversion table for Windows clients to Java TcpIp Listener
which resides on Windows platform will be ELAAX850 for English
applications, ELAAXCYR for Russian applications, etc.
Example: Contable=ELAAX850
Refer to the Conversion Table by Language and Platform (figure C-3) for COBOL and C++ programs in the Client/Server Communications Guide - Appendix C (Local system: Windows, remote system: AIX, HP-UX or Solaris) for the complete list of conversion tables.
The following restrictions are required for the GUI to client calls:
:calllink applname=* REMOTECOMTYPE=TCPIP REMOTEAPPTYPE=VGJAVA location='1.123.123.123' serverid=VAGenJTcp contable=ELAAX850 package='my.pkg'.
The Java tcpip listener (CSOTcpipListener) must be started on the server. The CSOTcpipListener is an existing, standalone program in the vgjwgs.jar file that processes requests from remote clients to run Java servers. The Java virtual machine (JVM) looks for the default properties file tcpiplistener.properties in your current directory but the file can be specified as a startup parameter:
start java CSOTcpipListener C:\VGWGS45\tcpiplistener.properties
tcpiplistener.port=1420 tcpiplistener.trace.flag=1 tcpiplistener.trace.file=c:\\vgwgs45\\logs\\tcpiplistener.txt
Problems with VAGen CICS programs on AIX 5.x
Problems have been found by VAGen customers running AIX 5.x using TXSeries CICS 5.0 or later. These problems are in the form of a SIGSEGV or SIGILL fault, resulting in an ASRA abend. This can be solved by setting the following environment variable in your CICS region's environment file:
CICS_NORTL_CICSAS=1After setting this variable you must stop and start your CICS region for the setting to take effect.
This environment setting is only available in PTF 5 of TXSeries 5.0 and higher. CICS_NORTL_CICSAS will cause CICS to use a version of cicsas which was not built with the RTL (RunTime Linking) mechanism. This should not have any impact unless you are using a product called Server Express COBOL. If you are using Server Express COBOL then do not set the CICS_NORTL_CICSAS environment option. In this case please contact VisualAge Generator Support.
Support for Object REXX 2.1.2 and 2.1.3
Customers who install Object REXX 2.1.2 or 2.1.3 may have problems during preparation. The preparation process fails when VAGen tries to transfer the generated code to a server. This is because the new version of Object REXX treats the last two lines of the efksnd.ini file as data. As a result the extraneous hex 1a character is treated as a real line containing a real character. Previous versions of Object REXX ignored this.
In the prpout.log the following error lines will be written:
updateProfile: Missing required field: [CONTROL] || Input error - program exitingThe solution for this error is to delete these unnecessary characters from the last two lines of the efksnd.ini file.
If you have any queries about this, contact IBM VisualAge Generator Support.
VisualAge Generator V4.5 Fix Pack 4 contains enhancements, problem support, and limitations for the following:
The following information is added to inform users of post fix pack 4 actions which they should be aware of after applying fix pack 4.
Messages hpt.CM.514.e and hpt.CM.740.e are thrown when trying to validate invalid Index Key's in the "Database PCB Update Box". Validation of VAGenerator 4GL, Validation of PSB and PCB information has been enhanced. This change can result in code that passed validation prior to 17/4/2002 failing with the following messages. Hpt.CM.514.e - PCB is not defined in the called parameter list. Hpt.CM.740.e - Parameter EZEDLPCB is not valid on a call or transfer. These messages can indicate that a data item declared as a PCB Index Key is not found in the program.
(ExCLDTIndexOutofRange) Index Out of Range.
A simple workaround is to shut down VAJava and delete a file called printSetup.txt, which is under <installed directory>\ide\program, then restart VAJava. As soon as you print anything from the Parts Browser it will recreate the file. It does mean you will lose any print settings you had saved, but you should be able to continue working as usual after that.
APAR PQ76524 covers the following aspects:
The VisualAge Generator Web Transaction Development Guide should have the following information added to clarify the behavior of submit value items and the passing of values between UI records:
Information regarding which push button was clicked on a defined FORM is passed to a receiving UI record, the same as for other user input. You must create data items in the receiving UI Record with the same name as the sending submit data items. Do NOT specify these data items representing the submit buttons on the Link Parameters in the UI properties of the FORM data item. The receiving UI Record must be specified in the UI Properties of the FORM data item. The UI type of the receiving data items could be:
- SUBMIT: If you do this you must specify on each one a label which matches up with the label of the sending data item. You must also assign it a default value. Then the default value of the receiving data item which corresponds to the sending data item which was clicked is looked up and that default value is set as the actual value of that receiving data item (the submit value item). All the other receiving data items corresponding to other submit buttons will be blank.
- Anything else, for example HIDDEN or NONE: When control passes to the receiving Web Transaction the LABEL (not the VALUE) of the button you clicked is passed into the corresponding receiving data item. All the other receiving data items which represent the other submit buttons remain blank.
VisualAge Generator for Java and VisualAge Generator Server for Windows are enhanced to enable users to call a CICS program from a Java client using CICS Transaction Gateway (CTG) middleware. The Java client may be either a VisualAge Generator program generated for Java or a Java class, a servlet for example, that uses a generated Java wrapper. Java classes provided by CTG use the CICS ECI to start the program. CICS Transaction Gateway can be configured to use either TCP/IP or APPC to communicate between the Java client and CICS transactions.
VisualAge Generator Developer is enhanced to allow users to specify in a linkage table entry a TCP/IP address and port for a CICS Transaction Gateway server to be used to communicate with CICS. If a linkage table with such an entry is used when:
… code is generated to cause the VisualAge Generator runtime to use CTG middleware to start the called program. Information from the linkage table entry is passed to the CTG middleware so that it can locate the program.
The VisualAge Generator Client/Server Communication Guide contains documentation for using Java wrappers to call VisualAge Generator programs from a Java class such as a servlet. See Chapter 18 - VisualAge Generator JavaBeans Wrappers and Enterprise Beans. The example for calling a session bean using a program wrapper can be used as a sample for calling a program from a servlet even if not using a session bean. (In this case you just would not need the EJB import java.rmi.RemoteException.)
To call a CICS program from a Java client using CTG, do the following:
linktype=REMOTE
|
|
parmform=COMMPTR, or
|
Matching the linkage used when the called program was generated. |
remotecomtype=CICSCLIENT
|
|
contable=CSOE037
|
Assuming an ASCII client to an EBCDIC server in English. |
location=CICS region
|
|
serverid=transactionID
|
Defaults to CPMI. |
ctglocation='tcp alias/address'
|
TCP alias or address of CTG server. Enclose in single quotes if it contains periods. |
ctgport=port
|
Port on which CTG server is listening. |
luwcontrol=SERVER
|
Client unit of work is not available in this FixTest. |
remotebind=GENERATION
|
More efficient as long as program location is fixed. |
Note: If using remotebind=RUNTIME, save the linkage table part to a file before step 2. Name the file the same as the linkage table. When performing the save, a ".lkg" extension is appended at the end.
/linkage=<name of linkage table from step 1>
CSOUID=user ID CSOPWD=password
Include this properties file along with the client application in the classpath of the client execution environment.
If the client is a servlet using generated wrappers to call the CICS program, you must package the wrapper classes, the VisualAge generator middleware jar file, hpt.jar, and the CTG jar file, ctgclient.jar, in the Web Application .war file. The linkage table file and the csouidpwd.properties files must be at the root of the .war file. This .war file is subsequently packaged in the .ear file used to deploy the client web application to the application server.
If the client is a generated Java program, the generated classes, VisualAge Generator runtime jar files hpt.jar and vgjwgs.jar, and CTG jar file ctgclient.jar, (and the csouidpwd.properties file if used) must be included in the classpath of the client execution environment.
VisualAge Generator Support for Web Transactions Using the SSL Protocol
These instructions are for the scenario where a self-signed certificate is used. You can paste the example statements and test this, since they have been extracted from a working sample.
keytool is a tool that is supplied by Java. It resides in the <JAVA_HOME>/bin directory.
Following is an example in which keytool is used to create a server keystore called ServerKeyStore.jks, and a self-signed certificate. In this example the same password is used for both the keystore and the key, and the keystore is stored in a directory called /u/vguser/ctg500/keys. You will need to specify this directory in Step 3, when updating the CTG.INI file. You should create your own directory where you can keep your keys.
Note: If you don't specify a full path the keystore file is created in the current directory.
Example:
This example creates a server keystore that contains a self-signed certificate. You may need to put this example statement in a script file.
keytool -genkey -alias ServerCertificate -keysize 1024 -dname "cn=hostname.raleigh.ibm.com,o=IBM,ou=VAGen,l=RTP,s=NC,c=US" -keystore ServerKeyStore.jks -storepass storepassword -keypass storepasswordExplanation of the options:
cn=<any unique name; the host name is sufficiently unique> o=<Organization> ou=<Organizational Unit> l=<Location> s=<State> c=<Two letter country identifier> ServerCertificate can be any alias you like ServerKeyStore.jks is the name of the file to be used for your keystore
Use the following command to export the certificate from the keystore created above to a file called ServerCertificate.der
Example:
keytool -export -alias ServerCertificate -keystore ServerKeyStore.jks -file ServerCertificate.der -storepass storepassword
This certificate will be needed later.
Update the /<CTG install directory>/bin/CTG.INI file to add the following entries (which may already exist, but might be commented out).
The first entry is:
protocol@ssl.handler=com.ibm.ctg.server.SslHandlerwhich activates the SSL handler.
The second entry is:
protocol@ssl.parameterswhich contains parameters that will be used by the SSL handler. The relevant parameters are:
port: | Port number where the SSL handler will be listening for requests. Keep note of the port number since this will need to be entered into the csogw.properties file on the client. Port number 8050 is the default. |
keyring: | Enter the fully qualified path of the server keystore from Step 1. In our example, this is /u/vguser/ctg500/keys/ServerKeyStore.jks. |
keyringpw: | Enter the keystore password used when creating the server keystore in Step 1. In our example, this is storepassword. |
Example:
protocol@ssl.handler=com.ibm.ctg.server.SslHandler protocol@ssl.parameters=port=8050;sotimeout=1000;connecttimeout=2000; idletimeout=600000;pingfrequency=60000;keyring=/u/vguser/ctg500/keys/ServerKeyStore.jks; keyringpw=storepassword;clientauth=off;
Submit the job to start CTG on the host. Check ctg.trc file for a log entry such as this:
03/25/03 : 12:45:04:739 : CCL6524I: Successfully started handler for the ssl: protocol.Now that the host is ready to receive requests, we need to prepare the client.
From the client, ftp into the host and get the certificate file from the host. In the example, the name of the certificate file was ServerCertificate.der. Make sure to use the binary mode of transfer.
Once you have the certificate on the client you must create the client keystore. Below is an example of how to create a client keystore. You can replace ServerCertificate, ClientKeyStore.jks, and storepassword with any name and password you like. The certificate file name should be the same as the name of the certificate file received from the host (ServerCertificate.der in the example).
Issue the following command to create a client keystore that contains the server's self-signed certificate.
Example:
keytool -import -alias ServerCertificate -file ServerCertificate.der -keystore ClientKeyStore.jks -storepass storepasswordWhen asked:
Trust this certificate? [no]:Type yes
Because ClientKeyStore.jks does not exist, a keystore with this name will be created in the working directory. Remember the full path to the client keystore, as you will need to enter this into csogw.properties in the next step.
Update the csogw.properties file by adding the following entries with the client keystore file name and the password for the client keystore:
serverLinkage.<applicationname>.keyring=<path to keystore> serverLinkage.<applicationname>.keyringpassword=<password>
Example:
serverLinkage.UITEST.keyring=D:/SSLKeys/ClientKeyStore.jks serverLinkage.UITEST.keyringpassword=storepassword
Make sure two entries for CTG, serverLinkage.<applicationname>.ctgLocation and serverLinkage.<applicationname>.ctgPort, exist in the properties file. The entry serverLinkage.<applicationname>.ctgPort should be the port number that was entered in the CTG.INI file on the host. If this entry is missing, the port number defaults to 8050 if the serverLinkage.<applicationname>.keyring entry is specified.
Make sure the new version of hptgateway.jar file is in the classpath at deployment.
Make sure that ctgclient.jar is in the classpath at deployment.
If hangs are experienced during the converse of CICS maps on the VAGen AIX 5.1 runtime, add the following line into the environment file for your CICS region:
MALLOCTYPE=bucketsYour CICS region will need to be stopped and started for the change to take effect.
VisualAge Generator V4.5 FixPak3 contains enhancements, problem support, and limitations for the following:
The EFKSND Rexx command file has been modified to support calling the userid/password exit if the developer did not specify the TCP/IP userid and password as generation options.
If you have made modifications to efksnd.rex and do not want to use this new function, you may continue to use your modified copy of efksnd.rex. Otherwise you will need to add your modifications to the new version of efksnd.rex.
/********************************************************************/ /*Sample program that is called from a VG program.Character */ /*and binary parameters are passed.A binary parameter must be returned.*/ /********************************************************************/ #include <stdio.h> extern int _System NVGAPP(char*buffer,int*len,int*rc); extern int _System NVGAPP(char*buffer,int*len,int*rc) { printf("Parm1 =%s \n",buffer); printf("Parm2 =%ld \n",*len); printf("Parm3 =%ld \n",*rc); *rc =99; return(0); }
Due to Smalltalk's algorithm for sorting strings, the results of string comparison operations may be inconsistent with regard to case-sensitivity. String comparison results in ITF may differ from those in runtime environments.
CSO8000E The password entered to the Gateway has expired. %1
Explanation: The VisualAge Generator GatewayServlet received
an expired password exception when attempting to authenticate the
user with the provided password.
User Response: Examine the exception information returned in
order to determine the cause of the problem. Correct the problem by
proving a new password.
CSO8001E The password entered to the Gateway is not valid. %1
Explanation: The VisualAge Generator GatewayServlet received
an invalid password exception when attempting to authenticate the
user with the provided password.
User Response: Examine the exception information returned in
order to determine the cause of the problem. Correct the problem by
providing a new password.
CSO8002E The userid entered to the Gateway is not valid. %1
Explanation: The VisualAge Generator GatewayServlet received
an invalid userid exception when attempting to authenticate the
user with the provided userid.
User Response: Examine the exception information returned in
order to determine the cause of the problem. Correct the problem by
providing a new userid.
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:
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.SampleUserExitThe 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:
- Reach the UI Record bean before UI record data is sent to tier 3 by gateway servlet.
- Work with HttpServletRequest/Response objects.
- Set or get the user specific data into/from GatewayAcess object.
- 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:
- Reach the UI record data which was sent back from tier 3 to gateway servlet.
- Work with HttpServletRequest/Response objects.
- Get the user specific data in GatewayAcess object.
- 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:
Requires generation of web transaction with fix PQ53756 applied to VisualAge Generator developer; a fix test may be requested; the fix is also shipped with FixPak3.
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 CICSThe 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.
ELAIMSAX for IMS
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).
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:
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
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.
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.
With this fixpak, VisualAge Generator supports accessing relational database access via the JDBC interface for the following systems: LINUX, AIX, OS/400 and OS/390.
The official support for Sequential file access and MQ file access will be available in the next fixpak of VAGen. At which time, you will be able to generate programs that access MQ files for the following systems: WINNT and AIX. You will also be able to generate programs accessing Sequential files for these systems: LINUX, AIX, OS/400 and OS/390.
If you are generating programs that mixes relational database calls with sequential file access, VAGen prevents you from generating the programs and ends with an error message indicating that sequential file access is not supported. Until the official support is delivered in the next fixpak, you can bypass this restriction by generating and compiling the java code on a Windows system. Then, use the java "JAR" command to assemble the class files for transport and ftp the jar file to the target system.
Preparing to Run Java Programs on the Target System:
export CLASSPATH=$CLASSPATH:$JAVA_HOME/jre/lib/rt.jar export CLASSPATH=$CLASSPATH:/home/vagen/vg45/hpt.jar export CLASSPATH=$CLASSPATH:/home/vagen/vg45/hptGateway.jar export CLASSPATH=$CLASSPATH:/home/vagen/vg45/vgjwgs.jar export CLASSPATH=$CLASSPATH:/home/vagen
export HPTCLASSDIR=/home/vagen/WEB-INF/classes export HPTJSPDIR=/home/vagen/WEB-INF
HPTCMD GENERATE MINTEST /GENOUT=e:\genout45\webtran\javalinux /JAVASYSTEM=LINUX /JAVADESTDIR='/home/vguser/genout/vg45fp3/web' /JAVADESTPASSWORD=vguser /JAVADESTUID=vguser /JAVADESTHOST=ctflin03.raleigh.ibm.com /SYSTEM=JAVALINUX /DESTDIR='/home/vguser/genout/vg45fp3/server' /DESTPASSWORD=vguser /DESTUID=vguser /DESTHOST=ctflin03.raleigh.ibm.com /PACKAGENAME=my.pkg /NOUNLOAD
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 |
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.
http://www.ibm.com/software/awdtools/visgen/library/v45docs.html
Follow the procedure stated in chapter 7, with the following changes for LINUX:
a. The section titled "Define an application server, servlet engine, and web application to WAS" includes 16 steps. In step 12, if you are using a war file, you are directed to click Finish and to continue your deployment process at "Use a web application archive (war) file". However, on LINUX, the "Finish" box at step 12 is greyed out. You must continue through step 16, then go to the topology tree and delete the web application ("practice_app", for example). You can use a right mouse button on the application name and click Remove.
b. Under the heading "Complete the deployment" are six steps. At the end of step 2, you are directed to click Next. On LINUX, that click does NOT take you to the frame mentioned in step 3. In between, you are on the "Application Resources" frame. On that frame, select "default_host", click Next, and then you will be at the frame mentioned in step 3.
The mechanism for starting the Session ID Manager is also defined in Chapter 7 of the VisualAge Generator Web Transaction Development Guide, in the section "Running a web transaction in WAS," subsection "Start the Session ID Manager." Follow the directions for Solaris.
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.
public static boolean addPartNameValidationHandler(String handlerClassName) public static boolean removePartNameValidationHandler(String handlerClassName) public static boolean addPartsMenuItem(String itemName, String listenerClassName, int enabled) public static boolean addPartsMenuItem(String itemName, String listenerClassName, String enablerClassName) public static boolean addToolsMenuItem(String itemName, String listenerClassName) public static boolean addToolsMenuItem(String itemName, String listenerClassName, String enablerClassName)
public static void addPartNameValidationHandler(VAGenPartNameValidationHandler handler) public static boolean removePartNameValidationHandler(VAGenPartNameValidationHandler handler) public static void addPartsMenuItem(String itemName, VAGenActionListener listener, int enabled) public static void addPartsMenuItem(String itemName, VAGenActionListener listener, VAGenActionEnabler enabler) public static void addToolsMenuItem(String itemName, VAGenActionListener listener) public static void addToolsMenuItem(String itemName, VAGenActionListener listener, VAGenActionEnabler enabler)
public static void addPackagesMenuItem(String itemName, VAGenActionListener listener, int enabled) public static void addPackagesMenuItem(String itemName, VAGenActionListener listener, VAGenActionEnabler enabler) public static void addPackagesMenuSeparator(String separatorName) public static boolean removePackagesMenuItem(String itemName)
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
The generated item names are more easy to read and take into account muliple displays in one single interface unit.
Several new hooks are available in the web transaction to customize the initialization of the program, the server calls and the display.
Fixpak 2
Enhancement of the browsers
Generated Java GUI Application
When connecting to the database, you may have database
connections left open (an error -1445 appears), you should
clean up SQL database connections so you can execute the
following code to clean up the SQL interface:
SQLRequester disconnectAll
Note: Be aware that this will also roll back all units of work.
See Templates APARs Included in Fix Pack 4
VisualAge Generator 4.5 Fix Pack 5 Installation Notes |
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
instvgfp c:\IBMJava c:\vg45fp5If the installation was successful this message will be displayed:
"fix pack 5 installation completed"
The name of the temporary directory is created by appending VAGenFP5 to the contents of the TEMP variable. If the TEMP variable is not set the directory C:\TEMP\VAGenFP5 is used.
- Back up your workspace or make sure it's in a safe place.
- Uninstall IBM VisualAge Generator Common Service, IBM VisualAge Generator Server, IBM VisualAge Generator Developer on Java and then VisualAge for Java and IBM Connectors, in that order.
- Make a connection to the FTP site at ftp://ftp.software.ibm.com. This site contains information and fixes for a wide variety of other IBM products. The files InstallOnVAJava353_40.exe, RemoveJava35key.exe and those of fix pack 5 are located in the directory ftp://ftp.software.ibm.com/ps/products/visualagegen/fixes/v4.5/FixPack5/windows. You may perform an anonymous logon to this FTP site.
- Download InstallOnVAJava353_40.exe, RemoveJava35key.exe and fix pack 5 files from the FTP site to the machine where you will be installing VisualAge Generator 4.5 on Java.
- Run RemoveJava35key.exe. You should not receive any messages.
- Restart the computer. Then go to the directories where these programs are installed and physically remove these directories.
- Now follow the instructions for a New Install: Installing VisualAge Generator Developer on VA Java
Note: There is a known issue with the Load/Unload Features window:
In the right-hand pane under Loaded features, the following feature may already be shown as loaded, even if it has not explicitly been loaded, or it has been replaced with the FP5 feature: Other: VAGen GUI Settings - FixPak3This is a cosmetic error only and can be ignored. However, it is important that you do not try to select and remove this feature, as a debugger or walkback window may appear.
Please also note that as of FP5 there is no longer a VAGen GUI Settings feature to load. This is because the source code for this feature has now been included in the VAGen Developer feature, so by loading this you will automatically load the VAGen GUI Settings feature and it will be not have a separate feature listing in the Loaded Features pane on the right-hand side.
csogw.properties
gw.properties
The file name is:
installp -u vgwgs45.obj
installp -ad vgaix545.fp05 all
(non-CICS systems)
installp -ad vgaix545t.fp05 all
(CICS systems)
rm -rf /opt/vgwgs45
tar -xvf /home/user1/vgfixes/vgsol845.fp5.tar
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.
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 ...
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:
Take the following steps:
VisualAge Generator Templates Installation Notes |
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.
To download from FTP site:
To install VisualAge Generator Templates Customizer on Java:
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.
To download from FTP site:
The address of the FTP site is ftp://ftp.software.ibm.com. This site contains information and fixes for a wide variety of other IBM products. The files for this fix pack are located in the directory /ps/products/visualagegen/fixes/v4.5/FixPack4/vagtcustomizer. You may perform an anonymous logon to this 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:
Note: |
If you get a walkback (VisualAge Debugger) window while saving the image, it probably means that you have run out of disk space. If this happens, close the VisualAge Debugger window and either free some space on your workstation and retry saving in the same place or save the image on another drive by selecting File>>Save Image As.... |
List of APARs |
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/OPQ74089 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 IndexPQ80167 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
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.
PQ84800 CSOTCPUI dumps core when unable to load GetUserIDPassword DLL.
None.
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.
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 QueuesPQ76157 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.
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
PQ88461 New version of VisualAge Generator Utilities Project - Exception occurs when running ESF to EGL Migration Tool
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 &
PQ544315Meg 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.
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
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.
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
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.
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
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.
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.
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:
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. |
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:
If the association does not exist, you can add it from the command line by running the following command:
assoc .rex=REXXscript
REXXscript="C:\ObjRexx\rexx.exe" %1 %*
where C:\ObjRexx is the path name of the directory where Object REXX is installed. If the ftype definition does not exist, or does not match the value shown above, you can create the definition from the command line using the following command:
ftype REXXscript="C:\ObjRexx\rexx.exe" %1 %* >.REX
.REX;.COM;.EXE;.BAT;.CMD
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:
The installation software completes the following steps:
This file has been tailored to include the VisualAge Generator environment variables and to point to the repository.
This is a workspace/image that already has the VisualAge Generator Developer feature loaded.
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:
/server_input_dir=h:\inputGen /gen_listing_dir=h:\outlist
For Windows NT, this should be a user environment variable, because it varies depending on which user is logged in.
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: |
|