TextFile Adapter
Der TextFile Adapter wird zum importieren / exportieren von Textdateien verwendet. Der Adapter kann sowohl auf der READ als auch auf der WRITE Seite vorkommen. Egal ob sie CSV, TXT, ASC, ASCII, Flatfiles oder andere Textfiles erzeugen, einlesen bzw. in ein anderes Format umwandeln bzw. transformieren wollen, der TextFile Adapter kann damit umgehen. Bitte beachten Sie auch die allgemeinen Infos zu Adaptern.
Das CSV (Comma Separated Value) Format ist hier wohl der Klassiker. Der FlowHeater bzw. der TextFile Adapter unterstützt aber nicht nur CSV Dateien sondern fast jedes beliebiges Textformat. Zusätzlich dazu werden die unterschiedlichsten Codepages unterstützt. Standard beim erstellen ist die auf Ihrem System gerade aktive Einstellung. Die Codepage wird in der Definition mit abgespeichert. Somit können Definitionen, die z.B. auf einer deutschen Workstation erstellt wurden, über das FHBatch Modul auf einem Windows Server, der auf Englisch konfiguriert ist, ohne Probleme laufen. DOS (ASCII), Unicode (utf7, utf8, utf16, utf32) wie auch EBCDIC (IBM Großrechner) werden dabei ebenso unterstützt. Die Codepage wird einfach über das Kombinationsfeld "Codepage" ausgewählt.
Reiter Allgemein
Dateiname: Absoluter oder relativer Pfad zur Datei die gelesen oder geschrieben werden soll. Relative Pfadangaben gehen immer von dem Verzeichnis in dem die Definitionsdatei gespeichert ist aus. Über den Button ... können Sie die Datei über einen Öffnen bzw. speichern Dialog auswählen.
Erste Zeile enthält Feldnamen: Damit steuern Sie ob in der Datei die erste Zeile als Feldnamen zu interpretieren sind. Auf der READ Seite werden automatisch die Feldnamen aus der Textdatei in die Definition übernommen. Auf der WRITE Seite bestimmen Sie hiermit, dass die Feldnamen aus der Definition in die Datei geschrieben werden sollen. Feldname = Name des Feldes aus der Definition.
Codepage: Auswahl der zu verwendenden Codepage.
z.B.
850 = MS DOS ASCII westeuropäisch
1252 = Windows Ansi westeuropäisch (Standard)
65001 = Unicode UTF-8
...
Hinweis: READ und WRITE können unterschiedliche Codepages aufweisen.
Abgrenzung: Hiermit geben Sie an wie in ihrer Textdatei bzw. im Flatfile die einzelnen Werte voneinander getrennt sind. Mögliche Werte sind Trennzeichen oder Feste Breite. Wird hier Trennzeichen angegeben, kann auf dem Reiter Trennzeichen das Trennzeichen ausgewählt werden. Schalten Sie zwischen den beiden Optionen hin und her, wird z.B. bei "Feste Breite" eine Default Feldlänge von 10 vorgegeben. Mit dem Button "Feldlängen zurücksetzen" können Sie diese wieder auf 0 zurücksetzen lassen.
Zeilenumbruch: Hier können Sie zwischen DOS/Windows bzw. UNIX auswählen.
Mit der Option "Zusätzlichen Zeilenumbruch ans Ende der Datei anfügen" weisen Sie den TextFile Adapter an die letzte geschriebene Zeile ebenfalls mit einem Zeilenumbruch abzuschließen.
Reiter Trennzeichen
Trennzeichen: Hier können Sie bei CSV Dateien angeben mit welchen Trennzeichen in der Textdatei die Felder voneinander getrennt sind bzw. getrennt werden sollen. Standard Trennzeichen ist der Strichpunkt. Trifft keines der hier aufgeführten Zeichen zu können Sie alternativ den Punkt Anderes auswählen und im Textfeld ihr gewünschtes Trennzeichen manuell eingeben.
Text Begrenzung: Bei CSV Dateien oder auch Flatfiles, getrennt mit Festen Längen, kann es vorkommen, dass Spalten die Text enthalten mit einem Textbegrenzer angegeben sind. Standard ist ohne Begrenzer.
1;"Dies ist der Text";100,51 €;...
Hier können Sie aus vordefinierten Werten auswählen oder ihre eigenen Benutzerdefinierte Werte angeben. Wichtig: Wenn Sie als Abgrenzung Feste Längen ausgewählt haben, zählt der Textbegrenzer mit zu der gewählten Feldlänge. In einem Feld das auf 20 Zeichen formatiert ist können dann nur noch 18 Zeichen Text formatiert werden!
Nur auf Datentyp String anwenden: Hiermit weisen Sie den FlowHeater an die angegebene Textbegrenzung nur für den FlowHeater Datentyp String anzuwenden!
Leere Felder ignorieren: Ist diese Option aktiv, werden bei Feldern mit leeren Inhalt keine Textbegrenzer in die Textdatei geschrieben. Hinweis: Der Feldbegrenzer wird für dieses Feld trotzdem in die Datei geschrieben.
Reiter Felder / Datentypen
Auf diesem Reiter können Sie dem Adapter weitere Felder / Spalten hinzufügen bzw. vorhandene Felder ändern oder löschen. Mit dem Button "neu einlesen", werden die Spaltennamen aus der angegebenen Textdatei neu eingelesen. Diese Option ist nur auf der READ Seite aktiv.
Die Reihenfolge können Sie ganz einfach mit den Buttons Up/Down ändern. Klicken Sie dazu einfach in die Feldliste und betätigen den gewünschten Button.
Feldnamen können über das Textfeld Feldname geändert werden. Wenn in der Feldliste ein Feld markiert ist, müssen Sie dazu nur den dazugehörigen Eintrag ändern.
Format: Hier können Sie die Feldlänge eines Feldes sowie die Ausrichtung (Linksbündig bzw. Rechtsbündig) definieren. Feldlängen können Sie entweder über das Feld Länge direkt eingeben oder mit gedrückter linker Maustaste mittels der kleinen Dreiecke (siehe rote Markierung) einfach grafisch ziehen. Über das Feld Auffüllen können Sie definieren mit welchen Zeichen der restliche Platz im Feld (Linksbündig oder Rechtsündig) aufgefüllte werden soll. Standard = Leerzeichen! Hinweis: Das Auffüllen funktioniert nur, wenn für das Feld eine Feldlänge angegeben wurde und der Feldinhalt kleiner der Feldlänge ist!
Der Reiter Format
Der Reiter Format wird im allgemeinen Adapter Kapitel beschrieben.
Folgende Beispiele sind für den TextFile Adapter bereits verfügbar
- HelloWord1, HelloWorld2 und HelloWorld3 - Hier wird der Allgemeine Umgang mit dem FlowHeater erklärt.
- Konvertieren eines CSV Textfiles in eine Textdatei getrennt mit festen längen
- Umwandeln eines Text FlatFiles in eine MS-DOS ASCII CSV Textdatei
- CSV Textdatei in eine MS Access Datenbank Tabelle importieren
- Import einer CSV Datei in eine MS SQL Server Datenbank Tabelle
- Export eines FlatFiles (Felder getrennt mit festen Längen/Breiten) aus einer MS SQL Server Datenbank Tabelle
- Lesen von teilweise unstrukturierten FlatFile Textdateien zusätzlich wird hier erklärt wie Werte über mehrere Zeilen gruppiert und summiert werden können.


