Vi inkluderer DL /jeg kaller inne COBOL program for å kommunisere med IMS database. Vi bruker følgende DL /I uttalelser i COBOL program for å få tilgang til databasen:
Entry erklæringen
goback erklæringen
Call erklæringen
Entry Statement
Den brukes til å passere kontroll fra DL /jeg til COBOL program. Her er syntaksen for oppføringen uttalelse:
ENTRY 'DLITCBL' med pcb-navn1 [pcb-navn2]
Ovennevnte uttalelse er kodet i Prosedyre Division batch initialisering modulen utløser program og kjøres under sin kontroll DL /jeg laster de nødvendige kontrollblokker og moduler og applikasjonen, og kontroll er gitt til applikasjonen. DLITCBL står for DL /jeg å COBOL Når vi kaller et delprogram i COBOL, er dens adresse også. Likeledes når den DL /jeg gir kontrollen til applikasjonen, gir det også adressen til hver PCB definert i programmets PSB. Alle PCB brukt i programmet må være definert i den Heis § PCB definisjonen inne i Heis Seksjon kalles som PCB Mask Forholdet mellom PCB masker og selve PCB i lagring er skapt ved å liste PCB i oppføringen uttalelse. Sekvensen av oppføring i oppføringen erklæringen skal være det samme som de vises i PSBGEN. Den brukes til å passere kontrollen tilbake til IMS kontroll program. Følgende er syntaksen til goback uttalelse: Nedenfor er de grunnleggende punkter å merke om goback uttalelse: goback er kodet på slutten av applikasjonen. Den returnerer kontrollen til DL /I fra programmet. Vi bør ikke bruke STOP RUN som den returnerer kontrollen til operativsystemet. Hvis vi bruker STOP RUN, DL /jeg får aldri en sjanse til å utføre sine avslutnings funksjoner. Det er derfor, i DL /I tilpasningsprogram, er goback uttalelse brukes. Før utstede en goback uttalelse, alle de ikke-DL /I datasett som brukes i COBOL program må være lukket, ellers vil programmet avsluttes unormalt. Ring påstanden brukes for å be for DL /I tjenester som utfører visse operasjoner på IMS database. Her er syntaksen for samtalen uttalelse: Syntaksen ovenfor viser parametere som du kan bruke med anropet uttalelse. Vi vil diskutere hver av dem i tabellen nedenfor. DLI Function Code PCB Mask PCB definisjonen inne i Heis Seksjon kalles som PCB Maske. De brukes i inngangs setningen. Ingen SELECT, tildele, ÅPEN eller LUKKET uttalelser er nødvendig. Segment I /O-området Navn på en input /output arbeidsområdet. Dette er et område av program der DL /jeg setter en forespurt segment. Segment søk Argumenter Dette er valgfrie parametere avhengig av type appellen. De brukes til å søke datasegmenter inne i IMS database Nedenfor er de punkter å merke om Call uttalelse. CBLTDLI står for COBOL til DL /I. Det er navnet på et grensesnitt modul som er link redigert med programmets objektmodulen. Etter hvert DL /jeg kaller, lagrer DLI en statuskode i PCB. Programmet kan bruke denne koden for å avgjøre om anropet lyktes eller mislyktes. For mer forståelse av COBOL, du kan gå gjennom vår COBOL tutorial her. Følgende eksempel viser oppbyggingen av et COBOL program som bruker IMS database og DL /I samtaler. Vi vil diskutere i detalj hver av parametrene som brukes i blant annet i de kommende kapitlene.
av COBOL program. La oss gå inn i detaljene i uttalelsen oppføring i COBOL program.
. Oppføringen setningen brukes for å definere inngangspunkt i programmet.
av COBOL programmet fordi PCB ligger utenfor applikasjonen.
.
goback erklæringen
goback
Call erklæringen
RING 'CBLTDLI' BRUKE DLI Function Code PCB Mask Segment I /O-området [Segment søk Argumenter]
S.No
Parametere med beskrivelse
1
< p> Identifiserer DL /I fungere som skal utføres. Dette argumentet er navnet på de fire tegnfelt som beskriver I /O operasjon.
2
3
4
Eksempel
IDENTIFIKASJON DIVISION.PROGRAM-ID. TEST1.DATA DIVISION.WORKING-OPPBEVARING SECTION.01 DLI-FUNKSJONER. 05 DLI-GU PIC X (4) VERDI "GU". 05 DLI-GHU PIC X (4) VERDI 'GHU'. 05 DLI-GN PIC X (4) VERDI "GN '. 05 DLI-GHN PIC X (4) VERDI 'GHN'. 05 DLI-BNP PIC X (4) VERDI "BNP". 05 DLI-GHNP PIC X (4) VERDI 'GHNP'. 05 DLI-ISRT PIC X (4) VERDI 'ISRT'. 05 DLI-DLET PIC X (4) VERDI 'DLET'. 05 DLI-ERSTATTER PIC X (4) VERDI 'ERSTATTER'. 05 DLI-CHKP PIC X (4) VERDI 'CHKP'. 05 DLI-XRST PIC X (4) VERDI 'XRST'. 05 DLI-PCB PIC X (4) VERDI "PCB" 0,01 Segment-I-O-OMRÅDET PIC X (150) .LINKAGE SECTION.01 STUDENT-PCB-MASK. 05 STD-DBD-NAME PIC X (8). 05 STD-segmentnivå PIC XX. 05 STD-STATUS-CODE PIC XX. 05 STD-PROC-ALTERNATIVER PIC X (4). 05 FILLER PIC S9 (5) COMP. 05 STD-segment NAME PIC X (8). 05 STD-KEY-LENGDE PIC S9 (5) COMP. 05 STD-nummen-SENS-SEGS PIC S9 (5) Comp. 05 STD-KEY PIC X (11) .PROCEDURE DIVISION.ENTRY 'DLITCBL' BRUKE STUDENT-PCB-MASK.A000-LES-PARA.110-GET-ELSE-segmentet. CALL 'CBLTDLI' BRUKE DLI-GN STUDENT-PCB-MASK Segment-I-O-AREA.GOBACK.