DEFINE NONVSAM

Using Access Method Services, you can set up jobs to execute a sequence of commands with a single invocation of IDCAMS. Modal command execution is based on the success or failure of prior commands.

The DEFINE NONVSAM command defines a catalog entry for non-VSAM data sets or a collection of objects. The syntax of the DEFINE NONVSAM command is:

Command Parameters
DEFINE NONVSAM
    (NAME(entryname)
    DEVICETYPES(devtype[ devtype...])
    VOLUMES(volser[ volser...])
    [COLLECTION]
    [FILESEQUENCENUMBERS(number[ number...])]
    [OWNER(ownerid)]
    [RECATALOG|NORECATALOG]
    [TO(date)|FOR(days)])
  [CATALOG(catname)]
   

DEFINE can be abbreviated: DEF

A sequence of commands commonly used in a single job step includes DELETE––DEFINE––REPRO or DELETE––DEFINE––BLDINDEX. You can specify either a DD name or a data set name with these commands. When you refer to a DD name, however, allocation occurs at job step initiation. This could result in a job failure if a command such as REPRO follows a DELETE––DEFINE sequence that changes the location (volser) of the data set. A failure can occur with either SMS-managed or non-SMS-managed data sets.

DEFINE NONVSAM does not allocate space on the volume. To allocate the primary space on a volume for a new NONVSAM data set, create the data set using a JCL DD statement specifying DISP=NEW.

To avoid potential failures with a modal command sequence in your IDCAMS job:
  • Specify the data set name instead of the DD name; or
  • Use a separate job step to perform any sequence of commands (for example, REPRO, IMPORT, BLDINDEX, PRINT, or EXAMINE) that follow a DEFINE command.
Restrictions:
  1. You cannot rename a non-VSAM data set that contains an indirect volume serial number.
  2. You cannot use %SYS conversion for any non-VSAM data set that contains an indirect volume serial number.
  3. The program or function that deletes and re-catalogs non-VSAM data sets that contain indirect volume serial numbers cannot re-catalog them with indirect volume serial numbers.

For information on generation data group wrapping rules, see z/OS MVS JCL Reference.