Bana gerekli olan öğrenci final sınavına girmez ise sınav tarihine 3 iş günün eklemek. Yani Perşembe gününe denk gelen sınav için Cuma-Pazartesi-Salı eklemem gerekiyor. Yardımcı olursanız sevinirim.
gn : integer;
begin
gn := Tarih.DayOfWeek()
case gn of
7: sınavtarihi:= tarih + 4
6: sınavtarihi:= tarih + 5
5: sınavtarihi:= tarih + 6
4: sınavtarihi:= tarih + 5
3: sınavtarihi:= tarih + 3
2: sınavtarihi:= tarih + 3
1: sınavtarihi:= tarih + 4
end
procedure TMazeretSinavForm.SonTarihBul();
var
ADate: TDateTime;
days: array[1..7] of string;
gun:string;
begin
days[1] := 'Pazar';
days[2] := 'Pazartesi';
days[3] := 'Salı';
days[4] := 'Çarşamba';
days[5] := 'Perşembe';
days[6] := 'Cuma';
days[7] := 'Cumartesi';
ADate := StrToDate(FinalDataQueryFinalTarih.Value);
gun := days[SysUtils.DayOfWeek(ADate)];
if (gun='Çarşamba') or (gun='Perşembe') or (gun='Cuma') then
begin
songun := IncDay(StrToDate(FinalDataQueryFinalTarih.Value),5);
end
else if gun = 'Cumartesi' then
begin
songun := IncDay(StrToDate(FinalDataQueryFinalTarih.Value),4);
end
else if gun = 'Pazar' then
begin
songun := IncDay(StrToDate(FinalDataQueryFinalTarih.Value),3);
end
else
begin
songun := IncDay(StrToDate(FinalDataQueryFinalTarih.Value),3);
end;
end;