Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

ZIP-Archive

&pagelevel(3)&pagelevel

Mit BS2ZIP können in BS2000-Systemen ZIP-Archive erstellt sowie Dateien zu diesen Archiven hinzugefügt bzw. aus ihnen extrahiert werden. Die ZIP-Datenkomprimierung erfolgt im Zlib-Format.

Diese Anwendung gestattet ferner das Lesen von ZIP-Archiven, die auf offenen Systemen (Windows, UNIX-Systeme, Linux) erstellt wurden, sofern die Zlib-Datenkomprimierungsmethode verwendet wurde und sofern sie kompatibel mit PKZIP 4.5 oder GZIP sind.

Die in BS2000 erstellten Archive können auch auf offenen Systemen geöffnet werden, wenn sie im WinZip-kompatiblen Format erstellt wurden.

Das Kommando zum Starten der Anwendung BS2ZIP lautet /START-ZIP-MANAGER bzw. /START-ZIP.

Nach dem Start der Anwendung kann man mit der Anweisung OPEN-ZIP-CONTAINER ein vorhandenes Archiv öffnen oder ein neues Archiv erstellen. Im Falle eines neuen Archivs muss der Benutzer das geeignete Archivformat in Abhängigkeit von dem geplanten Gebrauch des zu erstellenden Archivs (Operand FORMAT der Anweisung) wählen.

Bei der Wahl des richtigen Formats sind die folgenden Regeln zu beachten:

  1. Archiv erstellen:

    • Falls man beabsichtigt, das Archiv nur auf BS2000-Plattformen zu verwenden, kann man das Archiv im BS2000-Format erstellen. Auch wenn Sie SAM- oder ISAM-Dateien einschließlich spezieller Drucksteuerzeichen komprimieren, verwenden Sie das BS2000-Format.

    • Beabsichtigt man, das Archiv auf offenen Systemen zu exportieren, muss man das Archiv im Format *WINZIP-COMPATIBLE (Standardformat) erstellen.

  2. Archiv öffnen:

    Das Archiv-Format muss beim Öffnen eines bestehenden Archivs nicht spezifiziert werden. Das Programm findet das entsprechende Format selbst. Wenn das Format jedoch spezifiziert wird, muss es dem tatsächlichen Format des Archivs entsprechen, sonst wird die Anweisung OPEN-ZIP-CONTAINER abgelehnt. Nachdem das Archiv geöffnet wurde, können Dateien hinzugefügt oder extrahiert werden.

Die nachstehende Tabelle bietet einen Überblick über die standardmäßig vorgegebene Behandlung der verschiedenen Dateitypen durch BS2ZIP in Abhängigkeit vom Format, in dem das Archiv geöffnet wird:

ZIP-Format

Dateizugriffsmethode

SAM

ISAM

PAM/PLAM

WINZIP-COMPATIBLE

A:

Nur die Daten werden gespeichert.
WIN-ANSI-Konvertierung von EBCDIC-codierten Dateien und nicht bei Unicode-Varianten (z.B. UTFE);
als Zeilentrenner CRLF wird 000D000A bei UTF16, 0D25 bei EBCDIC und ansonsten 0D0A eingefügt.

A:

Daten und Schlüssel werden gespeichert.
WIN-ANSI-Konvertierung von EBCDIC-codierten Dateien und nicht bei Unicode-Varianten (z.B. UTFE); 
als Zeilentrenner CRLF wird 000D000A bei UTF16, 0D25 bei EBCDIC und ansonsten 0D0A eingefügt.

A:

Speicherung im Binärformat ohne Konvertierung.

X:

Die Dateien werden mit denselben Eigenschaften wie die Originaldatei extrahiert.
EBCDIC-Konvertierung bei Bedarf.
Die Sätze werden in Einklang mit dem Zeilentrenner , der in einem erweiterten Datenfeld gesichert wurde, oder falls nicht vorhanden entsprechend der Kodierung wiederhergestellt.
Standardverarbeitung, falls der Datei keine Organisationsinformation zugeordnet wurde.

