Unload DEDB and use FABEUR6 and FABEUR7 utilities to change segment data then reload DEDB


This scenario demonstrates an alternate method for changing segment data by utilizing the Fast Path/EP FABEUR7 (read unload file) and FABEUR6 (create unload file) user application program extensions.

As FABEUR7 and FABEUR6 read and write each record, the record is expanded and then recompressed to conserve DASD space in the input and output unload files. For more information, see Fast Path/EP products reference information.

JCL to unload DEDB and use FABEUR6 and FABEUR7 utilities to change segment data, then reload DEDB

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 ---> NEWACB DD is not required in a managed ACB environment instead the staging directory is used to refer the new control blocks.   07//PFPSAMP1 DD DISP=OLD,DSN=BMCPFP.PFPSAMP.PFPSAMP1
08//PFPSAMP2 DD DISP=OLD,DSN=BMCPFP.PFPSAMP.PFPSAMP2
09//PFPSAMP3 DD DISP=OLD,DSN=BMCPFP.PFPSAMP.PFPSAMP3
10//OUTUNLD  DD DSN=PFP.PFPSAMP1.UNLOAD,DISP=(,CATLG,DELETE),
11//            UNIT=SYSDA,SPACE=(CYL,(200,15),RLSE)
12//PFPSYSIN DD *
13  UNLOAD DBD=PFPSAMP,IAREA=ALL,
14      SDEP_PROCESS=LOGICAL,
15    OFILECTL OAREA=ALL,DDNAME=OUTUNLD
16/*
17//*******************************************************************
18//FABEUR67 EXEC PGM=FAB67,REGION=0M
19//STEPLIB  DD DISP=SHR,DSN=BMC.PFP.LOAD
20//         DD DISP=SHR,DSN=IMSVS.RESLIB
21//         DD DISP=SHR,DSN=YOUR.PGMLOAD
22//         DD DISP=SHR,DSN=BMC.DPK.LOAD
23//$$DPICDS DD DISP=SHR,DSN=PFP.DPK.DPICDS
24//$$DPITBL DD DISP=SHR,DSN=PFP.DPK.DPITBL
25//ACBLIB   DD DISP=SHR,DSN=IMSVS.ACBLIB   ---> In a managed ACB environment new control blocks is checked in the staging directory if not found, then the active directory is referred.
26//UR7DATA  DD DISP=SHR,DSN=PFP.PFPSAMP1.UNLOAD
27//SYSPRINT DD SYSOUT=*
28//UR7RPT   DD SYSOUT=*
29//UR7CTL   DD *
30     DLICOMP=EXP
31/*
32//DURD001O DD DSN=PFP.PFPSAMP1.UNLOAD.NEW,
33//            DISP=(,CATLG,DELETE),UNIT=SYSDA,
34//            SPACE=(CYL,(200,15),RLSE)
35//UR6RPT   DD SYSOUT=*,DCB=(LRECL=121,RECFM=FBA)
36//UR6FCTL  DD *
37 FILECTL=1,ALL
38 DLICOMP=CMP
39/*
40//*******************************************************************
41//* IDCAMS <--- IDCAMS delete/define of new area data sets
42//*******************************************************************
43//PFPRELD  EXEC PGM=PFPMAIN,REGION=0M
44//STEPLIB  DD DISP=SHR,DSN=BMC.PFP.LOAD
45//         DD DISP=SHR,DSN=IMSVS.RESLIB
46//IMSACB   DD DISP=SHR,DSN=IMSVS.ACBLIB
47//IAREA001 DD DISP=OLD,DSN=PFP.PFPSAMP1.UNLOAD.NEW
48//PFPSAMP1 DD DISP=OLD,DSN=BMCPFP.PFPSAMP.PFPSAMP1
49//PFPSAMP2 DD DISP=OLD,DSN=BMCPFP.PFPSAMP.PFPSAMP2
50//PFPSAMP3 DD DISP=OLD,DSN=BMCPFP.PFPSAMP.PFPSAMP3
51//PFPSYSIN DD *
52 RELOAD DBD=PFPSAMP,
53     IAREA=PFPSAMP1,
54     OAREA=ALL
55 IC STACK_NAME=AREASTCK,
56   UNIT=TAPE,DISP=(NEW,CATLG),
57      DSNAME='PFP.ICOPY.&DBD.&AREA(+1)'
/*

Line no.

Comments

01-04

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

05-06

The data set name from IMSACB and NEWACB is the same because the DBD definition has not changed.

07-09

Define all input area data sets.

10-11

The unload output for all areas is written to the DD name OUTUNLD.

12

PFPSYSIN DD for Fast Path/EP control statements.

13

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

14

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

15

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

16,17

End of UNLOAD control card input. Break line as visual indicator of start of user-written program (FAB67).

18

User-written program (FAB67) that is executed to make changes to the data in the unloaded segments. The program utilizes the FABEUR7 extension to read the HDUNLOAD-format unload file and the FABEUR6 extension to write a new HDUNLOAD-format file with the modified segments. The program will make the following changes: All Julian dates in the segments are converted from 5-byte character fields (YYDDD) to 5-byte packed fields with 4-digit years (00YYYYDDDF). Also, several fields are initialized to zeroes depending on specific criteria.

19-20

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

21

Specifies the user-written program load library (FAB67, in this case).

22-24

DD statements that define data sets for the BMC AMI Data Packer for IMS product. These data sets are required because data is being changed in the compressed portion of the segments, and expansion and compression has been requested with the DLICOMP keyword.

25

The ACBLIB DD is required for the FABEUR6 extension in order to correctly write the new unload file. In a managed ACB environment, the active or staging directory is referred to instead of the ACB library.

26

Specifies the unload input data set.

27

Message output DD.

28

Output for FABEUR7 processing report is written to this DD.

29

UR7CTL DD for FABEUR7 control statement.

30

Expand the input file record prior to passing to application processing.

31

End of FABEUR7 control card input.

32-34

Output data set for the new unload file, as written by the FABEUR6 utility.

35

Output for FABEUR6 processing report is written to this DD.

36

UR6FCTL DD for FABEUR6 control statement.

37

Specifies that unload records for all areas are to be written to one default HDUNLOAD-format output file that is specified by DURD001O DD statement.

38

Compress output segments prior to writing to the new unload file.

39

End of FABEUR6 control card input.

40-42

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

43-45

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

46

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

47

Identifies the new input unload file.

48-50

Identifies output area data sets.

51

PFPSYSIN DD for Fast Path/EP control statements.

52

Defines the DEDB name to be reloaded. If you have a license for the Fast Path Analyzer/EP product, quick (checksum) pointer validation is performed on all areas by default.

53

IAREA specifies the first area name that correlates to the IAREA001 DD statement, and uses the specified unload file.

54

All areas are reloaded.

55-57

An image copy data set is created for each area in the database. These data sets are stacked onto tape.

 

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