Determining if Ddname or Dsname is Allocated (Entry Code X’00’)

Build the DAIR parameter block shown in Table 1 to request that DAIR determine whether the specified dsname or ddname is allocated. Use the IKJDAP00 mapping macro, which is provided in SYS1.MACLIB, to map this DAIR parameter block.

Table 1. DAIR parameter block for entry code X’00’
Number of bytes Field name Contents or meaning
2 DA00CD Entry code X'0000'
2 DA00FLG A flag field set by DAIR before returning to the calling routine. The flags have the following meaning:
Byte 1:
0000 ....
Reserved. Set to zero.
.... 1...
Dsname or ddname is permanently allocated.
.... .1..
Ddname is a DYNAM.
.... ..1.
The dsname is currently allocated.
.... ...1
The ddname is currently allocated to the terminal.
Byte 2:
0000 0000
Reserved. Set to zero.
4 DA00PDSN Place in this field the address of the dsname buffer. The dsname buffer is a 46-byte field with the following format:

The first two bytes contain the length, in bytes of the dsname; the next 44 bytes contain the dsname, left justified, and padded to the right with blanks.

8 DA00DDN Contains the ddname for the requested data set. If a dsname is present, the DAIR service routine ignores the contents of this field.
1 DA00CTL A flag field:
00.0 0000
Reserved bits. Set to zero.
..1. ....
Prefix user ID to dsname.
2   Reserved. Set these bytes to zero.
1 DA00DSO A flag field. These flags describe the organization of the data. They are returned to the calling routine by the DAIR service routine.
1... ....
Indexed sequential organization
.1.. ....
Physical sequential organization
..1. ....
Direct organization
...1 ....
BTAM or QTAM line group
.... 1...
QTAM direct access message queue
.... .1..
QTAM problem program message queue
.... ..1.
Partitioned organization
.... ...1
Unmovable

After DAIR searches the data set entry for the fully-qualified data set name, register 15 contains one of the following DAIR return codes: 0, 4, or 52. See Return Codes from DAIR for return code meanings.