Previous Topic: 5.1.3.1 VCCVCNTL--ICF/VSAM Catalog Scan Control

Next Topic: 5.1.3.3 VCCVVSAM--VSAM Catalog Scan

5.1.3.2 VCCVSCAN--ICF/VSAM Catalog Allocation and Routing


The VCCVSCAN subtask allocates, opens and closes VSAM/ICF
catalogs and VVDSs, maintains the CNQ, and routes control to
VCCVVSAM, VCCVBCS, or VCCVVDS, depending on the catalog type.
The following describes the logic of the VCCVSCAN subtask:

    o  Obtains a catalog entry from the CNQ.  If one cannot
       be found, VCCVSCAN waits to be posted by a VCCVSCAN
       subtask that has encountered a catalog or VVDS pointer
       during its scan.

    o  Issues SVC 26 (LOCATE) to have the catalog opened as a
       catalog by Catalog Management.

    o  Turns on the STEPCAT bit in the PCCB for the open
       catalog in order to eliminate the need to have
       STEPCATs to process catalogs as VSAM data sets.

    o  Allocates and opens catalogs or VVDSs as VSAM data
       sets.

    o  Determines the catalog type.  If it is a VSAM catalog,
       VCCVSCAN calls the VCCVVSAM module to process it.  If
       it is an ICF BCS, VCCVSCAN calls the VCCVBCS module to
       process it.  Otherwise, it calls the VCCVVDS module.

    o  Closes and deallocates the catalogs and VVDSs.

    o  Turns off the STEPCAT bit in the PCCB.

NOTE:  If a catalog or VVDS pointer has been found by
       VCCVVSAM (or VCCVBCS) it will branch to a service
       routine located in VCCVSCAN.  This routine will add
       the catalog or VVDS name to the CNQ for the volume in
       which it is located.  If any other VCCVSCAN subtasks
       are waiting for work, they will be posted so they may
       process the new entry.