AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Probleme bei SerienTerminen von einem Kalender

Probleme bei SerienTerminen von einem Kalender

Ein Thema von gangs-taas · begonnen am 29. Jul 2009 · letzter Beitrag vom 2. Aug 2009
Antwort Antwort
Seite 1 von 2  1 2   
gangs-taas

Registriert seit: 24. Mär 2009
364 Beiträge
 
#1

Probleme bei SerienTerminen von einem Kalender

  Alt 29. Jul 2009, 11:55
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
  Mit Zitat antworten Zitat
Jürgen Thomas

Registriert seit: 13. Jul 2006
Ort: Berlin
750 Beiträge
 
#2

Re: Probleme bei SerienTerminen von einem Kalender

  Alt 29. Jul 2009, 16:04
Hallo,

wenn du C# lesen kannst (oder es versuchen willst), dann schau einmal den Tipp unter Bestimmung des Datums des letzen Wochentages eines Monats an. Das sollte sich schnell nach Delphi übertragen lassen. (Allerdings habe ich schon länger nichts aktiv in Delphi gemacht, ich müsste erst in der Doku nach den DateTime-Eigenschaften schauen.)

Hinweis: % = modulo

Gruß Jürgen
#D mit C# für NET, dazu Firebird
früher: Delphi 5 Pro, Delphi 2005 Pro mit C# (also NET 1.1)
Bitte nicht sauer sein, wenn ich mich bei Delphi-Schreibweisen verhaue; ich bin inzwischen an C# gewöhnt.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Probleme bei SerienTerminen von einem Kalender

  Alt 29. Jul 2009, 16:06
Ein Blick in die Unit DateUtils könnte auch helfen
Markus Kinzler
  Mit Zitat antworten Zitat
gangs-taas

Registriert seit: 24. Mär 2009
364 Beiträge
 
#4

Re: Probleme bei SerienTerminen von einem Kalender

  Alt 29. Jul 2009, 16:27
nein ich kann leider kein c#

@mkinzler :

was genau meinst du ?
ich finde da nämlich nichts....
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Probleme bei SerienTerminen von einem Kalender

  Alt 29. Jul 2009, 16:32
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)
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#6

Re: Probleme bei SerienTerminen von einem Kalender

  Alt 29. Jul 2009, 16:48
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;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Jürgen Thomas

Registriert seit: 13. Jul 2006
Ort: Berlin
750 Beiträge
 
#7

Re: Probleme bei SerienTerminen von einem Kalender

  Alt 29. Jul 2009, 17:09
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:
Die DayOfWeek-Enumeration ... zählt von 0 für Sonntag bis 6 für Samstag.
Also müsste es unter Delphi genauso gehen, weil Aufzählungstypen ebenfalls bei 0 anfangen:
type TWeekDay = DaySunday..DaySaturday; Jürgen
#D mit C# für NET, dazu Firebird
früher: Delphi 5 Pro, Delphi 2005 Pro mit C# (also NET 1.1)
Bitte nicht sauer sein, wenn ich mich bei Delphi-Schreibweisen verhaue; ich bin inzwischen an C# gewöhnt.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#8

Re: Probleme bei SerienTerminen von einem Kalender

  Alt 29. Jul 2009, 17:21
Ich habe es mal ausprobiert und es scheint zu funktionieren, da ich ja DayOfTheWeek benutze.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
gangs-taas

Registriert seit: 24. Mär 2009
364 Beiträge
 
#9

Re: Probleme bei SerienTerminen von einem Kalender

  Alt 29. Jul 2009, 17:41
danke
ich guck mir das morgen in ruhe an und versuch es nachzuvollziehen ^^

danke ^^
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#10

Re: Probleme bei SerienTerminen von einem Kalender

  Alt 29. Jul 2009, 17:43
Zitat von gangs-taas:
danke
ich guck mir das morgen in ruhe an und versuch es nachzuvollziehen ^^

danke ^^
Willst Du Dir das wirklich antun?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

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 01:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz