hallo,
also ich stelle fest, dass die TTable-Befehle in der Funktion nicht gebraucht werden.
Delphi-Quellcode:
function sa_so_pruefung(laufdatum1:tdatetime):tdatetime;
begin
if dayofweek(laufdatum1)-1 = 6 then
begin
Result:=laufdatum1-1;
end;
if dayofweek(laufdatum1)-1 = 0 then
begin
Result:=laufdatum1-2;
end;
end;
laufdatum:=sa_so_pruefung(laufdatum);
Die Funktion dayofweek(..) bringt als Ergebnis einen Integerwert..was aber nicht bedeutet, dass Du den einfach von Laufdatum abziehen kannst. Im Laufdatum steht ein "double" Wert mit mehr Angaben als dem Wochentag..die sind somit zerstoert.