A Strategy to Avoid ................................... 31
Chapter 4. Creating an Application Using Multiple Procedures ...... 33
A Multiple Procedures Module — Overview .................... 33
Main Procedures and Subprocedures ...................... 33
Prototyped Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Example of Module with Multiple Procedures .................... 36
The Entire ARRSRPT Program .......................... 41
Coding Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
General Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Program Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Main Procedure Considerations .......................... 46
Subprocedure Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
For Further Information ................................ 47
Main Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Subprocedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Prototyped Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Creating and Running an ILE RPG Application ......................... 49
Chapter 5. Entering Source Statements ..................... 51
Creating a Library and Source Physical File .................... 51
Using the Source Entry Utility (SEU) ......................... 52
Using SQL Statements ................................ 55
Chapter 6. Creating a Program with the CRTBNDRPG Command ..... 57
Using the CRTBNDRPG Command ......................... 57
Creating a Program for Source Debugging ................... 59
Creating a Program with Static Binding ..................... 60
Creating an OPM-Compatible Program Object ................. 61
Using a Compiler Listing ............................... 63
Obtaining a Compiler Listing ............................ 63
Customizing a Compiler Listing .......................... 64
Correcting Compilation Errors ........................... 66
Correcting Run-time Errors ............................. 68
Using a Compiler Listing for Maintenance .................... 69
Accessing the RETURNCODE Data Area ..................... 70
Chapter 7. Creating a Program with the CRTRPGMOD and CRTPGM
Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Creating a Module Object ............................... 73
Using the CRTRPGMOD Command ....................... 74
Creating a Module for Source Debugging .................... 78
Additional Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Behavior of Bound ILE RPG Modules ...................... 80
Related CL Commands ............................... 80
Binding Modules into a Program ........................... 81
Using the CRTPGM Command .......................... 82
Additional Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Related CL Commands ............................... 85
Using a Binder Listing ................................. 85
Changing a Module or Program ........................... 86
Using the UPDPGM Command .......................... 87
iv ILE RPG for AS/400 Programmer's Guide