1 | Function being performed | Input | Char(10) |
2 | Before or after indicator | Input | Char(10) |
3 | Language ID | Input | Char(4) |
4 | Library that contains exit programs | Input | Char(10) |
5 | Library where product currently exists | Input | Char(10) |
6 | Library specified by creator of product | Input | Char(10) |
7 | Library where product will exist | Input | Char(10) |
8 | Root folder that product currently uses | Input | Char(12) |
9 | Root folder specified by creator | Input | Char(12) |
10 | Root folder that product will use | Input | Char(12) |
11 | Release level of product | Input | Char(6) |
12 | Release level of product being restored | Input | Char(6) |
13 | Array of missing objects and their symbolic object types |
Input | Array of Char(20) |
14 | Number of missing objects | Input | Binary(4) |
15 | Array of missing folders | Input | Array of Char(63) |
16 | Number of missing folders | Input | Binary(4) |
17 | Array of offsets to missing directory information | Input | Array of Binary(4) |
18 | Number of missing directories | Input | Binary(4) |
19 | Number of product directories | Input | Binary(4) |
20 | Array of offsets to directory information where product currently exists | Input | Array(300) of Binary(4) |
21 | Array of offsets to directory information specified by creator of product |
Input | Array(300) of Binary(4) |
22 | Array of offsets to directory information where product will exist | Input | Array(300) of Binary(4) |
This exit program is specified when you create products that are restored, saved, deleted, and checked with the following commands:
More information about creating your own product and using exit programs is available in the System Manager Use book.
None.
Exit programs must be written to accept the following parameters:
The function being performed when this exit program is called. The values are:
*RSTCODE (restore code) | Restore program objects when the RSTLICPGM command runs. |
*SAVCODE (save code) | Save program objects when the SAVLICPGM command runs. |
*DLTCODE (delete code) | Delete program objects when the DLTLICPGM command runs. |
*CHKCODE (check code) | Check program objects when the CHKPRDOPT command runs. |
*RSTLNG (restore language) | Restore language objects when the RSTLICPGM command runs. |
*SAVLNG (save language) | Save language objects when the SAVLICPGM command runs. |
*DLTLNG (delete language) | Delete language objects when the DLTLICPGM command runs. |
*CHKLNG (check language) | Check language objects when the CHKPRDOPT command runs. |
Whether the exit program is being called before or after the actual operation (restore process, save process, and so on). The values are:
*BEFORE | The program is called before the actual operation. |
*AFTER | The program is called after the actual operation. |
The 4-digit feature code identifier. For the *RSTCODE, *SAVCODE, *DLTCODE, and *CHKCODE values of the function being performed parameter, this value is blank because it only applies to the language functions.
The library where exit programs for the product are located while the current function is being performed. You cannot assume this value will be either the library where the product currently exists or will exist.
If the product exists on the system when the exit program is called, this is the library that contains the product. Otherwise, this value is blank.
The library that was specified on the Create Product Load (CRTPRDLOD) command or the Create Product Load (QSZCRTPL) API when you created the product.
The library of the product after the product is restored. This value only applies when the function being performed is *RSTCODE and *RSTLNG. For other functions, this value is blank.
The root folder specified if the product is installed and has folders. It is only specified when calling the exit program for the principal library. Otherwise, this value is blank.
The root folder that was specified on the CRTPRDLOD command or the QSZCRTPL API when the product was created. This only applies if the product has folders and is only specified when calling the exit program for the principal library.
The root folder specified only if the product is being restored and has folders. It is only specified when calling the exit program for the principal library. Otherwise, this value is blank.
The version, release, and modification level of the product being restored, saved, deleted, or checked in the form VxRxMx.
The version, release, and modification level of the product being restored in the form VxRxMx. It is only specified if the product is being restored; otherwise, the value is blank.
The list passed when the function being performed is *SAVCODE, *SAVLNG, *CHKCODE, or *CHKLNG. For *SAVCODE and *SAVLNG, the list will only be passed before the actual save operation. For *CHKCODE and *CHKLNG, the list will be passed after the check operation. The first 10 characters contain the object name, and the second 10 characters contain the object type.
The number of missing objects in the previous array. This number is 0 when there are no objects in the list or when the function being performed is not *SAVCODE, *SAVLNG, *CHKCODE, or *CHKLNG. The maximum number is 499.
The list passed when the function being performed is *SAVCODE, *SAVLNG, *CHKCODE, or *CHKLNG. For *SAVCODE and *SAVLNG, the list will only be passed before the actual save operation. For *CHKCODE and *CHKLNG, the list will be passed after the check operation. This only applies if the product has folders and is only specified when calling the exit program for the principal library.
The number of missing folders in the previous array. This number is 0 when there are no folders in the list or when the function being performed is not *SAVCODE, *SAVLNG, *CHKCODE, or *CHKLNG.
The offsets from the beginning of this array that point to the missing directory information. The offsets and missing directory information structures are passed when the function being performed is *SAVCODE, *SAVLNG, *CHKCODE, or *CHKLNG. For *SAVCODE and *SAVLNG, the list will only be passed before the actual save operation. For *CHKCODE and *CHKLNG, the list will be passed after the check operation. This only applies if the product has directories, and is only specified when calling the exit program for the principal library. For a description of the format, see Format of Missing Directory Information.
The number of missing directories in the previous array. The maximum number is 300. This number is 0 when there are no missing directories in the list or when the function being performed is not *SAVCODE, *SAVLNG, *CHKCODE, or *CHKLNG.
The number of product directories in the next three arrays. This number is 0 when there are no product directories in any of the following lists. The maximum number is 300.
The offsets from the beginning of this array that point to the current product directory information. When the function being performed is *RSTCODE, *RSTLNG, *SAVCODE, or *SAVLNG, this information is passed both before and after the actual restore or save operation. When the function being performed is *DLTCODE or *DLTLNG, this information is passed before the delete operation. When the function being performed is *CHKCODE or *CHKLNG, this information is passed after the check operation. This array will contain zeros in the following circumstances:
For a description of the structure that contains the product directory information, see Format of Product Directory Information.
The offsets from the beginning of this array that point to the directory information specified when the product was created. When the function being performed is *RSTCODE, *RSTLNG, *SAVCODE, or *SAVLNG, this information is passed both before and after the actual restore or save operation. When the function being performed is *DLTCODE or *DLTLNG, this information is passed before the delete operation. When the function being performed is *CHKCODE or *CHKLNG, this information is passed after the check operation. This array will contain zeros if there are no product directories. For a description of the structure that contains the product directory information, see Format of Product Directory Information.
The offsets from the beginning of this array that point to the directory information where the product will exist after the restore operation. When the function being performed is *RSTCODE or *RSTLNG, this information is passed both before and after the actual restore operation. The information is not passed for other functions. This array will contain zeros if there are no product directories. For a description of the structure that contains the product directory information, see Format of Product Directory Information.
The following table shows the format of the missing directory information.
Offset | Type | Field | |
---|---|---|---|
Dec | Hex | ||
0 | 0 | BINARY(4) | Full length of the missing directory |
4 | 4 | BINARY(4) | Home length of the missing directory |
8 | 8 | BINARY(4) | Missing directory's CCSID |
12 | C | BINARY(4) | Missing directory's index |
16 | 10 | CHAR(10) | Reserved space |
26 | 1A | CHAR(480) | Missing directory name |
Full length of the missing directory. The total length of the missing directory path name.
Home length of the missing directory. The root (changeable) part length of the missing directory path name.
Missing directory name. The missing directory path name. The CCSID of this value is contained in the Missing Directory's CCSID field. The maximum missing directory name length is 240 characters (480 bytes).
Missing directory's CCSID. The coded character set identifier of the missing directory.
Missing directory's index. A reference index into the array of offsets to directory information specified by the creator of the product.
Reserved space. Internal reserved space.
The following table shows the format for the product directory information structures.
Offset | Type | Field | |
---|---|---|---|
Dec | Hex | ||
0 | 0 | BINARY(4) | Full length of the product directory |
4 | 4 | BINARY(4) | Home length of the product directory |
8 | 8 | BINARY(4) | Product directory's CCSID |
12 | C | CHAR(14) | Reserved space |
26 | 1A | CHAR(480) | Product directory name |
Full length of the product directory. The total length of the product directory path name.
Home length of the product directory. The root (changeable) part length of the product directory path name.
Product directory name. The product directory path name. The CCSID of this value is contained in the Product directory's CCSID field. The maximum product directory name length is 240 characters (480 bytes).
Product directory's CCSID. The coded character set identifier of the product directory.
Reserved space. Internal reserved space.
Message ID | Error Message Text |
---|---|
CPD3DC8 E | &5 &6 in &7 not found for product &1 option &2 release &4. |
CPD3DE7 E | Folder &6 not found for product &1 option &2 release &4. |
CPF3D95 E | Exit program processing failed. |
CPF3D98 E | Exit program processing found error in product. |
Top | Software Product APIs | APIs by category |