5

Betreff: Die Berichtsdefinition ist ungültig. Details: Die Berichtsdefinition weist einen ungültigen Zielnamespace 'http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition' auf, der nicht aktualisiert werden kann.Visual Studio 2010: Die Berichtsdefinition ist nicht gültig. Details: Die Berichtsdefinition hat ein ungültiges Ziel.

Bericht Experte benötigte, Strahl auf über ...

Hier ist der Schritt, den ich durch ging heute dieses Stück Torheit zu erreichen.

1) Visual Studio 2010, SQL Server 2012

2) App ist ein WinForms vb.net, wurde das Arbeiten groß, ursprünglich in VS 2008

Berichte dieser Uhr lief gut, bevor ich entwickelt wurde bin zu ihnen gekommen. -sigh-

3) versucht, ein paar Berichte zu bearbeiten - 2012 seit dem Upgrade auf SQL konnte

4) erstmals nicht die Datensätze bearbeiten und beschlossen, etwas beschädigt war.

5) Eine Reparatur-Installation auf VS 2010 durchgeführt und sichergestellt, dass es auf dem neuesten Stand war. keine Freude - konnte Datensatz nicht aktualisieren.

6) Re-ran für die Konnektivität Clients für SQL SSMS mit Zusatz von SDK installieren

7) Nun wird den Bericht Datensätze, aber die Berichte sind gebrochen bearbeite ich könnte. (Siehe Titel) -double sigh-

Bericht Betrachter 10.0.0

.Net 4.0 ist

Vielen Dank für alle Tipps

Mac McCaskie

Antwort

2

ich denke, die fix sein kann einfacher als Sie erwarten, wenn ich mich richtig erinnere. Ihr Namespace muss nur geändert werden, um auf den neueren Service zu verweisen. Sie können 2012 nicht auf einem 2008 Namespace meines Wissens ausführen. Ich bin jedoch verwirrt, wenn Sie die "Winforms" -App erwähnen, die sich mit INDIREKT mit SQL-Reporting-Diensten durch einen Viewer befasst, der allgemein auf mehrere Arten eingerichtet ist. Wenn dies der Fall ist, folgen Sie unten auf A, aber dann erwähnen Sie die Bearbeitung der Berichte direkt, so bin ich neugierig, sind diese Client-Berichte direkt in einer Anwendung? Wenn ja, würde ich davon ausgehen, dass Sie über SSRS 2012 mit RDL-Berichten sprechen, und in diesem Fall würde ich B versuchen, wenn dies für gehostete Berichtsberichte mit dem Add-on für Business Intelligence Development Studio VS 2010 aus SQL 2012 erstellt wurde. Wenn Sie über Client-Berichte sprechen, die lokal in einer VB.NET-Anwendung gespeichert sind, könnte ich vermuten, dass sie möglicherweise auf 2012 aktualisiert wurden, das .NET 4.5 verwendet und Sie versuchen möglicherweise ein niedrigeres Framework, aber das ist nur eine Schätzung auf der letzten und wäre höchst unwahrscheinlich, da .NET frühere Versionen mit sich führt und ich würde nicht denken, dass es Berichte aktualisieren würde, ohne es Ihnen zu sagen.

A:

Sie können 2012 neu installieren für immer, aber nicht bekommen es 2008 Namespace für Daten zu verwenden. Sie müssen die aktuellsten Proxy-Klassen aus dem gültigen Dienst von 2012 verwenden und sie in Ihr C#/VB.NET-Projekt einfügen. Wenn Sie unsicher sind, wie Proxy-Klassen Ich habe einen ausführlicheren Thread auf sie hier herunterladen und anpassen: Programmatically Export SSRS report from sharepoint using ReportService2010.asmx

// 
// This source code was auto-generated by xsd, Version=4.0.30319.17929. 
// 
namespace SampleRDLSchema { 
    using System.Xml.Serialization; 

/// <remarks/> 
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")] 
    [System.SerializableAttribute()] 
    [System.Diagnostics.DebuggerStepThroughAttribute()] 
    [System.ComponentModel.DesignerCategoryAttribute("code")] 
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition")] 
    [System.Xml.Serialization.XmlRootAttribute(Namespace="http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition", IsNullable=false)] 

B.

  1. Suchen Sie eine lokale Kopie auf dem Datenträger eines RDL-Berichts, und kopieren Sie sie.
  2. Nehmen Sie die Kopie und öffnen Sie es mit einem Texteditor, würde ich Notepad ++ oder etwas ähnliches verwenden.
  3. RDL als eine Sprache zu mir hat sich nicht wirklich viel ändern, (ich sehe nicht einmal die Unterschiede in der Designer zwischen 2008R2 und 2012). Also könntest du einen Hack ausprobieren und sehen, ob es funktionieren könnte. Bearbeiten Sie den Knoten von ‚< Report‘ in der Nähe der Spitze dabei, um statt:

    < Report xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner" xmlns:cl="http://schemas.microsoft.com/sqlserver/reporting/2010/01/componentdefinition" xmlns="http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition"> 
    
5

Ich hatte dieses Problem heute in VS2013.

Seien Sie sicher, die richtige ReporViewer dll-Version zu verweisen:

C: \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ Report \

+0

Excellent. Das ist genau das Problem. Arbeitete in meinem Fall. Danke vielmals :) ! – Bharath

0

Mário Meyrelles richtig ist.

Es ist alles über Microsoft.ReportViewer.Common.dll und Microsoft.ReportViewer.WinForms.dll Version. Bitte vergewissern Sie sich, dass Sie auf die korrekte oder neueste DLL-Version verwiesen haben. z.B. \ Windows \ assembly \ GAC_MSIL \ Microsoft.ReportViewer.Common \ 11.0.0.0__89845dcd8080cc91 \ Microsoft.ReportViewer.Common.dll

: C: \ Windows \ Montage für VS2013, sollten wir Version 11.

C verwenden \ GAC_MSIL \ Microsoft.ReportViewer.WinForms \ 11.0.0.0__89845dcd8080cc91 \ Microsoft.ReportViewer.WinForms.dll

0

ich ein Reporting-Projekt mit SQL2008 R2 und alle Projektdateien begonnen hatte, wurden mit dem Schema:

Mein Berichtsserver ist SQL2008 NICHT R2 und führte die Berichte des Einsatz in dem Fehler:

The report definition is not valid. Details: The report definition has an invalid target namespace

Der Trick besteht darin, die Projekte TargetServerVersion zu setzen 2008 auf SQL und zu bauen. Dann werden alle Dateien im Bin \ Release-Ordner wird das korrekte Schema haben, zB

<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2008/01/ 

enter image description here

Verwandte Themen