Data.Win.ADODB.TCustomADODataSet.Locate

De RAD Studio API Documentation
Aller à : navigation, rechercher

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);

Propriétés

Type Visibilité  Source Unité  Parent
function public
Data.Win.ADODB.pas
Data.Win.ADODB.hpp
Data.Win.ADODB TCustomADODataSet

Description

Recherche un enregistrement particulier dans l'ensemble de données et le choisit comme enregistrement en cours.

Appelez la méthode Locate pour rechercher une ligne spécifique dans un ensemble de données et en faire la ligne en cours.

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 spécifiant les valeurs à rechercher dans les champs clé. Si KeyFields contient un seul champ, KeyValues spécifie la valeur que ce champ doit avoir dans la ligne souhaitée. Pour spécifier plusieurs valeurs de recherche, transmettez un tableau de variants en tant KeyValues, ou construisez un tableau de variants à la volée en utilisant la routine VarArrayOf. Par exemple :



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



TLocateOptions Opts;
Opts.Clear();
Opts << loPartialKey;
Variant locvalues[2];
locvalues[0] = Variant("Sight Diver");
locvalues[1] = Variant("P");
CustTable->Locate("Company;Contact", VarArrayOf(locvalues, 1), Opts);



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, Locate ignore la casse lors de la comparaison des champs. Si Options contient la valeur loPartialKey, Locate autorise les recherches partielles sur des chaînes dans KeyValues. Si Options est un ensemble vide ou si KeyFields ne contient pas de champs chaînes, Options est ignoré.

Locate renvoie true si elle trouve une ligne correspondante et fait de cette ligne la ligne en cours. Sinon, Locate renvoie false.

Voir aussi