Fehler (Der Name> der ausgewählten benutzerdefinierten Datenerweiterung <ist nicht installiert oder kann nicht geladen werden) beim Laden benutzerdefinierter Erweiterungen in SQL Server 2012 Data Tools

Dieser Artikel hilft Ihnen, das Problem zu beheben, bei dem eine Fehlermeldung angezeigt wird, wenn Sie versuchen, benutzerdefinierte Erweiterungen in Berichtsserverprojekten in SQL Server 2012 Data Tools 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 Assembly der benutzerdefinierten Datenverarbeitungserweiterung verweist auf eine Microsoft.ReportingServices.Interfaces.dll-Datei. Die Datei ist im 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 Datenverarbeitungserweiterungsassembly mithilfe von SSDT bereit.
  • 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 "Datenquellenname>"< hergestellt werden. Die ausgewählte Datenerweiterung "<Name der benutzerdefinierten Erweiterung>" ist nicht installiert oder kann nicht geladen werden. Überprüfen Sie, ob die ausgewählte Datenerweiterung auf dem Client für lokale Berichte und auf dem Berichtsserver für veröffentlichte Berichte installiert ist.

Hinweis

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

  • Wenn Sie die benutzerdefinierte Erweiterung in einen SQL Server Reporting Services -Bericht (SSRS) 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 eine benutzerdefinierte Erweiterung auf die Microsoft.ReportingServices.Interfaces.dll Datei verweist, die in SQL Server 2005 Reporting Services, SQL Server 2008 Reporting Services oder SQL Server 2008 R2 enthalten ist. Reporting Services.

Ursache

Das Problem tritt aufgrund eines Fehlers im SSDT-Setupprozess auf.

Wenn SSDT installiert ist, werden derdevenv.exe.config-Datei und der PreviewProcessingService.exe.config-Datei die folgenden falschen Einträge 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 der devenv.exe.config-Datei und in der PreviewProcessingService.exe.config-Datei .

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

  • Öffnen Sie die devenv.exe.config Datei, die sich am 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 in der devenv.exe.config-Datei den folgenden Eintrag:

    <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 die devenv.exe.config Datei.

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

Hinweis

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