24
IDC Mainframe Capability Get Homework/Assignment Done Homeworkping.com Homework Help https://www.homeworkping.com/ Research Paper help https://www.homeworkping.com/ Online Tutoring https://www.homeworkping.com/ click here for freelancing tutoring sites IMS Case Study Version 1.0 document.doc Page 1 of 24

205550926 ims-db-case-study

Embed Size (px)

Citation preview

Page 1: 205550926 ims-db-case-study

IDC Mainframe Capability

Get Homework/Assignment Done Homeworkping.comHomework Help https://www.homeworkping.com/

Research Paper helphttps://www.homeworkping.com/

Online Tutoringhttps://www.homeworkping.com/

click here for freelancing tutoring sites

IMS Case Study

Version 1.0

document.doc Page 1 of 20

Page 2: 205550926 ims-db-case-study

IDC Mainframe Capability Prepared By

IDC Mainframe Capability

document.doc Page 2 of 20

Page 3: 205550926 ims-db-case-study

IDC Mainframe Capability

Document History

IMS Case Study

S.No Description Date Pages Ver Prepared/Updated

By1 First Version 07-Jan-05 1.0 MF

Capability Team

document.doc Page 3 of 20

Page 4: 205550926 ims-db-case-study

IDC Mainframe Capability

TABLE OF CONTENT

1. INTRODUCTION..........................................................................................................................3

2. REQUIREMENTS.........................................................................................................................3

3. BROAD SYSTEM SPECIFICATION.........................................................................................3

4. FILES TO BE USED......................................................................................................................3

5. SEGMENTS TO BE USED………………………………………………………………………3

6. GUIDELINES.................................................................................................................................3

6.1. PROGRAMMING GUIDELINES................................................................................................36.2. OTHER GUIDELINES..............................................................................................................36.3. VALIDATION PROCESS...................................................................................................36.4 PRE-REQUIRED DATASETS.....................................................................................................3

7. NEW EMPLOYEE INSERTION MODULE..............................................................................3

8. EMPLOYEE MAINTENANCE MODULE................................................................................3

9. ENQUIRY MODULE....................................................................................................................3

APPENDIX 1............................................................................................................................................3

APPENDIX 2..........................................................................ERROR! BOOKMARK NOT DEFINED.

JCL TO COMPILE A COBOL/IMS PROGRAM...............................................................................3

JCL TO RUN COBOL/IMS PROGRAM.............................................................................................3

JCL TO GENERATE DBD..................................................ERROR! BOOKMARK NOT DEFINED.

JCL TO GENERATE PSB....................................................ERROR! BOOKMARK NOT DEFINED.

document.doc Page 4 of 20

Page 5: 205550926 ims-db-case-study

IDC Mainframe Capability

1. INTRODUCTIONPurpose of this case study is to provide hands on experience for trainees by covering most of the programming concepts in COBOL with IMS. This case study is designed in HR application domain.

2. REQUIREMENTSABC Corporation Ltd receives information from 3rd party after an applicant is job offered. The applicant will complete necessary details within the 3rd Party system and the data from third party will be passed to ABC Corporation on a daily basis. This data will be validated and loaded into ABC corp HR IMS database.

Data Captured and Passed By Third Party to ABC Corporation: The data that is being passed to ABC Corpcan be grouped into 3 main functional areas

Demographic data Direct Deposit data Education data

Develop a system incorporating the above features with COBOL/IMS programs

3. BROAD SYSTEM SPECIFICATION

Development will be done in Batch mode. There will be an input file which contains Demo data, direct deposit dta and education data.

The requirements will be coded in following three functions:

New Employee insert process – Validates the input data and creates a record for each employee in IMS database.

Employee maintenance – Handles updates / Deletes in database based on HR inputs

Enquiry Report – Prints the ad-hoc reports requested by HR

There will be three programs to be written.

