bdfd1m0tDatabase Administration

DSECT and DBDEF for the Seat File

Macro IR23DF is the DSECT for the seat file. The following example shows the DSECT and the DBDEF for this index file.

DSECT

Figure 23 shows the DSECT used to define the seat file.

Figure 23. DSECT to Define the Seat File

         MACRO
&LABEL   IR23DF &REG=,&SUFFIX=,&ORG=,&ACPDB=
.*
*********************************************************************
*                                                                   *
*   IR23DF      SEAT FILE (INDEX)                                   *
*                    DATE: 11APR91                                  *
*                                                                   *
*********************************************************************
         GBLB  &IR23DF1      1ST TIME CALLED SWITCH
         COPY  DBGBL         COPY TPFDF GLOBAL DEFINITIONS
         COPY  DBLCL         COPY TPFDF LOCAL DEFINITIONS
&NAM     SETC  'IR23DF       '    DOC NAME
&DATE    SETC  '08FEB91'     UPDATE DATE
&VERS    SETC  '00'          VERSION NUMBER
.********************************************************************
.*      DEFINITIONS FOR TPFDF                                       *
.********************************************************************
&SW00WID SETC  '23'          FILE ID
&SW00WRS SETC  'L4'          BLOCK SIZE
&SW00RBV SETC  '#TPFDBFF'    FILE ALGORITHM
&SW02FIL SETC  'IR23DF'      FILE DSECT NAME
&SW00OP1 SETC  '00000000'    OPT BYTE1
&SW00OP2 SETC  '00000110'    OPT BYTE2
&SW00OP3 SETC  '00000000'    OPT BYTE3
&SW00TQK SETC  '15'          HIGHEST TLREC
.********************************************************************
         COPY  DBCOD         COPY DSECT DEFINITION FUNCTIONS
         AIF   ('&IR23DF1' EQ '1').NOT1ST
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*                                                                   *
*  DESCRIPTION OF IR23DF                                            *
*                                                                   *
*  1. DATA AREA NAME                                                *
*                                                                   *
*     SEAT FILE                                                     *
*                                                                   *
*  2. MEMBER NAME                                                   *
*                                                                   *
*     IR23DF                                                        *
*                                                                   *
*  3. INVOCATION                                                    *
*                                                                   *
*     IR23DF REG=RGD,                                               *
*           (SUFFIX=X),                                             *
*           (ORG=IR23HDR)                                           *
*                                                                   *
*  4. GENERAL CONTENTS AND USAGE                                    *
*                                                                   *
*  4.1. ROLE IN SYSTEM                                              *
*                                                                   *
*       CONTAINS THE PASSENGER NAMES, NUMBERS, CLASSES AND SEAT     *
*       NUMBERS FOR A PARTICULAR FLIGHT.                            *
*                                                                   *
*  4.2. DATA LAYOUT                                                 *
*                                                                   *
*       STANDARD TPFDF FILE HEADER                                  *
*                                                                   *
*       ABV.: CREATOR (C), USERS (U), AND PURGER (P) OF EACH LREC.  *
*                                                                   *
*       PRIMARY KEY     USAGE                                       *
*          80           SEAT ALLOCATION LOGICAL RECORD              *
*                                                                   *
*  4.3. PROGRAMMING ASPECTS                                         *
*                                                                   *
*  4.3.1. PROGRAMMING RESTRICTIONS                                  *
*                                                                   *
*         NONE.                                                     *
*                                                                   *
*  4.3.2. PROGRAMMING TECHNIQUES AND USAGE                          *
*                                                                   *
*         STANDARD TPFDF LREC LOCATION TECHNIQUE USING:             *
*         - PRIMARY KEY                                             *
*                                                                   *
*  5. STORAGE FACTORS                                               *
*                                                                   *
*  5.1. BLOCK SIZE                                                  *
*                                                                   *
*       DEFINED IN DBDEF.                                           *
*                                                                   *
*  5.2. FILE REQUIREMENTS                                           *
*                                                                   *
*       POOL FILES (VARIES WITH NUMBER OF FLIGHTS AND AIRCRAFT TYPE)*
*                                                                   *
*  5.3. ACCESSING SCHEME                                            *
*                                                                   *
*       (DESCRIBE ALGORITHM, PATHS, UP/DOWN ORGANIZATION AND        *
*       CROSS RELATION OF LRECS ETC)                                *
*       THIS FILE IS ACCESSED BY PATH=3 AND PATH=4 METHODS OF FILE  *
*       IR24DF (PASSENGER FILE).                                    *
*                                                                   *
*  6. DATA CONTROL                                                  *
*                                                                   *
*  6.1. CHAINING AND OVERFLOW                                       *
*                                                                   *
*       STANDARD TPFDF CHAINING.                                    *
*                                                                   *
*  6.2. DATA FIELD ADDRESSING                                       *
*                                                                   *
*       OFFSET WITHIN STANDARD TPFDF LREC.                          *
*                                                                   *
*  7. IMPLEMENTATION REQUIREMENTS                                   *
*                                                                   *
*  8. REFERENCES                                                    *
*                                                                   *
*  9. COMMENTS                                                      *
*                                                                   *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
         EJECT
         AIF   ('&SW00WRS' EQ '').CHECKID
