Unload and reload a DEDB and add (build) associated indexes during reload


The functionality in this scenario requires that you have a license for the BMC AMI Fast Path Indexer for IMS product. Two indexes are added to the PFPSAMP database. A separate IX subcommand is specified for each index to be built.


Important

The new ACB with the DBD changes must be generated before executing the UNLOAD control statement.

JCL to unload and reload a DEDB and add (build) associated indexes during reload

01 //PFPUNLD  EXEC PGM=PFPMAIN,REGION=0M
02 //STEPLIB  DD DISP=SHR,DSN=BMC.PFP.LOAD
03 //         DD DISP=SHR,DSN=IMSVS.RESLIB
04 //         DD DISP=SHR,DSN=IMSVS.DFSMDA
05 //IMSACB   DD DISP=SHR,DSN=IMSVS.ACBLIB    ---> IMSACB DD is not required in a managed ACB environment instead the active directory is used to refer the current control blocks.  
06 //NEWACB   DD DISP=SHR,DSN=IMSVS.ACBLIB.NEW   ---> NEWACB DD is not required in a managed ACB environment instead the staging directory is used to refer the new control blocks.  
07 //OUTUNLD  DD DISP=(,CATLG,DELETE),
08 //            DSN=PFP.PFPSAMP.UNLOAD,
09 //            UNIT=SYSDA,
10 //            SPACE=(CYL,(125,5),RLSE)
11 //PFPSYSIN DD *
12   UNLOAD DBD=PFPSAMP,IAREA=ALL,
13       
SDEP_PROCESS=LOGICAL,
14       
INPUT_DSN_MASK='BMCPFP.&DBD.&AREA'
15     
OFILECTL OAREA=ALL,DDNAME=OUTUNLD
16 /*
17 //*******************************************************************
18 //*  
IDCAMS areas and indexes delete/define
19 //*******************************************************************
20 //PFPRELD  EXEC PGM=PFPMAIN,REGION=0M
21 //STEPLIB  DD DISP=SHR,DSN=BMC.PFP.LOAD
22 //         DD DISP=SHR,DSN=IMSVS.RESLIB
23 //         DD DISP=SHR,DSN=IMSVS.DFSMDA
24 //         DD DISP=SHR,DSN=BMC.DPK.LOAD
25 //$$DPICDS DD DISP=SHR,DSN=PFP.DPK.DPICDS
26 //$$DPITBL DD DISP=SHR,DSN=PFP.DPK.DPITBL
27 //IMSACB   DD DISP=SHR,DSN=IMSVS.ACBLIB.NEW ---> In a managed ACB environment new control blocks is checked in the staging directory if not found, then the active directory is referred.  
28 //PFXLIB   DD DISP=SHR,DSN=IMSVS.PFXLIB
29 //IAREA001 DD DISP=SHR,DSN=PFP.PFPSAMP1.UNLOAD
30 //PFPINDX1 DD DISP=OLD,DSN=BMCPFP.PFPSAMP.PFPINDX1
31 //PFPINDX2 DD DISP=OLD,DSN=BMCPFP.PFPSAMP.PFPINDX2
32 //PFPSYSIN DD *
33   RELOAD DBD=PFPSAMP,IAREA=PFPSAMP1,OAREA=ALL,
34        OUTPUT_DSN_MASK='BMCPFP.&DBD.&AREA'
35     
IC DSNAME='PFP.ICOPY.&DBD.&AREA(+1)',
36         SPACE=(CYL,125,5,RLSE),
37        UNIT=DASD,DISP=(,CATLG)
38     IX
INDEX=PFPINDX1
39     IX INDEX=PFPINDX2
 /*


Line no.

Comments

01-04

EXEC and STEPLIB DD statements for Fast Path/EP offline execution.

05

The DBD from the IMSACB DD statement is used for input areas.

06

The DBD from the NEWACB DD statement is used for output areas. Two indexes are added to the SEGA statement, as indicated by the PFXCHILD and PFXXDFLD statements.

The following changes are made in the DBD:

SEGM NAME=SEGA
PFXCHILD NAME=(XSEG1,PFPINDX1),...
PFXXDFLD NAME=XFLD,SRCH=SEGAKEY,...
PFXCHILD NAME=(XSEG2,PFPINDX2),...
PFXXDFLD NAME=XFLD,SRCH=FLD01,SUBSEQ=SEGAKEY,...

07-10

Defines output unload file for all areas.

11

PFPSYSIN DD for Fast Path/EP control statements.

12

Defines DEBD name for UNLOAD processing. All areas are unloaded.

13

Because the DEDB contains SDEPs, SDEP processing must be specified.

14

Input areas are dynamically allocated using the INPUT_DSN_MASK keyword.

15

All output areas are written to one unload file, which is specified by the OUTUNLD DD statement.

16

End of UNLOAD control card input.

17-19

Comment to indicate that the IDCAMS delete/define for the new areas and indexes to be reloaded must be performed.

20-23

EXEC and STEPLIB DD statements for Fast Path/EP offline execution.

24-26

DD statements that define data sets for the BMC AMI Data Packer for IMS product. These data sets are required because the index PFPINDX2 is built using the SRCH field FLD01, which is part of a compressed segment. The compressed segment must be expanded internally before building the index.

27

The DBD from the IMSACB DD statement is used to define the areas being reloaded.

28

PFXLIB DD refers to the index registration library.

29

Identifies input unload file.

30

38

Specifies output index allocation and build for PFPINDX1.

31

39

Specifies output index allocation and build for PFPINDX2.

32

PFPSYSIN DD for Fast Path/EP control statements.

33

Defines the DEDB name to be reloaded. IAREA specifies the first area name that correlates to the IAREA001 DD statement, and uses the specified unload file. All areas are reloaded. If you have a license for the Fast Path Analyzer/EP product, quick (checksum) pointer validation is performed on all areas by default.

34

Output areas are dynamically allocated using the substitution variables in the OUTPUT_DSN_MASK for the area data set names.

35-37

Image copies are taken of the reloaded areas. A new GDG image copy data set is cataloged to DASD.

38

Build index database PFPINDX1.

39

Build index database PFPINDX2. The SRCH field FLD01 is part of the compressed data for segment SEGA. Segment SEGA is internally expanded to ensure that the index PFPINDX2 is built with expanded data.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*