![]() |
Probleme bei SerienTerminen von einem Kalender
Hey,
Ich schreibe ja im moment an einem Kalender. Und dieser Kalender bassiert auf den Kalenderwochen. d.h. er zeigt immer eine ganze woche an. (das musste vorweg zur info) so ich möchte nun serien Termine da mit einbinden, also termine die immer wiederkommen. Wenn das Termine sind die (nur ein beispiel) alle 4 wochen wiederkommen habe ich auch schon rausgefunden wie ich das mach. also wenn man rechnet (JetztigeKalenderwoche - StartKalenderwoche ) / dieWiederkehrzeit(also z.b. alle 4 wochen) wenn das Ergebnis von dieser Rechnung keinen Rest hat dann ist die Jetztige Kalenderwoche eine dieser 4 wochen .... okay soweit so gut. jetzt zu meiner Frage. wisst ihr wie ich das einbinden könnte, dass ich z.b. jeden letzten mittwoch im Monat einen termin habe ? weil dann alle 4 wochen zu sagen geht nicht. mal ist der letzte Mittwoch eines Monates nur 3 oder 5 wochen nach dem vorherigen Termin... wisst ihr wie ich das überprüfen könnte ? ich weiß nämlich einfach nicht weiter... ich hoffe ihr versteht mein Problem .... danke schon einmal |
Re: Probleme bei SerienTerminen von einem Kalender
Hallo,
wenn du C# lesen kannst (oder es versuchen willst), dann schau einmal den Tipp unter ![]() Hinweis: % = modulo Gruß Jürgen |
Re: Probleme bei SerienTerminen von einem Kalender
Ein Blick in die Unit DateUtils könnte auch helfen
|
Re: Probleme bei SerienTerminen von einem Kalender
nein ich kann leider kein c#
@mkinzler : was genau meinst du ? ich finde da nämlich nichts.... |
Re: Probleme bei SerienTerminen von einem Kalender
Den letzten Tag eines Monats kann man mit EndOfTheMonth() ermitteln. Den Wochentag eines Datums mit
DayOfTheWeek(). Dann kannst du überprüfen ob der letzte Tag vor dem Mittwoch ist ( dann musst du den Mittoch der Vorwoche nehmen, sonst den Mittwoch dieser Woche) |
Re: Probleme bei SerienTerminen von einem Kalender
Ich habe den verlinkten Source mal übersetzt (hoffentlich richtig).
Delphi-Quellcode:
uses DateUtils;
type TWeekDay = DayMonday..DaySunday; function LastDayOfWeekOfMonth(year,month: Integer;DayOfWeek: TWeekDay): TDate; var temp: TDate; begin temp := IncMonth(EncodeDateTime(year,month,1,0,0,0,0)); Result := IncDay(temp,(DayOfWeek - DayOfTheWeek(temp) + 7) mod 7 - 7); end; |
Re: Probleme bei SerienTerminen von einem Kalender
Hallo DeddyH,
soweit ich es sehe, hast du es im Prinzip richtig übersetzt. Nur mit dem Typ TWeekDay habe ich Zweifel. Unter C# gilt: Zitat:
Delphi-Quellcode:
Jürgen
type TWeekDay = DaySunday..DaySaturday;
|
Re: Probleme bei SerienTerminen von einem Kalender
Ich habe es mal ausprobiert und es scheint zu funktionieren, da ich ja DayOfTheWeek benutze.
|
Re: Probleme bei SerienTerminen von einem Kalender
danke
ich guck mir das morgen in ruhe an und versuch es nachzuvollziehen ^^ danke ^^ |
Re: Probleme bei SerienTerminen von einem Kalender
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz