Fehler (Die ausgewählte Datenerweiterung ist nicht installiert oder kann nicht geladen werden) beim Laden von benutzerdefinierten Erweiterungen in SQL Server <Custom Extension Name> 2012-Datentools

Dieser Artikel hilft Ihnen bei der Behebung des Problems, bei dem eine Fehlermeldung angezeigt wird, wenn Sie versuchen, benutzerdefinierte Erweiterungen in Berichtsserverprojekten in SQL Server 2012-Datentools zu laden.

Gilt für:   SQL Server 2012 Enterprise, SQL Server 2012 Business Intelligence, SQL Server 2012 Developer, SQL Server 2012 Standard, SQL Server 2012 Web
Ursprüngliche KB-Nummer:   2750044

Problembeschreibung

Stellen Sie sich folgendes Szenario vor:

  • Sie entwickeln eine benutzerdefinierte Reporting Services-Datenverarbeitungserweiterung.
  • Die benutzerdefinierte Datenverarbeitungserweiterungs-Assembly verweist auf eine Microsoft.ReportingServices.Interfaces.dll Datei. Die Datei ist in Microsoft SQL Server 2005 Reporting Services, SQL Server 2008 Reporting Services oder SQL Server 2008 R2 Reporting Services enthalten.
  • Sie installieren SQL Server Data Tools (SSDT) in Microsoft SQL Server 2012.
  • Sie stellen die Datenverarbeitungserweiterungs-Assembly mithilfe von SSDT zur Bereitstellung.
  • Sie erstellen ein neues Berichtsserverprojekt, das auf der Business Intelligence-Vorlage basiert, und versuchen, die benutzerdefinierte Datenverarbeitungserweiterung auszuwählen, um eine neue Datenquelle hinzuzufügen.

In diesem Szenario wird eine Fehlermeldung etwa folgenden Inhalts angezeigt:

Es kann keine Verbindung mit der Datenquelle ' ' hergestellt <Data Source Name> werden. Die ausgewählte Datenerweiterung ' <Custom Extension Name> ' ist nicht installiert oder kann nicht geladen werden. Stellen Sie sicher, dass die ausgewählte Datenerweiterung auf dem Client für lokale Berichte und auf dem Berichtsserver für veröffentlichte Berichte installiert ist.

Hinweis

  • Der Datenquellenname ist ein Platzhalter für den Datenquellennamen, und der name der benutzerdefinierten Erweiterung ist ein Platzhalter für den benutzerdefinierten Erweiterungsnamen.

  • Wenn Sie die benutzerdefinierte Erweiterung in einem SQL Server Reporting Services (SSRS)-Bericht laden und dann den Bericht über einen SSRS-Webdienst oder eine Webschnittstelle ausführen, wird die benutzerdefinierte Erweiterung erfolgreich ausgeführt.

  • Dieses Problem ist nicht auf Datenverarbeitungserweiterungen beschränkt. Ähnliche Fehler können auftreten, wenn benutzerdefinierte Erweiterungen auf die Microsoft.ReportingServices.Interfaces.dll-Datei verweisen, die in SQL Server 2005 Reporting Services, SQL Server 2008 Reporting Services oder SQL Server 2008 R2 Reporting Services enthalten ist.

Ursache

Das Problem tritt aufgrund eines Fehlers beim #A0 auf.

Wenn SSDT installiert ist, werden die folgenden falschen Einträge derdevenv.exe.configund der datei PreviewProcessingService.exe.config hinzugefügt:

<dependentAssembly>
    <assemblyIdentity name="Microsoft.ReportingServices.Interfaces" publicKeyToken="89845dcd8080cc91" culture="neutral"/>
    <bindingRedirect oldVersion="9.0.242.0" newVersion="10.0.0.0"/>
</dependentAssembly>

Wenn eine benutzerdefinierte Erweiterung auf die Microsoft.ReportingServices.Interfaces.dll-Datei verweist, deren Assemblyversion 9.0.242.0 ist, sucht SSDT nach der Microsoft.ReportingServices.Interfaces.dll-Datei, deren Assemblyversion 10.0.0.0 ist. Diese neuere Assembly ist jedoch möglicherweise nicht auf dem Computer vorhanden, auf dem SSDT installiert ist.

Lösung

Um dieses Problem zu beheben, verwenden Sie die richtigen Einträge in derdevenv.exe.config und in der PreviewProcessingService.exe.configDatei.

Führen Sie die folgenden Schritte aus, devenv.exe.config, um den Eintrag in der Datei "devenv.exe.config" zu korrigieren:

  • Öffnen Sie devenv.exe.config Datei, die sich im Speicherort befindet: %Program Files%\Microsoft Visual Studio 10.0\Common7\IDE .

    Hinweis

    Die PreviewProcessingService.exe.config datei befindet sich in %Program Files%\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies .

  • Suchen Sie devenv.exe.config Eintrag in der Datei":

    <dependentAssembly>
        <assemblyIdentity name="Microsoft.ReportingServices.Interfaces" publicKeyToken="89845dcd8080cc91" culture="neutral"/>
        <bindingRedirect oldVersion="9.0.242.0" newVersion="10.0.0.0"/>
    </dependentAssembly>
    
  • Ersetzen Sie den Eintrag durch Folgendes:

    <dependentAssembly>
        <assemblyIdentity name="Microsoft.ReportingServices.Interfaces" publicKeyToken="89845dcd8080cc91" culture="neutral" />
        <assemblyIdentity name="Microsoft.ReportingServices.Interfaces" publicKeyToken="89845dcd8080cc91" culture="neutral" />
        <bindingRedirect oldVersion="8.0.242.0" newVersion="11.0.0.0" />
        <bindingRedirect oldVersion="9.0.242.0" newVersion="11.0.0.0" />
        <bindingRedirect oldVersion="10.0.0.0" newVersion="11.0.0.0" />
    </dependentAssembly>
    
  • Speichern Sie devenv.exe.config Datei.

  • Schließen Sie den Speicher, und öffnen Visual Studio oder SSDT erneut.

Hinweis

Die Schritte zum Korrigieren des Eintrags in PreviewProcessingService.exe.config sind identisch.