X:

Die Dateien werden mit denselben Eigenschaften wie die Originaldatei extrahiert.
EBCDIC-Konvertierung bei Bedarf.
Die Sätze werden in Einklang mit dem Zeilentrenner , der in einem erweiterten Datenfeld gesichert wurde, oder falls nicht vorhanden entsprechend der Kodierung wiederhergestellt. 

X:

Die Dateien werden mit denselben Eigenschaften wie die Originaldatei extrahiert.
Neuerstellung im Binärformat.

BS2000

A:

Die Satzlänge wird mit den Daten gespeichert.

Keine Konvertierung.

A:

Die Satzlänge wird mit den Daten gespeichert.

Keine Konvertierung.

A:

Speicherung im Binärformat.

X:

Die Dateien werden mit denselben Eigenschaften wie die Originaldatei extrahiert.
Keine Konvertierung.

X:

Die Dateien werden mit denselben Eigenschaften wie die Originaldatei extrahiert.
Keine Konvertierung.

X:

Die Dateien werden mit denselben Eigenschaften wie die Originaldatei extrahiert.
Neuerstellung im Binärformat.

A: (add) Hinzufügen
X: (extract) Extrahieren

Bei den Anweisungen ADD-FILE und EXTRACT-FILE kann man dieses Standardverhalten auch ändern. Für weitere Einzelheiten siehe die Beschreibung dieser Anweisungen.

Hinweis

Hier und überall sonst in diesem Dokument, wo UTF16 erwähnt wird, ist UTF16 Big Endian gemeint. Die Little-Endian-Variante von UTF16 wird nicht unterstützt, da sie von XHCS nicht unterstützt wird. Wenn Dateien in UTF16 zu/aus Archiven hinzugefügt/extrahiert werden, fügt BS2ZIP keine BOM  hinzu, wenn es in der Datei nicht vorhanden ist, und entfernt es nicht, wenn es vorhanden ist.

BS2ZIP unterstützt vier CCSNAME-Typen: *EBCDIC, *ASCII, *UNICODE und *UNKNOWN (siehe Tabelle unten). Die Anweisungen ADD-FILE und EXTRACT-FILE verfügen über die Option CHARACTER-CONVERSION, um die gewünschte Konvertierung explizit festzulegen. Bei der Ausführung des Befehls ADD-FILE speichert BS2ZIP den CCSNAME einer Originaldatei in der Dateiinfo (Dateikommentar, der die ursprünglichen Dateiattribute enthält). Die aktuelle Kodierung der Datei wird im erweiterbaren Datenfeld gespeichert. EXTRACT-FILE kann mithilfe von CHARACTER-CONVERSION bestimmen, welche Konvertierung zur Wiederherstellung der Datei erforderlich ist. Standardmäßig stellt EXTRACT-FILE die ursprüngliche Dateikodierung wieder her; CHARACTER-CONVERSION ermöglicht es aber auch, die Ausgabedatei in ASCII oder EBCDIC umzucodieren oder während der Extraktion keine Konvertierungen vorzunehmen. Unicode-Typen werden während ADD-FILE oder EXTRACT-FILE nicht konvertiert, es sei denn es wird CHARACTER-CONVERSION = *BY-PARAMETERS verwendet. Dateien mit unbekanntem Zeichensatz sind von der Zeichenkonvertierung ausgeschlossen und können nur mit CHARACTER-CONVERSION = *NO hinzugefügt werden. Diese Dateien können nur mit CHARACTER-CONVERSION = *NO oder CHARACTER-CONVERSION = *BY-PARAMETERS extrahiert werden. D.h. die Metainformationen der Dateien werden ignoriert, wenn der Anwender keine Konvertierung wünscht oder eine Konvertierung von einem bestimmten Zeichensatz in einen anderen spezifiziert.   

*EBCDIC*ASCII*UNICODE*UNKNOWN

EDF03IRV

EDF03DRV

EDF04DRV

EDF041

EDF042

EDF043

EDF044

