Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

EXTRACT-ELEMENT - Elemente in Datei ausgeben

Die Anweisung EXTRACT-ELEMENT gibt Elemente in Dateien aus. LMSCONV erzeugt die Dateien entsprechend

  • dem Eintrag in der TASK-FILE-TABLE (TFT), wenn die Datei mit dem Dateikettungsnamen zugeordnet ist.

  • den gespeicherten Dateimerkmalen und dem Operanden FILE-ATTRIBUTES.

  • dem Katalogeintrag.

Die Dateien können RECORD-FORMAT=*UNDEFINED und beliebige Angaben zu BUFFER-LENGTH und RECORD-SIZE haben. Die maximale Satzlänge von 32 KByte (inkl. Satzlänge) darf allerdings nicht überschritten werden.

Wurden die ISAM-Schlüssel einer ISAM-Datei mit in das Element aufgenommen, werden die ISAM-Schlüssel mit EXTRACT-ELEMENT auch wieder mit ausgegeben.

Wenn ein Textelement in eine existierende PAM-Datei ausgegeben wird, dann bestimmt die (möglicherweise implizit getroffene) Einstellung des Operanden ACCESS-METHOD die neue Zugriffsmethode (SAM oder ISAM) der Ausgabedatei.

Wurden bei der Aufnahme der Datei Informationen über ISAM-Sekundärschlüssel gespeichert, werden die Sekundärschlüssel wieder eingerichtet. Ist das Einrichten einzelner oder aller Sekundärschlüssel nicht möglich, wird die Datei ohne oder nicht mit allen Sekundärschlüsseln erzeugt.

Die Anweisung EXTRACT-ELEMENT ist für die Elementtypen S, M, R, J, P, D, X, C erlaubt. Elemente vom Typ C und PAM-Elemente unter dem Typ X werden als PAM-Dateien erzeugt.

Die erzeugte Datei erhält als Katalogattribut CCS den CCS-Namen des Quellelementes.

Zulässige Elementnamen sind nicht in jedem Fall als Dateinamen zulässig.

Erzeugen von ISAM-Dateien

Beim Ausgeben von Elementen in ISAM-Dateien erzeugt LMSCONV die ISAM-Schlüssel wie folgt:

  • Wurden bei der Aufnahme einer ISAM-Datei als Bibliothekselement die ISAM-Schlüssel mit aufgenommen, erzeugt LMSCONV die ISAM-Datei mit diesen gespeicherten ISAM-Schlüsseln.

  • Sind im Eingabeelement keine ISAM-Schlüssel gespeichert, wird eine ISAM-Datei mit KEY-POSITION=5 und KEY-LENGTH=8 erstellt. Standardmäßig erzeugt LMSCONV dann ISAM-Schlüssel mit einem Anfangswert von 1000 und einer Schrittweite von 1000. Ist das Element zu groß für diese Schrittweite (mehr als 100000 Sätze), so wird die Schrittweite aus der Anzahl der Sätze berechnet.

  • Elemente vom Typ R werden bis zum END-Satz ausgegeben. Eventuell nachfolgende Sätze werden ignoriert.
  • Korrekturjournalsätze (TXTP) werden bei Elementen vom Typ C nicht mit ausgegeben.
  • Die RECORD-SIZE wird nur bei RECORD-FORMAT=*FIXED versorgt; sie hat bei RECORD-FORMAT=*VARIABLE den Wert 0.

 

Format

EXTRACT-ELEMENT

ELEMENT = *LIBRARY-ELEMENT (...)


*LIBRARY-ELEMENT(...)



|

LIBRARY = *STD / <filename 1..54 without-vers> / *LINK(...)



|


*LINK(...)



|



|

LINK-NAME = <structured-name 1..8>



|

,ELEMENT = *ALL(...) / <composed-name 1..64 with-under with-wild(132)>(...)



|


*ALL(...)



|



|

VERSION = *HIGHEST-EXISTING / *ALL / *UPPER-LIMIT /



|



|


<composed-name 1..24 with-under with-wild(52)>



|


<composed-name 1..64 with-under with-wild(132)>(...)



|



|

VERSION = *HIGHEST-EXISTING / *ALL / *UPPER-LIMIT /



