Now that we have a PowerPivot workbook in the Excel Rich Client, we are ready to publish that workbook to SharePoint.
In "What is Power Pivot for SharePoint? Part 1" I discussed the Data Model and how it is a database inside of Excel. When you publish/upload a regular Excel workbook to SharePoint, that file gets chunked up into blobs and stored in the Content Database. With a PowerPivot workbook the Excel workbook also gets stored in the Content Database, BUT the Data Model gets created and stored (after the initial (successful) refresh in browser) on the server running POWERPIVOT.
Note: In SharePoint 2010, the Analysis Service POWERPIVOT instance is going to be on a SharePoint server in the farm. In SharePoint 2013, we recommend using a SQL Server off the farm. Step by step install instructions here.
I am now going to touch on the three refreshes of PowerPivot 2013 and how they work.
1. Browser Refresh
When you open workbook and click a slicer, you are merely accessing the Data Model. In other words, (in this example) the PowerPivot workbook stored in a SharePoint Report Library is going our to the SQL Server running PowerPivot > Databases > PowerPivot20Test20Workbook and is pulling whatever data (fresh or stale) that is currently in that cube.
If you login to SQL Management Studio > Analysis Services > Servername\POWERPIVOT > Databases you will see the Data Model (in this case PowerPivot20Test20Workbook_ae1bfdf63a44395b27a908c0ac0855_1f7abf568bb14cd4bb070b5eb858911c_SSPM):
Troubleshooting: I have seen the refresh in browser fail periodically. This was caused by not having the correct ASOLEDB and ADOMD.Net drivers (located here: for SQL 2008 R2 SP1 & SQL 2012 SP1) on the SharePoint Servers running Excel Services and/or the Claims to Windows Token Service not running on these machines/lacking proper permissions.
2. Scheduled Data Refresh
In SharePoint 2010, running the Scheduled Data Refresh is the only way to get fresh data into the PowerPivot workbook (this is designed to run once daily during "after business hours"). A timer job runs, the Data Model is updated with fresh data and workbook is republished back to SharePoint. When you open the workbook and click on a slicer, the Browser Refresh occurs a you will see data from the time the Scheduled Data Refresh ran (data from the time the Scheduled Data Refresh ran that night). In 2013, you are not 100% dependent on the "Scheduled Data Refresh" (if your backend data source accepts Windows Credentials; SQL or Analysis Services) to see fresh data. In 2013, you can use the "Interactive Data Refresh" which I will touch on next. If you want to refresh from a data source that does not accept Windows Credentials (Oracle, IBM (in some cases) SQL, etc.) you will need to use the Scheduled Data Refresh in both versions of SharePoint (2010 & 2013).
For this functionality to be present is SharePoint 2013, you need to install the PowerPivot.msi on a SharePoint server.
Troubleshooting: For detailed instructions on how to set this up please follow this article. For help pulling from a data source that does not accept Windows Credentials, please see our blog.
3. Interactive Data Refresh
The "Interactive Data Refresh" is only available in SharePoint 2013. The "Interactive Data Refresh" passes the SharePoint user's credentials all the way to the backend and pulls real-time data into a PowerPivot workbook. To do this, you need to choose Data > Refresh All Connections.
You can pull data from a data source that accepts Windows Credentials (SQL & SSAS). For steps on how to set this up, please see our blog.
Can I use sql server 2000 as a data source for powerpivot 2013?
Nice article Tom. Coming from QlikView background, this article helped a lot in understanding how PowerPivot can work for enterprise solutions.
Dan: SQL Server 2000 is no longer supported by Microsoft.
Can we do this in SharePoint Online? if so, how?