If you are using local or global shared resources, you can use
the SCHBFR macro to search a buffer.
The format of the SCHBFR macro follows.
The format of
the SCHBFR macro.Label |
Operand |
Parameters |
---|
[label]
|
SCHBFR
|
[BFRNO=abs expression] ,RPL=address
|
- label
- specifies 1 to 8 characters that provide a symbolic address
for the SCHBFR macro.
- BFRNO=abs expression
- specifies the number of the buffer VSAM is to search first.
The buffers preceding it in the buffer pool are not searched. The
default is 1; that is, the first buffer is searched first. (If the
number is coded in register notation, all registers except 1 and 13
may be used.)
The meaning of BFRNO depends on the total number
of buffers in the buffer pool and the number of control intervals
in the RBA range given by the RPL ARG parameter. This number is the
buffer number relative to the beginning of the RBA range if the total
number of buffers in the buffer pool is greater than (3/4 x number
of CIs in the RBA range)+3. Otherwise, it is the buffer number on
the physical buffer chain.
Restriction: When a data set is in a compressed format,
records might be compressed and each buffer might contain an unpredictable
amount of data.
- RPL=address
- specifies the address of the request parameter list defining
the SCHBFR request. These RPL parameters have meaning for SCHBFR:
- ACB=address
- AREA=address
- If a buffer is found, the area whose address is specified contains
its address (OPTCD=LOC) or a copy of its contents (OPTCD=MVE). With
compressed data sets, the contents of the buffer will not be in a
readable format. SCHBFR is not recommended for compressed data sets.
- AREALEN=abs expression
- At least 4 with OPTCD=LOC; at least control interval size with
OPTCD=MVE.
- ARG=address
- ARG gives the address of an 8-byte field containing the beginning
and ending control interval RBAs of the range to be searched on. For
compressed data sets, the RBA of another record or the address of
the next record in a buffer cannot be determined using the length
of the current record or the length of the record provided to VSAM.
For
extended addressing, the addressof a 16-byte field containing
the beginning and ending 8-byte RBAs of the range.
- ECB=address
- OPTCD=({ASY|SYN},{LOC|MVE})
- TRANSID=abs expression
All other RPL parameters are ignored. RPLs are assumed
not to be chained. Control interval access is assumed.
If the
ACB to which the RPL is related has MACRF=GSR, the program issuing
SCHBFR must be in supervisor state with protection key 0 to 7.