Recherche contenant des lettres accentuées (Locate)
Bonjour,
J'utilise Borland C++ Builder (BDS 2006) et une DB firebird.
J'aimerais savoir s'il y a un solution en ce qui concerne la fonction locate lorsque le texte contenu dans la DB contient des lettres accentuées.
J'ai testé AnsiUpperCase pour convertir ma chaîne mais sans résultat !
Dans mon cas, il s'agit d'une recherche de doublons (2 tables) - Recherche sur Nom + Prénom.
Tout se passe super bien sauf si le prénom est par Ex. Stéphane :cry:
Avez-vous une idée ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
TLocateOptions Opts;
Opts.Clear();
Opts << loCaseInsensitive;
Variant locvalues[2];
bool res;
Query1->Open();
for(Query1->First();!Query1->Eof;Query1->Next())
{
Query2->Open();
for(Query2->First();!Query2->Eof;Query2->Next())
{
locvalues[0] = Variant(Query2NOM->AsString);
locvalues[1] = Variant(Query2PRENOM->AsString);
res = Query1->Locate("NOM;PRENOM", VarArrayOf(locvalues, 1), Opts);
if(res)
{
/*Traitement du Doublon*/
}
}
} |
D'avance merci pour votre aide.