IMS DB - maska PCB
PCB oznacza blok komunikacji programu. Maska PCB jest drugim parametrem używanym w wywołaniu DL / I. Jest to zadeklarowane w sekcji połączeń. Poniżej podano składnię maski PCB -
01 PCB-NAME.
05 DBD-NAME PIC X(8).
05 SEG-LEVEL PIC XX.
05 STATUS-CODE PIC XX.
05 PROC-OPTIONS PIC X(4).
05 RESERVED-DLI PIC S9(5).
05 SEG-NAME PIC X(8).
05 LENGTH-FB-KEY PIC S9(5).
05 NUMB-SENS-SEGS PIC S9(5).
05 KEY-FB-AREA PIC X(n).
Oto kluczowe punkty, na które należy zwrócić uwagę -
Dla każdej bazy danych DL / I utrzymuje obszar pamięci zwany blokiem komunikacji programu. Przechowuje informacje o bazie danych, do których dostęp jest uzyskiwany w aplikacjach.
Instrukcja ENTRY tworzy połączenie między maskami PCB w sekcji Linkage i PCB w PSB programu. Maski PCB używane w wywołaniu DL / I informują, której bazy danych użyć do działania.
Można założyć, że jest to podobne do określania nazwy pliku w instrukcji COBOL READ lub nazwy rekordu w instrukcji zapisu w języku COBOL. Nie są wymagane żadne instrukcje SELECT, ASSIGN, OPEN ani CLOSE.
Po każdym wywołaniu DL / I, DL / I zapisuje kod statusu na PCB, a program może użyć tego kodu do określenia, czy połączenie powiodło się, czy nie.
Nazwa PCB
Punkty do zapamiętania -
Nazwa PCB to nazwa obszaru odnosząca się do całej struktury pól PCB.
Nazwa PCB jest używana w instrukcjach programu.
Nazwa PCB nie jest polem w PCB.
Nazwa DBD
Punkty do zapamiętania -
Nazwa DBD zawiera dane znaku. Ma długość ośmiu bajtów.
Pierwsze pole na PCB to nazwa przetwarzanej bazy danych i podaje nazwę DBD z biblioteki opisów baz danych powiązanych z daną bazą danych.
Poziom segmentu
Punkty do zapamiętania -
Poziom segmentu jest znany jako wskaźnik poziomu hierarchii segmentów. Zawiera dane znakowe i ma długość dwóch bajtów.
Pole poziomu segmentu przechowuje poziom segmentu, który został przetworzony. Po pomyślnym pobraniu segmentu zapisywany jest tutaj numer poziomu pobranego segmentu.
Pole poziomu segmentu nigdy nie ma wartości większej niż 15, ponieważ jest to maksymalna liczba poziomów dozwolonych w bazie danych DL / I.
Kod statusu
Punkty do zapamiętania -
Pole kodu statusu zawiera dwa bajty danych znakowych.
Kod stanu zawiera kod statusu DL / I.
Spacje są przenoszone do pola kodu stanu, gdy DL / I pomyślnie zakończy przetwarzanie wywołań.
Wartości inne niż spacje wskazują, że wywołanie nie powiodło się.
Kod statusu GB wskazuje koniec pliku, a kod statusu GE wskazuje, że żądany segment nie został znaleziony.
Opcje proc
Punkty do zapamiętania -
Opcje proc są znane jako opcje przetwarzania, które zawierają czteroznakowe pola danych.
Pole opcji przetwarzania wskazuje, do jakiego rodzaju przetwarzania program jest upoważniony w bazie danych.
Zastrzeżone DL / I
Punkty do zapamiętania -
Zarezerwowany DL / I jest znany jako zarezerwowany obszar IMS. Przechowuje czterobajtowe dane binarne.
IMS wykorzystuje ten obszar do własnego wewnętrznego powiązania związanego z aplikacją.
Nazwa segmentu
Punkty do zapamiętania -
Nazwa SEG jest znana jako obszar informacji zwrotnej o nazwie segmentu. Zawiera 8 bajtów danych znakowych.
Nazwa segmentu jest przechowywana w tym polu po każdym wywołaniu DL / I.
Długość klucza FB
Punkty do zapamiętania -
Długość klawisza FB jest nazywana długością kluczowego obszaru sprzężenia zwrotnego. Przechowuje cztery bajty danych binarnych.
To pole służy do zgłaszania długości połączonego klucza segmentu najniższego poziomu przetworzonego podczas poprzedniego wywołania.
Jest używany z kluczowym obszarem informacji zwrotnej.
Liczba segmentów czułości
Punkty do zapamiętania -
Liczba segmentów czułości zawiera czterobajtowe dane binarne.
Określa, na jaki poziom wrażliwy jest program użytkowy. Reprezentuje liczbę segmentów w logicznej strukturze danych.
Kluczowy obszar opinii
Punkty do zapamiętania -
Kluczowe obszary informacji zwrotnych mają różną długość w zależności od PCB.
Zawiera najdłuższy możliwy połączony klucz, którego można używać z widokiem bazy danych programu.
Po operacji na bazie danych, DL / I zwraca łączony klucz segmentu najniższego poziomu przetwarzanego w tym polu i zwraca długość klucza w obszarze informacji zwrotnej o długości klucza.