AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Kalender, Formel

Ein Thema von fckHennes · begonnen am 13. Okt 2014 · letzter Beitrag vom 14. Okt 2014
Antwort Antwort
fckHennes

Registriert seit: 13. Okt 2014
4 Beiträge
 
#1

Kalender, Formel

  Alt 13. Okt 2014, 12:32
Hallo,

ich muss in einem Projekt den Datum-Endtermin nach x Wiederholungen
berechnen.

z.b. Starttag 13.10.2014
Termine in jeder Woche, immer am Montag,Dienstag,Mittwoch
und der Endtermin soll dann nach 10 Terminen erreicht sein

das wäre in dem Beispiel der 03.11.2014

oder Termine alle 2 Wochen, immer am Montag,Dienstag,Mittwoch

das wäre dann in dem Beispiel der 24.11.2014

Kennt jemand von Euch eine Formel, um sowas zu berechnen oder hat
jemand von Euch evtl. einen Codeteil für mich, der das löst ?

Danke.

Gruß
M.
  Mit Zitat antworten Zitat
Whookie

Registriert seit: 3. Mai 2006
Ort: Graz
423 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Kalender, Formel

  Alt 13. Okt 2014, 12:38
Vielleicht schaust du die die Hilfe zu System.DateUtils an?
Whookie

Software isn't released ... it is allowed to escape!
  Mit Zitat antworten Zitat
Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.380 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Kalender, Formel

  Alt 13. Okt 2014, 12:40
Z.B. in der DateUtils gibt's IncDay und Co.

LG
Thomas
  Mit Zitat antworten Zitat
fckHennes

Registriert seit: 13. Okt 2014
4 Beiträge
 
#4

AW: Kalender, Formel

  Alt 13. Okt 2014, 12:58
Habe das folgendermassen probiert,

Delphi-Quellcode:
while Terminzaehler-AngeklickteTage > 0 do
  begin
    Endedatum.date:=IncWeek(Starttag,Wochenrhythmus);
    Startttag:=Endedatum.date;
    dec(Terminzaehler,AngeklickteTage);
    hv:=Terminzaehler-AngeklickteTage;
  end;
if hv < 0 then
  Endedatum.date:=endedatum.date-(hv*-1);
Das klappt, wenn die Tage hintereinander liegen, leider
aber nicht, wenn es z.b. Monatg,Mittwoch und Donnerstag
angewählt wurde

Geändert von mkinzler (13. Okt 2014 um 13:31 Uhr) Grund: Delphi-Tag eingefügt
  Mit Zitat antworten Zitat
Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.380 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Kalender, Formel

  Alt 13. Okt 2014, 13:09
Wieviele Tage sind es von Montag bis Mittwoch bis Donnerstag bis Montag? Du schaffst das.
  Mit Zitat antworten Zitat
fckHennes

Registriert seit: 13. Okt 2014
4 Beiträge
 
#6

AW: Kalender, Formel

  Alt 13. Okt 2014, 13:23
Steh irgendwie auf der Leitung oder Seh den Wald vor lauter
Bäumen nicht mehr heute
  Mit Zitat antworten Zitat
Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.380 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: Kalender, Formel

  Alt 13. Okt 2014, 13:43
Delphi-Quellcode:
var
  Date: TDateTime;
begin
  Date := StrToDate('13.10.2014');

  Date := IncDay(Date, 2);
  Showmessage(DateToStr(Date));

  Date := IncDay(Date, -2);
  Showmessage(DateToStr(Date));
end;
  Mit Zitat antworten Zitat
Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.388 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Kalender, Formel

  Alt 13. Okt 2014, 15:04
Auf einfachste Art:
Delphi-Quellcode:
function IsTermin(ADatum: TDateTime);
begin
  // hier z.B. mit DayOfWeek testen
end;

function LetzterTermin(AErsterTermin: TDateTime; AAnzahlTermine: Integer): TDateTime;
begin
  Result := AErsterTermin - 1;
  repeat
    Result := Result + 1;
    if IsTermin(Result) then
      Dec(AAnzahlTermine);
  until (AAnzahlTermine = 0);
end;
  Mit Zitat antworten Zitat
fckHennes

Registriert seit: 13. Okt 2014
4 Beiträge
 
#9

AW: Kalender, Formel

  Alt 14. Okt 2014, 07:05
Hallo,

Klappt.

Stand wirklich auf dem Schlauch gestern.

Danke.

Gruß
M.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf