9 Export-Funktion
Jedes Stammdatenprogramm kann ganz einfach mit einer INI-gesteuerten Exportfunktion ausgestattet werden. Die Exportfunktion wird über den Function-Code 545 ausgelöst und wirkt intern zunächst wie F9 (Code 109), bevor der aktuelle Datensatz (samt Koppelsätzen) laut den entsprechenden Angaben in der INI-Datei exportiert wird.
Beispiel für eine SibDef-Angabe (Schaltfläche):
[GuiCBControl]
CBActivate=,545:(DPD,Land-LBUF2(245,34))
[GuiPush]
Update
Function=545
Hinter der Funktionsnummer 545 werden (getrennt durch einen Doppelpunkt) in runden Klammern die Schlüssel für den Zugriff auf die Konfigurationsdaten der INI-Datei angegeben: (Sektionsname, Schlüssel des Export-Strings)
Die zu exportierenden Daten werden über Makros im INI-Eintrag mit dem angegebenen Schlüssel erzeugt. Ist der angegebene Schlüssel nicht vorhanden, wird nach dem Standard-Schlüssel „Data“ in der angegebenen Sektion gesucht.
Beispiel für einen Export-String:
Data="CurrentDate();LBUF2(245,2);LBUF2(245,27);LBUF2(245,28);LBUF2(245,29);LBUF2(245,30);"
In der angegebenen INI-Sektion sind folgende Angaben möglich:
File = Ausgabedatei
Pfad und Name der Schnittstellendatei (mit infra-Makros). Die Schnittstellendatei wird nicht direkt mit Daten gefüllt, sondern erst in eine temporäre Datei umbenannt (siehe TempFile) und dann geschrieben. Am Ende des Exports wird die temporäre Datei wieder zurück umbenannt. Der Name der temporären Datei wird in der Regel aus Namen und Pfad der Schnittstellendatei gefolgt von der Extension „.tmp“ gebildet.
Beispiel:
File=d:\infra\dpd\LBUF2(245,2).txt
Append = Yes
Bei „Yes“ werden die zu exportierenden Daten an eine bereits existierende Exportdatei mit gleichem Namen angehängt. Bei „No“ (Default) wird die Datei überschrieben.
TempFile = Dateiname
Pfad und Name der temporären Ausgabedatei, wenn ein anderer als der automatisch gebildete temporäre Dateiname gewünscht ist.
IsoOutput = Yes
Bei „Yes“ erfolgt die Ausgabe der Schnittstellendaten im Windows ISO-Zeichensatz. Bei „No“ (Default) werden die Daten im DOS-Zeichensatz (CodePage 850) geschrieben.
LineSeparator = Zeichenfolge
Die hier angegebene Zeichenfolge aus ein oder mehreren Zeichen wird als Satztrenner automatisch am Ende eines Satzes nach der letzten Feldausgabe angehängt. In eckigen Klammern können Sonderzeichen als ASCII-Code angegeben werden.
Beispiel:
Ein Zeilenumbruch mit Zeilenvorschub als Satztrenner.
LineSeparator=[13][10]
Title = Zeichenfolge
Mit diesem Eintrag kann eine Vorlaufzeile (Titelzeile) für die Schnittstellendatei definiert werden, die automatisch als erste Zeile der Schnittstellendatei exportiert wird. Die Vorlaufzeile kann genutzt werden, um zum Beispiel Feldnamen für die in den Folgezeilen enthaltenen Felddaten in die Schnittstellendatei zu schreiben. Die Zeichenfolge wird dabei komplett 1:1 exportiert und mit einem Satztrenner abgeschlossen.
Beispiel:
Vorlaufsatz mit Feldtiteln.
Title="AuftragsNr","Beschreibung","Auftragsart","Anlegedatum"
WriteDirect = Yes
Normalerweise werden Daten, die in eine Datei geschrieben werden, durch das Betriebssystem gepuffert und blockweise geschrieben. Mit der Einstellung WriteDirect=Yes werden die Daten direkt ohne Puffer in die Schnittstellendatei geschrieben. Dadurch sinkt die Performance der Schnittstelle – im Falle eines Systemabsturzes erhöht sich allerdings die Datensicherheit.