#IR23DFS EQU   &SW00WRS      BLOCK SIZE
.CHECKID AIF   ('&SW00WID' EQ '').NOT1ST
#IR23DFI EQU   C'&SW00WID'   FILE ID
.NOT1ST  ANOP
*********************************************************************
*        STANDARD TPFDF HEADER                                      *
*********************************************************************
IR23HDR&CG1 DS  CL16         STANDARD FILE HEADER
            DS  CL10         STANDARD TPFDF HEADER
IR23VAR&CG1 EQU *            START OF VARIABLE USER-AREA
IR23HDL&CG1 EQU IR23VAR&CG1-IR23HDR&CG1  HEADER-LENGTH UP TO IR23VAR
            ORG IR23HDR&CG1
IR23REC&CG1 DS  0CL1         1ST RECORD START (1=VARIABLE,ELSE SIZE)
IR23SIZ&CG1 DS  H            SIZE OF LOGICAL RECORD
IR23KEY&CG1 DS  X            LOGICAL RECORD IDENTIFIER
         AIF   ('&IR23DF1' EQ '1').KEYEQ  GO IF NOT FIRST ISSUE
*********************************************************************
*        EQUATE OF LOGICAL RECORD KEYS (KEY AND LENGTH)             *
*********************************************************************
.*                    USE KEY #IR23K80 IF ONLY ONE KEY
.*                    #IR23K00-#IR23K0F ARE RESERVED FOR TPFDF
.*                    #IR23KF0-#IR23KFF ARE RESERVED FOR TPFDF
#IR23K80 EQU   X'80'         LOGICAL RECORD KEY X'80'
#IR23L80 EQU   IR23E80&CG1-IR23REC&CG1  LENGTH OF LOGICAL RECORD X'80'
&IR23DF1 SETB  (1)           INDICATE 1ST TIME THROUGH
.KEYEQ   ANOP
IR23ORG&CG1 EQU *            START VARIABLE DATA PER LREC
.*
*********************************************************************
*        DESCRIPTION OF  FIRST LOGICAL RECORD TYPE                  *
*********************************************************************
IR23FAD&CG1 DS  0AL4         INDEX FILE ADDRESS
IR23FA1&CG1 DS  AL4
IR23RCC&CG1 DS  0AL1         INDEX RECORD CODE CHECK
IR23RC1&CG1 DS  AL1
IR23A80&CG1 DS  0CL38        USER DEFINED AREA
IR23PNA&CG1 DS  CL25         PASSENGER NAME
IR23PNN&CG1 DS  CL8          PASSENGER NUMBER
IR23SNB&CG1 DS  XL2          SEAT NUMBER
IR23SCL&CG1 DS  CL1          SEAT CLASS
IR23E80&CG1 EQU *            END OF LOGICAL RECORD WITH KEY = X'80'
.*
         ORG IR23ORG&CG1
*********************************************************************
*        ALGORITHM DESCRIPTION                                      *
*********************************************************************
         ORG IR23REC&CG1
IR23@2BEG&CG1 EQU *             PATH 2 DESCRIPTION
IR23@2FLN&CG1 DS  CL7
IR23@2END&CG1 EQU *
         ORG IR23REC&CG1
IR23@3BEG&CG1 EQU *             PATH 3 DESCRIPTION
IR23@3END&CG1 EQU *
.*********************************************************************
         AIF   (&BG1).MACEXIT          GO IF INTERNAL USAGE
&SYSECT  CSECT
         AIF   ('&REG' EQ '').MACEXIT  GO IF REG= NOT SPECIFIED
.GEUSING ANOP                          GENERATE USING
         USING &DSN,&REG
.MACEXIT ANOP
         SPACE 1
         MEND

DBDEF

Figure 24 shows the position of IR23DF in the file structure.

Figure 24. Position of IR23DF in the File Structure


         DBDEF FILE=IR23DF,                                     -
               (ITK=#IR22K80,ID2=,                              -
               INDEX=(IR24DF,0)),                               -
               (IID=IR22DF,PTH=2,IKY=80,IPA=7,ILA=2,IPK=0,ILK=9,-
               KEY1=(PKY=#IR22K80,UP),                          -
               KEY2=(R=IR22FL,S=0,UP)),                         -
               (IID=IR22DF,PTH=3,IKY=80,                        -
               KEY1=(PKY=#IR22K80,UP),                          -
               KEY2=(R=IR22FLN,S=0,UP))