web-dev-qa-db-fra.com

Erreur lors du téléchargement d'un rapport

J'ai créé un rapport à l'aide de visual studio 2015 avec les outils SSDT installés à partir du lien suivant.

https://msdn.Microsoft.com/en-us/mt186501

La base de données est sur SQL Server 2014. Cependant, les rapports fonctionnent sur ma machine lorsque j'essaie de télécharger un rapport sur la machine du client (qui comprend SQL Server 2014 et non Visual Studio). Je reçois l'erreur suivante

"La définition de ce rapport n'est pas valide ni prise en charge par cette version de Reporting Services. La définition du rapport peut avoir été créée avec une version ultérieure de Reporting Services ou contenir du contenu mal formé ou non valide basé sur des schémas de Reporting Services. Détails: la définition de rapport a un espace de nom cible non valide ' http://schemas.Microsoft.com/sqlserver/reporting/2016/01/reportdefinition ' qui ne peut pas être mis à niveau. (RsInvalidReportDefinition) "

41
Abe

Si vous avez la solution> propriétés> TargetServerVersion définie sur SQL Server 2008 R2, 2012 ou 2014, puis que vous téléchargez le fichier RDL à partir du dossier bin au lieu du dossier du projet, cela devrait fonctionner. Je recevais la même erreur et cela l'a résolu.

84
Andrew Failor

Votre rapport cible SQL Server 2016

4
Ed Elliott

Si vous êtes habitué Visual studio 2017

Mise à jour: Microsoft a publié un document le 18 avril 2017 décrivant comment configurer et utiliser l'outil de génération de rapports dans Visual Studio 2017.

Visual Studio 2017 n'a pas l'outil ReportViewer installé par défaut dans la Boîte à outils. L'installation de l'extension Microsoft Rdlc Report Designer pour Visual Studio, puis l'ajoutant à la boîte à outils génère un composant non visuel qui apparaît sous la fiche.

Le support technique de Microsoft m'avait dit qu'il s'agissait d'un bogue, mais à compter du 21 avril 2017, il "fonctionne comme prévu".

Les étapes suivantes doivent être suivies pour chaque projet nécessitant ReportViewer.

Si ReportViewer se trouve dans la Boîte à outils, supprimez-le. Mettez en surbrillance, cliquez avec le bouton droit et supprimez. Vous devrez avoir un projet avec un formulaire ouvert pour le faire. Si l'extension Microsoft Rdlc Report Designer pour Visual Studio est installée, désinstallez-la. Fermez votre solution et redémarrez Visual Studio. Ceci est une étape cruciale, des erreurs se produiront si VS n'est pas redémarré lors du changement de solution. Ouvrez votre solution. Ouvrez la console NuGet Package Manager (Outils/Gestionnaire de packages NuGet/Console de gestion de packages). Dans l'invite PM> Invite, entrez cette commande, la casse est importante.

Package d'installation Microsoft.ReportingServices.ReportViewerControl.WinForms

Vous devriez voir le texte décrivant l'installation du paquet.

J'espère que ça marche

3
Shailesh Prajapati

Celui-ci a fonctionné pour moi: obtenir l'erreur SSRS version 2016, il faut éditer le rapport rdlc. Pour une étape détaillée, visitez ce lien: http://eskonr.com/2018/06/configmgr-ssrs-failed-to-upload-rdl-with-errorcode-definition-of-this- report-is-not-not-not-not-or-support-by-this-version-of-reporting-services/

Modifications:

  1. Recherchez 2016, changez la version de 2016 en 2010 .
  2. Recherchez "ReportParametersLayout" dans le fichier et supprimez le bloc entier (ce code est créé sur la version 2016 de visual studio).

Comme indiqué ci-dessus, supprimez tout le bloc et enregistrez le rapport.

2
Khushboo Tahir

Bien que la question soit répondue mais cette solution pourrait aider pour les nouvelles visites.

Dans Visual Studio, accédez à Outils -> Extensions et mises à jour -> Mises à jour -> Services de mise à jour des rapports.

Une fois que vous avez fermé Visual Studio, un programme d’installation VSiX est installé.

Le problème a été résolu pour moi. J'espère que cela t'aides.

1
Dot Net developer

J'ai eu la réponse du lien " https://www.sqlskills.com/blogs/tim/issue-publishing-to-ssrs-2012-with-ssdt-2015/ "

Publication de la publication sur SSRS 2012 avec SSDT 2015 Par: Tim Radney Posté le: 22 janvier 2016 14 h 58 J'ai récemment aidé un client qui essayait d'utiliser SQL Server Data Tools 2015 pour mettre à jour et générer des rapports qui seraient déployés en SQL. Server Reporting Services 2012. Lors du déploiement du rapport, le client obtenait le message d'erreur suivant:

“[RsInvalidReportDefinition] La définition de ce rapport n'est pas valide ni prise en charge par cette version de Reporting Services. La définition de rapport peut avoir été créée avec une version ultérieure de Reporting Services ou contenir du contenu mal formé ou non valide basé sur des schémas de Reporting Services. ”

Je savais que SSDT 2015 devait être rétrocompatible et capable de fonctionner avec plusieurs versions de produits SQL Server. J'ai donc dû faire quelques recherches pour déterminer ce qui devait être modifié pour pouvoir publier un rapport dans SSRS 2012.

Dans mon laboratoire, j'ai créé un nouveau projet nommé GetDatabases. Ce projet était un rapport de base permettant d’interroger une table système. La première chose que j'ai essayé de modifier dans le projet était la TargetServerVersion située sous les propriétés du projet.

J'ai mis à jour TargetServerVersion en "SQL Server 2008 R2, 2012 ou 2014", la valeur par défaut étant "SQL Server 2016". J'ai également mis à jour TargetServerURL sur mon serveur de développement exécutant SSRS 2012. J'ai apporté ces modifications aux options de configuration de publication et de débogage.

Après avoir apporté ces modifications, je n’étais toujours pas en mesure de déployer le rapport. Après un peu plus de recherches, j'ai trouvé un emplacement pour modifier la version du serveur de déploiement par défaut de Business Intelligence Designer. Celui-ci se trouve sous "Outils puis Options". La valeur par défaut était la version 13.0. Une fois la version 11.0 remplacée par le serveur sur lequel je déployais, je pouvais déployer mon rapport avec succès sur SSRS 2012.

entrez la description de l'image ici

0
user3743873

Aucune des solutions proposées ne fonctionnait pour moi, alors que j'ai correctement défini TargetServerVersion dans les propriétés du projet. Notez que je ne pense pas que la modification manuelle du fichier .rdl soit une solution viable.

J'ai une solution étrange: Dans le IDE (Visual Studio 2019 dans mon cas)), modifiez la configuration de la solution à partir de Debug à DebugLocal . Changez maintenant le TargetServerVersion en une version de votre choix. comme, reconstruisez le projet de rapport et inspectez le fichier .rdl, avec n’importe quel éditeur de texte, dans le dossier bin\DebugLocal.

Vous remarquerez maintenant que les espaces de noms DOIVENT réagir à chaque modification apportée à TargetServerVersion + reconstruction.

Note: cela ne semble fonctionner que lorsque la configuration de la solution a été définie sur DebugLocal , mais pas pour Déboguer ou Libérer !!

0
Michel van Engelen

J'ai cliqué avec le bouton droit sur mon rapport, puis sur publish report1.rdlc qui a fonctionné pour moi.

0
Waqas Javaid