EMPDB01, EMPDB02, and EMPDB03 are HIDAM databases that illustrate partitioning and concatenation of PCBs in the FOCPSB (see Chapter 3, Creating FOCUS Descriptions).
This section illustrates the following:
Each of the following sections describes one partition of the EMPDB database.
Database DBD:
PRINT NOGEN
DBD NAME=EMPDB01,ACCESS=(HIDAM,VSAM)
DATASET DD1=EMPDB01,DEVICE=3380,BLOCK=4096,SCAN=5
*
SEGM NAME=EMPINFO,PTR=H,PARENT=0,BYTES=212
FIELD NAME=(SSNALPHA,SEQ,U),BYTES=9,START=18,TYPE=C
LCHILD NAME=(SEGIX1,EMPDBIX1),PTR=INDX
FIELD NAME=SEQFIELD,BYTES=2,START=1,TYPE=P
FIELD NAME=REVSEQ,BYTES=6,START=3,TYPE=C
FIELD NAME=SSN,BYTES=3,START=15,TYPE=P
FIELD NAME=EMPID,BYTES=12,START=27,TYPE=C
FIELD NAME=LNAME,BYTES=12,START=39,TYPE=C
FIELD NAME=FNAME,BYTES=12,START=51,TYPE=C
FIELD NAME=ADMDATE,BYTES=8,START=72,TYPE=C
*
DBDGEN
FINISH
END
Index DBD:
PRINT NOGEN
DBD NAME=EMPDBIX1,ACCESS=INDEX
DATASET DD1=EMPDBIX1,DEVICE=3380
*
SEGM NAME=SEGIX1,PARENT=0,BYTES=9
FIELD NAME=(SSNIX,SEQ,U),BYTES=9,START=1
LCHILD NAME=(EMPINFO,EMPDB01),INDEX=SSNALPHA
DBDGEN
FINISH
END
Database DBD:
PRINT NOGEN
DBD NAME=EMPDB02,ACCESS=(HIDAM,VSAM)
DATASET DD1=EMPDB02,DEVICE=3380,BLOCK=4096,SCAN=5
*
SEGM NAME=EMPINFO,PTR=H,PARENT=0,BYTES=212
FIELD NAME=(SSNALPHA,SEQ,U),BYTES=9,START=18,TYPE=C
LCHILD NAME=(SEGIX2,EMPDBIX2),PTR=INDX
FIELD NAME=SEQFIELD,BYTES=2,START=1,TYPE=P
FIELD NAME=REVSEQ,BYTES=6,START=3,TYPE=C
FIELD NAME=SSN,BYTES=3,START=15,TYPE=P
FIELD NAME=EMPID,BYTES=12,START=27,TYPE=C
FIELD NAME=LNAME,BYTES=12,START=39,TYPE=C
FIELD NAME=FNAME,BYTES=12,START=51,TYPE=C
FIELD NAME=ADMDATE,BYTES=8,START=72,TYPE=C
*
DBDGEN
FINISH
END
Index DBD:
PRINT NOGEN
DBD NAME=EMPDBIX2,ACCESS=INDEX
DATASET DD1=EMPDBIX2,DEVICE=3380
*
SEGM NAME=SEGIX2,PARENT=0,BYTES=9
FIELD NAME=(SSNIX,SEQ,U),BYTES=9,START=1
LCHILD NAME=(EMPINFO,EMPDB02),INDEX=SSNALPHA
DBDGEN
FINISH
END
Database DBD:
PRINT NOGEN
DBD NAME=EMPDB03,ACCESS=(HIDAM,VSAM)
DATASET DD1=EMPDB03,DEVICE=3380,BLOCK=4096,SCAN=5
*
SEGM NAME=EMPINFO,PTR=H,PARENT=0,BYTES=212
FIELD NAME=(SSNALPHA,SEQ,U),BYTES=9,START=18,TYPE=C
LCHILD NAME=(SEGIX3,EMPDBIX3),PTR=INDX
FIELD NAME=SEQFIELD,BYTES=2,START=1,TYPE=P
FIELD NAME=REVSEQ,BYTES=6,START=3,TYPE=C
FIELD NAME=SSN,BYTES=3,START=15,TYPE=P
FIELD NAME=EMPID,BYTES=12,START=27,TYPE=C
FIELD NAME=LNAME,BYTES=12,START=39,TYPE=C
FIELD NAME=FNAME,BYTES=12,START=51,TYPE=C
FIELD NAME=ADMDATE,BYTES=8,START=72,TYPE=C
*
DBDGEN
FINISH
END
Index DBD:
PRINT NOGEN
DBD NAME=EMPDBIX3,ACCESS=INDEX
DATASET DD1=EMPDBIX3,DEVICE=3380
*
SEGM NAME=SEGIX3,PARENT=0,BYTES=9
FIELD NAME=(SSNIX,SEQ,U),BYTES=9,START=1
LCHILD NAME=(EMPINFO,EMPDB03),INDEX=SSNALPHA
DBDGEN
FINISH
END
PCB TYPE=TP,MODIFY=YES,EXPRESS=YES
PCB TYPE=TP,EXPRESS=NO,MODIFY=YES,SAMETRM=YES
PCB TYPE=DB,DBDNAME=EMPDB01,PROCOPT=GO,KEYLEN=9
SENSEG NAME=EMPINFO,PARENT=0
PCB TYPE=DB,DBDNAME=EMPDB02,PROCOPT=GO,KEYLEN=9
SENSEG NAME=EMPINFO,PARENT=0
PCB TYPE=DB,DBDNAME=EMPDB03,PROCOPT=GO,KEYLEN=9
SENSEG NAME=EMPINFO,PARENT=0
PSBGEN LANG=COBOL,PSBNAME=EMPPSBJ,CMPAT=YES
END
This PSB is member EMPPSBJ in the PSB dataset because PSBNAME=EMPPSBJ.
FOCPSB=EXTENDED,$
PCBNAME= , PCBTYPE=TERM,$
PCBNAME= , PCBTYPE=TERM,$
PCBNAME= , PCBTYPE=TERM,$
PCBNAME=EMPDB01, PCBTYPE=DB, LOWVALUE=000000001, HIGHVALUE=000001667,$
PCBNAME=EMPDB02, PCBTYPE=DB, LOWVALUE=000001668, HIGHVALUE=000003334,$
PCBNAME=EMPDB03, PCBTYPE=DB, LOWVALUE=000003335, HIGHVALUE=000005000,$
CONCATNAME=EMPDBJ, USE=EMPDB01/EMPDB02/EMPDB03, $
This FOCPSB is member EMPPSBJ in the FOCPSB dataset because it must have the same member name as its corresponding PSB.
The EMPDB01, EMPDB02, and EMPDB03 Master Files each correspond to a PCB for one individual partition of the database; the EMPDBJ Master File corresponds to the concatenation of the three partitions.
FILE=EMPDB01,SUFFIX=IMS,$
SEGNAME=EMPINFO,PARENT=,SEGTYPE=S1,$
FIELD=SEQFIELD ,ALIAS=SEQFIELD.IMS ,USAGE=P6 ,ACTUAL=P2 ,$
FIELD=REVSEQ ,ALIAS=REVSEQ.IMS ,USAGE=A6 ,ACTUAL=A6 ,$
FIELD=SALARY ,ALIAS= ,USAGE=P8 ,ACTUAL=P4 ,$
FIELD=OT_HR_PAY ,ALIAS= ,USAGE=P5 ,ACTUAL=P2 ,$
FIELD=SSN ,ALIAS=SSN.IMS ,USAGE=P9 ,ACTUAL=P3 ,$
FIELD=SSNALPHA ,ALIAS=SSNALPHA.KEY ,USAGE=A9 ,ACTUAL=A9 ,$
FIELD=EMPID ,ALIAS=EMPID.IMS ,USAGE=A12 ,ACTUAL=A12,$
FIELD=ELAST_NAME ,ALIAS=ELNAME.IMS ,USAGE=A12 ,ACTUAL=A12,$
FIELD=EFIRST_NAME ,ALIAS=EFNAME.IMS ,USAGE=A12 ,ACTUAL=A12,$
FIELD=DATE_OF_BIRTH ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=RACE ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=ADMIT_DATE ,ALIAS=ADMDATE.IMS ,USAGE=A08 ,ACTUAL=A08,$
FIELD=ADMIT_TYPE ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=DISPOSITION ,ALIAS= ,USAGE=A02 ,ACTUAL=A02,$
FIELD=TRANSFER_DATE ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=ALLERGY1 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=ALLERGY2 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=ALLERGY3 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=ALLERGY4 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=HOUSING ,ALIAS= ,USAGE=A03 ,ACTUAL=A03,$
FIELD=RPR ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=URIN ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=PRACTITIONAR ,ALIAS= ,USAGE=A02 ,ACTUAL=A02,$
FIELD=SHIFT ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=PATINET_ID ,ALIAS= ,USAGE=P12 ,ACTUAL=P4 ,$
FIELD=WHO_ADDED ,ALIAS= ,USAGE=A10 ,ACTUAL=A10,$
FIELD=DATE_ADDED ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=WHO_EDITED ,ALIAS= ,USAGE=A10 ,ACTUAL=A10,$
FIELD=DATE_EDITED ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=STATION_ID ,ALIAS= ,USAGE=A12 ,ACTUAL=A12,$
FIELD=DIABETIC ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=DIALYSIS ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
This Master File is member EMPDB01 in the Master File dataset because the first database PCB in the EMPPSBJ FOCPSB specifies PCBNAME=EMPDB01.
FILE=EMPDB02,SUFFIX=IMS,$
SEGNAME=EMPINFO,PARENT=,SEGTYPE=S1,$
FIELD=SEQFIELD ,ALIAS=SEQFIELD.IMS ,USAGE=P6 ,ACTUAL=P2 ,$
FIELD=REVSEQ ,ALIAS=REVSEQ.IMS ,USAGE=A6 ,ACTUAL=A6 ,$
FIELD=SALARY ,ALIAS= ,USAGE=P8 ,ACTUAL=P4 ,$
FIELD=OT_HR_PAY ,ALIAS= ,USAGE=P5 ,ACTUAL=P2 ,$
FIELD=SSN ,ALIAS=SSN.IMS ,USAGE=P9 ,ACTUAL=P3 ,$
FIELD=SSNALPHA ,ALIAS=SSNALPHA.KEY ,USAGE=A9 ,ACTUAL=A9 ,$
FIELD=EMPID ,ALIAS=EMPID.IMS ,USAGE=A12 ,ACTUAL=A12,$
FIELD=ELAST_NAME ,ALIAS=ELNAME.IMS ,USAGE=A12 ,ACTUAL=A12,$
FIELD=EFIRST_NAME ,ALIAS=EFNAME.IMS ,USAGE=A12 ,ACTUAL=A12,$
FIELD=DATE_OF_BIRTH ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=RACE ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=ADMIT_DATE ,ALIAS=ADMDATE.IMS ,USAGE=A08 ,ACTUAL=A08,$
FIELD=ADMIT_TYPE ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=DISPOSITION ,ALIAS= ,USAGE=A02 ,ACTUAL=A02,$
FIELD=TRANSFER_DATE ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=ALLERGY1 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=ALLERGY2 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=ALLERGY3 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=ALLERGY4 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=HOUSING ,ALIAS= ,USAGE=A03 ,ACTUAL=A03,$
FIELD=RPR ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=URIN ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=PRACTITIONAR ,ALIAS= ,USAGE=A02 ,ACTUAL=A02,$
FIELD=SHIFT ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=PATINET_ID ,ALIAS= ,USAGE=P12 ,ACTUAL=P4 ,$
FIELD=WHO_ADDED ,ALIAS= ,USAGE=A10 ,ACTUAL=A10,$
FIELD=DATE_ADDED ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=WHO_EDITED ,ALIAS= ,USAGE=A10 ,ACTUAL=A10,$
FIELD=DATE_EDITED ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=STATION_ID ,ALIAS= ,USAGE=A12 ,ACTUAL=A12,$
FIELD=DIABETIC ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=DIALYSIS ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
This Master File is member EMPDB02 in the Master File dataset because the second database PCB in the EMPPSBJ FOCPSB specifies PCBNAME=EMPDB02.
FILE=EMPDB03,SUFFIX=IMS,$
SEGNAME=EMPINFO,PARENT=,SEGTYPE=S1,$
FIELD=SEQFIELD ,ALIAS=SEQFIELD.IMS ,USAGE=P6 ,ACTUAL=P2 ,$
FIELD=REVSEQ ,ALIAS=REVSEQ.IMS ,USAGE=A6 ,ACTUAL=A6 ,$
FIELD=SALARY ,ALIAS= ,USAGE=P8 ,ACTUAL=P4 ,$
FIELD=OT_HR_PAY ,ALIAS= ,USAGE=P5 ,ACTUAL=P2 ,$
FIELD=SSN ,ALIAS=SSN.IMS ,USAGE=P9 ,ACTUAL=P3 ,$
FIELD=SSNALPHA ,ALIAS=SSNALPHA.KEY ,USAGE=A9 ,ACTUAL=A9 ,$
FIELD=EMPID ,ALIAS=EMPID.IMS ,USAGE=A12 ,ACTUAL=A12,$
FIELD=ELAST_NAME ,ALIAS=ELNAME.IMS ,USAGE=A12 ,ACTUAL=A12,$
FIELD=EFIRST_NAME ,ALIAS=EFNAME.IMS ,USAGE=A12 ,ACTUAL=A12,$
FIELD=DATE_OF_BIRTH ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=RACE ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=ADMIT_DATE ,ALIAS=ADMDATE.IMS ,USAGE=A08 ,ACTUAL=A08,$
FIELD=ADMIT_TYPE ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=DISPOSITION ,ALIAS= ,USAGE=A02 ,ACTUAL=A02,$
FIELD=TRANSFER_DATE ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=ALLERGY1 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=ALLERGY2 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=ALLERGY3 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=ALLERGY4 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=HOUSING ,ALIAS= ,USAGE=A03 ,ACTUAL=A03,$
FIELD=RPR ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=URIN ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=PRACTITIONAR ,ALIAS= ,USAGE=A02 ,ACTUAL=A02,$
FIELD=SHIFT ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=PATINET_ID ,ALIAS= ,USAGE=P12 ,ACTUAL=P4 ,$
FIELD=WHO_ADDED ,ALIAS= ,USAGE=A10 ,ACTUAL=A10,$
FIELD=DATE_ADDED ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=WHO_EDITED ,ALIAS= ,USAGE=A10 ,ACTUAL=A10,$
FIELD=DATE_EDITED ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=STATION_ID ,ALIAS= ,USAGE=A12 ,ACTUAL=A12,$
FIELD=DIABETIC ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=DIALYSIS ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
This Master File is member EMPDB03 in the Master File dataset because the third database PCB in the EMPPSBJ FOCPSB specifies PCBNAME=EMPDB03.
FILE=EMPDBJ,SUFFIX=IMS,$
SEGNAME=EMPINFO,PARENT=,SEGTYPE=S1,$
FIELD=SEQFIELD ,ALIAS=SEQFIELD.IMS ,USAGE=P6 ,ACTUAL=P2 ,$
FIELD=REVSEQ ,ALIAS=REVSEQ.IMS ,USAGE=A6 ,ACTUAL=A6 ,$
FIELD=SALARY ,ALIAS= ,USAGE=P8 ,ACTUAL=P4 ,$
FIELD=OT_HR_PAY ,ALIAS= ,USAGE=P5 ,ACTUAL=P2 ,$
FIELD=SSN ,ALIAS=SSN.IMS ,USAGE=P9 ,ACTUAL=P3 ,$
FIELD=SSNALPHA ,ALIAS=SSNALPHA.KEY ,USAGE=A9 ,ACTUAL=A9 ,$
FIELD=EMPID ,ALIAS=EMPID.IMS ,USAGE=A12 ,ACTUAL=A12,$
FIELD=ELAST_NAME ,ALIAS=ELNAME.IMS ,USAGE=A12 ,ACTUAL=A12,$
FIELD=EFIRST_NAME ,ALIAS=EFNAME.IMS ,USAGE=A12 ,ACTUAL=A12,$
FIELD=DATE_OF_BIRTH ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=RACE ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=ADMIT_DATE ,ALIAS=ADMDATE.IMS ,USAGE=A08 ,ACTUAL=A08,$
FIELD=ADMIT_TYPE ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=DISPOSITION ,ALIAS= ,USAGE=A02 ,ACTUAL=A02,$
FIELD=TRANSFER_DATE ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=ALLERGY1 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=ALLERGY2 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=ALLERGY3 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=ALLERGY4 ,ALIAS= ,USAGE=A15 ,ACTUAL=A15,$
FIELD=HOUSING ,ALIAS= ,USAGE=A03 ,ACTUAL=A03,$
FIELD=RPR ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=URIN ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=PRACTITIONAR ,ALIAS= ,USAGE=A02 ,ACTUAL=A02,$
FIELD=SHIFT ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=PATINET_ID ,ALIAS= ,USAGE=P12 ,ACTUAL=P4 ,$
FIELD=WHO_ADDED ,ALIAS= ,USAGE=A10 ,ACTUAL=A10,$
FIELD=DATE_ADDED ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=WHO_EDITED ,ALIAS= ,USAGE=A10 ,ACTUAL=A10,$
FIELD=DATE_EDITED ,ALIAS= ,USAGE=A08 ,ACTUAL=A08,$
FIELD=STATION_ID ,ALIAS= ,USAGE=A12 ,ACTUAL=A12,$
FIELD=DIABETIC ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
FIELD=DIALYSIS ,ALIAS= ,USAGE=A01 ,ACTUAL=A01,$
This Master File is member EMPDBJ in the Master File dataset because of the CONCATNAME=EMPDBJ attribute in the EMPPSBJ FOCPSB.
Information Builders |