List ILE Program Information (QBNLPGMI) API


  Required Parameter Group:

1 Qualified user space name Input Char(20)
2 Format name Input Char(8)
3 Qualified ILE program name Input Char(20)
4 Error Code I/O Char(*)

  Default Public Authority: *USE

  Threadsafe: No

The List ILE Program Information (QBNLPGMI) API gives information about ILE programs, similar to the Display Program (DSPPGM) command. The information is placed in a user space specified by you.

If an original program model (OPM) program is specified for the qualified ILE program name, an error is returned and the user space is not changed.

You can use the QBNLPGMI API to:

Authorities and Locks

User Space Authority
*CHANGE
User Space Library Authority
*EXECUTE
User Space Lock
*EXCLRD
Program Authority for PGML0100 and PGML0110 Formats
*USE
Program Authority for other Formats
*READ
Program Library Authority
*EXECUTE
Program Lock
*SHRRD

Required Parameter Group

Qualified user space name
INPUT; CHAR(20)

The user space that is to receive the ILE program information. The first 10 characters contain the user space name, and the second 10 characters contain the name of the library where the user space is located. The library name can be a specific library name or one of these special values:

*CURLIB The job's current library
*LIBL The library list

Format name
INPUT; CHAR(8)

The content and format of the information to be returned about the specified programs. One of the following format names may be used:

PGML0100 ILE program module (*MODULE) information.
PGML0110 Variable length ILE program module (*MODULE) information.

Note: Do not use the generic header entry size for format PGML0110. Use the Size of this entry field returned in this format for the size of each entry.

PGML0200 ILE service program (*SRVPGM) information.
PGML0300 Data items exported to the activation group (*ACTGRPEXP).
PGML0400 Data item imports resolved by weak exports that were exported to the activation group (*ACTGRPIMP).
PGML0500 ILE program copyright (*COPYRIGHT) information.

Qualified ILE program name
INPUT; CHAR(20)

The name of the ILE program for which the information is to be listed. The first 10 characters contain the ILE program name, and the second 10 characters contain the name of the library where the ILE program is located.

The ILE program name can be a specific ILE program name or one of the following special values:

*ALL All ILE programs
generic* All ILE programs that begin with this generic prefix. For example, WRK* would include all ILE programs that begin with WRK.

The library name can be a specific library name or one of these special values:

*ALL All libraries in the system
*ALLUSR All non-system libraries. For information on the libraries included, see *ALLUSR in Generic library names.
*CURLIB The job's current library
*LIBL The library list
*USRLIBL Libraries listed in the user portion of the library list

Error code
I/O; CHAR(*)

The structure in which to return error information. For the format of the structure, see Error code parameter.


Format of the Generated List

The user space contains:

For details about the user area and generic header, see User spaces. For descriptions of each field in the list returned, see Field Descriptions.


Input Parameter Section

Offset Type Field
Dec Hex
0 0 CHAR(10) User space name specified
10 A CHAR(10) User space library name specified
20 14 CHAR(8) Format name specified
28 1C CHAR(10) Program name specified
38 26 CHAR(10) Program library name specified


Header Section

Offset Type Field
Dec Hex
0 0 CHAR(10) User space name used
10 A CHAR(10) User space library name used


PGML0100 Format

The PGML0100 format includes information on all the modules that are bound into the programs specified. The modules will be listed in the user space in the order the modules are bound into the program. You must have a program authority of *USE to use this format. The following table shows how this information for each module is organized. For detailed descriptions of the fields in the list, see Field Descriptions.

