PowerPivot Gallery Error Could not load type ‘Microsoft.AnalysisServices.SharePoint.Integration.ReportGalleryView’

Oh no you, you got the Could not load type ‘Microsoft.AnalysisServices.SharePoint.Integration.ReportGalleryView’ error!!!  What to do now? Why did you get it? How to fix it?  All these questions are now answered!


PowerPivot is a wonderful tool with a lot of power to enable self-service BI in many organizations.  There is a fine line between having users create PowerPivot reports and building an enterprise solution in something like SSAS.  One of the things that blurs that line is sharing PowerPivot reports, sure you could email the files back and forth, but your exchange administrator will probably hate you after sending a couple hundred megabyte file a few times.  Luckily there is a scalable solution between personal and corporate BI: Team BI.  This involves sending the PowerPivot files to a SharePoint site and letting the server do all the lifting of the data processing in the background.  Enough about that and on to the real point of this post.

You have PowerPivot all installed and configured; let me first say congrats, that is no small task.  You’re very excited to go add a new PowerPivot application to the library when you click on the link and are greeted with a lovely error message (shown above) that reads Could not load type ‘Microsoft.AnalysisServices.SharePoint.Integration.ReportGalleryView’.  This is not what you were planning on seeing, am I correct?  Didn’t think so.  How do we fix this and why is it happening?

Why it happens: This particular library type needs an ASP.Net control which can’t be found because the code for it is in a dll that is missing.  It is likely occurring because powerpivotwebapp.wsp has not been deployed to the particular Web Application where the site in question is located.

How to fix it: Luckily the fix isn’t too difficult, although it does require that you are an administrator since we need to do some work in Central Administration.  See below for the steps.

  1. Open SharePoint 2010 Central Administration from the Start Menu or by typing in the web address in your browser
  2. Go to the System Settings section
  3. Click on Manage Farm Solutions under the Farm Management section
  4. Click on powerpivotwebapp.wsp
  5. In the Deployed To section the web application where the error occurred will not be listed
  6. Click Deploy Solution at the top of the screen (Shown in the first screenshot below)
  7. In the Deploy To section select your web application from the drop down list (Examples in second screenshot below)
  8. You have the option to schedule the deployment, keep the Now button selected if you want to be able to use the gallery immediately
  9. Click OK
  10. Go back to your site and click on the link to load the PowerPivot gallery again, don’t just refresh the error page

Image 1: On this screen click Deploy Solution in the top left corner.

Image 2: Select your web application from the drop down list and click OK.

Bradley Schacht

Bradley Schacht is a Data Platform Solution Architect on the state and local government team with Microsoft based in Jacksonville, FL. He has co-authored 3 SQL Server books including "SQL Server 2014 Professional Administration". As a former consultant and trainer, he uses his experience on many parts of the Microsoft BI and data platform to help customers deliver the best possible solutions. Bradley frequently presents at community events around the country. He is a contributor to sites such as SQLServerCentral.com and an active member of the Jacksonville SQL Server User Group (JSSUG).

You may also like...

