Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

NK4-Platten

In BS2000 gibt es zwei Formate von PLAM-Bibliotheken. Ein 2K-orientiertes Format (NK2-PLAM-Datei) und ein 4K-orientiertes Format (NK4-PLAM-Datei). Die Konvertierung zwischen den verschiedenen Formaten wird mit der LMSCONV-Anweisung COPY-LIBRARY vorgenommen. Der Anwender legt das jeweilige Format mit /ADD-FILE-LINK ...,BUFFER-LENGTH=*STD(1 oder 2) fest. LMSCONV unterstützt beide Bibliotheksformate. Des weiteren unterstützt LMSCONV NK4-Platten mit den Anweisungen ADD-ELEMENT und EXTRACT-ELEMENT.

Aufnehmen von Dateien mit ADD-ELEMENT

Mit der Anweisung ADD-ELEMENT können Dateien beliebiger BUFFER-LENGTH in eine Bibliothek aufgenommen werden.

Ausgeben von Dateien mit EXTRACT-ELEMENT

Für die EXTRACT-ELEMENT-Anweisung sind folgende Fälle zu unterscheiden:

  1. Das Element enthält einen Attributsatz mit der originalen BUFFER-LENGTH-Angabe (z.B. nach ADD-ELEMENT-Anweisung mit SOURCE-ATTR=*KEEP bzw. für ursprüngliche UPAM-Dateien, z.B. auch Bibliotheken).

    1. Für die Zieldatei ist ein BUFFER-LENGTH-Wert explizit vorgegeben, sei es in der TASK-FILE-TABLE (TFT) über /ADD-FILE-LINK oder direkt im Katalog. In diesem Fall wird stets diese Vorgabe herangezogen. Folgende Probleme können auftreten:

      • SAM/ISAM-Datei

        Die Elementsätze sind zu lang für die vorgegebene BUFFER-LENGTH. Dies führt zu einem DMS-Fehler.

      • UPAM-Datei

        Beim Erzeugen von UPAM-Dateien füllt LMSCONV einen logischen Block (bis auf den Letzten) dicht mit 2K-Einheiten auf und gibt ihn erst dann mit UPAM aus.

        Bei BLKCTRL=DATA fängt jeder logische Block (BUFFER-LENGTH) mit einem 12 Bytes langem Kontrollfeld (CF) an. Entspricht die angegebene BUFFER-LENGTH nicht der gespeicherten, so können Daten von DMS mit dem CF überschrieben werden. Die Datei ist damit unbrauchbar.

        Bei BLKCTRL=NO können aber auch unbrauchbare Dateien erzeugt werden, wenn die BUFFER-LENGTH verändert wird. (z.B. PLAM-Dateien).

        Deshalb wird generell bei unterschiedlichen BUFFER-LENGTH-Angaben (Benutzervorgabe versus gespeicherter Wert) von LMSCONV eine Warnung ausgegeben. Es wird jedoch immer versucht, die Datei zu erzeugen.

    2. Für die Zieldatei ist kein BUFFER-LENGTH-Wert explizit vorgegeben oder bekannt. In diesem Fall wird die Angabe aus dem Attributsatz benutzt.

      Ist n in STD(n) ungerade, erhöht LMSCONV auf n+1.

  2. Das Element enthält keinen Attributsatz, z.B. für Phasen-Elemente.

    1. Für die Zieldatei ist ein BUFFER-LENGTH-Wert explizit vorgegeben. Vorgehensweise wie unter 1.a.

      Bei der Erzeugung von Phasen führen BUFFER-LENGTH-Angaben ungleich STD(1) oder STD(2) auf Fehler.

    2. Für die Zieldatei ist kein BUFFER-LENGTH-Wert explizit vorgegeben oder bekannt.

      • Für Phasen ergibt sich die BUFFER-LENGTH aus der aktuellen Umgebung, d.h. auf NK2-Platten BUFFER-LENGTH=STD(1) und auf NK4-Platten
        BUFFER-LENGTH=STD(2). Inhaltlich unterscheiden sich die Phasen nicht.

      • Ansonsten wird die BUFFER-LENGTH anhand der maximalen Satzlänge berechnet.

Zusammenfassend wird folgende Vorgehensweise empfohlen, wenn Dateien über eine Bibliothek auf eine NK4-Platte gebracht werden sollen:

  1. Aktionen auf der NK2-Platte:
    Alle „kritischen“ Elemente der Bibliothek als Datei extrahieren. Das sind „PAM“-Elemente unter Typ X, die als Datei

    • BUFFER-LENGTH=STD(n) und n ungerade haben oder

    • Pamkey-behaftete Phasen oder

    • 2K-orientierte PLAM-Dateien sind.

  2. Alle Dateien mit ungerader BUFFER-LENGTH (außer PLAM-Dateien) mit PAMCONV in NK4-Dateien konvertieren.

  3. Alle Pamkey-behafteten Phasen mit PAMCONV in NK-Phasen konvertieren.

  4. NK2-PLAM-Dateien mit der LMSCONV-Anweisung COPY-LIBRARY in NK4-PLAM-Dateien konvertieren.

  5. Danach die NK4-Dateien mit der Anweisung ADD-ELEMENT in eine NK4-PLAM-Datei aufnehmen und diese auf die NK4-Platte transferieren.