Offset Type Field
Dec Hex
0 0 CHAR(10) Program name
10 A CHAR(10) Program library name
20 14 CHAR(10) Bound module name
30 1E CHAR(10) Bound module library name
40 28 CHAR(10) Source file name
50 32 CHAR(10) Source file library name
60 3C CHAR(10) Source file member name
70 46 CHAR(10) Module attribute
80 50 CHAR(13) Module creation date and time
93 5D CHAR(13) Source file updated date and time
106 6A CHAR(10) Sort sequence table name
116 74 CHAR(10) Sort sequence table library name
126 7E CHAR(10) Language identifier
136 88 BINARY(4) Optimization level
140 8C BINARY(4) Maximum optimization level
144 90 CHAR(10) Debug data
154 9A CHAR(6) Release module created on
160 A0 CHAR(6) Release module created for
166 A6 CHAR(20) Reserved
186 BA CHAR(1) User-modified
187 BB CHAR(13) Licensed program
200 C8 CHAR(5) PTF number
205 CD CHAR(6) APAR ID
211 D3 CHAR(1) Creation data
212 D4 BINARY(4) Module CCSID
216 D8 CHAR(8) Object control level
224 E0 CHAR(1) Enable performance collection
225 E1 CHAR(10) Profiling data
235 EB CHAR(1) Start of change Allow RTVCLSRCEnd of change
236 EC BINARY(4) Number of procedures
240 F0 BINARY(4) Number of procedures block reordered
244 F4 BINARY(4) Number of procedures block-order measured
248 F8 CHAR(1) Teraspace storage enabled
249 F9 CHAR(1) Storage model
250 FA CHAR(74) Reserved
324 144 BINARY(4) Number of SQL statements
328 148 CHAR(18) Relational database
346 15A CHAR(10) Commitment control
356 164 CHAR(10) Allow copy of data
366 16E CHAR(10) Close SQL cursors
376 178 CHAR(10) Naming convention
386 182 CHAR(10) Date format
396 18C CHAR(1) Date separator
397 18D CHAR(10) Time format
407 197 CHAR(1) Time separator
408 198 CHAR(10) Delay PREPARE
418 1A2 CHAR(10) Allow blocking
428 1AC CHAR(10) Default collection name
438 1B6 CHAR(10) SQL package name
448 1C0 CHAR(10) SQL package library name
458 1CA CHAR(10) Dynamic user profile
468 1D4 CHAR(10) SQL sort sequence table name
478 1DE CHAR(10) SQL sort sequence table library name
488 1E8 CHAR(10) SQL language identifier
498 1F2 CHAR(10) Connection method
508 1FC BINARY(4) SQL path length
512 200 CHAR(3483) SQL path


PGML0110 Format

The PGML0110 format includes information on all the modules that are bound into the programs specified. The modules will be listed in the user space in the order the modules are bound into the program. You must have a program authority of *USE to use this format. The following table shows how this information for each module is organized. For detailed descriptions of the fields in the list, see Field Descriptions.

Note: Do not use the generic header entry size for this format. Use the Size of this entry field returned in this format for the size of each entry.