<Program 1> to handle the functions of New Employee insert process. This will read records from the input employee master file, validates the records and if the record is valid it will be inserted into corresponding segments of IMS database. If the record is failed in the validation process the program will attach the error code and writes it into error file.

<Program 2> This program receives file from HR (HR transaction file) and updates/deletes the segments based on transaction type.

<Program 3> to handle the functions of Enquiry Report.

document.doc Page 5 of 20

Page 6: 205550926 ims-db-case-study

IDC Mainframe Capability

4. Files to be used

File Name Open Mode

Type Access Remarks

Employee Master File

Input Sequential Sequential Read

Transaction File Input Sequential Sequential Read

Error File Output Sequential Sequential Write

Report File Output Sequential Sequential Write

1. Layout of Employee Master File

File to have multiple record layouts Each layout specifies details of a each segment

The different record layouts are described below

1.1. Employee-Record

Specifies details for adding a new employee record. In this record, segment-type should be set to EP

Field Name Field Type Field LengthSegment-type Alphanumeric 02

Employee Number Alphanumeric 06Employee Name Alphanumeric 30

Employee date of birth Alphanumeric 08Employee SSN Alphanumeric 09

Employee Date of Joining

Alphanumeric 08

1.2. Compensation-Record

Specifies details for adding a compensation data of employee. In this record, segment-type should be set to CP

Field Name Field Type Field LengthSegment -type Alphanumeric 02

Designation Alphanumeric 02Gross Annual compensation

Alphanumeric 10

document.doc Page 6 of 20

Page 7: 205550926 ims-db-case-study

IDC Mainframe Capability

1.3. Bank Deposit Details- Record

Specifies details for adding a bank details of employee. In this record, segment-type should be set to BD

Field Name Field Type Field LengthSegment-type Alphanumeric 02

Account number Alphanumeric 10Account type Alphanumeric 01

Routing number Alphanumeric 10

1.4. Education Data –Record

Specifies details for adding a education details of employee. In this record, segment-type should be set to ED

Field Name Field Type Field LengthSegment-type Alphanumeric 02

Accomplishment Alphanumeric 10Date issued Alphanumeric 08

University code Alphanumeric 06University Name Alphanumeric 30

1.5. Emergency-Contact-Details-Record

Specifies details for adding a emergency contact details of employee. In this record, segment-type should be set to EC

Field Name Field Type Field LengthSegment-type Alphanumeric 02

Emergency contact name

Alphanumeric 30

Emergency contact number

Alphanumeric 10

1.6 Employee-Address-Record

Specifies details for adding employee address. In this record, segment-type should be set to AD.

Field Name Field Type Field LengthSegment-type Alphanumeric 02

Address1 Alphanumeric 30City Alphanumeric 10

State Alphanumeric 10PIN Alphanumeric 06

Phone number Alphanumeric 10

document.doc Page 7 of 20

Page 8: 205550926 ims-db-case-study

IDC Mainframe Capability 1.7 Monthly Salary Deposit Details Record

Specifies details of monthly salaray of employee. In this record, segment-type should be set to SD.

Field Name Field Type Field LengthSegment-type Alphanumeric 02

Month and year ex:Jan05

Alphanumeric 05

Amount deposited Alphanumeric 102. Layout of Transaction File

Field Name Field Type Field LengthTransaction type

‘R’ Replace‘D’ Delete

Alphanumeric 01

Employee Number Alphanumeric 06Segment type Alphanumeric 02

Segment record Alphanumeric 100

3. Layout of Error File

Field Name Field Type Field LengthError-number Alphanumeric 02Error-message Alphanumeric 78

4. Report File

Field Name Field Type Field LengthReport-Record Alphanumeric 80

document.doc Page 8 of 20

Page 9: 205550926 ims-db-case-study

IDC Mainframe Capability

5. Segments to be used / IMS Database

1. Structure of Employee Segment

Key: Employee number

