This is a migrated thread and some comments may be shown as answers.

RadScheduler Synchronization with Exchange Server after deleting one event from a series of recurring events

4 Answers 133 Views
Scheduler
This is a migrated thread and some comments may be shown as answers.
Joe Joseph
Top achievements
Rank 1
Joe Joseph asked on 05 Sep 2013, 06:57 AM
Hi,

I have been using the RadScheduler along with the ExchangeSchedulerProvider (from the SDK) to synchronize my outlook calendar with the application. The synchronization fails in the following scenario :

From a series of recurring appointments, if a single event is deleted, the intended change is reflected in the Outlook Calendar, but even after page reload, this deletion isn't reflected in the RadScheduler. It works fine when the complete series is deleted.

I would like to know if there is a way to have the change reflected as soon as the event is deleted without having to reload the page as for the deletion of a single non recurrent event or a complete recurring series, it worked fine without page reload.

The following are the sample code snippets:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head runat="server">
    <title></title>
</head>
<telerik:RadScriptBlock ID="radScriptBlock" runat="server">
    <script type="text/javascript">
    </script>
</telerik:RadScriptBlock>
<body>
    <form id="form1" runat="server">
        <div id="wrapper">
            <telerik:RadScriptManager ID="RadScriptManager" runat="server" />
            <telerik:RadStyleSheetManager ID="RadStyleSheetManager" runat="server" />
             
            <telerik:RadAjaxManager runat="server" ID="RadAjaxManager1">
                <AjaxSettings>
                    <telerik:AjaxSetting AjaxControlID="RadSchedulerCalendar">
                        <UpdatedControls>
                            <telerik:AjaxUpdatedControl ControlID="RadSchedulerCalendar" />
                        </UpdatedControls>
                    </telerik:AjaxSetting>
                </AjaxSettings>
            </telerik:RadAjaxManager>
             
            <div id="content">
                <div id="calendar">
                    <h2 class="caption">My Calendar:</h2>
                     
                    <telerik:RadScheduler
                        runat="server" ID="RadSchedulerCalendar"
                        OverflowBehavior="Expand"
                        Skin="Metro" AppointmentStyleMode="Default"
                        CustomAttributeNames="Class,AppointmentID"
                        TimeZoneOffset="-04:00:00" ShowAllDayRow="False" ShowViewTabs="False" SelectedView="WeekView"
                        FirstDayOfWeek="Monday" LastDayOfWeek="Friday"
                        TimeZoneID="Eastern Standard Time">
                    </telerik:RadScheduler>
                </div>
            </div>         
        </div>             
    </form>
</body>
</html>



public partial class _Default : System.Web.UI.Page
{
    protected void Page_Init(object sender, EventArgs e)
    {   
        RadSchedulerCalendar.Provider = new ExchangeSchedulerProvider(@"https://outlook.office365.com/EWS/Exchange.asmx", "username", "password", "domain");
    }
     
    protected void Page_Load(object sender, EventArgs e)
    {     
        RadSchedulerCalendar.Rebind();
    }
 
}
 

4 Answers, 1 is accepted

Sort by
0
Joe Joseph
Top achievements
Rank 1
answered on 06 Sep 2013, 09:50 AM
Hi,

I know 24 hours is a very short time to start panicking about, but I would be very much relieved if someone could guide me to a solution on this as the situation is kinda urgent here..
Thanks in advance. 
0
Plamen
Telerik team
answered on 06 Sep 2013, 02:08 PM
Hi Joe,

 
The described behavior is caused because of the Rebind function that you use in PageLoad event -this code is not recommended when binding your RadScheduler to Exchange Provider because many of the changes that you make like inserting and updating of appointments will not be executed at all. 

I would also like to remind you that there is no official time frame for forum thread answers and if you need a urgent answer we kindly recommend submitting a support ticket.

Regards,
Plamen
Telerik
If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to the blog feed now.
0
Joe Joseph
Top achievements
Rank 1
answered on 08 Sep 2013, 05:10 PM
I made the changes as per your suggestions, but availed no success. Thanks anyway.
0
Plamen
Telerik team
answered on 10 Sep 2013, 09:07 AM
Hi,

 We have prepared a sample project implementing RadScheduler synchronization with the outlook calendar. I would like to clarify that when the ExchangeProvider is instantiated on Page_Init server-side event the RadScheduler is working as expected, so no page refresh is needed. That way when user deletes a single occurrence (not the entire recurring series) the change will reflect as expected in both calendars ( the RadScheduler and the outlook) and the RadScheduler will bound and updated to apply the changes properly. Please type your outlook account credentials in the code behind of the attached project as shown in the code snippet. 

Copy Code
protected void Page_Init(object sender, EventArgs e)
    {
        //below goes your Exchange account credentials in that order
       
        RadScheduler1.Provider = new ExchangeSchedulerProvider(@"https://hubcasbg02.telerik.com/EWS/Exchange.asmx", "antoniomoreno", "amorenopassword", "telerik", "antoniomoreno@telerik.com");
    }

Hope this information will be helpful.

Regards,
Plamen
Telerik
If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to the blog feed now.
Tags
Scheduler
Asked by
Joe Joseph
Top achievements
Rank 1
Answers by
Joe Joseph
Top achievements
Rank 1
Plamen
Telerik team
Share this question
or