OPRB - Datenbank-Open/Close-Befehlsverarbeitung

Der Natural-Profilparameter OPRB steuert die Datenbank-Open/Close-Kommandos während einer Natural-Session, die auf eine Adabas- und VSAM-Datenbank zugreift.

Das Makro NTOPRB kann im Makro NTPRM als Alternative zum Profilparameter OPRB verwendet werden. Die maximale Länge einer OPRB-Parameterangabe beträgt 256 Bytes. Wenn Sie eine längere Angabe benötigen, benutzen Sie anstelle des Parameters OPRB das Makro NTOPRB.

Mögliche Werte Siehe OPRB-Parameter-Syntax.
Standard-Einstellung keine  
Dynamische Angabe ja  
Angabe innerhalb der Session nein  

Anmerkungen:

  1. Der Profilparameter OPRB und das Makro NTOPRB gelten nur bei Adabas- und VSAM-Datenbanken.
  2. Grundsätzlich wird beim OPRB-Parameter eine der oben aufgeführten Syntax-Varianten verwendet, wobei die möglichen Inhalte der Zeichenketten strings vom Datenbanksystem abhängen.
  3. Anstelle des OPRB-Parameters können Sie auch das Makro NTOPRB im Natural-Parametermodul benutzen.
  4. Wenn Sie OPRB-Angaben machen möchten, die nicht für alle Datenbanken gelten sollen, sollten Sie den Parameter OPRB im Makro NTPRM benutzen (anstelle eines NTOPRB-Makros).

Die folgenden Themen werden nachfolgend behandelt:


OPRB-Parameter-Syntax

Der Profilparameter OPRB wird wie folgt angegeben:

Variante 1 - Open-Anforderung für alle Datenbanken

OPRB=(string)

Mit dieser Syntax geben Sie eine Open-Anforderung für alle Datenbanken an.

Variante 2 - Open-Anforderung für bestimmte Datenbanken

OPRB=(DBID=nn1,string,DBID=nn2,string,...)

Mit dieser Syntax geben Sie eine Open-Anforderung für bestimmte, individuelle Datenbanken an. Gemäß den Angaben im Makro NTDB kennzeichnet die angegebene Datenbankkennung (DBID) den Typ der Datenbank.

Variante 3 - Open-Anforderung für bestimmte Datenbanken und Standard-Open-Anforderung für alle nicht ausdrücklich angegebenen Datenbanken

OPRB=(string1,DBID=nn1,string2,DBID=nn2,string3,...)

Mit dieser Syntax geben Sie eine Open-Anforderung für bestimmte, individuelle Datenbanken an (string2 und string3) und außerdem eine Standard-Open-Anforderung (die initiale Zeichenkette string1), die für alle Datenbanken gilt, für die Sie keine individuelle Zeichenkette (string) angeben.

Variante 4 - Open-Anforderung mittels (nicht) eingeschränktem Aufruf

OPRB=(DBID=nn1,NR=value,string,...)

Mit dem Subparameter NR=value geben Sie an, ob das Adabas-Open-Kommando als eingeschränkter (Restricted) oder nicht engeschränkter (Non-Restricted) Aufruf ausgeführt werden soll. Dies steuert den in der Command Option 1 (COPT1) des OP-Kommandos eingestellten Wert.

Dabei ist:

Wert Bedeutung
NR=OFF Bewirkt ein eingeschränktes Open bei COPT1=R.

Dies ist die Standardeinstellung.

NR=ON Bewirkt ein nicht eingeschränktes Open, wenn COPT1=<leer> ist.

Dynamisch angegebener OPRB-Parameter bei Natural Security

Ein dynamisch angegebener OPRB-Parameter gilt für alle Anmeldungen in Libraries, in deren Security-Profilen kein OPRB-Parameter angegeben ist. Für eine Anmeldung bei einer Library, in deren Security-Profil der OPRB-Parameter angegeben ist, wird jeder dynamisch angegebene OPRB-Parameter ignoriert. Es gilt immer der Parameter aus dem Security-Profil.

OPRB für VSAM

Zeichenketten (strings), die für VSAM-Datenbanken angegeben werden können, sind im Abschnitt OPRB Parameter for VSAM Databases in der Natural for VSAM-Dokumentation beschrieben.

OPRB für Adabas

Bei Adabas-Datenbanken ist der OPRB-Parameter erforderlich, wenn eine der beiden folgenden Bedingungen für die Natural-Session zutrifft:

  • Es muss eine explizite Liste mit Adabas-Dateien zur Verfügung gestellt werden, auf die zugegriffen bzw. die geändert (Update) werden sollen. Dies ist zum Beispiel nötig, wenn eine Adabas Cluster-Änderung oder eine exklusive Dateikontrolle angefordert werden soll.

  • Wenn sich eine einzelne logische Transaktion über zwei oder mehr Natural-Programme erstrecken soll und es deshalb nicht erwünscht ist, dass Natural beim Beenden eines gegebenen Natural-Programms ein END TRANSACTION-Statement und ein CLOSE-Kommando absetzt.

