DL / I-Funktion ist der erste Parameter, der in einem DL verwendet wird / I nennen. Diese Funktion weist die Operation wird sich auf der IMS-Datenbank von der IMS DL durchgeführt werden / Ich nenne. Die Syntax der DL / I Funktion ist wie folgt:
01 DLI-FUNCTIONS. 05 DLI-GU PIC X(4) VALUE 'GU '. 05 DLI-GHU PIC X(4) VALUE 'GHU '. 05 DLI-GN PIC X(4) VALUE 'GN '. 05 DLI-GHN PIC X(4) VALUE 'GHN '. 05 DLI-GNP PIC X(4) VALUE 'GNP '. 05 DLI-GHNP PIC X(4) VALUE 'GHNP'. 05 DLI-ISRT PIC X(4) VALUE 'ISRT'. 05 DLI-DLET PIC X(4) VALUE 'DLET'. 05 DLI-REPL PIC X(4) VALUE 'REPL'. 05 DLI-CHKP PIC X(4) VALUE 'CHKP'. 05 DLI-XRST PIC X(4) VALUE 'XRST'. 05 DLI-PCB PIC X(4) VALUE 'PCB '.
Diese Syntax repräsentiert folgende Kernpunkte::
Für diesen Parameter ,können wir liefern vierstelligen Namen wie ein Speicher feld zu um gespeichert den Funktionscode werden..
DL / I funktionieren Parameter wird im Arbeits speicher bereich des COBOL-Programm codiert. .
Für die Angabe der DL / I funktion, muss der Programmierer zu Code eine der 05 Level-Daten Namen wie DLI-GU in einem DL/I Anruf , da COBOL tut nicht zu Code-Literale auf einer CALL-Anweisung erlaubt ..
DL / I-Funktionen werden in drei Kategorien eingeteilt. Erhalten, Aktualisieren und Sonstige Funktionen: Lassen Sie uns jeder von ihnen im Detail zu diskutieren..
Hole-Funktionen ähnlich zu der Leseoperation von einer beliebigen Programmiersprache unterstützt werden. Get-Funktion wird verwendet, um Segmente aus einem IMS-DL / I-Datenbank zu holen. Die folgenden Hole-Funktionen sind in IMS DB verwendet:
Lassen uns Sie erwägen die folgende IMS-Datenbankstruktur, um das zu verstehen DL / I Funktionsaufrufe::
'GU' Code ist verwendet für die Get einzigartige Funktion. Es funktioniert ähnlich wie die zufällige Leseanweisung in COBOL. Es wird verwendet, um ein bestimmtes Segment Vorkommen auf der Basis der Feldwerte abzurufen. Die Feldwerte können mit Segment Suchargumente bereitgestellt werden. Die Syntax einer GU Anruf ist wie folgt:
CALL 'CBLTDLI' USING DLI-GU PCB Mask Segment I/O Area [Segment Search Arguments]
Wenn Sie die oben genannten Aufruf-Anweisung auszuführen, indem geeignete Werte für alle Parameter im COBOL-Programm, können Sie abrufen das Segment im Segment I / O-Bereich aus der Datenbank . Im obigen Beispiel, wenn Sie die Feldwerte der Bibliothek, Zeitschriften und Gesundheit bieten, dann bekommen Sie die gewünschte Auftretens der Gesundheit segment. .
'GN' Code ist für die bekommen nächste Funktion verwendet. Es funktioniert ähnlich wie das Lesen nächste Anweisung in COBOL. Es wird zur Segment Vorkommen in einer Sequenz abgerufen werden. Die vordefinierten Muster für den Zugriff auf Datensegment Vorkommen ist unten in der Hierarchie, dann links nach rechts. Die Syntax einer GN Anruf ist wie folgt:
CALL 'CBLTDLI' USING DLI-GN PCB Mask Segment I/O Area [Segment Search Arguments]
Wenn Sie die oben genannten Aufruf-Anweisung auszuführen, indem geeignete Werte für alle Parameter im COBOL-Programm, können Sie abrufen das Segment Auftreten im Segment I / O-Bereich aus der Datenbank in einer bestimmten Reihenfolge. Im obigen Beispiel, startet er mit dem Zugriff auf die Bibliothek Segment dann Books Segment und so weiter. Wir führen die GN Anruf wieder und wieder, bis wir das Segment Auftreten erreichen wir wollen..
'GNP' Code wird für Get Next innerhalb Eltern verwendet. Diese Funktion wird verwendet abzurufen um Segment Vorkommen der Reihe nach untergeordnet einem etablierten Elternsegment . Die Syntax einer BSP-Abruf ist wie folgt::
CALL 'CBLTDLI' USING DLI-GNP PCB Mask Segment I/O Area [Segment Search Arguments]
"GHU 'Code ist verwendung zum bekommen Halten Einzigartige.Hold-Funktion spezifiziert dass wir gehen, um das Segment nach dem Abrufen zu aktualisieren. Die Get Halten einzigartige Funktion entspricht dem Holen Einzigartige Anruf. Da unten ist die Syntax einer GHU Aufruf: :
CALL 'CBLTDLI' USING DLI-GHU PCB Mask Segment I/O Area [Segment Search Arguments]
"GHN "Code ist verwendung für bekommen halten nächste. Hold-Funktion spezifiziert dass wir gehen, um das Segment nach dem Abrufen zu aktualisieren. Die Get Halten nächste Funktion entspricht dem Nächsten Anruf. Da unten ist die Syntax einer GHN Aufruf: :
CALL 'CBLTDLI' USING DLI-GHN PCB Mask Segment I/O Area [Segment Search Arguments]
'GHNP' Code ist verwendung für bekommen halten nächste im Eltern. Hold-Funktion spezifiziert dass wir gehen, um das Segment nach dem Abrufen zu aktualisieren. Die halten nächste im Eltern Funktion entspricht dem Get nächste im Eltern Anruf. Da unten ist die Syntax einer GHNP Aufruf:
CALL 'CBLTDLI' USING DLI-GHNP PCB Mask Segment I/O Area [Segment Search Arguments]
Update-Funktionen sind ähnlich umschreiben oder Einfügeoperationen in anderen Programmiersprachen. Update-Funktionen werden verwendet, um Segmente in einer IMS-DL / I-Datenbank zu aktualisieren. Bevor verwendung den Update-Funktion da muss ein erfolgreicher Aufruf mit Hold-Klausel für das Segment Auftreten sein. Folgende Update-Funktionen werden im IMS DB verwendet::
"ISRT "Code ist für die Funktion Einfügen verwendet. Das ISRT-Funktion wird verwendet, um ein neues Segment zu der Datenbank hinzuzufügen. Es wird verwendet, um eine vorhandene Datenbank zu ändern oder laden Sie eine neue Datenbank. Da unten ist die Syntax einer ISRT Aufruf::
CALL 'CBLTDLI' USING DLI-ISRT PCB Mask Segment I/O Area [Segment Search Arguments]
"DLET 'Code ist für die Löschen-Funktion verwendet. Es wird verwendet zu entfernen um ein Segment von einem IMS DL / I-Datenbank . Da unten ist die Syntax einer DLET Aufruf: :
CALL 'CBLTDLI' USING DLI-DLET PCB Mask Segment I/O Area [Segment Search Arguments]
"REPL" Code wird verwendet für bekommen halten nächste im Eltern. Das ersetzen-Funktion wird verwendet, um ein Segment in der IMS-DL / I-Datenbank zu ersetzen. Da unten ist die Syntax einer REPL Aufruf::
CALL 'CBLTDLI' USING DLI-REPL PCB Mask Segment I/O Area [Segment Search Arguments]
Die folgenden Funktionen sind in IMS DL / I ruft:
"CHKP 'Code für die Checkpoint-Funktion verwendet. Es wird in den Wiederherstellungsfunktionen von IMS verwendet. Da unten ist die Syntax einer CHKP Aufruf:
CALL 'CBLTDLI' USING DLI-CHKP PCB Mask Segment I/O Area [Segment Search Arguments]
'XRST' Code für die Restart-Funktion verwendet. Es ist in den Neustart Merkmale IMS verwendet. Da unten ist die Syntax einer XRST Anruf:
CALL 'CBLTDLI' USING DLI-XRST PCB Mask Segment I/O Area [Segment Search Arguments]
PCB-Funktion wird in CICS Programme im IMS DL / I-Datenbank verwendet. Da unten ist die Syntax einer PCB Anruf:
CALL 'CBLTDLI' USING DLI-PCB PCB Mask Segment I/O Area [Segment Search Arguments]
Sie können weitere Informationen über diese Funktionen bei der Rückgewinnung Kapitel finden.