Mit dem Modul TXTIN können Textdateien zeilenweise gelesen werden. Es kann verlangt werden, dass eine Textzeile in einzelne Felder unterteilt wird.
TXTIN wird mit:
|INCL \script\txtin.mod
in einer ICS RUN1-Konfiguration verfügbar gemacht.
Folgende Parameter können in der Map
TXTIN_PARAM
gesetzt werden:
Parameter | req/opt | Beschreibung |
STATISTICS | r | ON oder OFF .
Objektstatistik am Ende der .log Datei ausgeben. |
DEBUG | r | ON oder OFF .
Debugmodus ein- oder ausschalten (Default =
OFF ). |
FIRST_LINE | o | ATTRIBUTE_NAMES oder
OFF , Default=OFF .
Falls die erste Zeile der Textdatei die Feldnamen enthält,
kann man mit ATTRIBUTE_NAMES verlangen,
dass diese entsprechend interpretiert wird. |
SEPARATOR | o | <CHAR> ,
Default='' . Separatorzeichen zwischen den
einzelnen Feldern der Textzeile. Der Wert kann als
Buchstaben oder als ASCII Code (z.B. 9 für Tabulator)
angegeben werden. Falls als Wert ''
angegeben wird, wird die aktulle Zeile nicht in Felder
unterteilt. |
TRACE | o | Jedes gelesene Objekt in der .log Datei ausgeben. |
Der Modul TXTIN liefert pro IN-Objekt folgende Systemkomponenten:
Komponente | req/opt | Beschreibung |
IN.LINE(i) | r | Zeilennummer der aktuellen Textzeile. Die erste Zeile hat die Nummer 1. |
IN.TXT(s) | r | Inhalt der aktuellen Textzeile. |
Falls der Paramter SEPARTOR
definiert wurde,
wird der Zeileninhalt in Felder aufgeteilt. Falls ausserdem
FIRST_LINE = ATTRIBUTE_NAMES
definiert wurde, wird
jeder Komponete der Namen des dazugehoerigen Feldnamen aus der 1. Zeile
zugewiesen. Falls FIRST_LINE
fehlt werden die
Komponten mit A1 .. An
benannt. Alle so erzeugten
Komponenten sind vom Typ STRING.
Prozedur | TXTIN_OPEN ! [s input][] |
Beschreibung | Öffnet die Textatei
<input> . Die Prozedur wird von RUN1
automatisch aufgerufen. |
Beispiel |
|
Prozedur | TXTIN_READ_OBJECT ! [][b state] |
Beschreibung | Liest das nächste Objekt
aus der aktuellen Textdatei. Das Objekt wird in der MAP
|
Beispiel |
|
Prozedur | TXTIN_CLOSE ! [][] |
Beschreibung | Schliesst den Modul und gibt die durch den Modul belegten Resourcen wieder frei. Die Prozedur wird von RUN1 automatisch aufgerufen. |
Beispiel |
|
! Diese ICS Konfiguration zeigt alle von txtin.mod ! gelesenen Objekte in der .log Datei an. |LICENSE \license\iltools.lic MAP USER_INPUT1 DIALOG => FILE ! FILE | STRING | ODBC MESSAGE => 'Enter .txt Input File' FILE_FILTER => txt FILE_EXISTS => TRUE OPT => input END_MAP MAP TXTIN_PARAM FIRST_LINE => ATTRIBUTE_NAMES SEPARATOR => 9 STATISTICS => ON DEBUG => OFF END_MAP MAP INPUT_SOURCES I1 => TXTIN,OPT.input END_MAP MAP INOUT I1 => DISPLAY_OBJECT1,IN END_MAP |INCL \script\util.lib |INCL \script\txtin.mod |INCL \script\run1.prg