|



|


<composed-name 1..24 with-under with-wild(52)>



|

,TYPE = *DEFAULT / *ALL / <alphanum-name 1..8 with-wild(20)>



|

,USER-DATE =*ANY / *TODAY / <date 8..10 with-compl> / *INTERVAL(...)



|


*INTERVAL(...)



|



|

FROM = 1900-01-01 / <date 8..10 with-compl>



|



|

,TO = *TODAY / <date 8..10 with-compl>



|

,CREATION-DATE =*ANY / *TODAY / <date 8..10 with-compl> / *INTERVAL(...)



|


*INTERVAL(...)



|



|

FROM = 1900-01-01 / <date 8..10 with-compl>



|



|

,TO = *TODAY / <date 8..10 with-compl>



|

,MODIFICATION-DATE =*ANY / *TODAY / <date 8..10 with-compl> / *INTERVAL(...)



|


*INTERVAL(...)



|



|

FROM = 1900-01-01 / <date 8..10 with-compl>



|



|

,TO = *TODAY / <date 8..10 with-compl>

 

,TO-FILE = *STD / *BY-SOURCE / <filename 1..54 without-gen-vers with-wild-constr> /




*LINK(...)


*LINK(...)



|

LINK-NAME = <structured-name 1..8>

,FILE-ATTRIBUTES = *BY-ELEMENT / *BY-CATALOG / *DEFAULT / *PARAMETERS(...)


*PARAMETERS(...)



|

ACCESS-METHOD = *DEFAULT / *ISAM / *SAM

,WRITE-MODE = *DEFAULT / *CREATE / *REPLACE / *EXTEND / *ANY

,DIALOG-CONTROL = *DEFAULT / *NO / *YES / *ERROR

Operanden

ELEMENT = *LIBRARY-ELEMENT(...)
Angaben für die gewünschte Elementbezeichnung.

LIBRARY = *STD / <filename 1..54 without-vers> / *LINK(...)
Angabe der Bibliothek, in der sich das Element befindet.

LIBRARY = *STD
Die durch OPEN-LIBRARY eröffnete Bibliothek.

LIBRARY = <filename 1..54 without-vers>
Name der Bibliothek, in der sich das Element befindet.

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)>(...)
Angabe der Elemente, die aus der Bibliothek übernommen werden sollen.

ELEMENT = *ALL(...)
Alle Elemente werden aus der Bibliothek übernomen.

ELEMENT = <composed-name 1..64 with-under with-wild(132)>(...)
Name des Elementes, welches aus der Bibliothek in eine Datei übernommen werden soll.

VERSION = *HIGHEST-EXISTING / *ALL / *UPPER-LIMIT /
<composed-name 1..24 with-under with-wild(52)>
Version, die das auszugebende Element besitzt.

VERSION = *HIGHEST-EXISTING
Das Element mit der höchsten bestehenden Version wird verwendet.

VERSION = *UPPER-LIMIT
Die in der Bibliothek unter dem angegebenen TYPE und Namen höchstmögliche Version X'FF' wird ausgegeben.

VERSION = <composed-name 1..24 with-under with-wild(52)>
Explizite Angabe der Version des Elementes, das ausgegeben werden soll.

TYPE = *DEFAULT / *ALL / <alphanum-name 1..8 with-wild(20)>
Typ, den das zu übernehmende 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 übernommen

TYPE = <alphanum-name 1..8 with-wild(20)>
Nur der angegebene Typ wird übernommen.

USER-DATE = *ANY / *TODAY / <date 8..10 with-compl> / *INTERVAL(...)
Datum, das vom Benutzer vergeben wurde.

USER-DATE = *ANY
Das auszugebende Element besitzt ein beliebiges Datum.

USER-DATE = *TODAY
Das Element mit dem aktuellen Tagesdatum wird ausgewählt.

USER-DATE = <date 8..10 with-compl>
Das Element wird ausgewählt, dessen Datum explizit in der Form [JJ]JJ-MM-TT eingegeben wird.

USER-DATE = *INTERVAL(...)
Alle Elemente, die in dem angegebenen Zeitraum liegen, werden ausgewählt.

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.

