Office 365 offers a compelling and comprehensive set of offerings ranging from email via Exchange, to Lync to SharePoint Online in the Cloud.

This blog post explores some simple ways for you to think about leveraging both SharePoint Online with on premise solution in a “hybrid” model in your organization today.

As we consider using technologies in the Cloud, like Office 365, we also need to think about how they might impact or be impacted by on premise solutions.  And seek ways in which they might be logically linked. 

I started to play with Office 365 a few months back, specifically around getting SharePoint Online to call out to an on premise web service thru the Silverlight Client of SharePoint Online. 

The sandbox aspect of SharePoint Online does create a bit of challenge to get there from here..  Kind of like that old Mainer joke “you cahn't get theyah from heeah”.  http://youtu.be/sIJBUZm1HoY

After spending a bit too much time trying to riddle thru Silverlight calling web services from SharePoint Online, WFC, Fiddler2, Silverlight debugging , Client Access Policy files I began to realize that I was building a rocket ship..  Time to regroup… there must be a simpler way.

Silverlight, being a client side app does offer a web client to make calls outside of SharePoint Online. However, it seems that getting stuff/data to an on premise web service isn’t fully there yet.  BCS/External lists in SharePoint Online thru Azure gets us a bit closer. 

I found a nice demo of expense management in Excel 2010 in SharePoint Online and this got me thinking maybe Excel can be part of my on premise solution. Here is the demo  http://tinyurl.com/caeq2xw that shows a simple demo/solution in SharePoint Online. 

This is a cool demo for sure but it also got me thinking… didn’t we forget something in this demo?  Like when/how do we pay the employee for the expense report? 

 Of course, Dynamics ERP manages AP invoices and pays employee expenses.  I want to enable my expense report in the cloud to find its way to my on premise Dynamics ERP. 

But how can we get from the online version of SharePoint in Office 365 to my on premise ERP solution?  SharePoint Online works in what we call a “sandbox”.  This means that there are some limits to the links that can happen in the cloud and calling an on premise web service is not  easily supported.

Thus my challenge, leverage Office 365 for its cloud power and find a method to action something on premise.

I solved this dilemma using two simple techniques to “bridge” between SharePoint Online and my Dynamics ERP on premise.

  • The first technique is to use Excel both as a tool to complete the expense report in the cloud and as well as a conduit to my intranet.  Once I open an Excel workbook from SharePoint Online on my local machine, I now have access to resources behind the firewall, thus providing an easy and secure way to access to local resources like a web service that can link to my on premise Dynamics ERP without all the complexity of the sandbox Silverlight callouts.  Basically thru bringing the document and data on premise thru Excel.

 

  • The second technique is to leverage SharePoint Online workflow and email integration.  By triggering a SharePoint Online workflow via a task approval event in SharePoint Online I can have workflow send email to an on premise process or folder in a SharePoint on premise server that enables me to action the expense report at a data level where information like Vendor Id, Document Number, Invoice Amount can move from the spreadsheet to/thru a process to a web service that handles the create/post to Dynamics ERP.  This technique uses the DIP (Office Document Information Panel) to move values from Excel into SharePoint Online.


The demo of the above scenarios can be viewed here.  http://tinyurl.com/7bdnpnq

As you see with both of these demos, there can be powerful "hybrid" solutions in the cloud with SharePoint Online that can connect to on premise solutions like Dynamics ERP. 

In one my next posts, I will cover the technical aspects/details of this demo.  Stay tuned.