infra:NET User
 
×
6.1 infraDBBufSetKeys – Erstellung Puffer und
setzen der Schlüssel
lRc = Object.infraDBBufSetKeys (lTable, lPath, strKey)
IPS:  infraDBBufSetKeys ( lTable, lPath, strKey, lRc)
 
Argumente
lTable Nummer der Tabelle. Daraus berechnet die Funktion die Länge des Datensatzes
lPath Indexpfadnummer. Diese Angabe wird für die Berechnung der Schlüsselfelder benutzt.
strKey Übergabe der Schlüssel, getrennt durch „,|;“ (s.u.) Die Anzahl und die Reihenfolge der Schlüssel wird durch die Pfadnummer festgelegt. Die Funktion trennt die Schlüssel und füllt sie in der angegeben Reihenfolge in die Schlüsselfelder des Satzes. Überzählige Schlüssel werden ignoriert. Sind weniger Schlüssel als Schlüsselfelder angegeben, bleiben die Felder leer.
Rückgabewerte
lRc == 0 Kein Fehler
lRc <> 0 infra-Kernsystemfehler
Beschreibung
Diese Funktion erstellt einen leeren Puffer und füllt die übergebenen Schlüssel in die Schlüsselfelder. Die Länge des Puffers wird aus der Nummer der Tabelle berechnet.
Die Schlüsselfelder errechnet infraDBcom anhand der Indexpfadnummer.
Die Schlüssel werden in strKey, getrennt durch „,“, „|“ oder „;“ übergeben. Die Funktion nimmt nun den ersten Schlüssel und fügt ihn in das erste Schlüsselfeld ein, solange bis keine Schlüssel mehr vorhanden oder alle Schlüsselfelder belegt sind.
Beispiel: Schlüsselfelder der Datei 130 über Pfad 1 sind 001,008, 002. Bei der Übergabe von "PA;LeitProLS;ProLS" wird ”PA“ in Schlüsselfeld 001, ”LeitProLS” in Schlüsselfeld 008 und ”ProLS“ in Schlüsselfeld 002 eingetragen.
Weitere Einzelheiten über Indexpfade und Indexstrings finden Sie bei der Beschreibung von infraDBSelect.
Trennzeichen
Die Standard-Trennzeichen (,|;) können mit dem Eintrag „Delimiter=...“ in der Sektion [INFRADBCOM] der infra-Datei SIBPPS.INI übersteuert werden, wenn diese Zeichen z.B. auch in den anzugebenden Schlüsselfeldinhalten vorkommen können.
Funktionsart
infraDBFunktion
Basic-Skript
Java-Skript
IPSFunktion
Beispiel Basic-Skript
Dim lRc
lRc = oIDB.infraDBBufSetKeys( 130, 1, "PA;LeitProLS;ProLS" )
Beispiel Java-Skript
var lRc = oIDB.infraDBBufSetKeys( 130, 1, "PA;LeitProLS;ProLS" );
Beispiel IPS
Long( lRc );
infraDBBufSetKeys( 130, 1, "PA;LeitProLS;ProLS", lRc );