Die Anweisung DELETE-ELEMENT löscht die angegebenen Elemente in der zugewiesenen Bibliothek (logisches Löschen). Dabei werden die
Inhaltsverzeichniseinträge gelöscht und der Speicherplatz freigegeben (Freigabe erfolgt nur innerhalb der Bibliothek, d.h. die Bibliothek wird dadurch als Ganzes nicht kleiner).
Ein Element einer Bibliothek wird physikalisch gelöscht, wenn der Operand DESTROY-DATA=*YES gesetzt ist oder im Element ein Kennzeichen für physikalisches Löschen vorhanden ist oder der Systemparameter DESTLEV es verlangt.
Die Anweisung wird nur ausgeführt, wenn in der Anweisung explizit eine Bibliothek angegeben wurde oder die bei OPEN-LIBRARY angegebene Bibliothek mit MODE=*UPDATE eröffnet wurde.
Die DELETE-ELEMENT-Anweisung ist für alle Elementtypen erlaubt.
Format
DELETE-ELEMENT | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Operanden
ELEMENT = *LIBRARY-ELEMENT(...)
Angabe, welches Element gelöscht werden soll. Angaben für die gewünschte Elementbezeichnung.
LIBRARY = *STD / <filename 1..54 without-vers> / *LINK(...)
Angabe der Bibliothek, aus der das Element gelöscht werden soll.
LIBRARY = *STD
Die durch OPEN-LIBRARY eröffnete Bibliothek.
LIBRARY = <filename 1..54 without-vers>
Name der Bibliothek, aus der das Element gelöscht werden soll.
LIBRARY = *LINK(...)
Die über den Dateikettungsnamen zugewiesene Bibliothek.
LINK-NAME = <structured-name 1..8>
Dateikettungsname der Bibliothek.
ELEMENT = *ALL(...) / <composed-name 1..64 with-under with-wild(132)>(...)
Element, das gelöscht werden soll
ELEMENT = *ALL(...)
Alle Elemente werden gelöscht.
ELEMENT = <composed-name 1..64 with-under with-wild(132)>(...)
Name des Elementes, welches gelöscht werden soll.
VERSION = *HIGHEST-EXISTING / *ALL / *UPPER-LIMIT /
<composed-name 1..24 with-under with-wild(52)>
Version, die das zu löschende Element besitzt.
VERSION = *HIGHEST-EXISTING
Das Element mit der höchsten bestehenden Version wird gelöscht.
VERSION = *UPPER-LIMIT
Die in der Bibliothek unter dem angegebenen TYPE und Namen höchstmögliche Version X'FF' wird gelöscht.
VERSION = <composed-name 1..24 with-under with-wild(52)>
Explizite Angabe der Version des Elementes, das gelöscht werden soll.
TYPE = *DEFAULT / *ALL / <alphanum-name 1..8 with-wild(20)>
Typ, den das zu löschende Element besitzt.
TYPE = *DEFAULT
Ist der Wert *DEFAULT und der mit MODIFY-DEFAULTS aktuell eingestellte Wert gleich *NONE, so verlangt LMSCONV die Angabe eines Typs.
TYPE = *ALL
Alle Typen werden gelöscht
TYPE = <alphanum-name 1..8 with-wild(20)>
Nur der angegebene Typ wird gelöscht.
USER-DATE = *ANY / *TODAY / <date 8..10 with-compl> / *INTERVAL(...)
Datum, das vom Benutzer vergeben wurde.
USER-DATE = *ANY
Das zu löschende Element besitzt ein beliebiges Datum.
USER-DATE = *TODAY
Das Element mit dem aktuellen Tagesdatum wird gelöscht.
USER-DATE = <date 8..10 with-compl>
Das Element, dessen Datum explizit in der Form [JJ]JJ-MM-TT eingegeben wird, wird gelöscht.
USER-DATE = *INTERVAL(...)
Alle Elemente, die in dem angegebenen Zeitraum liegen, werden gelöscht.
FROM = 1900-01-01 / <date 8..10 with-compl>
Beginn des Zeitraums.
TO = *TODAY / <date 8..10 with-compl>
Ende des Zeitraums.
CREATION-DATE = *ANY / *TODAY / <date 8..10 with-compl> / *INTERVAL(...)
Erzeugungsdatum des Elementes. Beschreibung der Operandenwerte siehe Operand USER-DATE dieser Anweisung.
MODIFICATION-DATE = *ANY / *TODAY / <date 8..10 with-compl> / *INTERVAL(...)
Datum der letzten Änderung für das Element. Beschreibung der Operandenwerte siehe Operand USER-DATE dieser Anweisung.
DESTROY-DATA = *DEFAULT / *NO / *YES
Löschen der Daten für alle Elemente, die durch *LIBRARY-ELEMENT bestimmt wurden.
DESTROY-DATA = *DEFAULT
Der Standardwert ist *NO (s.u.) oder der mit MODIFY-DEFAULTS aktuell eingestellte Wert.
DESTROY-DATA = *NO
Ein Element einer Bibliothek wird nur physikalisch gelöscht, wenn im Element ein Kennzeichen für physikalisches Löschen vorhanden ist oder der Systemparameter DESTLEV es verlangt.
DESTROY-DATA = *YES
Nach dem logischen Löschen werden die Daten, falls vorhanden, physikalisch gelöscht, d.h. mit X'00' überschrieben.
DIALOG-CONTROL = *DEFAULT / *NO / *YES
Dieser Operand legt fest, ob während der Ausführung einer Anweisung ein Dialog mit dem Benutzer geführt werden soll oder nicht.
DIALOG-CONTROL = *DEFAULT
Der Standardwert ist *NO oder der mit MODIFY-DEFAULTS aktuell eingestellte Wert.
DIALOG-CONTROL = *NO
Alle Elemente werden ohne Nachfrage, d.h. ohne Eingreifmöglichkeit des Benutzers, bearbeitet.
Ausnahme: Ist ein Element oder eine Bibliothek gesperrt, fragt LMSCONV nach, ob der Zugriffsversuch wiederholt werden soll.
DIALOG-CONTROL = *YES
LMSCONV fragt bei jedem Element nach, wie es sich verhalten soll, z.B. ob das Element bearbeitet, übersprungen oder die Anweisung abgebrochen werden soll.
Nähere Erläuterungen zur Dialogführung unter MODIFY-DEFAULTS, wobei der dort ggf. eingestellte Wert *ERROR wie *NO wirkt. Ebenso wirkt der bei /INFORM-PROGRAM ggf. angegebene Wert für DIALOG-CONTROL=*ERROR bei DELETE-ELEMENT wie *NO.
Beispiel
Aus der Bibliothek LIB1 wird das Element TEST3 gelöscht.
/start-lmsconv //open-library lib1 //show-element-attributes INPUT LIBRARY= :N:$USER.LIB1 TYP NAME VER (VAR#) DATE NAME VER (VAR#) DATE (S) TEST1 @ (0001) <date> TEST2 @ (0001) <date> (S) TEST3 @ (0001) <date> TEST4 @ (0001) <date> //delete-element (elem=test3,type=s) //show-element-attributes INPUT LIBRARY= :N:$USER.LIB1 TYP NAME VER (VAR#) DATE NAME VER (VAR#) DATE (S) TEST1 @ (0001) <date> TEST2 @ (0001) <date> (S) TEST4 @ (0001) <date> . . .