Gandimann,
du hast da sehr viel doppelten Code.
Du könntest das auch so machen:
Code:
for j:=0 to 6 do begin
HODj := DateToStr(dtp1.date + j);
...
if HODj = qry_RPT_PO.FieldByName('PO_FBEGIN_TIME').asstring then begin
...
qry_RPT_DP.FieldByName('HO_D'+inttostr(j)).Value := qry_RPT_PO.FieldByName('PO_MEMO').asstring;
...