EDF045

EDF046

EDF047

EDF049

EDF04A

EDF04B

EDF04C

EDF04D

EDF04E

EDF04F

EEHCL2

EEHCLC

EEHCLC1

EEHCLAA

EEHCLG

ISO88591

ISO88592

ISO88593

ISO88594

ISO88595

ISO88597

ISO88599

ISO8859F

WCP1252P

UTF8

UTFE

UTF16

Alle CCSNAMEs, die in
dieser Tabelle nicht
enthalten sind und die XHCS
nicht kennt.


Von BS2ZIP hinzugefügte Dateien haben immer Kommentare, die mit „*BS2:“ beginnen und die Original-BS2000-Dateiattribute enthalten. Fehlt dieser Kommentar, geht BS2ZIP davon aus, dass die Datei von einem Nicht-Bs2000-System stammt. Standardmäßig scannt nun BS2ZIP vor dem Extrahieren die ersten 32 kB der Fremddatei, um deren Kodierung zu bestimmen (es wird zwischen ISO8859F, WCP1252, UTF8 und UTF16 unterschieden). Um diesen Schritt zu unterdrücken, verwenden Sie den Operanden CHARACTER-CONVERSION=*TO-EBCDIC (Datei wird von ISO8859F nach EDF04F konvertiert) / *TO-WIN-ANSI (Datei wird von EDF04F nach ISO8859F konvertiert) / *BY-PARAMETERS (Eingabe- und Ausgabekodierungen werden manuell festgelegt).

Alternativ kann mit dem Operanden WRITE-MODE dieser Scan für die extrahierte Fremddatei übersprungen werden. Wenn WRITE-MODE = *REPLACE-ONLY oder WRITE-MODE = *ANY angegeben ist, kann BS2ZIP die extrahierte Datei aus dem Archiv in eine vorhandene Datei schreiben, wobei das CODED-CHARACTER-SET-Attribut der existierenden Datei erhalten bleibt. Die Art der Zeichenkonvertierung wird aus diesem CODED-CHARACTER-SET-Attribut und dem Wert des Operanden CHARACTER-CONVERSION abgeleitet.

Bei Archivelementen, die vor Version V21.0B10 zu einem WinZip-kompatiblen Container hinzugefügt wurden, zeigt CRLF (0D0A) immer das Ende eines Datensatzes an, während ab Version V21.0B10 das Zeilentrennzeichen entsprechend der Kodierung der Datei ausgewählt wird (000D000A für UTF16, 0D25 für EBCDIC, 0D0A für den Rest). Die Originaldatei kann 0D0A oder 0A in der entsprechenden Codierung enthalten, andernfalls ist die Datei beim Extrahieren korrupt. Ein WinZip-kompatibles Archiv sollte keine nicht abdruckbaren SAM- oder ISAM-Dateien enthalten.

ADD-FILE

CHARACTER-CONVERSION

Bedeutung

*BY-CONTAINER-FORMAT

Standardwert. Verhalten abhängig vom Format, mit dem das ZIP-Archiv geöffnet wird.

*NO

Es wird keine Konvertierung durchgeführt.

*TO-EBCDIC

EBCDIC-Konvertierung wird durchgeführt (nur bei ASCII-codierten SAM/ISAM-Dateien).

*TO-WIN-ANSI

WIN-ANSI-Konvertierung wird durchgeführt (nur bei EBCDIC-codierten SAM/ISAM-Dateien).

EXTRACT-FILE

Das durch das Format des ZIP-Archivs festgelegte Format zum Öffnen kann geändert werden:

DATA-TYPE

Archiv-Format

WINZIP-COMPATIBLE

BS2000

*NOT-SPECIFIED

Wenn im ZIP-Archiv keine Datei-Info gefunden wird, dann wird *CHARACTER angenommen, andernfalls wird die Datei-Info verwendet.
EBCDIC-Konvertierung erfolgt gemäß Dateityp.

Wenn keine Datei-Info gefunden wird, dann führt dies zu einem Fehler, andernfalls wird die Datei-Info verwendet. 
- keine Konvertierung

