Chapter 6. Original Program Model (OPM) and IntegratedLanguage Environment (ILE) Differences
This chapter contains an overview of how Original Program Model (OPM) APIs and
Integrated Language Environment (ILE) APIs differ from each other. The ILE APIs
include the UNIX-type APIs and the ILE CEE APIs among others.
You must have the ILE language compiler on your system to develop applications
that use any ILE APIs.

Contrasting OPM and ILE APIs

API Name The maximum number of characters that an OPM API name can contain is 8,
whereas the maximum number in an ILE API name is 30. ILE API names are
case-sensitive.
Parameters There are several types of parameters: required, optional, and omitted. The
AS/400 OPM and ILE APIs show the parameters in a Parameter box, whereas the
AS/400 UNIX-type APIs show them in a Syntax box. The ILE APIs include the
service program name at the bottom of the box.
Optional Parameters:
Some of the OPM APIs have optional parameters. The
optional parameters form a group, and you must either include or exclude the entire
group.
OPM APIs do not have omitted parameters.
Omitted Parameters:
The ILE APIs may have parameters that can be omitted.
When these parameters are omitted, you must pass a null pointer.
ILE APIs do not have optional parameters.
The required and optional parameters are discussed in more detail in “Required
Parameter Group” on page 3-3 and “Optional Parameter Group” on page 3-5.

Error Conditions

The error code parameter is common to most of the OPM APIs, and it is used to
return error codes and exception data to the application. The errors that are
returned for a given API are in the form of an error message and include the
7-character message identifier.
Some APIs use means other than the error code parameter for reporting error con-
ditions, as follows:
The ILE CEE APIs use feedback codes and conditions.
The UNIX-type APIs use
errnos
and return values.
The national language data conversion APIs use
errnos
and return values.
Copyright IBM Corp. 1997 6-1