IBM AS/400 manual Commands, Chapter, Creating a Module Object, Crtpgm, with

Models: AS/400

1 489
Download 489 pages 47.95 Kb
Page 97
Image 97
Creating a Module Object

Creating a Module Object

Chapter

7. Creating

a

Program

with

the

CRTRPGMOD

and

 

 

 

 

 

CRTPGM

Commands

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

The

 

two-step

process of program creation consists of compiling source

 

modules

using

CRTRPGMOD

and

then

binding one or more module objects into

 

program

using

CRTPGM.

With

this

process you can create permanent

module

 

This in turn allows you to modularize an application without recompiling

 

application.

It also allows you to reuse

the same

module

in differe

 

This

chapter

shows

how

to:

 

 

 

 

 

 

 

 

 

¹

Create

a

module

object

from

RPG

IV source

 

 

 

 

 

¹

Bind

modules

into

 

a

program

using

CRTPGM

 

 

 

 

 

 

¹

Read

a

 

binder

listing

 

 

 

 

 

 

 

 

 

 

 

¹ Change a module or program

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Creating

a Module Object

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A module

 

is

a nonrunnable object (type *MODULE) that is the output of

 

compiler. It is

the

basic building

block of an ILE program.

 

 

An

ILE RPG

module consists

 

of

one

or

more

procedures, and

the

file

 

and

 

static

storage

 

used

 

by

all

the procedures in

the module.

The

 

can

 

make

up

an

ILE

RPG

module

are:

 

 

 

 

 

 

¹an optionalmain procedure which consists of the set of H, F, D, I, specifications that begin the source. The main procedure has its

semantics and

logic

cycle; neither of which is affected by thos

RPG modules in

the

program.

¹zero or moresubprocedures , which are coded on P, D, and C specifica Subprocedures do not use the RPG cycle. A subprocedure may have

storage that is available for use only by the subprocedure itse

The main procedure (if coded) can always be called by other modul program. Subprocedures may be local to the module or exported. If they can only be called by other procedures in the module; if the from the module, they can be called by any procedure in the progr

Module creation consists of compiling a source member, and, if that i creating a *MODULE object. The *MODULE object includes a list of impo exports referenced within the module. It also includes debug data at compile time.

A module cannot be run by itself. You

must bind one or more

modules

create

a program object

(type *PGM)

which can

then be run.

You can

or more

modules together

to create

a

service

program

object

(type

then access the procedures within the

bound

modules

through

static

calls.

 

 

 

 

 

 

 

This ability to combine modules allows you to:

Copyright IBM Corp. 1994, 1999

73

Page 97
Image 97
IBM AS/400 manual Commands, Chapter, Creating a Module Object, Crtpgm, with