Create Product Load (QSZCRTPL) API

Required Parameter Group:


1
Product load name
Input
Char(10)
2
Product load information
Input
Char(87)
3
Secondary language library name
Input
Char(10)
4
Principal library information
Input
Char(30)
5
Additional library list
Input
Array of Char(30)
6
Number of additional libraries
Input
Binary(4)
7
Preoperation exit programs
Input
Array of Char(20)
8
Number of preoperation exit programs
Input
Binary(4)
9
Folder list
Input
Array of Char(126)
10
Number of folders
Input
Binary(4)
11
Text description
Input
Char(50)
12
Public authority
Input
Char(10)
13
Error code
I/O
Char(*)


Start of changeOptional Parameter Group:


14
Directory list
Input
Array of Char(*)
15
Number of directories
Input
Binary(4)
16
Directory list format name
Input
Char(8)End of change


Threadsafe: No

The Create Product Load (QSZCRTPL) API creates a product load (*PRDLOD) object. Each release of a software product requires one or more product load objects.

Authorities and Locks

Library Authority
*ADD and *READ

Library Lock
*SHRUPD

Product Availability Lock
*SHRRD. The product availability object resides in the QUSRSYS library.

Required Parameter Group

Product load name
INPUT; CHAR(10)

The name of the product load object to be created. The product load is created into the principal development library. The following special value is valid:

*LNG
The name of the load object is the same as the previously created language load object for this product; version, release, and modification level; and option. This special value is only valid if a language product load is being created.

Product load information
INPUT; CHAR(87)

A structure containing information about the product load. For more information, see the Format of Product Load Information.

Secondary language library name
INPUT; CHAR(10)

The name of the secondary language library for the language product load being created. This is the library into which this product load is installed if:

This field is only valid if a language product load is being created.

Principal library information
INPUT; CHAR(30)

The first 10 characters specify the principal development library. The second 10 characters specify the principal primary library. The last 10 characters specify the postoperation exit program for both principal libraries. For more information, see Format of Principal Library Information.

Additional library list
INPUT; ARRAY of CHAR(30)

The additional libraries for the product load. Additional libraries do not need to exist before the product load object is created. For each element:

For more information, see Format of Additional Library List.

Number of additional libraries
INPUT; BINARY(4)

The number of elements in the additional library list. If the number of elements in the additional library list is less than the value specified, the results are unpredictable.

Preoperation exit programs
INPUT; ARRAY of CHAR(20)

The preoperation exit programs for this load. The first 10 characters specify the exit program name. The second 10 characters specify the development library name. For more information, see Format of Preoperation Exit Programs.

Number of preoperation exit programs
INPUT; BINARY(4)

The number of elements in the preoperation exit programs array. If the number of elements in the preoperation exit programs parameter is less than the value specified, the results are unpredictable.

Folder list
INPUT; ARRAY of CHAR(126)

The folders for this product load. When creating a code load, the first folder specified must be a root folder. When creating a language load, the first folder specified must be a subfolder of a root folder. The folders do not need to exist before the product load object is created.

Each product option has at most one root folder. A folder cannot belong to more than one product option. The root folder must be part of the code load. Folders must be specified so that a parent folder precedes its subfolder on the list.

Start of changeThe number of folders must be zero if the number of directories names in the directory list parameter is greater than zero.End of change

A maximum of 100 folders can be specified for a load.

The documents in the development folders are saved when the product load is saved with the Save Licensed Program (SAVLICPGM) command. For more information, refer to the System Manager Use book.

For each element of the folder list, the first 63 characters specify the development folder and the next 63 characters specify the primary folder. For more information, see Format of Folder List.

Number of folders
INPUT; BINARY(4)

The number of elements in the folder list array. If the number of elements in the folder list is less than the value specified, the results are unpredictable.

Text description
INPUT; CHAR(50)

Text that briefly describes the product load object.

Public authority
INPUT; CHAR(10)

The authority you give to users:

