Du müsstest dir eine "Charset-Cleaner" Anwendung schreiben.
Man fragt alle Datensätze einer Tabelle ab und für jedes Stringfeld wäre dann Folgendes zu tun:
Feldinhalt als WideString auslesen und in AnsiString (codepage 1250) wandeln.
Dann den Ansistring wieder zurück in einen Widestring wandeln.
Die beiden Widestrings miteinander vergleichen.
Ich würde diese Zeichensatzwandlungen und den Vergleich in das Event
OnFilterRecord
packen.
Damit würden dann alle Datensätze ausgefiltert, die kein Problem mit dem polnischen Zeichensatz haben.
Im ersten Schritt würde ich die Wandlung und den Vergleich in zwei Funktionen packen:
Delphi-Quellcode:
function ConvertToCP1250(s:string):string;
var
tmp : AnsiString;
begin
tmp := ...;
Result := tmp;
end;
// prüfen, ob alle Zeichen in "s" mit Codepade 1250 kodiert werden können
function IsCP1250String(s:WideString):Boolean;
begin
Result := (s = ConvertToCP1250(s));
end;