Create Product Definition (QSZCRTPD) API
Required Parameter Group:
1 | Qualified product definition name | Input | Char(20) |
2 | Product definition information | Input | Char(106) |
3 | Product option list | Input | Array of Char(41) |
4 | Number of product options | Input | Binary(4) |
5 | Language load list | Input | Array of Char(20) |
6 | Number of language loads | Input | Binary(4) |
7 | Text description | Input | Char(50) |
8 | Public authority | Input | Char(10) |
9 | Error code | I/O | Char(*) |
Default Public Authority: *EXCLUDE
Threadsafe: No
The Create Product Definition (QSZCRTPD) API creates a product definition (*PRDDFN) object. Each release of a packaged software product requires one product definition.
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
- Qualified product definition name
- INPUT; CHAR(20)
The first 10 characters contain the product definition name. The second 10 characters contain the name of the library into which the product definition is to be created.
The following special value is supported for the library name:
*CURLIB The job's current library
- Product definition information
- INPUT; CHAR(106)
A structure containing information about the product. For more information, see Format of Product Definition Information.
- Product option list
- INPUT; ARRAY of CHAR(41)
An array containing information for each of the options defined for the product. Each element of the array contains information for one option. There must be one element of the array for each option. The first element of the array must be for the base (0000) option. The required data for the product option list is described in Format of Product Option List.
- Number of product options
- INPUT; BINARY(4)
The number of options defined for the product. This number is the same as the number of elements in the product option list parameter. Up to 100 product options can be specified. If the number of elements in the product option list is less than the value specified, the results are unpredictable.
- Language load list
- INPUT; ARRAY of CHAR(20)
Specifies which languages are defined for the product options. The required data for the language load list is described in Format of Language Load List.
- Number of language loads
- INPUT; BINARY(4)
The number of elements in the language load list parameter. If the number of elements in the language load list parameter is less than the value specified, the results are unpredictable. The valid range is 1 to 139.
- Text description
- INPUT; CHAR(50)
Text that briefly describes the product definition object.
- Public authority
- INPUT; CHAR(10)
The authority you give to users who do not have specific authority to the product definition object and whose group profile has no specific authority to the object.
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 or 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.
Format of Product Definition Information
The following table describes the order and format of the product definition information parameter. For detailed descriptions of 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(10) | Message file |
23 | 17 | CHAR(10) | First copyright |
33 | 21 | CHAR(10) | Current copyright |
43 | 2B | CHAR(6) | Release date |
49 | 31 | CHAR(4) | Allow multiple releases |
53 | 35 | CHAR(10) | Registration ID type |
63 | 3F | CHAR(14) | Registration ID value |
77 | 4D | CHAR(1) | Release date century |
78 | 4E | CHAR(28) | Reserved |
Format of Product Option List
Up to 100 product options can be specified. The first option specified must be 0000 (the base option). The product option list parameter is described in the table below. The offsets shown in the table are for the first element in this array. For detailed descriptions of fields in the table, see Field Descriptions.
Offset | Type | Field | |
---|---|---|---|
Dec | Hex | ||
0 | 0 | CHAR(4) | Product option number |
4 | 4 | CHAR(7) | Message ID |
11 | B | CHAR(10) | Allow dynamic naming |
21 | 15 | CHAR(4) | Code load ID |
25 | 19 | CHAR(16) | Reserved |
Format of Language Load List
Up to 40 language loads can be specified for the base (0000) option. A maximum of 139 total can be specified. The language load list field is described in the table below. The offsets shown in the table are for the first element in this array. For detailed descriptions of fields in the table, see Field Descriptions.
Offset | Type | Field | |
---|---|---|---|
Dec | Hex | ||
0 | 0 | CHAR(8) | Language load ID |
8 | 8 | CHAR(4) | Product option number |
12 | C | CHAR(8) | Reserved |
Field Descriptions
Allow dynamic naming. Allow libraries and root folders to be named during installation of the product option.
Valid values are:
*NODYNNAM | Do not allow naming of libraries and folders during installation. |
*ALWDYNNAM | Allow naming of libraries and root folders during installation. |
Allow multiple releases. Allow different releases of this product to be installed on the same system.
Valid values are:
*NO | Do not allow multiple releases. |
*YES | Allow multiple releases. |
Code load ID. The identifier of the code load for the option. Valid values are 5001 through 9999. For all product options that are part of the same feature, specify the same code load ID. If you are not adding license information to your product, you should use 5001 for the code load ID for each option. The code load ID you specify for this option must be the same as the load ID specified when you create the code product load for this option. See Create Product Load (QSZCRTPL) API for information about creating product loads.
Current copyright. The year of the most recent copyright for this product. The year must be specified as a 4-digit number, such as 1990. The field must be padded with blanks. If this field and the first copyright field have values other than *NONE, the first copyright field must be less than the current copyright field.
The following special values are valid:
*CURRENT | The current year is used. |
*NONE | The product does not have a current copyright. |
First copyright. The first year that the product was copyrighted. The year must be specified as a 4-digit number, such as 1990. The field must be padded with blanks.
The following special values are valid:
*CURRENT | The current year is used. |
*NONE | The product does not have a first copyright. |
Language load ID. The national language versions (NLVs) that are valid for a given product option. Individual NLVs may be specified for the base option, with one element of the language load list parameter for each NLV for the base option. For options other than the base option, only *BASEOPT and *NONE are valid. For example, to create a product definition with NLVs 2924 and 2931 defined for both the base option and option 1, the language load list would have three elements:
- One with 2924 0000.
- One with 2931 0000.
- One with *BASEOPT 0001.
Valid special values are:
*NONE | Defines the option to have no NLVs. |
*IBMLNG | Only valid for the base option, 0000. Specifies the product definition is created with the list of all the NLVs for the base option the same as the currently installed operating system. |
*BASEOPT | Only valid for an option other than 0000. Defines this option to have the same NLVs as the base option of this product. |
Message file. The name of the message file containing the messages that describe the product and its options. The message file for the base option is considered the message file for the product.
Message ID. The identifier of the message that describes the product option.
Product ID. The 7-character identifier of the product for which a product definition 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 option number. The identifier of the product option.
When used in the product option list parameter, valid values are 0000 through 0099, with each number specified at most once. Specify 0000 for the base product option. The value 0000 must be the first option specified.
When used in the language load list parameter, this is the identifier for the product option for which NLVs are being defined. This must be one of the options specified on the product option list parameter.
Registration ID type. Specifies what the registration ID value field represents.
Valid values are:
*PHONE | Telephone number will be entered in the registration ID value field. |
*CUSTOMER | Country or region code and IBM® customer number will be entered in the registration ID value field. |
Registration ID value. The 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 you specify a telephone number (including the country or region code and city code) or your IBM customer number appended to your country or region code. Valid characters for the registration ID value are A through Z and 0 through 9, padded with blanks on the right.
Release date. Release date of the product. The format is yymmdd, where yy is the year, mm is the month, and dd is the day.
The following special value is valid for the release date:
*NONE | The product does not have a release date. |
Release date century. The century that corresponds to the release date of the product. This field is ignored if *NONE is specified for release date.
Possible values follow:
0 | Indicates years 19xx |
1 | Indicates years 20xx |
Blank | The release date century is set to 0 if the release date year is equal to or greater than 40 (years 1940 through 1999); it is set to 1 if the release date year is less than 40 (years 2000 through 2039). |
Release level. The version, release, and modification level of the product.
The release level can be passed as one of the following two formats:
VxRyMz | Where x is any numeric character 0 through 9, y is any numeric character 0 through 9, and z is any numeric character 0 through 9 or uppercase letter A through Z. For example, V7R2M0 is version 7, release 2, modification 0. |
vvrrmm | Where vv are any numeric characters 00 through 35 representing the version of the product, rr are any numeric characters 00 through 35 representing the release of the product, and mm can be 00 through 09 or 0A through 0Z representing the modification of the product. For example, 110300 is version 11, release 3, modification 0. This format must be used if the version or release of the product is greater than 9. |
Reserved. This field must contain blank characters; otherwise, an error occurs.
Error Messages
Message ID | Error Message Text |
---|---|
CPF0CAA E | First product option not *BASE. |
CPF0CAB E | Language load identifier not valid. |
CPF0CAC E | Language load identifier not valid. |
CPF0CAD E | Duplicate language load identifier specified. |
CPF0CAE E | Language load not valid. |
CPF0CAF E | Duplicate option &3 specified. |
CPF0CA3 E | Code load &4 supported. |
CPF0CA6 E | Product definition &3 not created in library &4. |
CPF0CBA E | Number of options parameter not valid. |
CPF0CBB E | Release date &3 not valid. |
CPF0CBC E | Message identifier &4 not allowed. |
CPF0CBD E | Code load ID &9 not valid. |
CPF0CBE E | Release date century field not valid. |
CPF0CB0 E | Copyright dates not valid. |
CPF0CB1 E | Registration identifier not valid. |
CPF0CB2 E | Product identifier &1 not valid. |
CPF0CB3 E | Value for reserved field not valid. |
CPF0CB5 E | Copyright field &3 not valid. |
CPF0CB6 E | Allow multiple releases field not valid. |
CPF0CB7 E | Allow dynamic naming field not valid. |
CPF0CB8 E | Language load field not valid. |
CPF0CB9 E | Number of language loads parameter not valid. |
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. |
CPF0C4D E | Error occurred while processing object &1 in library &2. |
CPF0C8A E | Product option &1 not valid. |
CPF0C84 E | Load identifier &4 not valid. |
CPF0C86 E | Registration identifier not valid. |
CPF0C9B E | Authority &1 not valid. |
CPF24B4 E | Severe error while addressing parameter list. |
CPF3CF1 E | Error code parameter not valid. |
CPF3C29 E | Object name &1 is not valid. |
CPF3C90 E | Literal value cannot be changed. |
CPF35E3 E | Interface error detected. |
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. |
API introduced: V4R4