IBX.IBCustomDataSet.TIBCustomDataSet.Lookup

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

function Lookup(const KeyFields: string; const KeyValues: Variant;  const ResultFields: string): Variant; override;

C++

virtual System::Variant __fastcall Lookup(const System::UnicodeString KeyFields, const System::Variant &KeyValues, const System::UnicodeString ResultFields);

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
function public
IBX.IBCustomDataSet.pas
IBX.IBCustomDataSet.hpp
IBX.IBCustomDataSet TIBCustomDataSet

Beschreibung

Ruft Feldwerte aus einem Datensatz ab, der den angegebenen Suchwerten entspricht.

Mit Lookup können Werte für die angegebenen Felder aus einem Datensatz abgerufen werden, der dem Suchkriterium entspricht. KeyFields ist ein String mit den Feldern, die durchsucht werden sollen. Trennen Sie die einzelnen Felder durch ein Semikolon.

KeyValues ist ein variantes Array mit den Werten, nach denen in den Schlüsselfeldern (KeyFields) gesucht werden soll. Um nach mehreren Werten zu suchen, übergeben Sie in KeyValues ein variantes Array als Argument oder verwenden die Routine System.Variants.VarArrayOf, um während der Ausführung ein variantes Array zu erzeugen.

ResultFields ist ein String mit einer Liste von Feldnamen (jeweils durch Semikolon getrennt), deren Werte aus dem passenden Datensatz abgerufen werden sollen.

Lookup gibt ein variantes Array mit den Werten der in ResultFields angegebenen Felder zurück. Wenn kein Datensatz passt, ruft die Methode Null auf, um eine Null-Variante zurückzugeben.

Sind die Suchfelder in KeyFields indiziert, wird der Index von Lookup verwendet. Andernfalls erstellt Lookup einen Filter für die Suche.

Für eine Datenmenge IBDataSet1 und eine Verbindung zu einer Datenbank employee.gdb aus dem Interbase-Installationsverzeichnis sollte der Delphi-Code wie folgt aussehen:

var keyfield, keyvalue, resultVariant: Variant;
    resultFields:string;

begin
keyfield:='COUNTRY';
keyvalue:='USA';
resultFields:='CURRENCY';

resultvar:=Form1.IBDataSet1.Lookup(keyfield,keyvalue,resultFields);

end;


Siehe auch