Read from Variable Format File
Der Schritt „Read from Variable Format File“ liest Daten aus einer Datei mit Datensätzen mit variablem Layout. Jeder Datensatz wird als Listenfeld eingelesen. Sie können das Tag angeben, das den übergeordneten Datensatztyp bezeichnet. Alle anderen Datensatztypen werden dann zu untergeordneten Listenfeldern.
Dateien mit variablem Format haben diese Merkmale:
- Datensätze in der Datei können unterschiedliche Felder und eine unterschiedliche Anzahl von Feldern enthalten.
- Jeder Datensatz muss ein Tag (gewöhnlich eine Zahl) enthalten, das den Typ des Datensatzes angibt.
- Hierarchische Beziehungen werden unterstützt.
Beispiel für eine Datei mit variablem Format
Dieses Beispiel zeigt eine Datei mit variablem Format, die Informationen zur Girokontoaktivität für zwei Kunden, Joe Smith und Anne Johnson, enthält. In diesem Beispiel ist die Datei eine durch Trennzeichen getrennte Datei, in der ein Komma als Feldtrennzeichen verwendet wird.
001 Joe,Smith,M,100 Main St,555-234-1290
100 CHK12904567,12/2/2007,6/1/2012,CHK
200 1000567,1/5/2012,Fashion Shoes,323.12
001 Anne,Johnson,F,1202 Lake St,555-222-4932
100 CHK238193875,1/21/2001,4/12/2012,CHK
200 1000232,3/5/2012,Blue Goose Grocery,132.11
200 1000232,3/8/2012,Trailway Bikes,540.00
Das erste Feld in jedem Datensatz enthält das Tag, das den Typ des Datensatzes und damit sein Format angibt:
- 001: Kundendatensatz
- 100: Kontodatensatz
- 200: Kontotransaktionsdatensatz
Bei durch Trennzeichen getrennten Dateien ist es häufig so, dass der Tag-Wert (001, 100, 200) in einer festen Anzahl von Byte am Beginn des Datensatzes steht (siehe das obige Beispiel).
Jeder Datensatz hat ein eigenes Format:
- 001: FirstName,LastName,Gender,Address,PhoneNumber
- 100: AccountID,DateOpened,ExpirationDate,TypeOfAccount
- 200: TransactionID,DateOfTransaction,Vendor,Amount
Das Datensatzformat 100 (Kontodatensatz) ist ein untergeordnetes Element des vorherigen 001-Datensatzes und das Datensatzformat 200 (Kontotransaktionsdatensatz) ein untergeordnetes Element des vorherigen 100-Datensatzes (Kontodatensatz). In der Beispieldatei gab es im Konto von Joe Smith, CHK12904567, am 05.01.2012 eine Transaktion mit dem Betrag 323,12 bei Fashion Shoes. Im Konto von Anne Johnson, CHK238193875, wiederum gab es zwei Transaktionen, eine am 05.03.2012 bei Blue Goose Grocery und eine am 08.03.2012 bei Trailway Bikes.
Registerkarte „Dateieigenschaften“
Name der Option | Beschreibung |
---|---|
Servername |
Dies gibt an, ob sich die von Ihnen als Eingabe ausgewählte Datei auf dem Computer mit dem Enterprise Designer oder auf dem Spectrum™ Technology Platform-Server befindet. Wenn Sie eine Datei auf dem lokalen Computer auswählen, lautet der Servername „Arbeitsplatz“. Wenn Sie eine Datei auf dem Server auswählen, lautet der Servername Spectrum™ Technology Platform. |
Dateiname |
Gibt den Pfad zur Datei an. Klicken Sie auf die Ellipsenschaltfläche (...), um zur gewünschten Datei zu navigieren. Sie können ein Platzhalterzeichen verwenden, um Daten aus mehreren Dateien im Verzeichnis einzulesen. Die Platzhalterzeichen * und ? werden unterstützt. Sie können beispielsweise *.csv eingeben, um alle Dateien mit der Erweiterung Beim Lesen einer Datei von einen HDFS-Dateiserver werden die folgenden Komprimierungsformate unterstützt:
Anmerkung: Die Erweiterung der Datei zeigt das zum Extrahieren zu verwendende Komprimierungsformat an.
Achtung: Falls der Spectrum™ Technology Platform-Server unter Unix oder Linux ausgeführt wird, berücksichtigen Sie, dass bei Dateinamen und Pfaden auf diesen Plattformen die Groß-/Kleinschreibung beachtet wird.
|
Datensatztyp |
Dies ist das Format der Datensätze in der Datei. Wählen Sie eine Option:
|
Zeichencodierung |
Dies ist die Codierung der Textdatei. Wählen Sie eine der folgenden Optionen:
|
Datensatzlänge |
Geben Sie bei Dateien an, die Datensätze mit fester Breite enthalten, die genaue Anzahl von Zeichen jedes Datensatzes. |
Feldtrennzeichen |
Gibt das Zeichen an, das zum Trennen von Feldern in einer Datei mit Begrenzungszeichen verwendet wird. Im folgenden Beispiel wird ein Pipe-Zeichen ( | ) im Datensatz als Feldtrennzeichen verwendet:
Die folgenden Zeichen stehen zur Definition als Feldtrennzeichen zur Verfügung:
Wenn in der Datei ein anderes Zeichen als Feldtrennzeichen verwendet wird, klicken Sie auf die Ellipsenschaltfläche, um ein anderes Zeichen als Begrenzungszeichen auszuwählen. |
Tag-Trennzeichen | Gibt das Zeichen an, das sich hinter dem Tag-Feld befindet, um in einer Datei mit Begrenzungszeichen das Identifizierungsfeld für jeden Datensatz abzugrenzen. Ein Tag-Trennzeichen muss ein einzelnen Zeichen sein. Standardmäßig stehen die folgenden Zeichen zur Definition als Tag-Trennzeichen zur Verfügung:
Wenn in der Datei ein anderes Zeichen als Tag-Trennzeichen verwendet wird, klicken Sie auf die Ellipsenschaltfläche, um ein benutzerdefiniertes Tag-Trennzeichen hinzuzufügen und auszuwählen. Anmerkung: Standardmäßig ist das Datensatz-Trennzeichen dasselbe Zeichen wie das ausgewählte Feldtrennzeichen. Um dieses Feld zu aktivieren und ein anderes Zeichen auszuwählen, deaktivieren Sie das Kästchen Wie Feldtrennzeichen. |
Wie Feldtrennzeichen | Dies zeigt an, ob das Tag-Trennzeichen dasselbe ist wie das Feldtrennzeichen. Deaktivieren Sie dieses Kästchen, um ein anderes Zeichen als Tag-Trennzeichen auszuwählen. Anmerkung: Standardmäßig ist dieses Kästchen aktiviert und das Feld Tag-Trennzeichen deaktiviert. |
Textbegrenzungszeichen |
Dies ist das Zeichen, das in einer Datei mit Begrenzungszeichen Textwerte umschließt. Im folgenden Beispiel werden im Datensatz doppelte Anführungszeichen (") als Textbegrenzungszeichen verwendet.
Die folgenden Zeichen stehen zur Definition als Textbegrenzungszeichen zur Verfügung:
Wenn in der Datei ein anderes Textbegrenzungszeichen verwendet wird, klicken Sie auf die Ellipsenschaltfläche, um ein anderes Zeichen als Textbegrenzungszeichen auszuwählen. |
Datensatz-Trennzeichen |
Gibt das Zeichen an, das zum Trennen von Datensätzen in einer zeilensequenziellen Datei oder einer Datei mit Begrenzungszeichen verwendet wird. Dieses Feld ist nicht verfügbar, wenn Sie das Kästchen Standard-Zeilenende verwenden aktivieren. Die verfügbaren Einstellungen für Datensatz-Trennzeichen sind:
Wenn in der Datei ein anderes Datensatz-Trennzeichen verwendet wird, klicken Sie auf die Ellipsenschaltfläche, um ein anderes Zeichen als Datensatz-Trennzeichen auszuwählen. |
Root-Tag-Name |
Das Tag, das für Datensätze verwendet werden soll, die ein übergeordnetes Element anderer Datensatztypen sind. Wenn Sie beispielsweise die drei Datensatztypen 001, 100 und 200 haben und die Datensatztypen 100 und 200 untergeordnete Elemente des Datensatztyps 001 sind, dann ist 001 das Root-Tag. |
Tags mit fester Breite verwenden |
Gibt an, ob ein fester Bereich am Beginn jedes Datensatzes zugeordnet werden soll, an dem das Datensatz-Tag eingefügt wird. Das folgende Beispiel zeigt eine Datei mit den Tags 001, 100, und 200 in einem Feld mit fester Breite:
|
Tag-Startposition |
Wenn Sie das Kästchen Tags mit fester Breite verwenden aktivieren, gibt diese Option die Position in jedem Datensatz an, an der das Tag beginnt. Wenn das Tag beispielsweise mit dem vierten Zeichen im Datensatz beginnt, müssten Sie 4 angeben. |
Tag-Breite |
Wenn Sie das Kästchen Tags mit fester Breite verwenden aktivieren, gibt diese Option die Anzahl von Leerzeichen an, die für Tags ab der im Feld Tag-Startposition angegebenen Position zugeordnet werden sollen. Wenn Sie beispielsweise im Feld Tag-Startposition 3 und im Feld Tag-Breite 7 angeben, würden die Positionen 4 bis 10 als Datensatz-Tag betrachtet. Der angegebene Wert muss groß genug sein, um alle Zeichen des längsten Tag-Namens einzuschließen. Der Wert im Feld Tag-Breite wird automatisch erhöht, wenn Sie den Tag-Namen im Feld Root-Tag-Name länger machen. Die maximale Tag-Breite ist 1024. |
Standard-Zeilenende verwenden |
Gibt an, dass das standardmäßige Zeilenendzeichen (EOL) des Betriebssystems, auf dem der Spectrum™ Technology Platform-Server läuft, als Datensatz-Trennzeichen der Datei verwendet wird. Wählen Sie diese Option nicht aus, wenn in der Datei ein Zeilenendzeichen verwendet wird, das sich vom standardmäßigen Zeilenendzeichen des Betriebssystems des Servers unterscheidet. Wenn in der Datei beispielsweise ein Windows-Zeilenendzeichen verwendet wird, der Server aber auf Linux läuft, aktivieren Sie diese Option nicht. Wählen Sie stattdessen im Feld Datensatz-Trennzeichen die Option „Windows“ aus. |
Datensätze mit weniger Feldern als definiert als falsch formatiert behandeln |
Wenn Sie diese Option aktivieren, werden untergeordnete Datensätze, die weniger Felder als ein vollständiger Datensatz enthalten, als falsch formatiert betrachtet. Wenn ein falsch formatierter Datensatz gefunden wird, fährt die Verarbeitung mit dem nächsten Root-Tag fort und ignoriert alle dazwischen liegenden untergeordneten Tags. Zudem wird eine Ausnahme im Protokoll festgehalten, die Informationen zum falsch formatierten untergeordneten Datensatz und die Zeilennummer enthält. Anmerkung: Datensätze werden in folgenden Situationen, unabhängig von der Aktivierung dieser Option, immer als falsch formatiert betrachtet.
|
Registerkarte „Felder“
Auf der Registerkarte Felder werden die Merkmale jedes Feldes angegeben, das aus der Datei eingelesen wird.
Registerkarte „Laufzeit“
Feldname | Beschreibung |
---|---|
Dateiname |
Zeigt den auf der ersten Registerkarte ausgewählten Dateinamen an. |
Startdatensatz |
Wenn Sie beim Einlesen der Datensätze in den Datenfluss Datensätze am Anfang der Datei überspringen möchten, geben Sie hier den ersten Datensatz an, der gelesen werden soll. Wenn Sie beispielsweise die ersten 50 Datensätze in einer Datei überspringen möchten, geben Sie 51 ein. Der 51. Datensatz ist dann der erste Datensatz, der in den Datenfluss eingelesen wird. |
Alle Datensätze |
Wählen Sie diese Option aus, wenn Sie alle Datensätze ab dem im Feld Startdatensatz definierten Datensatz bis zum Ende der Datei einlesen möchten. |
Max. Anzahl Datensätze |
Wählen Sie diese Option aus, wenn Sie nur eine bestimmte Anzahl von Datensätzen ab dem im Feld Startdatensatz angegebenen Datensatz einlesen möchten. Wenn Sie beispielsweise die ersten 100 Datensätze einlesen möchten, wählen Sie diese Option aus und geben Sie 100 an. |