3 Responses

  1. John Stivers says:

    Thanks – after chasing SP logs for missing features when we created new BI Site and lost PP Gallery, this solved the problem.

  2. Sakti says:

    Hi Bradley,

    I have a Web application in SharePoint 2013 which is HTTPS. I have powerpivot installed and it is working fine when I try to access the PowerPivot Gallery with the port number.

    For e.g. https://servername:45176/sites/bi/pp2/Forms/Gallery.aspx. Everything is working fine.

    But when I try to accesss the same https://servername/sites/bi/pp2/Forms/Gallery.aspx without port number I am getting the error.

    Appreciate any help or pointer to fix the issue.

    —-
    “Sorry, something went wrong Could not load type ‘Microsoft.AnalysisServices.SPAddin.ReportGallery.ReportGalleryView’.
    Correlation ID:
    4ef61a9d-6ec4-d0c8-efd5-070a86f751a5
    —-

    CorelationID details as given below.

    Application error when access /sites/bi/pp/Forms/Gallery.aspx, Error=Could not load type ‘Microsoft.AnalysisServices.SPAddin.ReportGallery.ReportGalleryView’. at System.Web.UI.TemplateParser.GetType(String typeName, Boolean ignoreCase, Boolean throwOnError) at System.Web.UI.TemplateParser.ProcessInheritsAttribute(String baseTypeName, String codeFileBaseTypeName, String src, Assembly assembly) at System.Web.UI.TemplateParser.PostProcessMainDirectiveAttributes(IDictionary parseData)

    System.Web.HttpException: Could not load type ‘Microsoft.AnalysisServices.SPAddin.ReportGallery.ReportGalleryView’. at System.Web.UI.TemplateParser.GetType(String typeName, Boolean ignoreCase, Boolean throwOnError) at System.Web.UI.TemplateParser.ProcessInheritsAttribute(String baseTypeName, String codeFileBaseTypeName, String src, Assembly assembly) at System.Web.UI.TemplateParser.PostProcessMainDirectiveAttributes(IDictionary parseData)

    Getting Error Message for Exception System.Web.HttpParseException (0x80004005): Could not load type ‘Microsoft.AnalysisServices.SPAddin.ReportGallery.ReportGalleryView’. —> System.Web.HttpParseException (0x80004005): Could not load type ‘Microsoft.AnalysisServices.SPAddin.ReportGallery.ReportGalleryView’. —> System.Web.HttpException (0x80004005): Could not load type ‘Microsoft.AnalysisServices.SPAddin.ReportGallery.ReportGalleryView’.

    at System.Web.UI.TemplateParser.GetType(String typeName, Boolean ignoreCase, Boolean throwOnError) at System.Web.UI.TemplateParser.ProcessInheritsAttribute(String baseTypeName, String codeFileBaseTypeName, String src, Assembly assembly) at System.Web.UI.TemplateParser.PostProcessMainDirectiveAttributes(IDictionary parseData) at System.Web.UI.TemplateParser.ProcessException(Exception ex) at System.Web.UI.TemplateParser.ParseStringInternal(String text, Encoding fileEncoding) at System.Web.UI.TemplateParser.ParseString(String text, VirtualPath virtualPath, Encoding fileEncoding) at System.Web.UI.TemplateParser.ProcessException(Exception ex) at
    System.Web.UI.TemplateParser.ParseStringInternal(String text, Encoding fileEncoding) at System.Web.UI.TemplateParser.ParseString(String text, VirtualPath virtualPath, Encoding fileEncoding) at System.Web.UI.TemplateParser.ParseFile(String physicalPath, VirtualPath virtualPath) at System.Web.UI.TemplateParser.Parse() at System.Web.Compilation.BaseTemplateBuildProvider.get_CodeCompilerType() at System.Web.Compilation.BuildProvider.GetCompilerTypeFromBuildProvider(BuildProvider buildProvider) at System.Web.Compilation.BuildProvidersCompiler.ProcessBuildProviders() at System.Web.Compilation.BuildProvidersCompiler.PerformBuild() at System.Web.Compilation.BuildManager.CompileWebFile(VirtualPath virtualPath) at System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate) at System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate) at System.Web.Compilation.BuildManager.GetVirtualPathObjectFactory(VirtualPath virtualPath, HttpContext context, Boolean allowCrossApp, Boolean throwIfNotFound) at System.Web.Compilation.BuildManager.CreateInstanceFromVirtualPath(VirtualPath virtualPath, Type requiredBaseType, HttpContext context, Boolean allowCrossApp) at System.Web.UI.PageHandlerFactory.GetHandlerHelper(HttpContext context, String requestType, VirtualPath virtualPath, String physicalPath) at System.Web.HttpApplication.MaterializeHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

    Regards

    Sakti

  3. Sakti says:

    Hi Bradley,

    I resolved the issue.

    Thanks
    Sakti

Leave a Reply