Hallo zusammen,
aus Performancegründen verwende ich für die Suche in Access-Datenbanktabellen _RecordSet.Find, nun habe ich aber das Problem dass die Suche NICHT erfolgreich ist wenn in Feldern gesucht wird die auch Werte mit Bindestrichen enthalten (via ADODataSet.Locate tritt das Problem nicht auf).
Suche ich bspw. nach dem existierenden Wert "BioGel" und existiert ein Eintrag "B-aaa", dann stellt sich der Datensatzzeiger auf "B-aaa". Zusätzlich ist auch die Sortierung so, dass Werte mit einem Bindestrich VOR Werten mit Leerstellen einsortiert werden. Der Wert "B-xxx" wird vor "B aaa" einsortiert...
Anwendung:
var
RS: _RecordSet;
begin
...
...
RS.Find( Format( 'Bezeichnung >= %s', [ QuotedStr(SearchValue ) ] ),
0, adSearchForward, EmptyParam );
Mit der Sortierung könnte ich (der Kunde) noch leben, aber die Fehlsuche ist fatal !
Weiss jemand Abhilfe ?
Danke für jede Antwort
mfg Holger Rogge
aus Performancegründen verwende ich für die Suche in Access-Datenbanktabellen _RecordSet.Find, nun habe ich aber das Problem dass die Suche NICHT erfolgreich ist wenn in Feldern gesucht wird die auch Werte mit Bindestrichen enthalten (via ADODataSet.Locate tritt das Problem nicht auf).
Suche ich bspw. nach dem existierenden Wert "BioGel" und existiert ein Eintrag "B-aaa", dann stellt sich der Datensatzzeiger auf "B-aaa". Zusätzlich ist auch die Sortierung so, dass Werte mit einem Bindestrich VOR Werten mit Leerstellen einsortiert werden. Der Wert "B-xxx" wird vor "B aaa" einsortiert...
Anwendung:
var
RS: _RecordSet;
begin
...
...
RS.Find( Format( 'Bezeichnung >= %s', [ QuotedStr(SearchValue ) ] ),
0, adSearchForward, EmptyParam );
Mit der Sortierung könnte ich (der Kunde) noch leben, aber die Fehlsuche ist fatal !
Weiss jemand Abhilfe ?
Danke für jede Antwort
mfg Holger Rogge
Comment