ISAM-Pool oder Verbindung zu ISAM-Pool aufheben
Komponente: | BS2000 |
Funktionsbereich: | Dateiverarbeitung |
Anwendungsbereich: | FILE |
Privilegierung: | STD-PROCESSING |
Funktionsbeschreibung
Mit dem Kommando DELETE-ISAM-POOL kann der Benutzer von ihm angelegte taskspezifische ISAM-Pools löschen bzw. die Verbindung zwischen seinem Auftrag und mehrbenutzbaren ISAM-Pools (Gültigkeitsbereiche USER-ID, USER-GROUP und HOST-SYSTEM) aufheben. Wird die Verbindung zwischen einem mehrbenutzbaren ISAM-Pool und dem letzten an ihn angeschlossenen Auftrag aufgehoben, wird der ISAM-Pool automatisch gelöscht.
Ein ISAM-Pool ist eindeutig bestimmbar über den angegebenen Namen, die Katalogkennung und den Gültigkeitsbereich. Existiert ein im Kommando genannter ISAM-Pool nicht, wird das Kommando mit einer Fehlermeldung abgewiesen. Mit dem Kommando SHOW-ISAM-POOL-ATTRIBUTES kann sich der Benutzer über ISAM-Pools informieren, zu denen sein Auftrag noch Verbindung hat.
Bevor ein ISAM-Pool bzw. die Verbindung zwischen Auftrag und ISAM-Pool gelöscht werden kann, müssen mit dem Kommando REMOVE-ISAM-POOL-LINK für die betroffenen Pools alle Einträge aus der Pool-Tabelle des Auftrags gelöscht worden sein. Ist ein Pool noch über seinen Kettungsnamen mit der Pool-Tabelle verknüpft, wird das Kommando DELETE-ISAM-POOL mit einer Fehlermeldung abgewiesen. Mit dem Kommando SHOW-ISAM-POOL-LINK kann sich der Benutzer über Einträge in der Pool-Tabelle informieren.
Hinweis zu ISAM-Pools
Taskübergreifende ISAM-Pools werden dateispezifisch bei der Dateieröffnung in einem Data Space angelegt. Das CREATE-ISAM-POOL-Kommando mit SCOPE=*USER-ID/*USER-GROUP wird nur noch aus Kompatibilitätsgründen unterstützt und wirkt wie SCOPE=*HOST-SYSTEM (Details zu ISAM-Pools in Data Spaces siehe „Einführung in das DVS“ [13]).
Eine ausführliche Beschreibung des ISAM-Pools ist in den Handbüchern „Einführung in das DVS“ [13] bzw. „DVS-Makros“ [12] enthalten.
Format
DELETE-ISAM-POOL |
Operandenbeschreibung
POOL-NAME = *ALL / <name 1..8>(...)
Gibt an, ob nur ein bestimmter oder alle mit dem Auftrag verbundenen ISAM-Pools freigegeben werden sollen.
POOL-NAME = *ALL
Alle mit dem aufrufenden Auftrag verbundenen ISAM-Pools sollen gelöscht werden bzw. (bei mehrbenutzbaren Pools) alle Verbindungen zu ISAM-Pools sollen aufgehoben werden. Wenn für den aufrufenden Auftrag über den Pool-Kettungsnamen noch Verbindungen zwischen Pools und Dateien bestehen, wird das Kommando mit einer Fehlermeldung abgewiesen.
POOL-NAME = <name 1..8>(...)
Der angegebene ISAM-Pool soll gelöscht werden. Der ISAM-Pool wird über den Namen, die Katalogkennung (siehe Operand CAT-ID) und den Gültigkeitsbereich (siehe Operand SCOPE) eindeutig identifiziert. Wurde kein ISAM-Pool mit diesen Angabe angelegt bzw. die Verbindung zu ihm aufgebaut (siehe Kommando CREATE-ISAM-POOL), so wird das Kommando mit einer Fehlermeldung abgewiesen.
CAT-ID = *DEFAULT-PUBSET / <alphanum-name 1..4>
Katalogkennung des Pubsets, dem der angegebene ISAM-Pool zugeordnet ist.
CAT-ID = *DEFAULT-PUBSET
Der ISAM-Pool ist dem Katalog zugeordnet, der mit dem Systemparameter ISPLDEFC (ISAM-POOL-DEFAULT-CATID)
eingestellt ist:
X'00': | Standard-Katalogkennung aus dem Benutzereintrag |
X'01': | Katalogkennung des Home-Pubsets |
CAT-ID = <alphanum-name 1..4>
Katalogkennung des angegebenen ISAM-Pools.
SCOPE = *TASK / *USER-ID / *USER-GROUP / *HOST-SYSTEM
Geltungsbereich des angegebenen ISAM-Pools.
SCOPE = *TASK
Der entsprechende tasklokale ISAM-Pool, der nur von der Task benutzt werden kann, soll gelöscht werden.
SCOPE = *HOST-SYSTEM
Der entsprechende taskübergreifende ISAM-Pool, der von allen Tasks genutzt werden kann, soll gelöscht werden.
SCOPE = *USER-ID / *USER-GROUP
Diese Angabe wird nur noch aus Kompatibilitätsgründen unterstützt (siehe auch „Hinweis zu ISAM-Pools" in Abschnitt "DELETE-ISAM-POOL").
Kommando-Returncode
(SC2) | SC1 | Maincode | Bedeutung |
---|---|---|---|
0 | CMD0001 | Kommando fehlerfrei ausgeführt | |
32 | DMS0A17 | Interner Systemfehler | |
64 | DMS0A0E | Syntaxfehler bei ISAM-Pool-Kommando | |
64 | DMS0A11 | Angegebene CATID existiert nicht | |
64 | DMS0A13 | Angegebener Pool-Name ist ungültig | |
64 | DMS0A19 | Angegebener ISAM-Pool existiert nicht | |
64 | DMS0A1A | Referenzen auf ISAM-Pool noch vorhanden | |
64 | DMS0A21 | Kontingent für ISAM-Pools erschöpft | |
64 | DMS0A22 | Keine Benutzergruppe vorhanden | |
130 | DMS0A12 | Angegebene CATID ist nicht verfügbar |
Beispiele
Siehe Kommando ADD-ISAM-POOL-LINK.