da fehlt eine "else" würde ich mal behaupten, versuchs mal so:
Delphi-Quellcode:
if FilterText='' then
begin
showmessage('Bitte Gast von/bis Nr. eingegeben!');
end
else
begin
dbf1.Filter := FilterText
dbf1.Filtered := true;
end;
Delphi-Quellcode:
function FilterText:String;
begin
Result:='';
if (Trim(vonGast.Text)<>'') and (Trim(bisGast.Text)<>'') then
if IstEineZahl(vonGast.Text) and IstEineZahl(bisGast.Text) then
Result:='KUNR > ' + vonGast.Text + ' and KUNR < ' + bisGast.Text;
end;
//IstEineZahl ist eine weiter Funktion, in der du evtl. TryStrToInt oder sowas verwenden könntest.
Ist jetzt immer noch nicht wirklich sauber, aber vielleicht ein erster Schritt.