Valid values are:

*ALL
Allows the user to perform all operations on the object except those limited to the owner or controlled by the authorization list management authority.

*CHANGE
Allows the user to perform all operations on the object except those:

  • Limited to the owner.

  • Controlled by the object existence authority and object management authority.

*EXCLUDE
Prevents the user from accessing the object.

*LIBCRTAUT
The public authority for the object is taken from the value of the create authority (CRTAUT) parameter of the target library. (This is the library that is to contain the object). This value is determined when the object is created. If the CRTAUT value for the library changes after the object is created, the new value does not affect any existing objects.

*USE
Provides object operational authority and read authority.

Error code
I/O; CHAR(*)

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

Start of changeOptional Parameter Group

Directory list
INPUT; CHAR(*)

The directories for this product load. You cannot specify directory names if any folder names are specified in the folder list parameter. A maximum of 300 directory full path names can be specified for a load.

For more information, see DIRI0100 Format.

Number of directories
INPUT; BINARY(4)

The number of elements in the directory list array. If the number of elements in the directory list is less than the value specified, the results are unpredictable.

Directory list format name
INPUT; CHAR(8)

The name of the format containing the directory list. The format name is:

DIRI0100
See DIRI0100 Format.End of change

Format of Product Load Information

The product load information parameter is described in the following table. For a detailed description of the fields in the table, see Field Descriptions.
Offset Type Field
Dec Hex
0 0 CHAR(7) Product ID
7 7 CHAR(6) Release level
13 D CHAR(4) Product option
17 11 CHAR(10) Product load type
27 1B CHAR(8) Load ID
35 23 CHAR(10) Registration ID type
45 2D CHAR(14) Registration ID value
59 3B CHAR(10) Minimum target release
69 45 CHAR(18) Reserved

Format of Principal Library Information

The principal library information parameter is described in the following table. For a detailed description of the fields in the table, see Field Descriptions.
Offset Type Field
Dec Hex
0 0 CHAR(10) Principal development library name
10 A CHAR(10) Principal primary library name
20 14 CHAR(10) Postoperation exit program name

Format of Additional Library List

The following table describes the additional library list parameter. The offsets shown in the table are for the first element in this array. For a detailed description of the fields in the table, see Field Descriptions.
Offset Type Field
Dec Hex
0 0 CHAR(10) Additional development library name
10 A CHAR(10) Additional primary library name
20 14 CHAR(10) Postoperation exit program name

Format of Preoperation Exit Programs

The following table describes the preoperation exit programs parameter. The offsets shown in the table are for the first element in this array. For a detailed description of the fields in the table, see Field Descriptions.
Offset Type Field
Dec Hex
0 0 CHAR(10) Preoperation exit program name
10 A CHAR(10) Development library name

Format of Folder List

The following table describes the folder list parameter. The offsets shown in the table are for the first element in this array. For a detailed description of the fields in the table, see Field Descriptions.
Offset Type Field
Dec Hex
0 0 CHAR(63) Development folder
63 3F CHAR(63) Primary folder

Start of changeDIRI0100 Format

The following table describes the directory list parameter. The offsets shown in the table are for the first element in this array. The decimal and hexadecimal offsets to subsequent entries are determined by using the length of the full path length field, the length of the home directory length field, and the value of the full path length field. For a detailed description of the fields in the table, see Field Descriptions.
Offset Type Field
Dec Hex
0 0 BINARY(4) Full path length
4 4 BINARY(4) Home directory length
8 8 CHAR(*) Full path nameEnd of change

Field Descriptions

Additional development library name. The name of the additional development library.

Additional primary library name. The additional primary library name. Valid special values are:

*DVLLIB
The development library name is used as the primary library name.

*CODE
The additional primary library in the code load corresponding to the immediately preceding development library is used. This value is valid only when the product load type is specified as *LNG in the product load information parameter.

Development folder. The name of a development folder for this load. The folder does not need to exist before the product load object is created.

