Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

CONCATENATE-DISK-FILES

&pagelevel(3)&pagelevel

Mehrere SAM-Dateien in eine Datei kopieren

Komponente:

BS2000

Funktionsbereich:

Dateiverarbeitung

Anwendungsbereich:

FILE                                                                                                             

Privilegierung:

STD-PROCESSING
TSOS

Funktionsbeschreibung

Mit dem Kommando CONCATENATE-DISK-FILES können die Inhalte zweier oder mehrerer SAM-Dateien hintereinander in eine Datei kopiert werden. Voraussetzung ist allerdings, dass die Dateien bezüglich ihrer Strukturattribute FILE-STRUCTURE, BUFFER-LENGTH, RECORD-FORMAT, BLOCK-CONTROL-INFORMATION und CODED-CHARACTER-SET übereinstimmen.
Dateien fester Satzlänge (RECORD-FORMAT=FIXED) müssen bezüglich der Satzlänge (RECORD-SIZE) übereinstimmen.
Die Zieldatei ist frei wählbar, standardmäßig wird jedoch die Erste der zu verkettenden Dateien als Zieldatei verwendet. Das Kommando wird abgewiesen, wenn der Benutzer kein Schreibrecht für die Zieldatei besitzt.

Verarbeitung

Die Dateien werden in der im Operand FROM-FILES angegebenen Reihenfolge satzweise kopiert, wobei der Beginn der angehängten Dateien jeweils in einem eigenen Datenblock liegt.
Tritt während des Kopiervorgangs ein Fehler auf (z.B. kein Leserecht), so wird die Bearbeitung des Kommandos mit einem Fehlercode abgebrochen. Ist die Zieldatei (Operand TO-FILE) schon angelegt, so wird diese nicht mehr gelöscht. Eine Meldung informiert über die Datei, die nicht mehr bearbeitet werden konnte.

Die Verarbeitung von verschlüsselten Dateien ist nur möglich, wenn die jeweiligen Crypto-Kennwörter in die Crypto-Kennwort-Tabelle der Task eingetragen sind (siehe Kommando ADD-CRYPTO-PASSWORD).

Format

CONCATENATE-DISK-FILES                                                                                                                       

 FROM-FILES = list-poss(255): <filename 1..54>

,TO-FILE = *FIRST-INPUT-FILE / <filename 1..54>

Operandenbeschreibung

FROM-FILES = list-poss(255): <filename 1..54>
Legt die Liste der Dateien fest, die, entsprechend ihrer Reihenfolge, in die über Operand TO-FILE festzulegende Datei kopiert werden sollen.

TO-FILE = *FIRST-INPUT-FILE / <filename 1..54>
Legt fest, in welche Datei die über Operand FROM-FILE festgelegten Dateien kopiert werden sollen. Das Kommando wird abgewiesen, falls für die Zieldatei keine Schreibberechtigung besteht.

TO-FILE = *FIRST-INPUT-FILE
Die über Operand FROM-FILES festgelegten Dateien sollen in die Datei kopiert werden, die bei Operand FROM-FILES als erste Datei angegeben ist, d.h. die der ersten Datei folgenden Dateien werden, ihrer im Operand FROM-FILES festgelegten Reihenfolge entsprechend, hinter die erste Datei kopiert.

TO-FILE = <filename 1..54>
Legt den Namen der Datei fest, in welche Datei die über Operand FROM-FILES festgelegten Dateien kopiert werden sollen. Existiert eine Datei dieses Namens bereits, so wird sie überschrieben.
Ist die Datei in der Menge der bei Operand FROM-FILES angegebenen Dateien enthalten, so muss sie dort als erste Datei angegeben sein.

Kommando-Returncode

(SC2)

SC1

Maincode

Bedeutung


0

CMD0001

ordnungsgemäße Ausführung des Kommandos


64

CMD0202

Syntax-/Semantikfehler im Dateinamen


64

DMS0681

DMS-Fehler während der Verarbeitung; zur genaueren Fehlerbestimmung können die Inserts mithilfe des kostenpflichtigen Produkts SDF-P abgefragt werden

Beispiel

/ass-syslst to=text.1,sys-num=1 —————————————————————————————————————————————— (1) 
/ass-syslst to=text.2,sys-num=2 
/ass-syslst to=text.3,sys-num=3

/wr-text 'We begin with TEXT.1 ...',output=*syslst(1) ———————————————————————— (2) 
/wr-text '.... then comes TEXT.2 ...',output=*syslst(2) 
/wr-text '.... and last there is TEXT.3!',output=*syslst(3) 
/ass-syslst *primary,sys-num=1 ——————————————————————————————————————————————— (3) 
/ass-syslst *primary,sys-num=2 
/ass-syslst *primary,sys-num=3

/concat-disk-file from=(text.1,text.2,text.2,text.2,text.3),to=text.all —————— (4)

/sh-file text.all ———————————————————————————————————————————————————————————— (5)

 We begin with TEXT.1 ...
  .... then comes TEXT.2 ...
  .... then comes TEXT.2 ...
  .... then comes TEXT.2 ...
   .... and last there is TEXT.3!




















%  SHO0301 WARNING: END OF FILE REACHED
                                                           S*SOF+     1(     1)
e
%  SHO0500  ́':1OSN:$USERXY01.TEXT.ALL ́'CLOSED

(1)

Die Systemdatei SYSTLST (SYSLST01, SYSLST02 und SYSLST03) wird den Dateien TEXT.1, TEXT.2 und TEXT.3 zugewiesen.

(2)

Mit dem Kommando WRITE-TEXT werden Texte nach SYSLST01, SYSLST02 und SYSLST03 und damit in die zugeordneten Dateien TEXT.1, TEXT.2 und TEXT.3 geschrieben.

(3)

Die Zuordnung der Systemdateien wird wieder aufgehoben. Damit werden die Dateien TEXT.1, TEXT.2 und TEXT.3 geschlossen und sind zugreifbar.

(4)

Mit dem Kommando CONCATENATE-DISK-FILES wird der Dateiinhalt der Datei TEXT.1 einmal, der Datei TEXT.2 dreimal und der Datei TEXT.3 einmal in die Datei TEXT.ALL ausgegeben.

(5)

Das Kommando SHOW-FILE zeigt den Inhalt der Datei TEXT.ALL. Die Ausgabe wird mit der Anweisung „e“ (END) beendet.