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.
- 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.
- You cannot rename a non-VSAM data set that contains an indirect volume serial number.
- You cannot use %SYS conversion for any non-VSAM data set that contains an indirect volume serial number.
- 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.