*** EMPLOYEE SEGMENT DETAILS 05 EMPLOYEE-SEG. 10 EMPLNO PIC X(06). 10 EMPLNAME PIC X(30). 10 EMPLDOB PIC X(08). 10 EMPLSSN PIC X(08). 10 EMPLDOJ PIC X(04).

2. Structure of Compensation Details Segment

.Key:Designation*** COMPENSATION DETAILS *** 05 COMPDTL-SEG. 10 DESGNATN PIC X(02). 10 CTCGROSS PIC X(10).

3. Structure of Bank Deposit Details Segment:

Key:Account Number*** BANK SEGMENT DETAILS *** 05 BANKDTL-SEG. 10 ACCTNO PIC X(10). 10 ACCTTYPE PIC X(01). 10 ROUTNUBR PIC X(10).

4. Structure of Monthly Salary Details Segment:

Key: Salmonth(example JAN05)*** SALARAY SEGMENT DETAILS *** 05 SALDTLS-SEG. 10 SALMONTH PIC X(05). 10 AMTDEPTD PIC X(10).

5. Structure of Education Data Segment:

Key: none*** EDUCATION DATA SEGMENT DETAILS *** 05 EDUCDATA-SEG. 10 ACCPLMT PIC X(10). 10 DTISSUE PIC X(08). 10 UNVRCODE PIC X(06). 10 UNNAME PIC X(30).

6. Strcture of Emergency Contact Details Segment:

document.doc Page 9 of 20

Page 10: 205550926 ims-db-case-study

IDC Mainframe Capability

Key:none*** EMERGENCY CONTACT DETAILS *** 05 EMERDETL-SEG. 10 EMERNAME PIC X(30). 10 EMERNUMB PIC X(10).

7. Strcture of Address Details Segment:

Key:none*** ADDRESS SEGMENT DETAILS *** 05 ADDRESS-SEG. 10 ADDR1 PIC X(30). 10 CITY PIC X(10). 10 STATE PIC X(10). 10 PINCODE PIC X(06). 10 PHONENO PIC X(10).

IMS Database

6. Guidelines

6.1. Programming Guidelines

The entire processing is to be done in following modules

o New Employee insertion process

document.doc Page 10 of 20

Page 11: 205550926 ims-db-case-study

IDC Mainframe Capability o Employee maintenance processo Enquiry Report Generation

Check Successful opening of all files before processing

Check Empty input file condition

Check IMS return code after each IMS call.

IMS CODES that may be encountered during execution; For other IMS codes check literature.

bb(spaces) – The call was executed normally

II–Segment already exists in database

GB – The end of database was reached during sequestial retrieval

6.2. Other Guidelines

Create copybooks for all IMS segments Use the following PCB in COBOL program 05 PCB-EMPLOYEE-DB. 10 PCB-DBN-EMPDB PIC X(08). 10 PCB-LEV-EMPDB PIC X(02). 10 PCB-STC-EMPDB PIC X(02). 10 PCB-PRO-EMPDB PIC X(04). 10 PCB-RES-EMPDB PIC S9(5) COMP. 10 PCB-SGN-EMPDB PIC X(08). 10 PCB-LKF-EMPDB PIC S9(5) COMP. 10 PCB-NOS-EMPDB PIC S9(5) COMP. 10 PCB-KFB-EMPDB PIC X(23).

