Scheduler - Delete occurence from a series, grid refreshes with all previous occurences "deleted" too

Deleting an occurence after the original date for an event and the calendar will refresh with the occurence selected for deletion gone but also any previous occurences disappear. For example, based on my sample, deleting the 24th May the calendar will refresh with the 24th May correctly deleted but also the 17th and the 3rd May will also disappear.

The original RecurrenceException for the event is also overwritten completely instead of being appended to and therefore requires manual manipulation before performing crud operations.

Sample attached using 19.1.0.59


Attachment: Schedule__DeleteEvent_bug_2ded25c6.zip

2 Replies 1 reply marked as answer

LS Lee Stevens May 10, 2021 12:05 PM UTC

Regarding the overwriting RecurrenceException issue, in the previously attached sample, if you delete the 3rd, the 10th will then reappear when the grid refreshes as the original RecurrenceException has been overwritten.


NR Nevitha Ravi Syncfusion Team May 11, 2021 12:29 PM UTC

Hi Lee, 

Greetings from Syncfusion Support. 

 We have checked the shared sample and let you know that reported issue is due to RecurrenceID field mapping. Since RecurrenceID should be applicable for edited occurrences, it should not be mapped to parent recurrence (even 0 value), so we recommend you to use Nullable<int> type for RecurrenceID to properly work on recurrence cases. And for the same, we have modified your shared sample which can be downloaded from the following link. 

public class EventData 
    { 
        public int Id { get; set; } 
        public int UserId { get; set; } 
        public int ProjectId { get; set; } 
        public string ProjectName { get; set; } 
        public string Subject { get; set; } 
        public string Subtitle { get; set; } 
        public DateTime StartTime { get; set; } 
        public DateTime EndTime { get; set; } 
        public Nullable<int> RecurrenceID { get; set; } 
        public string RecurrenceRule { get; set; } 
        public string RecurrenceException { get; set; } 
    } 
 
 
    public static class EventDataFactory 
    { 
        public static List<EventData> GetEvents() 
        { 
            List<EventData> data = new List<EventData>() 
            { 
                new EventData() 
                { 
                    Id = 1, 
                    Subject = "Meeting", 
                    Subtitle = "Lunch", 
                    StartTime = new DateTime(2021, 5, 3, 12, 0, 0), 
                    EndTime = new DateTime(2021, 5, 3, 13, 0, 0), 
                    RecurrenceRule = "FREQ=WEEKLY;BYDAY=MO;INTERVAL=1;COUNT=10;", 
                    RecurrenceException = "20210510T120000Z" 
                } 
            }; 
 
            return data; 
        } 
 
    } 

Please try the above solution and let us know if you need any further assistance. 

Regards, 
Nevitha  


Marked as answer
Loader.
Up arrow icon