You are on page 1of 3

IMS CLASS 02:

-------------------------------
PRAPRATION OF IMS-COBOL PROGRAM:

IMS --> DB & DC

IMS =DB ==< DATABASE -- STORE THE DATA OF THE PROJECT

TO PROCESS THIS DATA WE USE COBOL-IMS PGMS

3 TYPES 1. DLI -- BATCH --> JCL -- DFSRRC00


2. MPP -- ONLINE - IMS-DC / CICS
3. BMP -- ONLINE + BATCH + JOB

USER/FRONT END - ACTIVLY THE IMS -- JCL JOB WILL ALSO


USE

DLI -- HOW TO CODE A COBOL-IMS PROGRAM

DBD -- PHSYCIAL STRUCTURE OF THE DATABASE


-- NAME , DDNAME , TYPE
-- SEGMENTS
-- FILEDS

PSB -- COLLECTION OF PCB'S

PROVIDE THE DATABASE + SEGEMENT + FILEDS WHICH UR COBOL-IMS PGM NEED


TO ACCESS.

ORDER --> U NEED THIS IN UR PGM --> PSB -> 1 PCB OF PROVIDE ORDER
DATABASE - SEGMENT

EX: ORDER + PRODUCT ---> 1 PSB == 1 PCB FOR ORDER


1 PCB FOR PRODUCT

PGM CANNOT ACCESS THE DBD

COBOL-IMS --> SEE ONLY PSB (PCB -DATABASE + SEGMENT + FILEDS)

SEGMENT --> TABLE


FILE

ID DIVISION --> NO CHANGES

ENVIRONMENT DIVISION -- NO CHANGES

DATA DIVISION.
WORKING-STORAGE SECTION.
1.
ADDING REQUIRED SEGMENT COPYBOOK.
01 ORDER-DETAILS-SEG
03 OID...

LINKAGE SECTION.
2.
WE NEED ADD ANOTHER COPYBOOK/GROUP -> PCB-MASK

U NEED TO ADD EQUAL NUM OF PCB -- TO PCBS DEFINED IN THE PSB..

3. PROCEDURE DIVISION USING PCB-MASK1 , PCB-MARK2.

WHEN U WANT TO TALK TO IMS-DB FOR DATA (GET - INSERT)

4 CALL 'CBLTDLI' USING FUNCTION-CALL (GET , ISRT , REPL ,


DELT) == COBOL = TO = DLI
PCB-MASK,
IO-AREA (COPYBOOK)
SSA*** (WHERE
CONDITION)

5. GOBACK** (DO NOT USE STOP RUN)

COBOL PGM == DLI == IMS


COBOL PGM == SQL == TABLE
COBOL PGM -= FILE (FILE STATEMENT = READ , WRITE )

COMPILE IT --> LOAD*

EXECUTION:

COBOL-IMS --> //STEP1 EXEC PGM=IMSPGM01 --> ERROR


//STEP1 EXEC
PGM=DFSRRC00,PARM='DLI,PGMNAME,PSBNAME = DLI
BMP

LINKAGE SECTION.
1.PCB-MASK

PRODCEDURE DIVISION USING ...PCB-MASK1, PCB-MASK2.

CBLTDLI PCB-MASK --> DLI --> IMS


IO-AREA <--- DLI <--- IMS

STOP RUN == OS
GOBACK -- DFSRRC00

You might also like