1) «WRITE(n:DIRECT
<Pfad><Dateiname>)»
|
Erstellen einer neuen oder überschreiben einer
bestehenden Datei.
|
2) «WRITE(n:APPEND
<Pfad><Dateiname>)
|
Daten an eine bestehende Datei anhängen. Existiert die
Datei noch nicht, wird sie erstellt.
|
Schreibern einer Zeile mit dem angegebenen
Text.
|
|
3) «WRITE(n: Text Text Text)»
|
(Encoding: ASCII)
|
4) «WRITE(n:ANSI Text Text Text)»
|
(Encoding: ANSI)
|
5) «WRITE(n:UTF8 Text Text Text)»
|
(Encoding: UTF8)
|
6) «WRITE(n:UT-8 Text Text Text)»
|
(Encoding: UTF8 ohne BOM)
|
Schreiben einer Zeile mit dem angegebenen Text, aber
ohne Zeilenumbruch. Der nachfolgende Output (nächster WRITE)
wird angehängt.
|
|
7) «WRITE(n:- Text Text Text)»
|
(Encoding: ASCII)
|
8) «WRITE(n:-ANSI Text Text Text)»
|
(Encoding: ANSI)
|
9) «WRITE(n:-UTF8 Text Text Text)»
|
(Encoding: UTF8)
|
10) «WRITE(n:-UT-8 Text Text Text)»
|
(Encoding: UTF8 ohne BOM)
|
Direktes Schreiben des Inhalts einer X-Variable. Dabei
erfolgt kein Expand. So ist es möglich, X-Variablen mit einem
Inhalt von mehr als 4000 Zeichen zu verwenden.
|
|
11) «WRITE(1:<MyXVar)»
|
(Encoding: ASCII)
|
12) «WRITE(1:ANSI<MyXVar)»
|
(Encoding: ANSI)
|
13) «WRITE(1:UTF8<MyXVar)»
|
(Encoding: UTF8)
|
14) «WRITE(1:UT-8<MyXVar)»
|
(Encoding: UTF8 ohne BOM)
|
15) «WRITE(1:-<MyXVar)»
|
Der nachfolgende Output wird angehängt. (Encoding:
ASCII)
|
16) «WRITE(1:-ANSI<MyXVar)»
|
Der nachfolgende Output wird angehängt. (Encoding:
ANSI)
|
17) «WRITE(1:-UTF8<MyXVar)»
|
Der nachfolgende Output wird angehängt. (Encoding:
UTF8)
|
18) «WRITE(1:-UT-8<MyXVar)»
|
Der nachfolgende Output wird angehängt. (Encoding:
UTF8 ohne BOM)
|
19) «WRITE(n:LINECOUNT)»
|
Anzahl ausgegebene Zeilen.
|
20) «WRITE(n:CLOSE)»
|
Schliessen des offenen Kanals.
|
![]() |
WichtigAchten Sie darauf, die Kanäle immer sauber zu
schliessen.
Beachten Sie auch, dass in den Pfadangaben (READ und
WRITE) nur ANSI-Zeichen erlaubt sind!
|
«WRITE(n:DIRECT <Pfad><Dateiname>)» «WRITE(n:APPEND <Pfad><Dateiname)» # «WRITE(n: Text Text Text)» «WRITE(n:ANSI Text Text Text)» «WRITE(n:UTF8 Text Text Text)» «WRITE(n:UT-8 Text Text Text)» # «WRITE(n:- Text Text Text)» «WRITE(n:-ANSI Text Text Text)» «WRITE(n:-UTF8 Text Text Text)» «WRITE(n:-UTF8 Text Text Text)» # «WRITE(1:<MyXVar)» «WRITE(1:ANSI<MyXVar)» «WRITE(1:UTF8<MyXVar)» «WRITE(1:UT-8<MyXVar)» «WRITE(1:-<MyXVar)» «WRITE(1:-ANSI<MyXVar)» «WRITE(1:-UTF8<MyXVar)» «WRITE(1:-UT-8<MyXVar)» # «WRITE(n:LINECOUNT)» # «WRITE(n:CLOSE)»
![]() |
WichtigDas Encoding darf
innerhalb eines WRITE-Blocks nicht gewechselt werden. Das bedeutet, dass
Sie von WRITE(n:DIRECT/APPEND... bis WRITE(n:CLOSE) immer
mit demselben Encoding arbeiten müssen. Wird das Enconding dennoch
gewechselt, führt dies zu folgender Fehlermeldung (Beispiel): F-Script
unkorrekt: ..\FF\rv-test.ff #4: WRITE: Output-Encoding for
'aps-4008test.log' already defined as 'UTF8'; setting to 'OEM850'
afterwards not allowed.
|
/Beispiel # Beispiel 1: «WRITE(3:DIRECT «SYS(FULLPATH)»TX\MyText.txt)» # «WRITE(3: Zeile1)» «WRITE(3: Zeile2)» «WRITE(3: Zeile3)» # «WRITE(3:CLOSE)» # Ende von Beispiel 1 /
/Beispiel # Beispiel 2: «WRITE(3:APPEND «SYS(FULLPATH)»TX\MyText.txt)» # «WRITE(3: Zeilen anfügen)» «WRITE(3: Hinzugefügte Zeile1)» «WRITE(3: Hinzugefügte Zeile2)» «WRITE(3: Hinzugefügte Zeile3)» # «WRITE(3:CLOSE)» # Ende von Beispiel 2 /
/Beispiel # Beispiel 3: «WRITE(3:DIRECT «SYS(FULLPATH)»TX\MyText.txt)» # «WRITE(3: Zeile1)» «WRITE(3:- Zeile2 erster Teil, )» «WRITE(3:- plus Zeile 2 zweiter Teil, )» «WRITE(3: plus Zeile 2 dritter Teil.)» # «WRITE(3:CLOSE)» # Ende Beispiel 3 /
Die einzulesende Datei Adressen.txt sieht wie folgt aus: ADRNR,NAME,PLZ,ORT 1000,Werkzeug AG,6006,Luzern 1001,Werkzeug AG,4002,Basel FD 1004,Trichter,6005,Luzern Der F-Script-Code: / Beispiel 4: READ/WRITE - gleichzeitig verwenden «WRITE(1:DIRECT «SYS(FULLPATH)»TX\Adressen_Output.txt)» «z~READ(2:DIRECT «SYS(FULLPATH)»TX\Adressen.txt)\I»«GOTO(# ENDE-ERR)» # «REPEAT» «z~READ(2:-)\I»«GOTO(# ENDE-DATEI)» «WRITE(1: «READ(2:MEM)»)» «zREAD(2:-)\I»«WRITE(1: «READ(2:MEM)»)» «zREAD(2:-)\I»«WRITE(1: «READ(2:MEM)»)» «zREAD(2:)\I»«WRITE(1: «READ(2:MEM)»)» «zSYS(KEYPRESS)\I»«GOTO(# ENDE-DATEI)» «LOOP» # # ENDE-DATEI «WRITE(1:CLOSE)» «READ(2:CLOSE)» Ende Beispiel 4 / # ENDE-ERR Datei nicht gefunden ! /
/headerreport # Beispiel 5: Daten gleichzeitig ausgeben (drucken) und in eine Datei schreiben. # «WRITE(1:DIRECT «SYS(FULLPATH)»TX\Umsatzliste.txt)» # «nmTODAY(Y)» «/headerpage» «LIST(AR2,/POSITIONEN)» «6»Total«52»SUM(4)\N10,.00t'» «68»«SUM(5)\N10,.00t» «WRITE(1: 0;Total;0;«SUM(4)\A»;«SUM(5)\A»)» «WRITE(1:CLOSE)» / /POSITIONEN #,4 «SUM(1,NULL)» «SUM(2,NULL)» «SUM(3,NULL)» # Druck-Output «AR2-NR\4» «6»«AR2-BEZ\30»«-» «36»«+1VUMS(AR2,#,JAHR«MEM\N»)\N10,.00t'»«-» «52»«+2VUMS($)\N10,.00t'»«-» «68»«+3VUMS(DB)\N10,.00t'» # «n+4SUM(2)» «n+5SUM(3)» # Schreiben in Datei «WRITE(1:- «AR2-NR\A»;«AR2-BEZ\»;«SUM(1)\A»;)» «WRITE(1: «SUM(2)\A»;«SUM(3)\A»)» / /headerpage # Druckoutput Umsatz Artikel-Hauptgruppen «73»S.«PAGE\3» Nr. Hauptgruppe «36»Umsatz Stk. «52»Umsatz Fr. «68»DB Fr. /
Nr.
|
Hauptgruppe
|
Umsatz Stk.
|
Umsatz Fr.
|
DB Fr.
|
1
|
Maschinen
|
3'085.00
|
531'234.32
|
175'752.61
|
2
|
Beleuchtung, Strom
|
0.00
|
0.00
|
0.00
|
3
|
Werkzeuge
|
0.00
|
0.00
|
0.00
|
4
|
Dienstleistungen
|
0.00
|
0.00
|
0.00
|
9
|
Diverses
|
80.00
|
7'318.25
|
4'516.80
|
- |
Total
|
- |
538'552.57
|
180'269.41
|
![]() |
HinweisDurch das F-Script
werden bei der Ausgabe keine Tabellenrahmen gedruckt.
|
![]() |
HinweisPro Artikelhauptgruppe wird eine Zeile
ausgegeben. Die Felder werden jeweils mit einem Semikolon
getrennt.
|