Excel Services as a Reporting Solution
- You can not use DataTables in Excel Workbooks in Excel Services. You must use a pivot table instead.
- The client machine will need to have access to the SharePoint farm or the ODC won’t be accessible (our solution was Intranet only)
- We had web context based parameters that were being stored in a hidden sheet on the workbook. We could probably have configured the queries in the workbook when provisioned to our sites, but we felt having configuration in the workbook
Ultimately, it was determined that since users needed to print workbooks from their local Excel, this was not viable as a solution. Next, we looked at UDFs.
Let me first say that UDFs I like much better than ODC. I think it just feels better writing a function that accesses targeted data rather than filtering large datasets in an ODC call. UDFs are easy to write. I won’t spend time here explaining how to implement. My lessons learned were that you could quickly create a UDF method in a DLL, and on the development server add that UDF to a workbook. You could then call the method in that workbook as you would call a normal Excel function. In SharePoint, you need only allow the DLL’s UDFs in the SSP to be trusted.
Very quickly, I had reduced the workbook to one configuration data point that I could write into the workbook based on the project workspace the Excel needed to reference. Then my UDFs would be in the workbook as follows =myUDF(OtherWorkSheetConfigCell!A1). Worked like a charm in Excel and in Excel Services.
The deal killer was that on the client machine, the DLL does not exist. No client side install is approved so unless having #NAME in a workbook was acceptable this would not work either. So, the approach was abandoned after a week of PoC effort in favor of ASP.NET custom app hosted in SharePoint.
I think that we may have been able to save the UDF workbook and in the save process replace the UDF functions with their resultant values, but we had expired our PoC time and instead when with the ASP.NET solution.
In conclusion, I was an Excel Services lightweight and am by no means an expert after this experience. I will say that the effort was fustrating since there was little client side support. Since Excel Services is a server based solution, I had hoped that UDFs would persist on the client machine once the Excel Services web view is left. I did consider that users may need to have Excel Enterprise or Professional Plus, which was also a deal breaker in my scenario. So far, our best use of Excel Services is to render a workbook in a browser. I know there are many good uses of Excel Services, but most requirements I see require minimal client side interaction. In these cases, the solution seems to break down.
I may revisit this at a later date to see if I was perhaps missing some nuances of the tool or a code based workaround to these problems.
-
Recent
- Sharepoint 2010 Anonymous Access
- 2011 Goals
- SharePoint 2010 User Profile Sync Error Fixed
- SQL Server Reporting Services 2005 and Windows Server 2008
- SharePoint 2010 and PerformancePoint Services
- 5 Tips for MSDN Forum Etiquette
- Setting up Network for Hyper-V VM
- Installing SharePoint 2010 RC on Win7
- SharePoint Saturday Houston
- SharePoint 2010 RC Installation Changes
- I’m Back – Goals for 2010 and more
- Windows 7 Virtual PC Experience
-
Links
-
Archives
- January 2011 (2)
- November 2010 (1)
- September 2010 (2)
- August 2010 (1)
- May 2010 (1)
- April 2010 (2)
- March 2010 (2)
- November 2009 (2)
- October 2009 (6)
- September 2009 (5)
- August 2009 (1)
- July 2009 (2)
-
Categories
-
RSS
Entries RSS
Comments RSS