Möglicher Inhalt der Parameter-Zeichenkette Bedeutung
ACC=(file-list) Angabe einer Zugriffserlaubnis (Lesen) für die Dateien in der Dateiliste.
UPD=(file-list) Angabe einer Zugriffs-/Änderungserlaubnis (Lesen/Schreiben) für die Dateien in der Dateiliste.
EXF=(file-list) Angabe einer exklusiven Dateikontrolle: Keine anderen Benutzer dürfen auf die Datei zugreifen bzw. sie ändern.
EXU=(file-list) Angabe einer exklusiven Änderungserlaubnis (exklusives Lesen/Schreiben) für die Dateien in der Dateiliste.
ACODE Angabe der Option zum Erzwingen einer Benutzer-Zeichencodierung (Encoding) für A-Felder.

Anmerkung:
Die erforderliche Zeichencodierung für ACODE wird von der aktuellen Einstellung des Parameters CP in der Natural-Session abgeleitet.

WCODE Angabe der Option zum Erzwingen einer Benutzer-Zeichencodierung (Encoding) für W-Felder.

Anmerkung:
Die erforderliche Zeichencodierung für WCODE ist immer 4095.

ARC Angabe einer speziellen Datenarchitektur für Felder in dem Datensatz (Record) und in den Wertepuffern. Diese Definition hebt die Definition des Architekturschlüssels für Remote-Aufrufe in Entire Net-Work auf.

Anmerkungen:

  1. Weitere Informationen zu diesen Zeichenketten siehe Beschreibung des Adabas-Kommandos OP in der Adabas Command Reference-Dokumentation.
  2. Falls der OPRB-Parameter im Natural-Parametermodul weggelassen wird oder OPRB=OFF als dynamischer Parameter angegeben wird, beginnt eine Natural-Session mit einem Adabas-Open-Kommando, wordurch ein UPD (Update: Zugriff/Änderung) der Natural-Systemdatei angefordert wird. Außerdem setzt Natural RELEASE CID (Adabas RC)-Kommandos ab, um alle ISN-Listen freizugeben (die in einer RETAIN-Klausel eines Natural-FIND-Statements angegebenen ISN-Listen werden nicht freigegeben).

Der Adabas-Datensatzpuffer (Record Buffer), der mit dem initialen Adabas OP-Kommando benutzt werden soll, kann explizit mitgegeben werden. Das Format ähnelt dem Format, das in einem Adabas-Datensatzpuffer für das OP-Kommando verwendet wird, jedoch dürfen keine eingeschlossenen Leerzeichen vorhanden sein und die gesamte Angabe muss in Klammern (nicht in Hochkommas) gesetzt werden.

Beispiel 1:
OPRB=(ACC=2,4,6,UPD=8.)

Gibt an, dass die Adabas-Dateien 2, 4 und 6 nur für den Zugriff verfügbar gemacht werden sollen und dass die Adabas-Datei 8 für die Änderung (Update), was auch den Zugriff impliziert) verfügbar gemacht werden soll.

Beispiel 2:
OPRB=(EXU=1,2,3.)

Gibt an, dass die Adabas-Dateien 1, 2 und 3 für diese Natural-Session unter exklusive Kontrolle gestellt werden sollen.

Bei Kombination der Schlüsselwörter ACC, UPD und EXU müssen die in der betreffenden Adabas-Dokumentation definierten Regeln beachtet werden. Wenn diese Schlüsselwörter angegeben werden, setzt Natural zu Beginn einer Natural-Session ein OP-Kommando ab und am Ende der Natural-Session ein CL-Kommando. Am Ende eines Natural-Kommandos werden nur die erforderlichen RC-Kommandos zur Freigabe von im Hold gehaltenen ISN-Listen abgesetzt.

In allen oben aufgeführten Situationen enthält das OP-Kommando, das immer zu Beginn einer Natural-Session abgesetzt wird, die Benutzerkennung für die Natural-Session im Feld Additions 1 im Adabas Control Block. Im Batch-Modus ist dies der Name des Jobs. Im TP-Modus ist es die Einstellung, die bei der Systeminitialisierung vom Natural-Interface-Modul geliefert wird. In beiden Fällen steht die verwendete Einstellung in der Natural-Systemvariablen *INIT-USER zur Verfügung.

NTOPRB-Makro-Syntax

Die Syntax des Makros NTOPRB wird wie folgt angegeben:

         NTOPRB dbid,'string'

Anmerkungen:

  1. Mögliche Werte wie beim Parameter OPRB. Wenn Sie Natural mit VSAM benutzen, siehe auch die Natural for VSAM-Dokumentation.
  2. Falls die Zeichenkette (string) sehr lang ist, können Sie sie in bis zu fünf Zeichenketten aufteilen, die durch Kommas voneinander getrennt werden müssen (siehe unten), da der Assembler nur einzelne Zeichenketten mit einer Länge von maximal 256 Bytes zulässt.

Beispiele für NTOPRB-Makros

         NTOPRB 12,'ACC=40,UPD=20' 
         NTOPRB 15,'EXU=1,','2,3'