*CHARACTER

Die Datei wird als SAM-Datei extrahiert.
Es wird davon ausgegangen, dass die Sätze durch 0D0A getrennt sind.
EBCDIC-Konvertierung wird durchgeführt.

Anweisung wird zurückgewiesen.

*BINARY

Die Datei wird als PAM-Datei extrahiert.
Es wird keine Konvertierung durchgeführt.

Anweisung wird zurückgewiesen.

*SAM-BINARY

Die Datei wird als SAM-Datei mit REC-FORM=U extrahiert, .
Es wird keine Konvertierung durchgeführt.

Anweisung wird zurückgewiesen.

CHARACTER-CONVERSION

Bedeutung

*BY-CONTAINER-FORMAT

Standardwert. Das Verhalten ist abhängig vom Format, mit dem das ZIP-Archiv geöffnet wird.

*NO

Es wird keine Konvertierung durchgeführt.

*TO-WIN-ANSI

WIN-ANSI-Konvertierung wird durchgeführt (nur beim Entpacken in SAM/ISAM-Datei).

*TO-EBCDIC

EBCDIC-Konvertierung wird durchgeführt (nur beim Entpacken in SAM/ISAM-Datei).

*BY-PARAMETERS(...)Die Konvertierung wird gemäß der Angaben zu Quell- und Ziel-Zeichensatz durchgeführt (nur beim Entpacken in SAM/ISAM-Datei).
FROM-CCSCoded-Character-Set der zu konvertierenden Quell-Datei
TO-CCS=*STDDer codierte Zielzeichensatz wird ausgewählt, indem der erste vollständig kompatible codierte Zeichensatz in EBCDIC mit derselben ISO-Codevariantennummer wie der ursprünglich codierte Zeichensatz ermittelt wird. Wenn der ursprünglich codierte Zeichensatz Unicode ist, wird keine Konvertierung durchgeführt. (ISO-Code-Variantennummer, siehe Handbuch XHCS)
TO-CCSCoded-Character-Set der konvertierten Ziel-Datei

Blockformat beim Extrahieren auf verschiedene Plattenformate

BS2ZIP berücksichtigt beim Extrahieren einer Datei das Format der Platte, auf der die Datei abgelegt wird, das im Archiv hinterlegte Blockformat (BLOCK-CONTROL-INFO) der Originaldatei und die Angabe im Operanden BLOCK-CONTROL-INFO, die steuert, ob das Blockformat beibehalten werden muss. Dies führt dazu, dass die Datei in einigen Fällen nicht extrahiert werden kann oder dass für die extrahierte Datei ein von der Originaldatei abweichendes Blockformat gewählt werden muss.

Extrahieren auf K-Platten

Die extrahierten Dateien erhalten das Blockformat der Originaldatei.

Extrahieren auf NK2-Platten

Dateien mit dem Blockformat PAMKEY können mit der Angabe BLOCK-CONTROL=*KEEP nicht extrahiert werden.

Abhängig vom Archivformat wird mit der Angabe BLOCK-CONTROL=*IGNORE das Blockformat wie folgt gesetzt:

Eigenschaften der
Originaldatei

Angabe im Operanden BLOCK-CONTROL

(Format BS2000)

(Format WINZIP-COMPATIBLE)

FCB-Type

BLK-CTRL

*KEEP

*IGNORE

*KEEP

*IGNORE

PAM

PAMKEY

nicht extrahiert

NO

nicht extrahiert

NO

PAM

DATA

wie Original

wie Original

wie Original

wie Original

PAM

NO

wie Original

wie Original

wie Original

wie Original

SAM

PAMKEY

nicht extrahiert

DATA

nicht extrahiert

DATA

SAM

DATA

wie Original

wie Original

wie Original

wie Original

ISAM

PAMKEY

nicht extrahiert

DATA2K

nicht extrahiert

DATA2K

ISAM

DATA

wie Original

wie Original

wie Original

wie Original