API Routine: | APINAPP |
Parameters: | UGNLPARM, UPILAPP |
This API lets obtain data from a PAC application, create a new application, and modify an existing one.
APINAPP can be invoked with:
CALLNAT 'APINAPP' API-PARM API-APP-PARM
A definition of API-PARM is provided in LDA UGNLPARM in library SYSPACUS.
Set API-PARM.API-MAIN-FUNC to:
A | To add a Natural application. |
B | To add a Predict application. |
D | To obtain data from an application. |
M | To modify an application. |
This document covers the following topics:
A definition of API-APP-PARM is provided in LDA UPILAPP in library SYSPACUS.
Field Name | Format | Description | |
---|---|---|---|
API-APP-PARM | |||
APPL-TYPE | A1 | out | |
APPLICATION | A32 | in | |
PREFIX | A3 | in/out | |
LEVEL | A10 | in/out | |
GEN-NUMBER | P5 | in/out | |
TITLE | A60 | in/out | |
MCG | A4 | in/out | |
PRD-APPL | A32 | in/out | |
VIEW-SECURITY | A1 | in/out | |
STEPLIB-CNT | N3 | out | |
STEPLIB | A32 (1:8) | in/out | |
FRG-TYPE-CNT | N3 | out | |
FRG-TYPE | A4 (1:100) | in/out | |
MIN-CURR-VERS | P3 | in/out | |
CURR-RETENTION-PERIOD | P3 | in/out | |
MIN-ARCH-VERS | P3 | in/out | |
ARCH-RETENTION-PERIOD | P3 | in/out | |
LOG-PURGES | A1 | in/out | |
PRD-CASE-USAGE | A1 | in/out | |
DB2-SUPPORT | A1 | in/out | |
LIB-DEV | A8 | in/out | |
LIB-INC | A8 | in/out | |
LIB-MAINT | A8 | in/out | |
LIB-TEST | A8 | in/out | |
ADD-TIME | T | out | |
ADD-BY | A8 | out | |
ADD-TID | A8 | out | |
MOD-TIME | T | out | |
MOD-BY | A8 | out | |
MOD-TID | A8 | out |
Whenever APINAPP is called, API-APP-PARM.APPLICATION should carry the name of the application.
If [API-PARM.API-MAIN-FUNC] = 'D' and the application is found, APINAPP returns in the remaining parameter fields the application data, ignoring any values put by the user in the "in/out" fields.
[API-APP-PARM.STEPLIB-CNT] is the number of the application's step applications. Their names are returned in API-APP-PARM.STEPLIB(1:[API-APP-PARM.STEPLIB-CNT]).
[API-APP-PARM.FRG-TYPE-CNT] is the number of the foreign object types associated with the application. The codes of the types are returned in API-APP-PARM.FRG-TYPE(1:[API-APP-PARM.FRG-TYPE-CNT]).
If [API-PARM.API-MAIN-FUNC] = 'A' and the application is not found, APINAPP tries to add a NATURAL application with the characteristics specified in the "in/out" fields.
If [API-PARM.API-MAIN-FUNC] = 'B' and the application is not found, APINAPP tries to add a PREDICT application with the characteristics specified in the "in/out" fields.
If [API-PARM.API-MAIN-FUNC] = 'M' and the application is found, APINAPP tries to modify the application endowing it with the characteristics specified in the "in/out" fields.
The meaningful values of the "in/out" fields are enumerated in the following table:
Field Name | Format | Possible Values | |
---|---|---|---|
PREFIX | A3 | any | |
LEVEL | A10 | any | |
GEN-NUMBER | P5 | any non-negative | |
TITLE | A60 | any | |
MCG | A4 | a sequence of I, M, N, O, W, Y | |
PRD-APPL | A32 | the name of a Predict application or blank | |
VIEW-SECURITY | A1 | A, D, U | |
STEPLIB | A32 (1:8) | the names of Natural applications or blank | |
FRG-TYPE | A4 (1:100) | codes of foreign object types or blank | |
MIN-CURR-VERS | P3 | any non-negative | |
CURR-RETENTION-PERIOD | P3 | any non-negative | |
MIN-ARCH-VERS | P3 | any non-negative | |
ARCH-RETENTION-PERIOD | P3 | any non-negative | |
LOG-PURGES | A1 | N, Y | |
PRD-CASE-USAGE | A1 | N, Y | |
DB2-SUPPORT | A1 | N, Y | |
LIB-DEV | A8 | any | |
LIB-INC | A8 | any | |
LIB-MAINT | A8 | any | |
LIB-TEST | A8 | any |
With any of the four meaningful values of API-PARM.API-MAIN-FUNC the significance of the values of the API-APP-PARM fields is the same as that of their menu system counterparts.
At application addition or modification user-specified values of the "in/out" fields may be translated.
Embedded spaces are replaced with '_' in user-specified values of PREFIX and LEVEL.
A meaningless value of PRD-APPL specified for the addition or modification of a Natural application causes the function to be abandoned. Other meaningless values of the "in/out" fields are treated as follows:
Field Name | Format | Possible Values | |
---|---|---|---|
GEN-NUMBER | P5 | A negative is translated to 0. | |
MCG | A4 | Meaningless characters are skipped. | |
VIEW-SECURITY | A1 | Meaningless character is translated to 'U'. | |
STEPLIB | A32 (1:8) | Strings that are not Natural application names are skipped. | |
FRG-TYPE | A4 (1:100) | Strings that are not codes of foreign object types are skipped | |
MIN-CURR-VERS | P3 | A negative is is translated to 0. | |
CURR-RETENTION-PERIOD | P3 | A negative is is translated to 0. | |
MIN-ARCH-VERS | P3 | A negative is is translated to 0. | |
ARCH-RETENTION-PERIOD | P3 | A negative is is translated to 0. | |
LOG-PURGES | A1 | A meaningless character is translated to 'N'. | |
PRD-CASE-USAGE | A1 | A meaningless character is translated to 'N'. | |
DB2-SUPPORT | A1 | A meaningless character is translated to 'N'. |
APINAPP returns the following [API-PARM.API-MSG-NO]:
1011 | if an [API-PARM.API-MAIN-FUNC] distinct from 'A', 'B', 'D', and 'M' has been specified. |
7201 | if an ACF control record has been found defective. |
7205 | if the "initialisation" has failed, ie, logical files 210 and 211 have not been found set at a pair of matching ACF and PCF. |
7250 | if the application has been found. |
7251 | if an application has not been found. |
7253 | if the application has been added. |
7254 | if the application has been modified. |
7257 | if the application has not been added. |
7259 | if the application has not been modified. |
7541 | if the application (to be modified) is locked. |
Other values of API-PARM.API-MSG-NO may be received in more unusual situations.