Offset Type Field
Dec Hex
0 0 BINARY(4) Size of this entry
4 4 CHAR(10) Program name
14 E CHAR(10) Program library name
24 18 CHAR(10) Bound module name
34 22 CHAR(10) Bound module library name
44 2C CHAR(10) Source file name
54 36 CHAR(10) Source file library name
64 40 CHAR(10) Source file member name
74 4A CHAR(10) Module attribute
84 54 CHAR(13) Module creation date and time
97 61 CHAR(13) Source file updated date and time
110 6E CHAR(10) Sort sequence table name
120 78 CHAR(10) Sort sequence table library name
130 82 CHAR(10) Language identifier
140 8C BINARY(4) Optimization level
144 90 BINARY(4) Maximum optimization level
148 94 CHAR(10) Debug data
158 9E CHAR(6) Release module created on
164 A4 CHAR(6) Release module created for
170 AA CHAR(20) Reserved
190 BE CHAR(1) User-modified
191 BF CHAR(13) Licensed program
204 CC CHAR(5) PTF number
209 D1 CHAR(6) APAR ID
215 D7 CHAR(1) Creation data
216 D8 BINARY(4) Module CCSID
220 DC CHAR(8) Object control level
228 E4 CHAR(1) Enable performance collection
229 E5 CHAR(10) Profiling data
239 EF CHAR(1) Start of change Allow RTVCLSRCEnd of change
240 F0 BINARY(4) Number of procedures
244 F4 BINARY(4) Number of procedures block reordered
248 F8 BINARY(4) Number of procedures block-order measured
252 FC CHAR(1) Teraspace storage enabled
253 FD CHAR(1) Storage model
254 FE CHAR(2) Reserved
256 100 BINARY(4) Offset to Licensed Internal Code options
260 104 BINARY(4) Length of Licensed Internal Code options
264 108 CHAR(64) Reserved
328 148 BINARY(4) Number of SQL statements
332 14C CHAR(18) Relational database
350 15E CHAR(10) Commitment control
360 168 CHAR(10) Allow copy of data
370 172 CHAR(10) Close SQL cursors
380 17C CHAR(10) Naming convention
390 186 CHAR(10) Date format
400 190 CHAR(1) Date separator
401 191 CHAR(10) Time format
411 19B CHAR(1) Time separator
412 19C CHAR(10) Delay PREPARE
422 1A6 CHAR(10) Allow blocking
432 1B0 CHAR(10) Default collection name
442 1BA CHAR(10) SQL package name
452 1C4 CHAR(10) SQL package library name
462 1CE CHAR(10) Dynamic user profile
472 1D8 CHAR(10) SQL sort sequence table name
482 1E2 CHAR(10) SQL sort sequence table library name
492 1EC CHAR(10) SQL language identifier
502 1F6 CHAR(10) Connection method
512 200 BINARY(4) SQL path length
516 204 CHAR(3483) SQL path
1074 432 CHAR(*) Reserved
Bound module information through offsets
    CHAR(*) Licensed Internal Code options


PGML0200 Format

The PGML0200 format includes information on all the service programs that are bound to the programs specified. The following table shows how this information is organized. For detailed descriptions of the fields in the list, see Field Descriptions.

Offset Type Field
Dec Hex
0 0 CHAR(10) Program name
10 A CHAR(10) Program library name
20 14 CHAR(10) Bound service program name
30 1E CHAR(10) Bound service program library name
40 28 CHAR(16) Bound service program signature
56 38 CHAR(10) Bound service program activation


PGML0300 Format

The PGML0300 format lists data items exported to the activation group. The list data items are specified in the data export entry in the binding specifications component when the module was created. The following table shows how this information is organized. For detailed descriptions of the fields in the list, see Field Descriptions.

Offset Type Field
Dec Hex
0 0 CHAR(10) Program name
10 A CHAR(10) Program library name
20 14 BINARY(4) Size of data item export
24 18 BINARY(4) Data item export name CCSID
28 1C BINARY(4) Data item export name length
32 20 CHAR(256) Data item export name


PGML0400 Format

The PGML0400 format lists data item imports that were resolved by weak exports that had been exported to an activation group. The following table shows how this information is organized. For detailed descriptions of the fields in the list, see Field Descriptions.

Offset Type Field
Dec Hex
0 0 CHAR(10) Program name
10 A CHAR(10) Program library name
20 14 BINARY(4) Data item import name CCSID
24 18 BINARY(4) Data item import name length
28 1C CHAR(256) Data item import name


PGML0500 Format

The PGML0500 format includes copyright information for the ILE programs specified. The following table shows how this information is organized. For detailed descriptions of the fields in the list, see Field Descriptions.

Offset Type Field
Dec Hex
0 0 CHAR(10) Program name
10 A CHAR(10) Program library name
20 14 CHAR(4) Reserved
24 18 BINARY(4) Copyright length
28 1C CHAR(256) Copyright


Field Descriptions

Allow blocking. Whether blocking will be used to improve the performance of certain SQL statements. The possible values are:

*NONE Blocking is not used.
*READ Blocking is used for read-only cursors when running COMMIT(*NONE) and there are no EXECUTE or EXECUTE IMMEDIATE statements.
*ALLREAD Blocking is used for all read-only cursors when running COMMIT(*NONE) or COMMIT(*CHG).
Blank The module does not contain SQL statements.

