Preparing legacy programs for conversion



The following is a summary of known issues that may need to be addressed manually when converting RPG applications programs to RPG Open Access and Profound UI.

  • RPG III programs have to be converted to RPG IV.  This can be done using the CVTRPGSRC command.

  • Progams must be compiled with DFTACTGRP(*NO).  This can be specified on the compile command or added as an H spec option to the top of the program.

  • If you are using the Job’s Start User Id to identify users, this will have to be changed to use the Job’s Current User Id, as the Job’ Start User Id does not contain the expected data in a browser environment, unless you are calling the converted program from Genie.

    •  SDS positions 254-263 will give you the wrong user profile in a web environment. What you’ll want to use is positions 358-367. This is the “current user profile” of the job which will give you who signed in.

    •  If using the RTVJOBA command, try using the CURUSER parameter instead of the USER parameter. This will make it work properly for you.

  • When running programs within the HTTP subsystem, generated spooled files are assigned to a separate job named QPRTJOB. This will require modifying certain logic that depends on OVRPRTF or CPYSPLF commands.  See IBM Info Center for more information. If you are calling the converted program from Genie, this is not a problem.

  • Data structures based on display file record formats will not have the same layout as in the original application. Programs that use such data structures would have to be modified.

  • In converted programs, certain INFDS (Information Data Structure) fields may not be available or will provide different information compared to the green-screen environment. These programs will have to be modified.

  • Use of special values, such as *DATE to retrieve the current date may not work as expected. *DATE represents the job start date.  In a Web environment, this will return the date the HTTP server job started, which may or may not be the same as the date the session started.  However, if you are calling the converted program from Genie, this should not be an issue.