Zitat:
if dateOf(FDquery1.FieldByName('PO_FBEGIN_TIME').AsDa teTime ) = StrToDate(HOD1) then
Hier nutzt du ja nur auf der einen Seite dateOf, also ein DateTime ohne Time und auf der anderen Seite einen String. Kann ja nicht gehen.
Um es im Debugger einfacher zu haben, würde ich hier die mathematischen Funktionen nutzen, da TDatetime intern ja ein Double ist, sprich
Delphi-Quellcode:
var val1,val2:integer;
val1:=trunc(FDquery1.FieldByName('PO_FBEGIN_TIME').AsDateTime);
val2:=trunc(HOD1);
if (val1=val2) then
...
Damit lässt sich auf jeden Fall nachvollziehen, wann es true ergibt und wann nicht.