Allow copy of data. Whether a copy of the data can be used in the implementation of an SQL query. The possible values are:

*NO A copy of the data cannot be used.
*YES A copy of the data can be used when needed.
*OPTIMIZE The system determines whether a copy of the data is used for optimal performance.
Blank The module does not contain SQL statements.

Start of change Allow RTVCLSRC. Whether the module has CL source data that can be retrieved from the program. The possible values are:

0 There is no CL source for this module.
1 There is CL source for this module.
End of change

APAR ID. The module was changed as the result of the authorized program analysis report (APAR) with this identification number. This is blank if the module was not changed at bind time.

Bound module library name. The name of the library containing the module bound into this program at bind time.

Bound module name. The name of the module bound into this program. This is a copy of the module that was bound into this program. It is not the *MODULE object on the system.

Bound service program activation. Specifies when the bound service program is activated.

*DEFER The bound service program activation is deferred until a procedure it exports is called.
*IMMED The bound service program activation happens when the program referred to by parameter 3 is activated.

Bound service program library name. The name of the library containing the service program bound to the program at bind time. This is the library name in which the activation expects to find the service program at run time. Hexadecimal zeros indicate the library list is used at the time the service program is needed.

Bound service program name. The name of the service program bound to the program.

Bound service program signature. The current signature of the service program at the time it was bound to the program.

Close SQL cursors. Specifies when SQL cursors are implicitly closed and SQL-prepared statements are implicitly discarded. The possible values are:

*ENDMOD When the module ends.
*ENDACTGRP When the activation group is deleted.
Blank The module does not contain SQL statements.

Commitment control. The level of commitment control that was specified on the SQL precompile. The possible values are:

*NONE No commitment control was specified on the SQL precompile. Uncommitted changes in other jobs can be seen.
*CHG Objects referred to in SQL COMMENT ON, CREATE, DROP, GRANT, LABEL ON, and REVOKE statements, and updated, deleted, or inserted rows (records) are locked until the end of the unit of work (transaction). Uncommitted changes in other jobs can be seen.
*CS Objects referred to in SQL COMMENT ON, CREATE, DROP, GRANT, LABEL ON, and REVOKE statements, and updated, deleted, and inserted rows (records) are locked until the end of the unit of work (transaction). A row (record) that is selected but not updated is locked until the next row (record) is selected. Uncommitted changes in other jobs cannot be seen.
*ALL Objects referred to in SQL COMMENT ON, CREATE, DROP, GRANT, LABEL ON, and REVOKE statements, and all rows selected, updated, deleted, and inserted are locked until the end of the unit of work (transaction). Uncommitted changes in other jobs cannot be seen.
Blank The module does not contain SQL statements.

Connection method. The method used for establishing remote connections when running distributed programs.

Special values that can be returned are:

*RUW Only one connection to a relational database is allowed. Consecutive CONNECT statements result in the previous connection being disconnected before a new connection is established.
*DUW Connections to several relational databases are allowed. Consecutive CONNECT statements to additional relational databases does not result in disconnection of previous connects. SET CONNECTION can be used to switch between connections. Read-only connections may result.
Blank The module does not contain SQL statements.

Copyright. The copyright string included in this program.

Copyright length. The length of the copyright string.

Creation data. Whether the bound module has all creation data and if that data is observable or unobservable.

0 *NO. Not all the creation data is present in the bound module.
1 *YES. The creation data is present in the bound module and all of that data is observable.
2 *UNOBS. The creation data is present in the bound module but not all of that data is observable.

Data item export name. Data items that are exported to an activation group. These data items can be used outside of the module or program that they are defined in.

Data item export name CCSID. The coded character set identifier (CCSID) for the name of this data item export.

Data item export name length. The length of the name of the data export item.

Data item import name. The name of the data item imports that were resolved by weak exports that had been exported to the activation group.

