Datasnap.DBClient.TCustomClientDataSet.Locate

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

function Locate(const KeyFields: string; const KeyValues: Variant;  Options: TLocateOptions): Boolean; override;

C++

virtual bool __fastcall Locate(const System::UnicodeString KeyFields, const System::Variant &KeyValues, Data::Db::TLocateOptions Options);

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
function public
Datasnap.DBClient.pas
Datasnap.DBClient.hpp
Datasnap.DBClient TCustomClientDataSet

Beschreibung

Durchsucht die Datenmenge nach einem bestimmten Datensatz und macht ihn zum aktuellen Datensatz.

Mit Locate können Sie in einer Datenmenge nach einem bestimmten Datensatz durchsuchen und der Cursor auf ihn positionieren. KeyFields ist ein String, das eine Liste von Feldnamen enthält, die durch Strichpunkte voneinander getrennt sind. In dieser Liste wird die Suche ausgeführt.

KeyValues ist ein Variant, das die in den Schlüsselfelder zu passenden Werte enthält. Wenn KeyFields ein einziges Feld aufführt, repräsentiert KeyValues den Suchwert dieses Felds. Wenn KeyFields mehrere Felder aufführt, soll einen Variant-Array als der KeyValues-Parameter übergeben werden. In Delphi können Sie einen varianten Array mithilfe einer VarArrayOf-Routine schnell und einfach erstellen. Zum Beispiel:



with CustTable do
Locate('Company;Contact;Phone', VarArrayOf(['Sight Diver', 'P', '831-431-1000']), [loPartialKey]);



TLocateOptions Opts;
Opts.Clear();
Opts << loPartialKey;
Variant locvalues[3];
locvalues[0] = Variant("Sight Diver");
locvalues[1] = Variant("P");
locvalues[2] = Variant("831-431-1000");



CustTable->Locate("Company;Contact;Phone", VarArrayOf(locvalues, 2), Opts);



Options ist eine Menge, die zusätzliche Suchbreite zum Suchen auf String-Felder optional festlegt. Wenn Options die loCaseInsensitive-Einstellung enthält, wird Locate die Groß-/Kleinschreibung bei der Zuordnung von Feldern ignorieren. Wenn Options die loPartialKey-Einstellung enthält, kann der KeyValues-Parameter unvollständige Strings für Feldwerte angeben. (In dem vorherigen Anweisung kann z.B. das Feld Contact allen Datensätzen entsprechen, wenn Contact mit 'P' beginnt). Wenn Options eine leere Menge ist, oder wenn KeyFields keine String-Felder sind, wird Options ignoriert.

Locate gibt True zurück, wenn ein passender Datensatz gefunden wird und ihn zum aktuellen Datensatz macht; ansonsten gibt Locate False zurück.

Siehe auch