I have got a custom Appointment class (JobAppointment), which works off a database, has recurrence support and works well with the windows version of the RadScheduler.
Now, we want to provide the same functionality in the web version. We want to keep the database structure and content common between the two versions, but the Appontment class can change between the two versions.
We are currently able to work with Appointments in the web version, but the Appointments with recurrence rules are no different to the normal appointments. Appointment occurences for an appointment with recurrence are currently not being shown in the scheduler.
In cases like this, it is perhaps best to demonstrate with an example.
Database Fields/Appointment Class Properties:
- ID: 79
- DateStart: 5/10/2011 10:00:00 AM
- DateEnd: 5/10/2011 11:00:00 AM
- Description: Email tagging dept filter
- Comment: This should default to a department specified by the user in the options.
- RecurrenceRule: FREQ=DAILY;COUNT=5
- ParentID: 0
The Scheduler is set up as follows:
RadScheduler1.DataSource = mColAppointments
Note that mColAppointments is the List(Of JobAppointment) - a collection of Appointment objects.
There are two Issues I can see with the above:
- The recurrence rule is in the format used by the windows version. This is probably not being interpreted correctly by the web version. Therefore, I do not see the 5 occurrences from this appointment.
- The ID and ParentID are long fields, therefore absence of a parent ID is represented by 0. Unlike the windows version, the web version is treating as if all appointments are appointment occurences. Therefore it displays the "Edit this occurence or Edit the series" dialog.
In both cases, I think the solutiion might lie in doing some sort of translation when reading and writing the recurrence rule and parent id to/from the database. But I am not sure what exactly is required here.
PS - I have not submitted a support ticket as I thought this may be useful to others using this forum.
Any help much appreciated.