Data item import name CCSID. The coded character set identifier (CCSID) for the name of this data item import.

Data item import name length. The length of the name of the data import item.

Date format. The format used when accessing date-result columns through SQL. All output date fields are returned in this format. For input date strings, the value you specify is used to determine whether the date is a valid format. The values returned are:

*USA USA format (mm/dd/yyyy).
*ISO International Standards Organization format (yyyy-mm-dd).
*EUR European format (dd.mm.yyyy).
*JIS Japanese Industrial Standard Christian Era (yyyy-mm-dd).
*MDY Month/day/year format (mm/dd/yy).
*DMY Day/month/year format (dd/mm/yy).
*YMD Year/month/day format (yy/mm/dd).
*JUL Julian format (a numeric value from 1 to 365).
Blank The module does not contain SQL statements.

Date separator. The separator used when accessing date-result columns. This information is blank if the module does not contain SQL statements; however, the number of SQL statements field should be checked to determine if the module contains SQL statements. This is because a blank may be specified as a separator value.

Debug data. Whether debug data was generated when this module was created. If debug data exists, the module may be debugged using the source debugger. The possible values are:

*YES Debug data was generated.
*NO Debug data was not generated.

Default collection name. The collection name used for the unqualified names of tables, views, indexes, and SQL packages. The possible values are:

*NONE There is no default collection name.
Blank The module does not contain SQL statements.

Delay PREPARE. Whether SQL prepare processing can be delayed until the statement is actually used. The possible values are:

*YES Prepare processing can be delayed.
*NO Prepare processing cannot be delayed.
Blank The module does not contain SQL statements.

Dynamic user profile. The user profile used for dynamic SQL statements. The following special values can be returned:

*USER Local dynamic SQL statements are run under the profile of the module's user. Distributed dynamic SQL statements are run under the profile of the SQL package's user.
*OWNER Local dynamic SQL statements are run under the profile of the module's owner. Distributed dynamic SQL statements are run under the profile of the SQL package's owner.
Blank The module does not contain SQL statements.

Enable performance collection. The level of performance collection enabled for this module. The following values can be returned:

'00'X *NONE or '10'X *PEP This gives the entry/exit information for the PEP only. No entry/exit hooks in the module's internal procedures and no precall or postcall hooks around calls to other procedures are included.

Note: If *NONE is shown and the module was created or re-created on a System i® platform running Version 3 Release 6 Modification 0 prior to the installation of PTF MF11968, the module will not have any performance collection enabled. To enable performance collection, use one of the following commands and specify ENBFPRCOL(*PEP):

  • Change Module (CHGMOD)
  • Change Program (CHGPGM)
  • Change Service Program (CHGSRVPGM)
'50'X *ENTRYEXIT *NONLEAF This gives the entry/exit information on all of the non-leaf procedures in the module. This includes the PEP routine. This is useful to capture information on most routines but not at the expense of destroying the 'leaf-ness' of the leaf procedures.
'70'X *ENTRYEXIT *ALLPRC This gives the entry/exit information on all the procedures of the module (including those that were leaf procedures). This includes the PEP routine. This is useful to capture information on all procedures.
'D0'X *FULL *NONLEAF This gives the entry/exit information on all the procedures of the module that are not leaf procedures. This includes the PEP routine. Precall and postcall hooks around calls to external procedures are also included.
'F0'X *FULL *ALLPRC This gives the entry/exit information on all procedures of the module (including those that were leaf procedures). This includes the PEP routine. Precall and postcall hooks around calls to external procedures are also included. This is useful to capture information on all procedures.

Format name specified. The format used to return the ILE program information to the user space.

Language identifier. Returns the 3-character language identifier used when the module was compiled. The following special values can also be returned:

*JOBRUN The language identifier associated with the job at the time the program that the module is bound into runs.
Blank The module does not contain any language identification information.

Length of Licensed Internal Code options. The size, in two-byte characters, of the Licensed Internal Code options string. This will be 0 if no Licensed Internal Code options were used for this module.

Licensed Internal Code options. The Licensed Internal Code options that are in use by the module. This field is specified in UCS-2 (CCSID 13488).

Licensed program. If the module was part of a licensed program at bind time, this field shows the product number and the level of the licensed program. This is blank if the module is not part of a licensed program at bind time.

Maximum optimization level. The highest level of optimization this module could have at bind time. If observability has been removed from the module, this maximum optimization level value might not be the same as the one specified when the module was created. Possible values are:

65535 The module is not restricted to a maximum optimization level. It can be retranslated to any of the supported optimization levels. 65535 is also known as *NOMAX.
40 Maximum level of optimization. This level includes all the optimizations performed at optimization level 30. In addition, it includes optimization that disables call and instruction tracing. Thus, tracing of modules created at this optimization level cannot be done.
30 More optimization is performed in addition to those performed at optimization level 20. Variables cannot be changed but can be displayed while the program is being debugged. However, the displayed value of the variable during debugging may not be its actual value. 30 is also known as *FULL.
20 Some optimization is performed on the generated code. When the module optimized at this level is being debugged, the variables can be displayed but not changed. This level improves the performance of the module slightly over level 10. 20 is also known as *BASIC.
10 No additional optimization is performed on the generated code. Variables can be displayed and changed when the program is being debugged. With no optimization of the code, this value provides the lowest level of module performance. 10 is also known as *NONE.

Module attribute. The language used in the module. This field can be blank (for example, when a module is created by a compilation process internal to IBM).

Module CCSID. The coded character set identifier (CCSID) for this module.

Module creation date and time. The date and time the module was created. The creation date and time field is in the CYYMMDDHHMMSS format as follows:

C Century, where 0 indicates years 19xx and 1 indicates years 20xx.
YY Year
MM Month
DD Day
HH Hour
MM Minute
SS Second

Naming convention. The convention used for naming objects in SQL statements. The possible values are:

*SQL The SQL naming convention is used.
*SYS The system naming convention is used.
Blank The module does not contain SQL statements.

Number of procedures. The number of procedures defined in the module. This number includes the program entry procedure (PEP), if one was generated by the compiler for this module.

Number of procedures block-order measured. The number of procedures defined in the module that had block-order profiling data collected at the time block-order profiling data was applied. If the module does not have block-order profiling data applied, this value will be zero.

Number of procedures block reordered. The number of procedures defined in the module that are block reordered. If the module does not have block-order profiling data applied, this value will be zero. This value can decrease if the program that this bound module is contained in is retranslated.

Number of SQL statements. The number of SQL statements contained in the module. This value is zero if the module does not contain SQL statements.

Object control level. The object control level for the module at the time it was bound into this program. You can compare the object control level of a module to the object control level of a listing to make sure the listing matches the module.

Offset to Licensed Internal Code options. The offset from the beginning of the user space where the Licensed Internal Code options begin for this bound module. This will be 0 if no Licensed Internal Code options were used for this module.

Optimization level. Optimization levels cause the translator to produce machine code that reduces the amount of system resources necessary to run the program. The more optimization, the more efficiently the module runs on the system. Also, with more optimization you may not be able to change or view variables that have been optimized. The possible values are:

65535 The module is not restricted to a maximum optimization level. It can be retranslated to any of the supported optimization levels. 65535 is also known as *NOMAX.
40 Maximum level of optimization. This level includes all the optimizations performed at optimization level 30. In addition, it includes optimization that disables call and instruction tracing. Thus, tracing of modules created at this optimization level cannot be done.
30 More optimization is performed in addition to those performed at optimization level 20. Variables cannot be changed but can be displayed while the program is being debugged. However, the displayed value of the variable during debugging may not be its actual value. 30 is also known as *FULL.
20 Some optimization is performed on the generated code. When the module optimized at this level is being debugged, the variables can be displayed but not changed. This level improves the performance of the module slightly over level 10. 20 is also known as *BASIC.
10 No additional optimization is performed on the generated code. Variables can be displayed and changed when the program is being debugged. With no optimization of the code, this value provides the lowest level of module performance. 10 is also known as *NONE.