6.3. Validation Process Verify employee id not equal to spaces and also it contains numerics (if

not true - Error # 1) Verify employee name not equal to spaces (if not true - Error # 2) Verify date of birth not equal to spaces, is in a valid date format (if not

true – Error # 3) Verify SSN contains all numeric values (if not true – Error #4) Verify date of joining not equal to spaces, is in a valid date format (if not

true – Error # 5) Verify level not equal to spaces (if not true - Error # 6) Verify CTC contains all numerics (if not true - Error # 7) Verify Account number contains all numerics (if not true - Error # 8) Verify Account type not equal to spaces(if not true - Error # 9) Verify Routing number contains all numerics (if not true - Error # 10) Verify accomplishment not equal to spaces(if not true - Error # 11) Verify date issued is not equal to spaces and valid date format(if not true

- Error # 12) Verify university code is not equal to spaces (if not true - Error # 13) Verify university name not equal to spaces (if not true - Error # 14) Verify Address 1 is not equal to spaces (if not true – Error #15)

document.doc Page 11 of 20

Page 12: 205550926 ims-db-case-study

IDC Mainframe Capability Verify City is not equal to spaces (if not true – Error #16) Verify State is not equal to spaces (if not true – Error #17) Verify PIN is not equal to spaces (if not true – Error #18) Verify emer contact name not equal to spaces (if not true – Error #19) Verify emer contact number not equal to spaces (if not true – Error #20) Verify salmonth not equal to spaces (if not true – Error #21) Verify amount deposited contains all numerics (if not true – Error #22)

6.4. IMS Environment Details

Ims set up is existing in mainframe

6.5. Pre-required datasets

Create <userid>.PSBSRCE to store the PSB of the program. The attributes are Record Format = FB, Record Length = 80

Create <userid>.DBDSRCE to store the DBD of the program. The attributes are Record Format = FB, Record Length = 80

Create <userid>.COBOL to store COBOL-IMS programs. The attributes are Record Format = FB, Record Length = 80

Create <userid>.COPYLIB to store Copybooks if any. The attributes are Record Format = FB, Record Length = 80

Create <userid>.LOAD to store load modules. The attributes are Record Format = U, Record Length = 80

Create <userid>.PSBLIB to store PSB load modules. The attributes are Record Format = U, Record Length = 80

Create <userid>.DBDLIB to store DBD load modules. The attributes are Record Format = U, Record Length = 80

7. New Employee Insertion Module

This module will validate the records in employee master file, if validation process is thru then the segments will be inserted into IMS database. If validation process fails for particular employee then record will be written to error-file.

Note: The employee master file contains the data in the following format for every employeeEP(segment data)CP(segment data)BD(segment data)ED(segment data)EC(segment data)AD(segment data)SD(segment data)**(Indicates the end of data for that particular employee).

document.doc Page 12 of 20

Page 13: 205550926 ims-db-case-study

IDC Mainframe Capability

8. Employee maintenance Module

This module will replace/ delete the existing segments based on type Of transaction . If transaction type is “R” then it should replace the existing segment with new data.If transaction type is “D” then it should delete the existing segment.

9. Enquiry Module

Generates the ad-hoc reports based on requirement / request

document.doc Page 13 of 20

Page 14: 205550926 ims-db-case-study

IDC Mainframe Capability

APPENDIX 1

APPENDIX 2

JCL to Compile a COBOL/IMS Program

//P390B98C JOB (ACCT#,E05907),'PRASAD M', // MSGLEVEL=(1,1), // NOTIFY=&SYSUID //*------------------------------------------------------------------*//// SET MEMBER=PGMLOAD // SET SRCELIB=P390B98.IMSDB.PGMSRCE // SET NCALLIB=P390B98.IMSDB.NCALLIB // SET LOADLIB=P390B98.IMSDB.LOADLIB //*------------------------------------------------------------------*////* COMPILE AND LINK EDIT AND RUN A COBOL/IMS PROGRAM //*------------------------------------------------------------------*////COMPILE EXEC PGM=IGYCRCTL,REGION=2048K, // PARM='XREF,MAP,NOOFFSET,TRUNC(BIN),OPT,LIST,LIB' //SYSLIB DD DSN=P390B98.IMSDB.COPYLIB,DISP=SHR //SYSPRINT DD SYSOUT=* //SYSLIN DD DSN=&&SYSLIN,DISP=(MOD,PASS),SPACE=(TRK,(3,3)) //SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,(1,1)) //SYSUT2 DD UNIT=SYSDA,SPACE=(CYL,(1,1)) //SYSUT3 DD UNIT=SYSDA,SPACE=(CYL,(1,1)) //SYSUT4 DD UNIT=SYSDA,SPACE=(CYL,(1,1)) //SYSUT5 DD UNIT=SYSDA,SPACE=(CYL,(1,1)) //SYSUT6 DD UNIT=SYSDA,SPACE=(CYL,(1,1))

document.doc Page 14 of 20

Message No

Message

01 Invalid employee id02 Employee name is spaces03 Date of birth is invalid04 Invalid SSN 05 Date of joining is invalid06 Level is spaces07 In valid CTC 08 In valid account number09 Account type is spaces 10 Invalid Routing number11 Accomplishment is spaces12 Date issued is invalid13 University code is spaces14 University name is spaces15 Address is spaces16 City is spaces17 State is spaces18 Postal index number is spaces19 Emer contact name is spaces20 Emer contact number is spaces21 Salmonth is spaces22 Amount deposited is invalid

Page 15: 205550926 ims-db-case-study

IDC Mainframe Capability //SYSUT7 DD UNIT=SYSDA,SPACE=(CYL,(1,1)) //SYSIN DD DSN=&SRCELIB(&MEMBER),DISP=SHR //*------------------------------------------------------------------*////NCALLIB EXEC PGM=IEWL,PARM='LIST,XREF,NCAL,MAP,LET,REUS', // COND=(8,LT,COMPILE),REGION=0M //SYSLIB DD DSN=CEE.SCEELKED,DISP=SHR //RESLIB DD DSN=IMS710.SDFSRESL,DISP=SHR //SYSPRINT DD SYSOUT=* //SYSLIN DD DSN=&&SYSLIN,DISP=(MOD,PASS) // DD DDNAME=SYSIN //SYSLMOD DD DSN=&NCALLIB(&MEMBER), // DISP=SHR //SYSUT1 DD UNIT=SYSDA,SPACE=(TRK,(10,10)) //SYSIN DD DUMMY //*------------------------------------------------------------------*////LKED EXEC PGM=IEWL,PARM='LIST,XREF,MAP,LET,REUS', // COND=(8,LT,COMPILE),REGION=1024K //SYSLIB DD DSN=CEE.SCEELKED,DISP=SHR // DD DISP=SHR,DSN=IMS710.SDFSRESL // DD DISP=SHR,DSN=&NCALLIB //RESLIB DD DSN=IMS710.SDFSRESL,DISP=SHR //SYSPRINT DD SYSOUT=* //SYSLMOD DD DSN=&LOADLIB(&MEMBER),DISP=SHR //SYSUT1 DD UNIT=SYSDA,SPACE=(TRK,(10,10)) //SYSIN DD DUMMY //SYSLIN DD * INCLUDE SYSLIB(PGMLOAD) ENTRY DLITCBL NAME PGMLOAD(R) /*

JCL to run COBOL/IMS program

//P390B98S JOB NOTIFY=&SYSUID,MSGLEVEL=(1,1),TIME=(,2) //*------------------------------------------------------------------*//// SET MEMBER=PGMLOAD // SET PSB=PSB98LDP // SET LOADLIB=P390B98.IMSDB.LOADLIB //*------------------------------------------------------------------*////* WHAT ARE THE DIFF PARAMETERS IN DFSRRC00 //* WHAT IS IMS710.SDFSRESL?? //* WHAT IS IMS710.PROCLIB(DFSVSMDB)?? //*------------------------------------------------------------------*////* RECON IS USED TO KEEP INFORMATION ON LOGGING IE FOR EVERY INSERT //* UPDATE DELETE THOUGH THE LOG IS NOT WRITTEN ON THE RECON DATASETS //* IF WE DONT MENTION THE PARAMETER 'N',THEN THE RECON DATASETS ARE //* ACCESSED AND WHEN WE DONT HAVE PROPER ACCESS OR AUTHORITY WE GET //* ABEND U0826. //*------------------------------------------------------------------*////STEP1 EXEC PGM=DFSRRC00,REGION=962K,TIME=2,COND=(4,LT), // PARM=(DLI,&MEMBER,&PSB,,,,,,,,,,,N) //STEPLIB DD DSN=IMS710.SDFSRESL,DISP=SHR // DD DSN=&LOADLIB,DISP=SHR //EMPLDATA DD DISP=SHR,DSN=P390B98.T01.EMPLDATA //EMPLINDX DD DISP=SHR,DSN=P390B98.T01.INDEXFL //INFILE1 DD DISP=SHR,DSN=P390B98.INPUT.FILE //*OUTFILE1 DD DISP=SHR,DSN=P390B15.OUTPUT.REPORT

document.doc Page 15 of 20

Page 16: 205550926 ims-db-case-study

IDC Mainframe Capability //IMS DD DSN=P390B98.IMSDB.PSBLIB,DISP=SHR // DD DSN=P390B98.IMSDB.DBDLIB,DISP=SHR //*** THIS DATASET IS REQUIRED ONLY WHEN WE ARE PERFORMING DELETE/REPL //IEFRDER DD DSN=P390B98.IMSLOG,DISP=(,DELETE,DELETE), // DCB=(RECFM=VB,BLKSIZE=4096,LRECL=4092,BUFNO=2), // SPACE=(TRK,(5,5),RLSE) //PROCLIB DD DSN=IMS710.PROCLIB,DISP=SHR //SYSUDUMP DD SYSOUT=*, // DCB=(LRECL=121,RECFM=FBA,BLKSIZE=3025), // SPACE=(3025,(100,100),RLSE,,ROUND) //DFSRESLB DD DSN=IMS710.SDFSRESL,DISP=SHR //*DFSVSAMP DD DUMMY //DFSVSAMP DD DISP=SHR,DSN=IMS710.PROCLIB(DFSVSMDB) //SYSOUT DD SYSOUT=*

DBD SOURECE /JCL TO GENERATE DBD

DBD SOURCE

DBD NAME=EMPCADBD, C ACCESS=(HIDAM,OSAM) *********************************************************************** * DATASET GROUP NUMBER 1 *********************************************************************** DATASET DD1=EMPLDATA, C DEVICE=3390, C FRSPC=(90,0) *********************************************************************** * SEGMENT NUMBER 1 * *********************************************************************** SEGM NAME=EMPLOYEE, C PARENT=0, C BYTES=61 FIELD NAME=(EMPLNO,SEQ,U), C START=1, C BYTES=6, C TYPE=C FIELD NAME=(EMPLNAME), C START=7, C BYTES=30, C TYPE=C FIELD NAME=(EMPLDOB), C START=37, C BYTES=8, C TYPE=C FIELD NAME=(EMPLSSN), C START=45, C BYTES=9, C TYPE=C FIELD NAME=(EMPLDOJ), C START=54, C BYTES=8, C TYPE=C LCHILD NAME=(PINDXSEG,EMPCADBX), C PTR=INDX, C RULES=LAST

document.doc Page 16 of 20

Page 17: 205550926 ims-db-case-study

IDC Mainframe Capability *********************************************************************** * THE RULES CAN BE FIRST, LAST AND HERE. THIS IS PRIMARILY USED FOR * INSERT OPERATIONS WITH NON UNIQUE KEY. * RULES = LAST ==> INSERT AS THE LAST OCCURANCE FOR THE NON UNIQUE KEY * RULES =FIRST ==> INSERT AS THE FIRST OCCURANCE FOR THE NON UNIQUE KEY * RULES = HERE ==> INSERT AT THE CURRENT POSITION ESTABLISHED IN THE * DATABASE FOR THE CORRESPONDING NON UNIQUE KEY *********************************************************************** * SEGMENT NUMBER 2 * *********************************************************************** SEGM NAME=COMPDTL, C PARENT=EMPLOYEE, C BYTES=12 FIELD NAME=(DESGNATN,SEQ,U), C START=1, C BYTES=2, C TYPE=C FIELD NAME=(CTCGROSS), C START=3, C BYTES=10, C TYPE=C *********************************************************************** * SEGMENT NUMBER 3 * *********************************************************************** SEGM NAME=BANKDTL, C PARENT=COMPDTL, C BYTES=21 FIELD NAME=(ACCTNO,SEQ,U), C START=1, C BYTES=10, C TYPE=C FIELD NAME=(ACCTTYPE), C START=11, C BYTES=1, C TYPE=C FIELD NAME=(ROUTNUBR), C START=12, C BYTES=10, C TYPE=C *********************************************************************** * SEGMENT NUMBER 4 * *********************************************************************** SEGM NAME=SALDTLS, C PARENT=BANKDTL, C BYTES=15 FIELD NAME=(SALMONTH,SEQ,U), C START=1, C BYTES=5, C TYPE=C FIELD NAME=(AMTDEPTD), C START=6, C BYTES=10, C TYPE=C *********************************************************************** *********************************************************************** * SEGMENT NUMBER 5 * *********************************************************************** SEGM NAME=EDUCDATA, C PARENT=EMPLOYEE, C

document.doc Page 17 of 20

Page 18: 205550926 ims-db-case-study

IDC Mainframe Capability BYTES=54 FIELD NAME=(ACCPLMT), C START=1, C BYTES=10, C TYPE=C FIELD NAME=(DTISSUE), C START=11, C BYTES=8, C TYPE=C FIELD NAME=(UNVRCODE), C START=19, C BYTES=6, C TYPE=C FIELD NAME=(UNNAME), C START=25, C BYTES=30, C TYPE=C *********************************************************************** * SEGMENT NUMBER 6 * *********************************************************************** SEGM NAME=EMERDETL, C PARENT=EDUCDATA, C BYTES=40 FIELD NAME=(EMERNAME), C START=1, C BYTES=30, C TYPE=C FIELD NAME=(EMERNUMB), C START=31, C BYTES=10, C TYPE=C *********************************************************************** *********************************************************************** * SEGMENT NUMBER 7 * *********************************************************************** SEGM NAME=ADDRESS, C PARENT=EMPLOYEE, C BYTES=66 FIELD NAME=(ADDR1), C START=1, C BYTES=30, C TYPE=C FIELD NAME=(CITY), C START=31, C BYTES=10, C TYPE=C FIELD NAME=(STATE), C START=41, C BYTES=10, C TYPE=C FIELD NAME=(PINCODE), C START=51, C BYTES=6, C TYPE=C FIELD NAME=(PHONENO), C START=57, C BYTES=10, C TYPE=C ***********************************************************************

document.doc Page 18 of 20

Page 19: 205550926 ims-db-case-study

IDC Mainframe Capability DBDGEN FINISH END

//P390B98S JOB 'DBDGEN', // MSGCLASS=A,MSGLEVEL=(1,1),NOTIFY=&SYSUID //*------------------------------------------------------------------*//// SET DBDMBR=EMPCADBD // SET DBDSRC=P390B98.IMSDB.DBDSRCE // SET DBDLIB=P390B98.IMSDB.DBDLIB //*------------------------------------------------------------------*////C EXEC PGM=ASMA90,REGION=0M, // PARM=(OBJECT,NODECK,NODBCS, // 'SIZE(MAX,ABOVE)') //SYSLIB DD DSN=IMS710.SDFSMAC,DISP=SHR //SYSLIN DD UNIT=SYSDA,DISP=(,PASS), // SPACE=(80,(100,100),RLSE), // DCB=(BLKSIZE=80,RECFM=F,LRECL=80) //SYSPRINT DD SYSOUT=A,DCB=BLKSIZE=1089, // SPACE=(121,(300,300),RLSE,,ROUND) //SYSUT1 DD UNIT=SYSDA,DISP=(,DELETE), // SPACE=(CYL,(10,5)) //SYSIN DD DISP=SHR,DSN=&DBDSRC(&DBDMBR) //*---------------------------------------------------------------- //L EXEC PGM=IEWL,PARM='XREF,LIST', // COND=(0,LT,C),REGION=4M //SYSLIN DD DSN=*.C.SYSLIN,DISP=(OLD,DELETE) //SYSPRINT DD SYSOUT=A,DCB=BLKSIZE=1089, // SPACE=(121,(90,90),RLSE) //SYSLMOD DD DISP=SHR,DSN=&DBDLIB(&DBDMBR) //SYSUT1 DD UNIT=(SYSDA,SEP=(SYSLMOD,SYSLIN)), // SPACE=(1024,(100,10),RLSE),DISP=(,DELETE) //*----------------------------------------------------------------

PSB SOURCE /JCL TO GENERATE PSBPSB SOURCE*********************************************************************** * PCB NUMBER 1 DB NUMBER 1 *********************************************************************** PCB TYPE=DB, C DBDNAME=EMPCADBD, C KEYLEN=18, C PROCOPT=LS SENSEG NAME=EMPLOYEE, C PARENT=0 SENSEG NAME=COMPDTL, C PARENT=EMPLOYEE SENSEG NAME=BANKDTL, C PARENT=COMPDTL SENSEG NAME=SALDTLS, C PARENT=BANKDTL SENSEG NAME=EDUCDATA, C PARENT=EMPLOYEE SENSEG NAME=EMERDETL, C PARENT=EDUCDATA SENSEG NAME=ADDRESS, C PARENT=EMPLOYEE ***********************************************************************

document.doc Page 19 of 20

Page 20: 205550926 ims-db-case-study

IDC Mainframe Capability PSBGEN PSBNAME=PSBCALDP,LANG=COBOL END (NOTE:Need to change PROCOPT option for different database operations)

//P390B98P JOB NOTIFY=&SYSUID, // MSGCLASS=A, // MSGLEVEL=(1,1) //*------------------------------------------------------------------*//// SET MBR=PSBCALDP // SET PSBSRCE=P390B98.IMSDB.PSBSRCE // SET PSBLIB=P390B98.IMSDB.PSBLIB //*------------------------------------------------------------------*////C EXEC PGM=ASMA90,REGION=0M, // PARM=(OBJECT,NODECK,NODBCS, // 'SIZE(MAX,ABOVE)') //SYSLIB DD DSN=IMS710.SDFSMAC,DISP=SHR //SYSLIN DD UNIT=SYSDA,DISP=(,PASS), // SPACE=(80,(100,100),RLSE), // DCB=(BLKSIZE=80,RECFM=F,LRECL=80) //SYSPRINT DD SYSOUT=A,DCB=BLKSIZE=1089, // SPACE=(121,(300,300),RLSE,,ROUND) //SYSUT1 DD UNIT=SYSDA,DISP=(,DELETE), // SPACE=(CYL,(10,5)) //SYSIN DD DSN=&PSBSRCE(&MBR),DISP=SHR //*------------------------------------------------------------------*////L EXEC PGM=IEWL,PARM='XREF,LIST', // COND=(0,LT,C),REGION=4M //SYSLIN DD DSN=*.C.SYSLIN,DISP=(OLD,DELETE) //SYSPRINT DD SYSOUT=A,DCB=BLKSIZE=1089, // SPACE=(121,(90,90),RLSE) //SYSLMOD DD DISP=SHR, // DSN=&PSBLIB(&MBR) //SYSUT1 DD UNIT=(SYSDA,SEP=(SYSLMOD,SYSLIN)), // SPACE=(1024,(100,10),RLSE),DISP=(,DELETE)

document.doc Page 20 of 20