Also das Problem ist tatsächlich gelöst. Es lag an Delphi.
Die
DB-Engine versteht das und liefert ein Ergebnis: select * from fam_check where DATE(verfall, + '1 year') <= CURRENT_DATE AND (DATE(p_datum, + '5 years') <= CURRENT_DATE)
Delphi verteht das nicht und braucht den Select etwas vorgewärmt.
Delphi-Quellcode:
// Datum erstmnal selbst berechnen weils delphi nicht hinbekommt
jahr_begin := datetostr(now- 365) ; //1 Jahr
jahr_end := datetostr(now-1825); //5 Jahre
//
main.qryproducts.SQL.Add('SELECT * ');
main.qryproducts.SQL.Add('FROM fam_check ') ;
main.qryproducts.SQL.Add('WHERE verfall <= '+ quotedstr(jahr_begin) ); // ohne quotedstr gehts nicht
main.qryproducts.SQL.Add(' AND p_datum <= '+ quotedstr(jahr_end) );
Vielen lieben Dank für eure Hilfe!