Purpose of UCS parameter - IBM-JCL

Parameter Type

Keyword, optional


Use the UCS (universal character set) parameter to identify:

  • The UCS image JES is to use in printing this sysout data set.
  • A print train (print chain or print band) JES is to use in printing this sysout data set on an impact printer.
  • A font for this sysout data set printed on an AFP printer in a JES2 system. In this use, the UCS parameter acts like a CHARS parameter.

The UCS image specifies the special character set to be used. JES loads the image into the printer’s buffer. The UCS image is stored in SYS1.IMAGELIB. IBM provides the special character set codes.


UCS= {character-set-code } {(character-set-code [,FOLD] [,VERIFY]) } [ , ]
  • You can omit the parentheses if you code only a character-set-code.
  • All of the subparameters are positional. If you omit FOLD but code VERIFY, code a comma to indicate the omission. For example, UCS=(AN,,VERIFY).
  • Null positions in the UCS parameter are invalid.

2.Subparameter Definition

Identifies a universal character set. The character-set-code is 1 through 4 alphanumeric or national ($, #, @) characters. See Table for IBM standard special character set codes.

Table: Special Character Sets for the 1403, 3203 Model 5, and 3211 Printers

Special Character Sets for the 1403, 3203 Model 5, and 3211 Printers

Requests that the chain or train for the universal character set be loaded in fold mode. Fold mode is described in 2821 Component Description. Fold mode is most often used when upper- and lower-case data is to be printed only in uppercase.

Note: JES2 and JES3 do not support the FOLD subparameter. For JES2, the FOLD option is specified in the UCS image for JES2-controlled printers.

Requests that, before the data set is printed, the operator verify visually that the character set image is for the correct chain or train. The character set image is displayed on the printer before the data set is printed.

If you do not code the UCS parameter, the system checks the UCS image in the printer’s buffer; if it is a default image, as indicated by its first byte, JES uses it. If it is not a default image, JES loads the UCS image that is the installation default specified at JES initialization.

On an impact printer, if the chain or train does not contain a valid character set, JES asks the operator to specify a character set and to mount the corresponding chain or train.

For printing on a printer with the UCS feature, the UCS parameter on a sysout DD statement overrides an OUTPUT JCL UCS parameter. For printing on a 3800 Model 1, a CHARS parameter on the sysout DD statement or the OUTPUT JCL statement overrides all UCS parameters.

For a data set scheduled to the Print Services Facility (PSF), the PSF uses the following parameters, in override order, to select the font list:

  1. Font list in the library member specified by an OUTPUT JCL PAGEDEF parameter.
  2. DD CHARS parameter.
  3. OUTPUT JCL CHARS parameter.
  4. DD UCS parameter.
  5. OUTPUT JCL UCS parameter.
  6. JES installation default for the device.
  7. Font list on the PAGEDEF parameter in the PSF cataloged procedure.

5.Relationship to Other Parameters
Do not code the following DD parameters with the UCS parameter.


Do not code the UCS parameter with the DCB subparameters CYLOFL, INTVL, RESERVE, and RKP.

The FOLD and VERIFY subparameters are meaningful only when you specify a printing device directly on a DD statement, for example, UNIT=00E, thus bypassing JES sysout processing.

6.Using Special Character Sets
To use a special character set, SYS1.IMAGELIB must contain an image of the character set, and the chain or train for the character set must be available. IBM provides standard special character sets, and the installation may provide user-designed special character sets.

7.Examples of the UCS Parameter



In this example, the DD statement requests a 1403 Printer. The UCS parameter requests the chain or train for special character set code YN. Because VERIFY is coded, the system will display the character set image on the printer before the data set is printed.



In this example, the DD statement requests the device for output class G. If the device is a printer with the UCS feature, the system loads the UCS image for code PN. If the device is an impact printer, the system asks the operator to mount the chain or train for PN, if it is not already mounted. If the device is a 3800, the system uses the UCS subparameter to select the character-arrangement table. Otherwise, the system ignores the UCS parameter.

UNIT parameter

Parameter Type

Keyword, optional

Note: With SMS, you do not need to use the UNIT parameter to specify a device for an SMS-managed data set. Use the STORCLAS parameter or let an installation-written automatic class selection (ACS) routine select a storage class for the data set.

Also with SMS, for a non-SMS-managed data setyou’re your storage administrator has set a system default unit under SMS, you do not need to specify UNIT. Check with your storage administrator.

Use the UNIT parameter to ask the system to place the data set on:

  • A specific device.
  • A certain type or group of devices.
  • The same device as another data set.

The UNIT parameter can also tell the system how many devices to assign and request that the system defer mounting the volume until the data set is opened.


{UNIT=([ddd ] [,unit-count] [,DEFER]) } [/ddd ] [ ,P ] [/dddd ] [ , ] [device-type [group-name {UNIT= AFF=ddname }
  • You can omit the parentheses if you code only the first subparameter.
  • All of the subparameters are positional. If you omit unit-count or P but code DEFER, code a comma to indicate the omission; one device is assigned to the data set. For example, UNIT=(3490,,DEFER).

2.Subparameter Definition

Identifies a specific device by a 3-digit or 4-digit hexadecimal number. Precede a 4-digit number with a slash (/). A 3-digit number can be specified with or without a slash.

Attention: Specify a device number only when necessary. When you specify a device number, the system can assign only that specific device. If the device is already being used, the job must be delayed or canceled.

However, for a permanently mounted direct access device, such as a 3390 Direct Access Storage, specifying a device type (UNIT=3390) and a volume serial number in the VOLUME=SER parameter has the same result as specifying a device number in the UNIT parameter.

In a JES3 system, if any DD UNIT parameter in a job specifies a device-number for a device that is JES3-managed or jointly JES3/MVS managed, the JES3 //*MAIN statement must contain a SYSTEM parameter. SMS ignores a device number, if specified for SMS-managed DASD.

Requests a device by its generic name, which is an IBM-supplied name that identifies a device by its machine type and model. For example, UNIT=3390. When a device-type name contains a hyphen, do not enclose it in apostrophes, for example, UNIT=3400-5. Obtain the list of device types you can specify from your installation. If you specify the device-type subparameter, SMS ignores it. For a 3480 Magnetic Tape Subsystem in compatibility mode, code UNIT=3400-9 or a group-name.

Requests a group of devices by a symbolic name. The installation must have assigned the name to the device(s) during system initialization or IBM must have assigned the name. The group-name is 1 through 8 alphanumeric characters. If you specify the group-name subparameter, SMS ignores it.

Group Names: A group-name can identify a single device or a group of devices. A group can consist of devices of the same or different types. For example, a group can contain both direct access and tape devices.

Note: A group name is called an esoteric name in Hardware Configuration Definition (HCD) terminology.

Allocation from Groups: The system assigns a device from the group. If a group consists of only one device, the system assigns that device. If the group consists of more than one device type, the units requested are allocated from the same device type. For example, if GPDA contains 3380 Disk Storage and 3390 Direct Access Storage devices, a request for two units would be allocated to two 3380s or to two 3390s.

Extending Data Set: If a data set that was created using the group-name subparameter is to be extended, the system allocates additional devices of the same type as the original devices. However, the additional devices may not necessarily be from the same group.

SYSALLDA: IBM assigned group-names include SYSALLDA, which contains all direct access devices defined to the system.

SYS3480R and SYS348XR: SYS3480R and SYS348XR are IBM-assigned group names. SYS3480R contains 3480, 3480X, and 3490 Magnetic Tape Subsystems. SYS348XR contains 3480X and 3490 Magnetic Tape Subsystems.

Use these group names to override the device type eligibility retrieved by the system when referencing existing 3480- or 3480 XF-formatted data sets.
Specifically, use SYS3480R when you want to read 3480-formatted data sets and use SYS348XR when you want to read 3480 XF-formatted data sets.

Note: LABEL=(n,,,IN) is the system-managed tape library equivalent of either UNIT=SYS3480R or UNIT=SYS348XR.

Specifies the number of devices for the data set. ²Unit-count² is a decimal number from 1 through 59.

Number of Devices Allocated: The system uses the unit-count to determine how many devices to allocate. For tapes, the system uses the unit-count subparameter to allocate the specified number of system-managed or non-system-managed units. If you also specify P (for parallel mount) in the UNIT parameter, and for SMS-managed DASD, the system uses the highest of the following numbers to determine how many devices and volumes to allocate:

  • unit-count specified in the UNIT parameter
  • volume-count specified in the VOLUME parameter
  • number of volume serial numbers implicitly or explicitly specified

You may receive more devices than the unit-count requests if you specify VOLUME=REF or a permanently resident or reserved volume. And, if two DD statements in a step request the same volume and either DD statement requests any other volume(s), the system assigns an additional device.

Unit Count for Received or VOLUME=REF Data Sets: The system assigns one device when the DD statement receives a passed data set or refers in a
VOLUME=REF subparameter to a cataloged data set or earlier DD statement for volume and unit information. Code a unit-count subparameter if the data set needs more than one device.

Unit Count when Device Number Specified: When the first subparameter
requests a specific device, the unit count must be 1 or omitted. Only when the device is a communication device can the unit count be higher than 1.

P Asks the system to allocate the same number of devices as requested in the VOLUME volume-count or SER subparameter, whichever is higher. Thus, all volumes for the data set are mounted in parallel. If you specify the P subparameter for system-managed DASD, the system ignores it. If you specify the P subparameter for system-managed tape libraries, the system honors it.

Asks the system to assign the data set to device(s) but requests that the volume(s) not be mounted until the data set is opened. To defer mounting, DEFER must be specified or implied for all DD statements that reference the volume.

If you specify the DEFER subparameter for system-managed DASD, the system
ignores it. If you specify the DEFER subparameter for system-managed tape libraries, the system honors it.

DEFER when Data Set is Never Opened: If you request deferred mounting of a volume and the data set on that volume is never opened by the processing
program, the volume is never mounted during the job step.

Restrictions on DEFER: Do not code DEFER:

  • For a new data set on direct access. The system ignores DEFER.
  • On a SYSCKEOV DD statement.

Requests that the system allocate different data sets residing on different,
removable volumes to the same device during execution of the step. This request is called unit affinity, where ²ddname² is the ddname of an earlier DD statement in the same step. Use unit affinity to reduce the number of devices used in a job step; request that an existing data set be assigned to the same device(s) as another existing data set. If you specify the UNIT=AFF subparameter for system-managed DASD, the system ignores it.

If you specify the UNIT=AFF subparameter for system-managed tape libraries, the system attempts to honor it. Under certain conditions the system ignores unit affinity.

Restrictions on UNIT=AFF: Do not code UNIT=AFF=ddname:

  • With DISP=NEW if the data set referenced in the AFF subparameter resides on a direct access device. This restriction applies only to non-SMS-managed DASD. If coded, the system terminates the job. If the referenced data set can be allocated to either tape or DASD, the system allocates both requests to tape devices.
  • On a DD * or DD DATA statement or on a DD statement containing a SUBSYS parameter. The system ignores the UNIT=AFF and defaults the device to
  • When the DD statement referenced in the AFF subparameter contain
  • With the STORCLAS parameter.
  • With an affinity specification to an earlier DD statement that requests SYS3480R or SYS348XR on the group-name subparameter, unless volume affinity also exists. Volume affinity exists when two DD statements both reference a data set on the same volume. Do not also specify DISP=OLD or DISP=MOD; attempting to write 3480 data to a 3490 drive, or 3490 data to a 3480 drive, will fail during OPEN processing with ABEND 813-04 accompanied by message IEC149I.

If you code SYSOUT and UNIT on the same statement, the SYSOUT parameter overrides the UNIT parameter.

The system also obtains device information when the system obtains volume serial information from:

  • A VOLUME=REF=dsname reference to an earlier data set.
  • A VOLUME=REF=ddname reference to an earlier DD statement.
  • The volume(s) for a passed data set.
  • The catalog for a cataloged data set.

However, you can override the retrieved device information if the device you specify is a subset of the retrieved device information; otherwise the system ignores the overriding device information. For example, if the retrieved unit grouping is 3350, and the specified unit subparameter is 3350A (a subset of 3350), then the system allocates from the devices contained in 3350A.

If you have 3490 Magnetic Tape Subsystem models A10 and A20 defined to your system and you use one of the IBM-generated group names SYS3480R or SYS348XR, the system overrides the device type retrieved from the catalog with a device from the esoteric device group.

Note: LABEL=(n,,,IN) is the system-managed tape library equivalent of either UNIT=SYS3480R or UNIT=SYS348XR. You can mount 3480-formatted or 3480X-formatted (18-track formatted) tape volumes, that are not extended, on a 3490 tape device (36-track write, 18-track or 36-track read).

4.Relationship of the UNIT Parameter to Other Parameters
Do not code the following DD parameters with the UNIT parameter.


Do not code the UNIT DEFER subparameter on a SYSCKEOV DD statement. To allocate a device, such as a printer or telecommunications device, that does not involve a data set, do not code the DISP parameter.

5.Location in the JCL
When a DD statement contains a UNIT=AFF=ddname parameter, the DD statement referenced in the AFF subparameter must be defined earlier in the job step; otherwise, the system treats the DD statement containing UNIT=AFF as a DD DUMMY statement.

The following example illustrates a case where the system treats the DD statement containing the UNIT=AFF as a DD DUMMY statement:

DD3 requests unit affinity to DD1. Although DD1 occurs earlier in the job step than DD3, it refers to DD5 that is located after DD3. Because DD1 is not completely defined, the system treats DD3 as a dummy statement.

6.Examples of the UNIT Parameter


DD statement DDX requests two 3480 tape devices, DD statement DDZ requests the same two devices as DDX. Note that the operator will have to change volumes on the two 3480 devices during execution of the job step. DD statement DDY requests one 3480 tape device.


This DD statement defines a new data set and requests that the system assign any 3420 Magnetic Tape Unit that can operate in 6250 BPI NRZI nine-track format.



This DD statement defines a cataloged data set and requests that the system assign two devices to the data set. The system obtains the device type from the catalog.


This DD statement defines an existing data set that resides on a tape volume and requests that the system assign a 3490 tape device. Because DEFER is coded, the volume will not be mounted until the data set is opened.



For this data set, the system retrieves the volume and device type from the catalog. The UNIT parameter, by specifying device 237, overrides the catalog device type; however, device 237 must be the same type as the device stated in the catalog.

This example shows the use of the ALLOCxx UNITAFF default. This example
assumes the following environment:

  • UNITAFF(3490) was specified in parmlib member ALLOC05, defining a 3490 as the default unit-affinity-ignored unit name. This default is used when unit affinity is ignored, the referenced DD is an SMS-managed request and the referencing DD is a NEW non-SMS-managed request, and the system is unable to obtain a unit from the primary DD in the unit affinity chain.
  • The SMS ACS routines are defined so that:
  • – Data set L is to be redirected from tape to an SMS-managed DASD volume, SD3.
    – Data set M is not to be redirected and is, therefore, still intended to go to a non-SMS managed tape volume.

In STEP1, DD11, data set L is created and cataloged on SD3, SMS-managed DASD (redirected using SMS ACS routines).

In STEP2, DD21, data set L is an existing data set and is cataloged on SD3, SMS-managed DASD. DD21 is both the referenced DD (referenced by the UNIT=AFF on DD22) and the primary DD.

In STEP2, DD22 is the referencing DD, which requests unit affinity to DD21. Because data set L is on SMS-managed DASD, the system cannot honor the unit affinity for DD22 which is intended to go to tape. With the unit affinity ignored, the system must determine a unit to be used for DD22.

The system is not able to rely on the unit information in the catalog for data set L, because the catalog reflects a DASD unit (as a result of being redirected). Because data set L was created in a prior step and there is no unit specified on DD21, the system is not able to use the JCL for DD21 as a source of unit information. The system will, therefore, use the unit-affinity-ignored unit name of 3490 for DD22.

All rights reserved © 2018 Wisdom IT Services India Pvt. Ltd DMCA.com Protection Status

IBM-JCL Topics