1.5.1.2 Auswahlkonfiguration StpImport, StpExport und StpKonvert
Mit Hilfe der Auswahlkonfigurationsfunktionen StpPreSetKeys, StpPreSelectField, StpPreSelectBuf kann die Menge der Sätze eingeschränkt werden.
StpPreSetKeys schränkt die Bearbeitungsmenge mit Hilfe von Schlüsseln, die Funktionen StpPreSelectBuf und StpPreSelectField beschneidet die Menge, indem nur Sätze aufgenommen werden, in denen ein entsprechendes Muster gefunden wird. StpPreSetKeys ist nur einmal pro Aufruf von StpImport, StpExport und StpKonvert verwendbar, StpPreSelectBuf, StpPreSelectField mehrfach.
Die Auswahlkonfigurationsfunktionen können nicht gemischt werden, d.h. vor einem Aufruf von StpExport, StImport oder StpKonvert darf jeweils nur ein Auswahlkonfigurationsfunktionstyp verwendet werden. Zum Beispipel darf StpPreSelectBuf nicht zusammen mit StpPreSelectField verwendet werden.
Abarbeitung der Konfigurationen
Die Abarbeitung der Konfigurationen erfolgt in einer festgelegten Reihenfolge. Zum Beispiel wird zuerst die StpPreMoveBuf – Konfiguration und danach die StpPreValueBuf – Konfiguration behandelt. Die StpPreMoveBuf – Konfiguration wiederum wird nach der Anordnung der IPS-Befehle abgearbeitet.
Das Beispiel zeigt den Export des Kundenstammsatzes mit Kundennummer K10001. Zuerst werden Daten innerhalb des Puffers verschoben und dann erst XX und YY in den Puffer geschrieben.
StpPreValueBuf( 75, 1, "XX" ); // StpPreValueBuf - Konfiguration
StpPreValueBuf( 77, 1, "YY" );
StpPreMoveBuf( 79, 2, 90 ); // StpPreMoveBuf - Konfiguration
StpPreMoveBuf( 82, 2, 92 );
StpPreMoveBuf( 94, 2, 79 );
StpPreSetKeys( "K10001", "K10001" ); // StpPreSetKeys - Konfiguration
StpExport( "041", 1, "c:\temp\export041.txt", "a", 0, 0 );
// Vor dem Export Ausführung der Konfiguration
Vor dem Export des Kundenstammsatzes in die Datei c:\temp\export041.txt wird die StpPreMove- und danach die StpPreValue - Konfiguration ausgeführt. Die StpPreMove- Konfiguration wird gemäss der Reihenfolge der Skriptbefehle ablaufen, also zuerst wird aus Pos 79 der Wert nach Pos 90 verschoben, danach aus Pos 82 der Wert nach Pos 92 und am Ende aus Pos 94 der Wert nach Pos 79.
Die folgenden Kapitel beschreiben nun die Reihenfolge der Abarbeitung der Konfigurationen für die Schnittstellenfunktionen StpExport, SptImport und StpKonvert.
StpExport und StpKonvert
Die Anwendung der Konfigurationen und das Schreiben der Werte erfolgt Satz für Satz. Beim StpKonvert werden je nach Einstellungen des „Loglevels“ die Veränderungen ins Log geschrieben.
A: Lesen der Sätze aus der infra:DB
Der Datensatz wird beim Aufruf von StpExport oder StpKonvert aus der Datenbank gelesen und darauf zuerst die Puffer- und danach die Feldkonfigurationen angewendet.
Die Ausführung der Konfigurationsfunktionen erfolgt nach der Reihenfolge im Skript.
Die folgende Liste zeigt die Reihenfolge der Anwendung der Konfigurationen.
B: Pufferkonfigurationsfunktionen
-
StpPreMoveBufVerschieben von Daten innerhalb des aktuellen Puffers
-
StpPreValueBufSetzen von Werten im aktuellen Puffer
-
StpPreMoveFieldVerschieben von Feldern innerhalb des aktuellen Puffers
-
StpPreToUpperBufSetzen von Werten auf UpperCase innerhalb des aktuellen Puffers
C: Feldkonfigurationsfunktionen, wird bei StpExport mit nFieldHandling==4 NICHT ausgeführt
-
StpPreFormatFieldFormatiert die angegeben Felder gemäss Benutzerangaben.
-
StpPreDelimitsSetzt die Feldtrenner, falls beim Export Feldtrenner zugelassen sind.Beim StpKonvert wird diese Funktion nicht ausgeführt.
-
StpPreValueField, StpPreValueFieldHigh, StpPreValueFieldLowSetzen von Benutzer oder infra:Default Werten in die angegeben Felder.
-
StpPreToUpperFieldSetzt die angegebenen Felder auf UpperCase
-
StpPreFieldSubSet
Es werden nur die Felder dieser Feldkonfiguration exportiert. Wird diese Funktion nicht ausgerufen, erfolgt der Export aller Felder.
Wird bei StpKonvert nicht ausgeführt.
D: Abschluss wieder Pufferkonfiguration, wird nur bei nSetClrAtEndRecDelimit==1 ausgeführt
5. StpImportExportCFG
Setzt den Satztrenner beim Exportsatz. Wird bei StpKonvert nicht ausgeführt.
E: Schreiben der Werte
StpExport erstellt eine neue Datei und schreibt die Sätze laut Auswahlkonfiguration oder fügt diese einer bestehenden Datei an.
StpKonvert macht ein Update auf den gelesenen Satz oder fügt dieser ein falls ein Schlüssel verändert wurde.
StpImport
Die Anwendung der Konfiguration und das schreiben der Werte erfolgt Satz für Satz nachdem die Importdatei erfolgreich eingelesen ist.
Beim Import werden, je nach Einstellung des „Loglevels“, die erfolgreich importierten Sätze in eine Logdatei geschrieben.
A. Einlesen der Sätze aus der Importdatei
Der Datensatz wird beim Aufruf der Schnittstellefunktion StpImport aus der Importdatei gelesen und in einen Container geschrieben. Danach erfolgt zuerst die Anwendung der Puffer- und danach der Feldkonfigurationen. Die Anzahl der Importsätze kann mit Hilfe der Auswahlkonfiguration eingeschränkt werden.
B: Pufferkonfiguration Entfernen der Satztrenner
-
StpImportExportCFGDie Funktion konfiguriert das Grundverhalten der Schnittstellenfunktion.
-
StpPreDelimitsDie Funktion ersetzt die Separatoren durch infra:Separatoren und Formiert den Wert. Z.B. wird in einem String, der in ein Nummernfeld der infra:DB zu importieren ist,das „,“ durch „.“ ersetzt, laut DD formatiert und danach in das entsprechende Feld geschrieben.
C: Feldkonfiguration
-
StpPreToUpperFieldSetzt die Werte von Feldern to UpperCase
-
StpPreValueField, StpPreValueFieldHigh, StpPreValueFieldLowSetzt Werte in die angegebenen Felder.
D: Spezialbehandlung
Die folgenden beiden Funktionen können nicht zusammen verwendet werden.
-
StpPreFieldSubSetImportDie Funktion übernimmt nur die angegeben Felder aus dem Importsatz und schreibt sie in die angegeben Felder.
-
StpPreFormatFieldFormatiert die Werte gemäss Benutzerangaben
E: Schreiben des Satzes
Nach der Manipulation wird der Satz im Testmodus in eine Testdatei geschrieben oder sonst in die Datenbank.
