Skip Headers
Oracle® Database Gateway for IMS User's Guide
11g Release 1 (11.1)

Part Number B31053-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Master Index
Master Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

E Examples

This section contains the following topics:

E.1 COBOL Copybook Example

Figure E-1 shows a COBOL copybook that illustrates arrays and nested arrays.

Figure E-1 Metadata Example in COBOL

Example of OCCUR and DEPENDING ON clauses in COBOL

E.2 Hospital Database ExampleFoot 1 

The following are the full source files for the Hospital database example that is used in Hierarchical Modelling and Constructing DLI Commands from SQL Requests.

Example E-1 Hospital Cobol Copybook

01  HOSPITAL.
  03  HOSPNAME        PIC X(20).                
  03  HOSP-ADDRESS      PIC X(30).            
  03  HOSP-PHONE        PIC X(10).            
  03  ADMIN         PIC X(20).            
                                                
01  WARD.                                         
  03  WARDNO          PIC XX.               
  03  TOT-ROOMS       PIC XXX.              
  03  TOT-BEDS        PIC XXX.              
  03  BEDAVAIL        PIC XXX.              
  03  WARDTYPE        PIC X(20).            
                                                
01  PATIENT.                                      
  03  PATNAME         PIC X(20).            
  03  PATADDRESS        PIC X(30).            
  03  PAT-PHONE       PIC X(10).            
  03  BEDIDENT        PIC X(4).             
  03  DATEADMT        PIC X(6).             
  03  PREV-STAY-FLAG      PIC X.                
  03  PREV-HOSP       PIC X(20).            
  03  PREV-DATE       PIC X(4).             
  03  PREV-REASON       PIC X(30).            
                                                
01  SYMPTOM.                                      
  03  DIAGNOSE        PIC X(20).            
  03  SYMPDATE        PIC X(6).             
  03  PREV-TREAT-FLAG     PIC X.
  03  TREAT-DESC        PIC X(20).
  03  SYMP-DOCTOR       PIC X(20).
  03  SYMP-DOCT-PHONE     PIC X(10).
  
01  TREATMNT.
  03  TRTYPE          PIC X(20).
  03  TRDATE          PIC X(6).
  03  MEDICATION-TYPE     PIC X(20).
  03  DIET-COMMENT      PIC X(30).
  03  SURGERY-FLAG      PIC X.
  03  SURGERY-DATE      PIC X(6).
  03  SURGERY-COMMENT     PIC X(30).
 
01  DOCTOR.
  03  DOCTNAME        PIC X(20).
  03  DOCT-ADDRESS      PIC X(30).
  03  DOCT-PHONE        PIC X(10).
  03  SPECIALT        PIC X(20).
  
01  FACILITY.
  03  FACTYPE         PIC X(20).
  03  TOT-FACIL       PIC XXX.
  03  FACAVAIL        PIC XXX.

Example E-2 Hospital DBD

PRINT NOGEN
     DBD NAME=HOSPDBD,ACCESS=HDAM,RMNAME=(DFSHDC40,40,100)
     DATASET DD1=PRIME,DEVICE=3390
 
     SEGM NAME=HOSPITAL,PARENT=0,BYTES=80
       FIELD NAME=(HOSPNAME,SEQ,U),BYTES=20,START=1,TYPE=C
       FIELD NAME=ADMIN,BYTES=20,START=61,TYPE=C
 
     SEGM NAME=WARD,PARENT=HOSPITAL,BYTES=31
       FIELD NAME=(WARDNO,SEQ,U),BYTES=2,START=1,TYPE=C
       FIELD NAME=BEDAVAIL,BYTES=3,START=9,TYPE=C
       FIELD NAME=WARDTYPE,BYTES=20,START=12,TYPE=C
 
     SEGM NAME=PATIENT,PARENT=WARD,BYTES=125
       FIELD NAME=(BEDIDENT,SEQ,U),BYTES=4,START=61,TYPE=C
       FIELD NAME=PATNAME,BYTES=20,START=1,TYPE=C
       FIELD NAME=DATEADMT,BYTES=6,START=65,TYPE=C
 
     SEGM NAME=SYMPTOM,PARENT=PATIENT,BYTES=77
       FIELD NAME=(SYMPDATE,SEQ),BYTES=6,START=21,TYPE=C
       FIELD NAME=DIAGNOSE,BYTES=20,START=1,TYPE=C
 
     SEGM NAME=TREATMNT,PARENT=PATIENT,BYTES=113
       FIELD NAME=(TRDATE,SEQ),BYTES=6,START=21,TYPE=C
       FIELD NAME=TRTYPE,BYTES=20,START=1,TYPE=C
 
     SEGM NAME=DOCTOR,PARENT=PATIENT,BYTES=80
       FIELD NAME=DOCTNAME,BYTES=20,START=1,TYPE=C
       FIELD NAME=SPECIALT,BYTES=20,START=61,TYPE=C
 
     SEGM NAME=FACILITY,PARENT=HOSPITAL,BYTES=26
       FIELD NAME=FACTYPE,BYTES=20,START=1,TYPE=C
       FIELD NAME=FACAVAIL,BYTES=3,START=24,TYPE=C
 
     DBDGEN
     FINISH
     END

Example E-3 Hospital PSB

PRINT NOGEN
  PCB TYPE=DB,DBDNAME=HOSPDBD,PROCOPT=AP,KEYLEN=32
*
  SENSEG NAME=HOSPITAL,PARENT=0
  SENSEG NAME=WARD,PARENT=HOSPITAL
  SENSEG NAME=PATIENT,PARENT=WARD
  SENSEG NAME=SYMPTOM,PARENT=PATIENT
  SENSEG NAME=TREATMNT,PARENT=PATIENT
  SENSEG NAME=DOCTOR,PARENT=PATIENT
  SENSEG NAME=FACILITY,PARENT=HOSPITAL
*
  PSBGEN LANG=COBOL,PSBNAME=HOSPPSB
  END


Footnote Legend

Footnote 1: Kapp, Dan and Leben, Joe: IMS Programming Techniques. Van Nostrand Reinhold Company Inc., New York, 1986.