TO-FILE = *STD / *BY-SOURCE / <filename 1..54 without-gen-vers with-wild-constr> / *LINK(...)
Name der Zieldatei.

TO-FILE = *STD
Standardmäßig werden die Elementdaten in Dateien ausgegeben, wobei die Datei den gleichen Namen wie das Element erhält.

TO-FILE = *BY-SOURCE
Der Dateiname ist der gleiche Name wie der Elementname.

TO-FILE = <filename 1..54 without-gen-vers with-wild-constr>
Name der Zieldatei. Eine Konstruktionsangabe bezieht sich auf den Elementnamen.

TO-FILE = *LINK(...)
Das Element wird in die Datei ausgegeben, die über den Dateikettungsnamen zugewiesen wurde.

LINK-NAME = <structured-name 1..8>
Dateikettungsname.

FILE-ATTRIBUTES = *BY-ELEMENT / *BY-CATALOG / *DEFAULT / *PARAMETERS(...)
Dateiattribute, die bei der Erzeugung der Datei festgelegt werden. LMSCONV bestimmt die Dateiattribute nach folgender Hierarchie:

  1. LINK-Eintrag

  2. im Element gespeicherte Dateiattribute

  3. Katalogeintrag

  4. Default-Werte von LMSCONV

Die nachfolgenden Angaben wirken nur, wenn nicht TO-FILE=*LINK angegeben wurde.

FILE-ATTRIBUTES = *BY-ELEMENT
Die im Element gespeicherten Dateiattribute haben Vorrang.

FILE-ATTRIBUTES = *BY-CATALOG
Die im Katalogeintrag gespeicherten Attribute haben Vorrang. Fehlt der Katalogeintrag, wirkt die Angabe *BY-CATALOG wie die Angabe *BY-ELEMENT.

Die Datei kann auch als SAM-Node-File auf Net-Storage mit dem als Dateiattribut gespeicherten Zeichensatz (NETCCSN) erstellt werden.

FILE-ATTRIBUTES = *PARAMETERS(...)

ACCESS-METHOD = *DEFAULT / *ISAM / *SAM
Legt die Zugriffsmethode ISAM oder SAM für die Zieldatei fest. Der Standardwert ist *ISAM oder der mit MODIFY-DEFAULTS aktuell eingestellte Wert

WRITE-MODE = *DEFAULT / *CREATE / *REPLACE / *EXTEND / *ANY
Überschreiben einer Datei gleichen Namens. Existiert die Datei nicht unter diesem Namen, wird sie neu angelegt.

WRITE-MODE = *DEFAULT
Der Standardwert ist *CREATE (s.u.) oder der mit MODIFY-DEFAULTS aktuell eingestellte Wert.

WRITE-MODE = *CREATE
Die neue Datei darf noch nicht existieren und wird neu erzeugt.

WRITE-MODE = *REPLACE
Die neue Datei muss bereits existieren und wird dann ersetzt.

WRITE-MODE = *EXTEND
Die Datei wird erweitert, wenn sie bereits existiert. Ansonsten wird sie neu angelegt.

WRITE-MODE = *ANY
Die Datei wird ersetzt, wenn sie bereits existiert. Ansonsten wird sie neu angelegt.

DIALOG-CONTROL = *DEFAULT / *NO / *YES / *ERROR
Dieser Operand legt fest, ob während der Ausführung einer Anweisung ein Dialog mit dem Benutzer geführt werden soll oder nicht.

Nähere Erläuterungen zur Dialogführung unter MODIFY-DEFAULTS.

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 / *ERROR
Siehe die Beschreibung bei der Anweisung MODIFY-DEFAULTS.

Beispiele

Das Element ELEM1 wird mit EXTRACT-ELEMENT in die Datei TEST mit den spezifizierten Dateieigenschaften ausgegeben.


/add-file-link file-name=test,link-name=out,access-method=*sam, -
/              record-format=*variable
/start-lmsconv
//open-library library=libin
//extract-element (,elem1,s),*link(link-name=out)
//end


Sollen alle Elemente einer Bibliothek unter ihrem Namen ausgegeben werden, ist folgende Anweisung anzugeben:

//extract-element (elem=*all,type=*all)