I am using the CalHelper (as suggested by this) in order to convert RecurrenceRule back and forth to string in order to persist on the database.
With the minutely recurrence rule, it seems like the conversion is not done correctly.
Please check the below code:
var recurrenceRule = new MinutelyRecurrenceRule(); recurrenceRule.Start = new DateTime(2020, 4, 1); recurrenceRule.Interval = 30; recurrenceRule.End = new DateTime(2020, 4, 1, 2, 0, 0); var qString = CalHelper.RecurrenceRuleToString(recurrenceRule); RecurrenceRule recurrenceRule1; CalHelper.TryParseRecurrenceRule(qString, out recurrenceRule1);// recurrenceRule1 will be null
Is there a way to fix this issue?
Add the possibility either for the end user or the developer to modify the width or height (whichever is relevant) of the resource areas in different views.
By design, the month view in RadScheduler stacks the appointments for a certain day considering the start time of the appointments and their duration. Internally, it uses MonthViewEventsComparer which would be great to be replaceable somehow.
It is possible to schedule multiple appointments in the same time period. In some scenario's this should be avoided. When the agenda can change from outside the scheduler, sometimes conflics will apear when the resource is not visible on the scheduler. It would be nice to have a list of all the conflicted appointments
To reproduce: 1. Add a RadScheduler and associate a RadSchedulerNavigator to it. 2. Change the culture to "fa-IR". When running the application you will notice that the time range in the navigator is not displayed correctly considering the culture of the associate RadScheduler. Note: you can set the SchedulerNavigatorElement.DateFormat property to "dd dddd". Thus, the time range should be displayed in a similar way as the header cells in RadScheduler. Workaround: you can controls what to be displayed in the navigator by the SchedulerNavigatorElement.DateLabel.Text property. this.radScheduler1.Culture = new System.Globalization.CultureInfo("fa-IR"); string start = this.radScheduler1.ActiveView.StartDate.ToString(this.radSchedulerNavigator1.SchedulerNavigatorElement.DateFormat, this.radScheduler1.Culture); string end = this.radScheduler1.ActiveView.EndDate.ToString(this.radSchedulerNavigator1.SchedulerNavigatorElement.DateFormat, this.radScheduler1.Culture); this.radSchedulerNavigator1.SchedulerNavigatorElement.DateLabel.Text = start + " - " + end;
Currently RadScheduler can only group the appointments first by resource and then by date. It should be possible to group the appointments in day view and in week view first by date and then by resource.
Implement search function in RadSchedulerNavigator.
This feature is required for OpenEdge scenarios. A common case is that the resource_id field is stored as an integer field in your DataSource. But RadScheduler needs EventId type. You can have a look at the Appointment.ResourceId property which expects EventId value, not an integer. It is necessary to use a SchedulerMapping in this case and convert the integer value to EventId used by RadScheduler and convert the EventId to an integer used by your DataSource. This conversion is performed by the ConvertToDataSource and ConvertToScheduler callbacks. It is responsible for the proper conversion of the integer resource_id value coming from the DataSource to the RadScheduler's EventId. Additional information for the SchedulerMapping is available here: http://docs.telerik.com/devtools/winforms/scheduler/data-binding/scheduler-mapping In C#, it is just necessary to specify the name of the callback which will handle the conversion but it seems to be a problem in ABL. It is required to have events.
Please refer to the attached screenshot from Outlook.
By default, each Appointment has two properties: ResourceId and ResourceIds. Usually, the ResourceId is used when you have only a single resource for the appointment. In case you have multiple resources for an appointment the ResourceIds collection is used. However, the current implementation of the EditAppointmentDialog uses a RadDropDownList for the resource selection. Thus, the user is not allowed to create an appointment and assign two resources to it. It can be achieved only programmatically. This is a common scenario when creating a meeting and you have at least two participants. A possible solution would be to replace the resources RadDropDownList with a RadCheckedDropDownList. Thus, the user will be able to select multiple resources.
This request is to add Working hours range of the view, which will style the cells as working and non working. In addition, add a property ShowWorkingHours while will determine whether non-working hours are visible or not. Or perhaps for the sake of consistency, we can have API as in the day view: dayView.RangeFactor = ScaleRange.QuarterHour dayView.RulerStartScale = 9 dayView.RulerStartScaleMinutes = 30 dayView.RulerEndScale = 14 dayView.RulerEndScaleMinutes = 45
Currently, only one resource can be printed on a single page. It should be possible to print the appointments for more than one resource on a single page, just like RadScheduler allows you to set the number of resources per view.
In Outlook, when the appontment height should be smaller than the height needed to accommodate 1 line of text, the appointment status size is being changed instead.
It would be nice if the RadScheduler allows dragging of multiple selected appointments and change the events' start time in correspondence with the active appointment offset time.
ADD. RadScheduler - add the ability to change the culture of the generated print document.