Especificando sua versão do provedor de dados ADOMD.NET

Artigo original publicado na quarta-feira, 12 de setembro de 2012

Há algum tempo, escrevi um post sobre como fazer a instalação do PerformancePoint 2010 funcionar com o SQL 2012. Esse post falou sobre onde encontrar o SQL Server 2008 R2 SP1 Feature Pack, que contém, entre outras coisas, a versão 10.5.2500 do provedor de dados ADOMD.NET, que o PerformancePoint necessita para conectar a qualquer origem de dados do Analysis Services 2012, inclusive modelos de pasta de trabalho do PowerPivot. Isso funciona bem com o PerformancePoint 2010, mas se você precisar da mesma funcionalidade em sua instância do PerformancePoint 2013 usando SQL 2012, será necessário obter a versão 11.0 do provedor de dados ADOMD.NET. Você pode baixá-la por meio do spPowerPivot.msi, aqui.

A situação

A esta altura, você deve estar se perguntando qual a necessidade de executar uma etapa extra para instalar o MSI quando você pode simplesmente instalar os componentes de BI do SQL para SharePoint no momento da instalação de uma instância do SQL Server 2012 SP1. Sem entrar em muitos detalhes, há dois motivos: primeiramente, o SharePoint não agrupa mais o provedor no instalador de pré-requisitos (como era o caso da versão 2010). Por isso, todos os provedores de dados deverão ser instalados separadamente. É por isso que adicionamos um lembrete após o provisionamento de um novo aplicativo de serviço do PerformancePoint:

Lembrete para instalar o provedor de dados ADOMD.NET

Em segundo lugar, se seu farm do SharePoint contiver mais de uma máquina (sem contar o back-end SQL), a recomendação é que você instale o MSI em cada máquina do farm que executa os Serviços PerformancePoint, já que, para qualquer solicitação, o PerformancePoint pode realizar chamadas a partir daquela caixa, exigindo o provedor ADOMD.NET para se conectar. Além desses dois fatores, o MSI permite conectar a pastas de trabalho do PowerPivot como uma origem de dados do PerformancePoint. Sim, esse recurso estava disponível no PerformancePoint 2010, mas na versão 2013, você precisa de spPowerPivot.msi para conseguir o mesmo (supondo que você não tenha instalado o suplemento na instalação do SQL). Coincidentemente, as instruções de instalação do MSI podem ser encontradas aqui.

O redirecionamento de assembly

Assim como o PerformancePoint 2010, no PerformancePoint 2013, realizamos compilações com a versão 10 do provedor ADOMD.NET. Então, caso você precise usar a versão 11 (e você precisará para pastas de trabalho de BI 2012 no SharePoint 2013), será necessário instruir o PerformancePoint para que haja desse modo. Há um novo redirecionamento de assembly no PerformancePoint 2013 que você pode usar para essa finalidade. Adicionamos o redirecionamento para que, daqui para frente, você possa usar novas versões de provedor do Analysis Services sem ter que atualizar o SharePoint (por exemplo, PerformancePoint). Isso é bastante útil para organizações que combinam versões do SharePoint e Analysis Services. Para ver o bloco de redirecionamento que adicionamos, em cada servidor que executa o PerformancePoint Services, navegue até \Arquivos de Programas\Microsoft Office Servers\15.0\WebServices\PpsMonitoringServer. Abra o arquivo web.config file. Ele deve estar localizado no mesmo diretório de PerformancePointService.svc. No final do arquivo, você verá um bloco <assemblyBinding> contido em um bloco <runtime>, assim:

<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.AnalysisServices.AdomdClient" publicKeyToken="89845dcd8080cc91" culture="neutral" />
        <bindingRedirect oldVersion="9.0.0.0" newVersion="10.0.0.0" />
      </dependentAssembly>
    </assemblyBinding>
</runtime>

Altere os valores no elemento <bindingRedirect> de oldVersion="9.0.0.0" para oldVersion=10.0.0.0" e de newVersion="10.0.0.0" para newVersion="11.0.0.0". Isso permitirá que o PerformancePoint aproveite o assembly de ADOMD.NET versão 11 com GAC ao fazer chamadas para o Analysis Services 2012 (e versões anteriores). Também permitirá que você use os modelos mais recentes do PowerPivot como origens de dados no PerformancePoint, algo com que nossos clientes passaram a contar de fato.

Obrigado pela leitura.

Kevin Donovan
Gerente de programas de BI do Office

Este é um post traduzido. O artigo original está em Specifying Your ADOMD.NET Data Provider Version