1.4.3 StpKonvert – Konvertieren von Datensätzen
Hinweis: Für einfache Konvertierungsaufgaben steht mit „BufAddParam(…) eine wesentlich performantere Alternative zur Verfügung, mit der unter anderem auch bei Bedarf Schlüsselfelder manipuliert werden können. Dabei wird die eigentliche Konvertierung durch eine Reorganisation ausgelöst, wodurch die Geschwindigkeit der Konvertierung in etwa der eines normalen Reorganisationslaufs entspricht.
StpKonvert(strBufName,nPath);
Argumente
strBufName
BufferName, ist einer Datenbankdatei zugeordnet.
 
nPath
Pfad, über den die Datensätze gelesen werden. Es sollte möglichst ein eindeutiger Pfad benutzt werden.
Achtung:
In den StpPre-Funktionen niemals ein Schlüsselfeld des ausgewählten Pfads verändern. Denn dann wird die Konvertierung zumeist nicht korrekt arbeiten. Zum einen kann die Schlüsseländerung zu einem Fehler führen, falls bereits ein Satz mit diesem Schlüssel vorhanden ist. Zum anderen wird das sequentielle Lesen unüberschaubar, denn es wird immer der nächste Satz zum geänderten Schlüssel gelesen.
Auch beim Ändern von Schlüsselfeldern, die nicht zum hier benutzten Pfad gehören ist Vorsicht angesagt, denn auch hier muss bei eindeutigen Schlüsselfeldern diese Eindeutigkeit gewährleistet bleiben.
Rückgabewert
StpRc:
0
Ok
<>0
Fehler bei der Ausführung der Funktion
Beschreibung
Die Funktion StpKonvert muss mit den StpPre-Funktionen präpariert werden. Z.B. soll ein neues numerisches Feld formatiert werden, damit eine formatierte 0 in allen Sätzen steht. Die Funktion liest über den angegebenen Pfad alle Sätze der ausgewählten Datei (laut strBufName) bzw. die mit StpPre-Funktionen selektierten Sätze und ändert jeden Datensatz entsprechend direkt in der Datenbank.
Achtung:
Schlüsselfelder dürfen im Normalfall nicht verändert werden, siehe Beschreibung des Pfad-Parameters
Tipp:
Sollen Schlüsselfelder geändert werden sollte die Datei mit dem StpExport exportiert werden, dann Datei löschen und neu anlegen und die geänderten Sätze wieder importieren.
Beispiel
StpPreMoveField(47,48,0);       // D6F47 Anw1 C25 nach D6F48 Anw2 verschieben
StpKonvert("006",1);
Exit();
Funktionsart
STPFunktion