Development library name. The development library with which the preoperation exit program is associated. The preoperation exit program may be associated with the principal library or an additional library. If associated with the principal library, this must be the same as the value for the principal development library in the principal library information parameter. If associated with an additional library, this must be the same as one of the values for the additional development library in the additional library list parameter. Valid special values are:

*PRDDFN
Specify this value if:

*CODE
Specify this value if you want the preoperation exit program to be associated with the principal development library and if you specified *CODE as the principal development library field of the principal library information parameter. This is only valid when *CODE is specified for the principal development library in the principal library information parameter.

Start of changeFull path length. The length of the full path name, in bytes.

Full path name. The fully qualified directory name assigned to this product load. Naming restrictions for directories assigned to a product load include:

Home directory length. The length of the home directory part of the full path name.End of change

Load ID. The load ID of the product load to be created. For language loads, this must be a valid national language version (NLV). The following special value is valid:

*CODEDFT
The default code load ID, 5001, is used. This value is valid only when the product load type field is *CODE.

Minimum target release. The minimum release of the operating system to which the SAVLICPGM command allows the product to be saved. The format is VxRyMz. Valid values for x, y, and z are 0 through 9. For example, V3R1M0 is Version 3, Release 1, Modification 0. If this field is blank, the version, release, and modification level of the operating system is used. This value may be different for each load, however, the code load must specify the earliest release for a given option. Also, the code load for the base option must specify the earliest release for a given product. Valid special values are:

*CURRENT
The version, release, and modification level of the operating system is used.

*PRV
The version, release, and modification level previous to that of the operating system is used. Previous is the previous release with modification level 0 of the operating system.

*CODE
The minimum target release of the code load for this option is used.

*BASECODE
The minimum target release of the code load for the base option is used.

Postoperation exit program name. The program that is called in the corresponding installed library after any of these operations are performed on the product load:

The exit program does not need to exist before the product load object is created. The following special value is valid:

*NONE
No exit program is called after the library is saved, restored, or checked.

Preoperation exit program name. The name of the preoperation exit program. A preoperation exit program is called before any of these operations are performed on the library:

The exit program does not need to exist before the product load object is created.

Primary folder. The primary folder name associated with the development folder. The following special value is valid:

*DVLFLR
The development folder name is the same as the primary folder name.

Principal development library name. The library into which the product load is created. Valid special values are:

*PRDDFN
The name of the library in which the product definition exists is used for the development library name.

*CODE
The name of the principal development library for the code load is used. This value is valid only when the product load type field is specified as *LNG.

Principal primary library name. The product load is installed into this library when no override name is specified on the Restore Licensed Program (RSTLICPGM) command. Valid special values are:

*DVLLIB
The development library name is used as the primary library name.

*CODE
The name of the principal development library for the code load is used. This value is valid only when the product load type field is specified as *LNG.

Product ID. The 7-character identifier of the product for which a product load is being created. The product ID must be in the format nlxxxxx, where n is any numeric character 0 through 9. The l is any uppercase letter A through Z, and x is any numeric character 0 through 9 or uppercase letter A through Z.

Product load type. Whether the product load being created is a code load or a language load. Valid values are:

*CODE
A code load is created.

*LNG
A language load is created.

Product option. The product option for which a product load is being created. Use 0000 for the base option.

Registration ID type. Specifies what the registration ID value field represents. Valid values are:

*PRDDFN
The registration ID is taken from the product definition for this product and release level. The product definition must exist for *PRDDFN to be valid.

*PHONE
A telephone number will be entered in the registration ID value field.

*CUSTOMER
The country code and IBM customer number will be entered in the registration ID value field.

Registration ID value. Identifier of the organization to which the product belongs. This number should be unique from other vendors on the systems on which this product will be installed. It is recommended that you specify a telephone number including the country and city code, or specify your country code followed by your IBM customer number. Valid characters for the registration ID value are A through Z and 0 through 9, padded with blanks on the right.

