PROC control statement

The PROC control statement specifies the type of processing to be done by IMS™ Index Builder.

This statement is required. If you specify PROC statements to build both a primary and a secondary index database in the same job, the statements must apply to the same database.

The following diagrams show the format of the PROC statement for specifying secondary, primary, ILDS, or all index databases (respectively).

Read syntax diagramSkip visual syntax diagram
>>-PROC--BLD_PRIMARY--,--database------------------------------><

Read syntax diagramSkip visual syntax diagram
                                     .-,ALL------.  .-,LOAD---.   
>>-PROC--BLD_SECONDARY--,--database--+-----------+--+---------+-><
                                     '-,SELECTED-'  '-,UPDATE-'   

Read syntax diagramSkip visual syntax diagram
>>-PROC--BLD_ILDS--,--database---------------------------------><

Read syntax diagramSkip visual syntax diagram
                               .-,LOAD---.   
>>-PROC--BLD_ALL--,--database--+---------+---------------------><
                               '-,UPDATE-'   

PROC
Specifies that this is a PROC statement.
BLD_PRIMARY
Specifies that the primary index of the HIDAM and PHIDAM databases must be built. You can specify only one PROC BLD_PRIMARY statement per job.
BLD_SECONDARY
Specifies that secondary index databases must be built. If the prime database does not have secondary indexes, an error is indicated, and IMS Index Builder stops at the initialization phase.

If you specify INPUT IBSCAN, you can specify only one PROC BLD_SECONDARY statement per job.

If you specify INPUT DFSURWF1 or INPUT DFSURIDX, you can specify one or more PROC BLD_SECONDARY statements per job.

ALL
Start of changeBuilds all secondary indexes of the database. If you specify ALL, any INDEX statements that are associated with the database named in the PROC statement are ignored. ALL is used as the default. End of change
SELECTED
Builds the secondary indexes that are selected by the INDEX statement.
Start of changeLOADEnd of change
Start of changeBuilds the secondary index in load mode. IMS Index Builder builds and loads all the secondary index records. LOAD is used as the default.End of change
Start of changeUPDATEEnd of change
Start of changeUpdates the PSINDEX in update mode. IMS Index Builder builds and loads only the PSINDEX records that point to certain HALDB partitions.

Use this mode when HALDB partitions are selectively reorganized. The VSAM data sets of the PSINDEX must fully contain index records for all the HALDB partitions before the reorganization.

IMS Index Builder determines the target HALDB partitions from the following statements:
  • If INPUT IBSCAN statement is specified, IMS Index Builder refers to the PARTNAME statement. If no PARTNAME statement is specified, IMS Index Builder processes the PSINDEX records for all the HALDB partitions.
    PROC     BLD_SECONDARY,HMPORDP1,ALL,UPDATE
    INPUT    IBSCAN
    PARTNAME HORDP1B,HORDP1C
  • If INPUT HPSRWFP statement is specified, IMS Index Builder dynamically allocates all the WFP files for the HALDB partitions that IMS High Performance Load reloaded and processes the records found in the WFP files.
    PROC     BLD_SECONDARY,HMPORDP1,ALL,UPDATE
    INPUT    HPSRWFP
    WFPHLQ   IMSTOOLS.WORK.HMPORDP1
Usage notes for update mode:
  • If the DDEFPDS DD statement is specified, the IDCAMS commands for PSINDEX are not performed.
  • CI or CA splits in VSAM data sets remain.
  • If IMS Index Builder cannot find an index record that should be updated, IMS Index Builder inserts a new index record.
End of change
BLD_ILDS
Specifies that the indirect list data sets be built. You can specify only one PROC BLD_ILDS statement per job.
BLD_ALL
Specifies that the primary index, secondary indexes, and ILDS be built. You can specify only one PROC BLD_ALL statement per job. It will build only indexes appropriate to the database you specified.

Start of changeThe UPDATE option can be specified. This option is applied only when building PSINDEX. End of change

database
Is the DBD name of the IMS physical database whose primary, secondary, or ILDS index must be built.