Linoma's RPG Wizard will modernize your RPG source code with the most up-to-date syntax and style available for your OS/400 release. The RPG Wizard is included in Linoma's RPG Toolbox.
There are three types of conversions that can be performed through RPGWIZ:
Convert RPG III and RPG/400 source code to modernized RPG IV syntax.
Update existing RPG IV source code to take advantage of the most modern syntax available for your OS/400 release.
Convert RPG IV fixed-format Calculation specifications to the new free-form syntax (available in V5R1).
Click here to view the demo on how RPG Toolbox can modernize your source code.
RPG Toolbox Features RPGWIZ's extensive modernization features are listed below in summarized format. Most of these features can be switched on/off during a conversion, allowing you to customize the modernization process.
Definition Specifications
Redefine data structure fields; list fields in relative position order, convert from/to positions to field lengths, add OVERLAY keywords and indent sub-fields.
Move Calculation-defined fields and lengths to the Definition specs.
Move *LIKE defined fields from the Calculation specs to the Definition specs.
Move *ENTRY parameters from the Calculation specs into the Definition specs.
Create data structures from KLIST fields and change file I/O operations to use the %KDS (search arguments in data structure) BIF.
Assignment Operations
Convert ADD, SUB, Z-ADD, Z-SUB, MULT and DIV operations to EVAL operations.
Convert MOVE and MOVEL operations to EVAL operations.
Optionally convert MOVE(L) of *BLANKs or *ZEROs to CLEAR operations.
Convert MOVEA (move array) operations.
Convert CAT operations to EVAL operations.
Convert SETON, SETOF and COMP operations to EVAL operations.
Convert the constants of '1' to *ON and '0' to *OFF in indicator operations.
Built-in functions (BIFs)
Convert traditional operations to their corresponding BIFs. For example, SUBST becomes %SUBST.
Insert file I/O BIFs, such as %FOUND and %EOF, under file operations.
Control Operations
Move IFxx, DOxxx, WHxx, ANDxx and ORxx expressions to extended factor 2.
Convert eligible GOTO operations.
Convert DO operations to FOR operations.
Qualify END operations. For example, an END under an IF becomes an ENDIF
Convert most conditioning indicators (left hand) to IF operations.
Document the beginning and ending of IF, DO, DOW, DOU, SELECT, CAS and FOR structures.
CALL and CALLB Operations
Convert CALL and CALLB operations to CALLP operations.
Create prototypes for new CALLP operations.
Subroutines
Convert CASxx operations to SELECT/WHEN or IF/ELSE operations.
Convert subroutines to sub-procedures.
Free format
Add /FREE and /END-FREE tags.
Reformat fixed-format operations into free format style.
Add semicolon delimiters to the end of free format operations.
Convert asterisk (*) comment designators to slashes (//) comment designators.
Indent nested logic.
Compression
Compress expressions to fit into the minimum number of source lines needed.
Comments
Remove specification types from comment lines.
Highlight comment lines.
Convert asterisk (*) comment designators to slashes (//) comment designators (available in V5R1 of OS/400).
Remove comment designators ( * or // ) from blank comment lines.
Case Conversion
Convert source logic to lower, upper or mixed case.
Convert spec types to lower or upper case.
Convert in-line source comments to either lower or upper case.
Convert right-hand source comments to either lower or upper case.
Change Control
Generate a summary report of converted source member(s), with any exception messages.
Set the source date on modified lines to the current date or to zeros.