i am currenty working on an issue. I got the following recurring event:
Every Month on 31th day.
Well, this is working fine if the month really got 31 days, but in months with only 30 days or less, the event is scheduled for the 1st of the next month. This behavior does not align to other calendar applications like Outlook. Since my data store is a calendar in SharePoint, which can be synchronized with Outlook. This behavior cause a difference in user interface between the scheduler, SharePoint and Outlook.
Can this be solved via configuration or is it probably a bug in the scheduler?
I am currently using the .NET Scheduler v3.3.11 with timeline.
Edit: A similar issue exists if i create an recurrence which occurs every 5th friday in a month.
In a month with only 4 Fridays, the event is scheduled for the first friday of the following month.
unfortunately this is a limitation of a current version of recurring events - patterns for last day of a month or last week of the month are not supported.
Right now it’s hard to tell when this may be changed, but most probably it won’t happen in the nearest time.
You could try implementing a custom recurring pattern (although recurring patterns were intended as an internal api, so there are not much docs on extending them), or contact our sales at firstname.lastname@example.org on the matter of custom development
I was able to resolve the issue. Well since the monthly and yearly recurring patterns does not contain all information, but are completed by the event’s starting date, it was not possible to fix it up directly in the recurrence calculation.
I decided to leave the calculation itself untouched and just included a fix to limit the xth-day-expression (implicit patterns) to 5. Now recurrences every 6th friday in the month will now always be the last …day in this month. (its absolutely useless, since there is never a 6th …day in month).
Well, I added an additional method call after the calculation, which checks for the issues described in the original thread and resolves them. If you want to include them, just add the attached file as extension to your scheduler. You just need to ensure that the extension is loaded after the dhtmlxscheduler_recurring.js, since it overwrites two internal functions to extend them by an additional method call and some value changes.
I hope I can save you some time.
dhtmlxscheduler_fixed_recurring_patterns.zip (2.12 KB)