Create ICF File (CRTICFF)
The Create Intersystem Communications Function File (CRTICFF) command creates an intersystem communications function (ICF) file from the information specified on this command and from the data description specifications (DDS) contained in a source file.
An ICF file is used to perform input and output operations with communication devices.
Keyword |
Description |
Choices |
Notes |
FILE |
File |
Qualified object name |
Required, Positional 1 |
Qualifier 1: File |
Name |
Qualifier 2: Library |
Name, *CURLIB |
SRCFILE |
Source file |
Qualified object name |
Optional, Positional 2 |
Qualifier 1: Source file |
Name, QDDSSRC |
Qualifier 2: Library |
Name, *LIBL, *CURLIB |
SRCMBR |
Source member |
Name, *FILE |
Optional, Positional 3 |
GENLVL |
Generation severity level |
0-30, 20 |
Optional |
FLAG |
Flagging severity level |
0-30, 0 |
Optional |
ACQPGMDEV |
Program device to acquire |
Character value, *NONE |
Optional |
TEXT |
Text 'description' |
Character value, *SRCMBRTXT, *BLANK |
Optional |
OPTION |
Source listing options |
Values (up to 3 repetitions): *SRC, *NOSRC, *SOURCE, *NOSOURCE, *LIST, *NOLIST, *SECLVL, *NOSECLVL |
Optional, Positional 4 |
MAXPGMDEV |
Maximum program devices |
1-256, 1 |
Optional |
MAXRCDLEN |
Maximum record length |
1-32767, *CALC |
Optional |
WAITFILE |
Maximum file wait time |
1-32767, *IMMED, *CLS |
Optional |
WAITRCD |
Maximum record wait time |
1-32767, *NOMAX, *IMMED |
Optional |
DTAQ |
Data queue |
Single values: *NONE Other values: Qualified object name |
Optional |
Qualifier 1: Data queue |
Name |
Qualifier 2: Library |
Name, *LIBL, *CURLIB |
SHARE |
Share open data path |
*NO, *YES |
Optional |
LVLCHK |
Record format level check |
*YES, *NO |
Optional |
AUT |
Authority |
Name, *LIBCRTAUT, *ALL, *CHANGE, *EXCLUDE, *USE |
Optional |
REPLACE |
Replace file |
*YES, *NO |
Optional |
File (FILE)
Specifies the intersystem communications function (ICF) file to be created.
If the file is used in a high-level language program, the file name should be consistent with the naming rules of that language. Otherwise, the file must be renamed in the program.
This is a required parameter.
Qualifier 1: ICF communication file
- name
- Specify the name of the ICF file.
Qualifier 2: Library
- *CURLIB
- The current library for the job is used to locate the ICF file. If no library is specified as the current library for the job, QGPL is used.
- name
- Specify the name of the library where the ICF file is located.
Source file (SRCFILE)
Specifies the source file containing the data description specifications (DDS) source used to create the ICF file.
Qualifier 1: Source file
- QDDSSRC
- The source file named QDDSSRC contains the DDS source used to create the ICF file.
- name
- Specify the name of the source file.
Qualifier 2: Library
- *LIBL
- All libraries in the library list for the current thread are searched until the first match is found.
- *CURLIB
- The current library for the job is used to locate the source file. If no library is specified as the current library for the job, QGPL is used.
- name
- Specify the name of the library where the source file is located.
Source member (SRCMBR)
Specifies the source file member that contains the data description specifications (DDS) source for the ICF file being created.
- *FILE
- The source file member name is the same as the ICF file name specified in the ICF communication file (FILE) parameter.
- name
- Specify the name of the member in the source file.
Generation severity level (GENLVL)
Specifies the severity level of data description specifications (DDS) messages that cause file creation to fail. This parameter applies only to messages created while processing DDS source files.
- 20
- If errors occur in the DDS source file processing with a severity level greater than or equal to 20, the file is not created.
- 0-30
- Specify the desired severity level value. If 0 is specified, the file is not created. The value specified must be greater than or equal to the value specified for the Flagging severity level (FLAG) parameter.
Flagging severity level (FLAG)
Specifies the minimum severity level of messages to be listed.
- 0
- All messages are listed.
- 0-30
- Specify a number indicating the minimum severity of messages to be listed. The value specified must be greater than or equal to the value specified for the Generation severity level (GENLVL) parameter.
Program device to acquire (ACQPGMDEV)
Specifies which program device is acquired to use with the file when the file is opened.
- *NONE
- The file is opened without an acquired program device. All program devices used with this file must be explicitly acquired before input/output can be started with them.
- character-value
- Specify the name of the first program device that is acquired when the file is opened. The program device must be added to the file before the file is opened.
Text 'description' (TEXT)
Specifies the text that briefly describes the object.
- *SRCMBRTXT
- The text is taken from the source file member used to create the file if the source file is a database file. The text is blank if the source file is an inline file or a device file.
- *BLANK
- No text is specified.
- character-value
- Specify no more than 50 characters of text, enclosed in apostrophes.
Source listing options (OPTION)
Specifies the type of printout produced when the file is created. A maximum of three of the following values can be specified in any order on this parameter. If neither or both of the values on an option are specified, the first value listed for the option is used.
Note: The first values on each option are similar to, but are not actually default values, and therefore, cannot be changed with the CHGCMDDFT (Change Command Default) command.
Program Creation Option
- *SRC or *SOURCE
- A printout is created of the source statements used to create the file and any errors that occur.
- *NOSRC or *NOSOURCE
- No printout of the source statements is created unless errors are detected. If errors are detected, they are listed along with the record format containing the error.
Source Listing Option
- *LIST
- An expanded source printout is created, showing a detailed list of the file specifications that result from the source statements and references to other file descriptions.
- *NOLIST
- An expanded source printout is not created.
Second-Level Message Text Option
- *NOSECLVL
- The messages section of the DDS printout does not contain the second-level message text for errors found during DDS processing.
- *SECLVL
- Second-level message text is included in the source listing.
Maximum program devices (MAXPGMDEV)
Specifies the maximum number of program device entries that can be added to the ICF file. The program device entries are added by using the Add Intersystem Communications Function Device Entry (ADDICFDEVE) command.
- 1
- Only one program device entry or *REQUESTER can be added to this ICF file.
- 1-256
- Specify the maximum number of program device entries that are defined for, or that can be added to, this ICF file.
Maximum record length (MAXRCDLEN)
Specifies the maximum number of bytes in the record length used when the file is opened.
- *CALC
- The length calculated for the largest record in the file is used when the file is opened.
- 1-32767
- Specify the maximum record length. If the record length is less than the length calculated for the largest record in the file, then the calculated value is used.
Maximum file wait time (WAITFILE)
Specifies the number of seconds that the program waits for the file resources to be allocated when the file is opened, or the device or session resources to be allocated when an acquire operation is performed to the file. If the file resources cannot be allocated in the specified wait time, an error message is sent to the program.
- *IMMED
- The program does not wait. Immediate allocation of file resources is required.
- *CLS
- The job default wait time is used as the wait time for the file resources to be allocated.
- 1-32767
- Specify the number of seconds to wait for file resources to be allocated.
Maximum record wait time (WAITRCD)
Specifies the number of seconds the program waits for the completion of a read-from-invited-devices operation to a multiple device file in a high-level language program. Refer to the high-level language reference manual to determine when a file is treated as a multiple device file. The program performing the read operation waits for the input form all invited devices currently accessing the file. If a record is not returned from any of the invited program devices in the specified amount of time, a notify message is sent to the program. This parameter has no effect on an input operation directed to a single device.
- *NOMAX
- There is no limit on the time the system waits for the completion of the operation.
- *IMMED
- The program does not wait. If a record is not available when the read-from-invited-devices operation is done, a notify message is sent to the program.
- integer
- Specify the maximum number of seconds that the program waits. Valid values range from 1 through 32767 seconds.
Data queue (DTAQ)
Specifies the data queue on which entries are placed. The specified data queue must have a minimum length of 80 characters. The data queue need not exist when the display file is created since the name specified for this parameter is not evaluated until the file is used.
Note: Keyed data queues are not supported for this parameter. If a keyed data queue is specified, a run-time error will occur; but because it is not required that a data queue exist at the time the command is issued, the error will not be flagged.
Single values
- *NONE
- No data queue is specified.
Qualifier 1: Data queue
- name
- Specify the name of the data queue on which entries are placed.
Qualifier 2: Library
- *LIBL
- All libraries in the library list for the current thread are searched until the first match is found.
- *CURLIB
- The current library is used to locate the data queue. If no library is specified as the current library for the job, QGPL is used.
- name
- Specify the library where the data queue is located.
Share open data path (SHARE)
Specifies whether the open data path (ODP) is shared with other programs in the same routing step. When an ODP is shared, the programs accessing the file share facilities such as the file status and the buffer.
- *NO
- The ODP is not shared with other programs in the routing step. A new ODP for the file is created and used every time a program opens the file.
- *YES
- The same ODP is shared with each program in the job that also specifies *YES when it opens the file.
Record format level check (LVLCHK)
Specifies whether the level identifiers of the record formats in the ICF device file are checked when the file is opened by a program.
- *YES
- The level identifiers of the record formats are checked. If the level identifiers do not all match, an open error message is sent to the program that tried to open the file.
- *NO
- The level identifiers are not checked when the file is opened.
Authority (AUT)
Specifies the authority you are giving to users who do not have specific authority for the object, who are not on an authorization list, and whose group profile or supplemental group profiles do not have specific authority for the object.
- *LIBCRTAUT
- The system determines the authority for the object by using the value specified for the Create authority (CRTAUT) parameter on the Create Library command (CRTLIB) for the library containing the object to be created. If the value specified for the CRTAUT parameter is changed, the new value will not affect any existing objects.
- *CHANGE
- The user can perform all operations on the object except those limited to the owner or controlled by object existence (*OBJEXIST) and object management (*OBJMGT) authorities. The user can change and perform basic functions on the object. *CHANGE authority provides object operational (*OBJOPR) authority and all data authority. If the object is an authorization list, the user cannot add, change, or remove users.
- *ALL
- The user can perform all operations except those limited to the owner or controlled by authorization list management (*AUTLMGT) authority. The user can control the object's existence, specify the security for the object, change the object, and perform basic functions on the object. The user also can change ownership of the object.
- *USE
- The user can perform basic operations on the object, such as running a program or reading a file. The user cannot change the object. Use (*USE) authority provides object operational (*OBJOPR), read (*READ), and execute (*EXECUTE) authorities.
- *EXCLUDE
- The user cannot access the object.
- name
- Specify the name of an authorization list to be used for authority to the object. Users included in the authorization list are granted authority to the object as specified in the list. The authorization list must exist when the object is created.
Replace file (REPLACE)
Specifies whether an existing file, other than a save or database file, is replaced.
- *YES
- An existing file with the same name and library is replaced if the creation of the new ICF file is successful.
- *NO
- The creation of a new ICF file is not allowed if there is an existing file with the same name and library.
CRTICFF FILE(QGPL/ICFTEST) SRCFILE(QGPL/QDDSSRC)
MAXPGMDEV(5) ACQPGMDEV(DENVER)
This command creates the file ICFTEST in the QGPL library. The DDS source used to create the file is in member ICFTEST from file QDDSSRC in the QGPL library. Up to five program devices can be used with the file. The program device DENVER is acquired when the file is opened.
*ESCAPE Messages
- CPF7302
- File &1 not created in library &2.