Einzelnen Beitrag anzeigen

Benutzerbild von Captnemo
Captnemo

Registriert seit: 27. Jan 2003
Ort: Bodenwerder
1.126 Beiträge
 
Delphi XE4 Architect
 
#1

[Gelöst] DevExpress Scheduler falsches Datum bei Serienterminen

  Alt 7. Mär 2011, 15:39
Hallo Leute,

ich arbeite an einem Terminkalender und bin vom Planner von TMS auf den Scheduler von DevExpress umgestiegen (wegen des besseren Handling).
Mir ist wichtig, dass ich Termineinträge auch programmgesteuert erzeugen kann, und nicht nur per GUI im Kalender.
Einen normalen Termin in DevExpress zu erzeugen ist auch kein Problem. Der erscheint auch dort, wo er soll. Nur wenn ich einen Serientermin z.B. einen Geburtstagseintrag erzeuge, dann erscheint er immer auf dem 01.01.2012. Ich hab schon alles mögliche geändert, aber ich bekomme den Termin nur am geforderten Tag, wenn ich keinen Serientermin erzeuge. Hier mal mein Code:

Delphi-Quellcode:
procedure Tfrm_terminplaner.Button1Click(Sender: TObject);
var
  SchEvent: TcxSchedulerEvent;
  datum: TDate;
begin //Termin erscheint immer falscherweise am 01.01.2012
      datum:=Trunc(now);
      frm_terminplaner.cxSchedulerDBStorage1.BeginUpdate;
      SchEvent:=frm_terminplaner.cxSchedulerDBStorage1.createEvent;
      SchEvent.EventType:=etPattern;
      SchEvent.Location:='Bodenwerder';
      SchEvent.Caption:='Wiederkehrender Termin';
      SchEvent.Finish:=datum+1;
      SchEvent.Duration:=1;
      SchEvent.AllDayEvent:=True;
      SchEvent.State:=tlsFree;
      SchEvent.LabelColor:=clGreen;
      SchEvent.ReminderDate:=datum-1;
      SchEvent.ReminderMinutesBeforeStart:=1440;
      SchEvent.RecurrenceInfo.Start:=datum;
      SchEvent.RecurrenceInfo.Recurrence:=cxreYearly;
      //SchEvent.RecurrenceInfo.Count:=-1;
      SchEvent.RecurrenceInfo.YearPeriodicity:=1;
      SchEvent.Post;
      frm_terminplaner.cxSchedulerDBStorage1.EndUpdate;
end;

procedure Tfrm_terminplaner.Button2Click(Sender: TObject);
var
  SchEvent: TcxSchedulerEvent;
  datum: TDate;
begin //Termin da wo er soll
      datum:=Trunc(now);
      frm_terminplaner.cxSchedulerDBStorage1.BeginUpdate;
      SchEvent:=frm_terminplaner.cxSchedulerDBStorage1.createEvent;
      SchEvent.EventType:=etNone;
      SchEvent.Location:='Bodenwerder';
      SchEvent.Caption:='Einmaliger Termin';
      SchEvent.Finish:=datum+0.5;
      SchEvent.Duration:=0.25;
      SchEvent.AllDayEvent:=False;
      SchEvent.State:=tlsBusy;
      SchEvent.LabelColor:=clWhite;
      SchEvent.ReminderMinutesBeforeStart:=1440;
      SchEvent.Post;
      frm_terminplaner.cxSchedulerDBStorage1.EndUpdate;
end;
RAD 2010, DevExpress Scheduler 3.50

Kann mir jemand weiterhelfen?
Dieter
9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt. Die 10. summt dazu die Melodie von Supermario Bros.
MfG Captnemo

Geändert von Captnemo ( 7. Mär 2011 um 21:53 Uhr)
  Mit Zitat antworten Zitat