Profiling data. The profiling data attribute for the module bound into this program. Possible values are:

*NOCOL The collection of profiling data is not enabled and block-order profiling data is not applied to the module bound into this program.
*COL The collection of profiling data is enabled. Any applied block-order profiling data has been removed for the module bound into this program.
*APYBLKORD Block-order profiling data is applied to the module bound into this program. See the number of procedures block reordered field for the current number of procedures in this module that are block reordered.

Program library name. The name of the library containing the program.

Program library name specified. The program library name that was passed to this API on the call in the qualified ILE program name and library parameter.

Program name. The name of the program.

Program name specified. The program name that was passed to this API on the call in the qualified ILE program name and library parameter.

PTF number. The program temporary fix (PTF) that resulted in the creation of the module. This field is blank for user-created modules.

Relational database. The default relational database that was specified on the SQL precompile. A nonblank value other than *LOCAL specifies the name of the relational database to be resolved through the relational database directory. The following special values can be returned:

*LOCAL The module can only access data on the local system.
Blank The module does not contain SQL statements.

Release module created for. The version, release, and modification level of the operating system for which the module was created. The field has a VvRrMm format, where:

Vv The character V is followed by a 1-character version number.
Rr The character R is followed by a 1-character release level.
Mm The character M is followed by a 1-character modification level.

Release module created on. The version, release, and modification level of the operating system on which the module was created. The field has a VvRrMm format, where:

Vv The character V is followed by a 1-character version number.
Rr The character R is followed by a 1-character release level.
Mm The character M is followed by a 1-character modification level.

Reserved. An ignored field.

Size of data item export. The size, in bytes, of the data item export.

Size of this entry. The size, in bytes, of this entry.

Sort sequence table library name. The name of the library that is used to locate the sort sequence table. This information is blank if the module does not contain any sort sequence information or a special value was returned for the sort sequence table name. The following special values can be returned:

*LIBL The sort sequence table is found in the library list when the ILE program runs this module.
*CURLIB The sort sequence table is found in the current library when the ILE program runs this module.

Sort sequence table name. The name of the sort sequence table and the library used when the module was compiled. This does not apply to SQL statements in the module. The following special values can be returned:

*HEX No sort sequence is used.
*JOBRUN The sort sequence is the sort sequence value associated with the job at the time the ILE program runs this module.
*LANGIDSHR The shared sort sequence for the language identifier is used.
*LANGIDUNQ The unique sort sequence for the language identifier is used.
Note: This sort sequence table does not apply to SQL statements.

Source file library name. The name of the library that contains the source file used to create the module. The field is blank if no source file was used to create the module.

Source file member name. The name of the member in the source file. The field is blank if no source file was used to create the module.

Source file name. The name of the source file used to create the module. The field is blank if no source file was used to create the module.

Source file updated date and time. The date and time the member in the source file was last updated. The field is in the same format as the module creation date and time field. The field is blank if no source file was used to create the module.

SQL language identifier. Returns the 3-character language identifier used when the module was compiled. This information is blank if the module does not contain any language identification information. The following possible special value can also be returned:

*JOBRUN The language identifier is the LANGID associated with the job at the time the module is run.

SQL package library name. The name of the library the SQL package is in.

SQL package name. The name of the SQL package created on the relational database specified on the RDB parameter of the command that created this module. The possible values are:

*NONE There is no default collection name.
Blank The module does not contain SQL statements.

SQL path. The list of libraries used during resolution of functions and data types within SQL statements. The list is in the form of repeating library names, each surrounded by double quotes and separated by commas. Even though 3843 bytes are reserved, the path's length is determined by the SQL path length entry.

SQL path length. The length, in bytes, of the SQL path.

SQL sort sequence table library name. The name of the library that is used to locate the SQL sort sequence table. This information is blank if the module does not contain any SQL sort sequence information or a special value was returned for the SQL sort sequence table name. The following special values can be returned:

*LIBL The SQL sort sequence table is found by looking in the library list.
*CURLIB The SQL sort sequence table is found by looking in the current library.

SQL sort sequence table name. The name of the table name used when the module was compiled. This information is blank if the module does not contain any SQL sort sequence information. The following special values can be returned:

*HEX No SQL sort sequence is used for the SQL statements.
*JOBRUN The SQL sort sequence is the SRTSEQ value associated with the job at the time the SQL statements within the module are run.
*LANGIDSHR The shared SQL sort sequence for the language identifier (LANGID) is used for the SQL statements.
*LANGIDUNQ The unique SQL sort sequence for the language identifier (LANGID) is used for the SQL statements.

Storage model. Where the automatic and static storage for this bound module is allocated at run time. The following values can be returned:

0 *SNGLVL Automatic and static storage are allocated from single-level storage.
1 *TERASPACE Automatic and static storage are allocated from teraspace.
2 *INHERIT Automatic and static storage are allocated from either single-level storage or teraspace, depending on the activation.

Teraspace storage enabled. The teraspace storage capability for this bound module. Possible values are:

'00'X *NO The module bound to this program is not teraspace storage enabled.
'80'X *YES The module bound to this program is teraspace storage enabled. However, if the program is taken back to a release prior to V6R1M0, the bound module may not be teraspace enabled.

Time format. The format used when accessing time-result columns through SQL. All output time fields are returned in this format. The values returned are:

*USA USA format (hh:mm a.m. or p.m.).
*ISO International Standards Organization format (hh.mm.ss).
*EUR European format (hh.mm.ss).
*JIS Japanese Industrial Standard Christian Era (hh.mm.ss).
*HMS Hours/minutes/seconds format (hh:mm:ss).
Blank The module does not contain SQL statements.

Time separator. The separator used when accessing time-result columns. This information is blank if the module does not contain SQL statements; however, the number of SQL statements field should be checked to determine if the module contains SQL statements. This is because a blank may be specified as a separator value.

User-modified. Whether the module was changed by the user at bind time. The possible values are:

0 The user did not change the module.
1 The user changed the module.

User space library name specified. The user space library name that was passed to this API on the call in the qualified user space name parameter.

User space library name used. The name of the library that contains the user space that receives the ILE program information requested.

User space name specified. The user space name that was passed to this API on the call in the qualified user space name parameter.

User space name used. The name of the user space that receives the ILE program information requested.


Error Messages

Message ID Error Message Text
CPF24B4 E Severe error while addressing parameter list.
CPF3C20 E Error found by program &1.
CPF3C21 E Format name &1 is not valid.
CPF3C90 E Literal value cannot be changed.
CPF3CAA E List is too large for user space &1.
CPF3CF1 E Error code parameter not valid.
CPF5CF5 E &1 in library &2 not bound program.
CPF5CF6 E Program name &1 not valid special value.
CPF811A E User space &4 in &9 damaged.
CPF9570 E Error occurred creating or accessing debug data.
CPF9801 E Object &2 in library &3 not found.
CPF9802 E Not authorized to object &2 in &3.
CPF9803 E Cannot allocate object &2 in library &3.
CPF9804 E Object &2 in library &3 damaged.
CPF9806 E Cannot perform function for object &2 in library &3.
CPF9807 E One or more libraries in library list deleted.
CPF9808 E Cannot allocate one or more libraries on library list.
CPF9810 E Library &1 not found.
CPF9811 E Program &1 in library &2 not found.
CPF9820 E Not authorized to use library &1.
CPF9821 E Not authorized to program &1 in library &2.
CPF9830 E Cannot assign library &1.
CPF9838 E User profile storage limit exceeded.
CPF9872 E Program or service program &1 in library &2 ended. Reason code &3.


API introduced: V2R3

[ Back to top | Program and CL Command APIs | APIs by category ]