Datasnap.DBClient.TCustomClientDataSet.LocateRecord

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

function LocateRecord(const KeyFields: string; const KeyValues: Variant;  Options: TLocateOptions; SyncCursor: Boolean): Boolean;

C++

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

Propriétés

Type Visibilité  Source Unité  Parent
function protected
Datasnap.DBClient.pas
Datasnap.DBClient.hpp
Datasnap.DBClient TCustomClientDataSet

Description

Recherche dans l'ensemble de données un enregistrement spécifique.

Appelez LocateRecord pour rechercher dans un ensemble de données un enregistrement spécifique. KeyFields est une chaîne contenant une liste délimitée par des points-virgules des noms de champs à utiliser pour la recherche.

KeyValues est un Variant contenant les valeurs devant correspondre aux champs clés. Si KeyFields énumère un seul champ, KeyValues représente la valeur recherchée pour ce champ. Si KeyFields énumère plusieurs champs, transmettez un tableau de Variant dans le paramètre KeyValues. Dans Delphi, vous pouvez construire un tableau variant à la volée en utilisant la routine VarArrayOf. Par exemple :



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



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->LocateRecord("Company;Contact;Phone", VarArrayOf(locvalues, 2), Opts, False);



Options est un ensemble qui peut spécifier des caractéristiques de recherche supplémentaires lors d'une recherche dans des champs chaînes. Si Options contient la valeur loCaseInsensitive, LocateRecord ignore la casse lors de la comparaison des champs. Si Options contient la valeur loPartialKey, le paramètre KeyValues peut spécifier une chaîne incomplète comme valeur de champ. Par exemple, dans l'instruction précédente, le champ Contact correspond avec tout enregistrement où le champ contact commence par 'P'. Si Options est un ensemble vide ou s'il n'y a pas de champs chaîne dans KeyFields, Options n'est pas pris en compte.

Le paramètre SyncCursor est défini sur True ou False pour spécifier si le curseur est défini à la position de l'enregistrement trouvé ou pas, respectivement.

LocateRecord renvoie True si elle trouve un enregistrement correspondant ; sinon, LocateRecord renvoie False.

Voir aussi