Release level. The version, release, and modification level of the product being created in the format VxRyMz. Valid values for x and y are 0 through 9. Valid values for z are 0 through 9 or A through Z. For example, V2R1M0 is Version 2, Release 1, Modification 0.

Reserved. This field must contain blank characters; otherwise, an error occurs.

Error Messages

CPF0CA1 E
No language load defined.
CPF0CA2 E
Code load ID &9 not valid.
CPF0CA3 E
Code load &4 supported.
CPF0CB1 E
Registration identifier not valid.
CPF0CB2 E
Product identifier &1 not valid.
CPF0CB3 E
Value for reserved field not valid.
Start of changeCPF0C1B E
Requirements between parameters not satisfied.End of change
CPF0C16 E
Object &1 type &3 already exists in library &2.
CPF0C17 E
*&3 object already exists for product &4 release &5.
CPF0C18 E
Registration identifier &7 not valid for product &4 release &5.
CPF0C19 E
Damage occurred on object &1 in library &2.
CPF0C4A E
Product record not found.
CPF0C4B E
Product availability object &2/&1 recovery required.
CPF0C4C E
Cannot allocate object &1 in library &2.
CPF0C4D E
Error occurred while processing object &1 in library &2.
Start of changeCPF0C5B E
Duplicate primary product directory.
CPF0C5C E
Specified product directory name not allowed.
CPF0C5D E
Product directory not allowed.
CPF0C5E E
Too many product directories specified.
CPF0C5F E
Product directory is not in valid format.End of change
CPF0C54 E
Data in product record not correct.
Start of changeCPF0C55 E
Registration ID problem with path.
CPF0C58 E
Cannot add duplicate path name to *PRDLOD.
CPF0C59 E
Directory in use.End of change
CPF0C8A E
Product option &1 not valid.
CPF0C8B E
Product load type &1 not valid.
CPF0C8C E
Number of additional libraries not valid.
CPF0C8D E
Preoperation exit program information not valid.
CPF0C8E E
Preoperation exit program library not valid.
CPF0C8F E
Number of folders not valid.
CPF0C81 E
Product load &6 in library &5 not created.
CPF0C82 E
Error occurred while creating product load &6 in library &5.
CPF0C83 E
Previous level folder not specified.
CPF0C84 E
Load identifier &4 not valid.
CPF0C85 E
Duplicate library &5 specified.
CPF0C87 E
Library &1 not allowed.
CPF0C9B E
Authority &1 not valid.
CPF0C9C E
Secondary language library name required.
CPF0C9D E
Minimum target release not valid.
CPF0C91 E
Code load does not exist.
CPF0C92 E
Folder name not correct.
CPF0C93 E
More than one root folder specified.
CPF0C94 E
Object name *LNG not valid for code load.
CPF0C95 E
*CODE not valid for library.
CPF0C96 E
Secondary language library not valid.
CPF0C97 E
Duplicate folder &5 in folder list.
CPF0C98 E
Additional development library &5 not found in code load.
CPF0C99 E
Product definition object not found.
CPF0613 E
User profile does not have enough storage assigned.
CPF24B4 E
Severe error while addressing parameter list.
CPF3CF1 E
Error code parameter not valid.
Start of changeCPF3C21 E
Format name &1 is not valid.End of change
CPF3C29 E
Object name &1 is not valid.
CPF3C90 E
Literal value cannot be changed.
CPF358A E
Release not valid.
CPF9810 E
Library &1 not found.
CPF9818 E
Object &2 in library &3 not created.
CPF9819 E
Object &2 in library &3 not created.
CPF9820 E
Not authorized to use library &1.
CPF9830 E
Cannot assign library &1.
CPF9872 E
Program or service program &1 in library &2 ended. Reason code &3.


Top | Software Product APIs
Software Product API list | APIs by category

[Information Center Home Page | Feedback ] [Legal | AS/400 Glossary]