Procedures are what it’s all about these days.

When you start using RPG IV, you will soon come across subprocedures. They are a big change to RPG. Think of it as the ability to execute a subroutine stored outside of the program that requires it in another program (Service Program).

As a Procedure is stored external to the program that requests it, it is reusable so create a single Procedure to (for example) get Customer Details (#GetCustomerDetail or something) and execute it from any program in the application that needs a Customer Detail such as their name, Credit limit etc. Future modifications only occur in one source member.

Subprocedures lead you into true modularization and a whole new way of writing applications. They are also the lead in to Integrated Language Environment (ILE).