web-dev-qa-db-fra.com

Le sous-rapport n'a pas pu être affiché. Le sous-rapport fonctionne séparément - pas avec le rapport principal

J'ai un rapport principal avec 5 sous rapports.

Le sous-rapport contient plus de 10 paramètres. (Avec 10 Multi valued parameters - J'ai donc utilisé la méthode Join pour transmettre la valeur de Rapport principal au sous-rapport )

J'ai également testé séparément Sub report et tout fonctionne correctement, affichant des données et tout le reste.

J'ai essayé de créer un autre rapport principal et de placer ce sous-rapport dans le rapport principal nouvellement créé, mais sans succès.

J'ai également vérifié que chaque valeur de paramètre et type de données sont corrects conformément à la procédure décrite dans ma boutique.

J'ai essayé en supprimant un par un les paramètres à valeurs multiples des propriétés du rapport Sub pour vérifier si le problème météorologique était dû à ce paramètre à valeurs multiples ou quoi!

Lorsque nous fournissons une valeur du rapport principal au sous-reprot en utilisant les propriétés du sous-rapport - ici, lorsque je clique sur un paramètre à plusieurs valeurs, il affiche

=Parameters!ParameterName.Value(0) - (0)

Alors ça va ou pas? Comme je l’utilise en tant que valeurs sélectionnées multiples.

Je suis coincé avec ce problème et j'obtiens une erreur en dessous,

Erreur: le sous-rapport n'a pas pu être affiché.

Toute aide s'il vous plaît, merci d'avance.

Remarque:

J'ai vérifié ça , mais pas de succès

J'ai aussi vérifié ça , mais pas de succès

Getting below error on main Report page,

 enter image description here

J'ai également essayé en téléchargeant tous les rapports sur SSRS-2012, mais sans succès.

7
pedram

Je pense que vous avez déjà trouvé la cause de votre problème.

J'ai également vérifié cela , écrou sans succès

Le message auquel vous faites référence a la réponse acceptée suivante de lethaljd:

Ceci est un défaut connu dans SSRS 2008 . Je ne sais pas s'il a déjà été corrigé, mais cela a été corrigé dans SSRS 2012.

Comme vous l'avez constaté, la solution consiste à utiliser des jeux de données distincts.

https://connect.Microsoft.com/SQLServer/feedback/details/648560/subreport-with-shared-dataset-throws-error

Si vous vérifiez le code source fourni par lethaljd, cela signifie que celui-ci n'a pas été corrigé non plus et ne le sera probablement jamais, car il ne s'agit plus d'un problème dans les versions les plus récentes.

Cela signifie que vous devriez probablement utiliser une version plus récente de SSRS ou envisager une solution de contournement. J'aimerais vous aider à penser à une approche différente, mais comme je l'ai dit dans mon commentaire initial, vous devrez donner beaucoup plus d'informations.
Comme la question est écrite, je ne possède pas assez de détails pour vous donner un conseil bien fondé autre que l’utilisation d’une version différente.

Cela étant dit, je ne souhaite pas que cette réponse vienne comme non constructive ou négative. Je veux simplement vous aider sur la bonne voie.

3
Oceans

Je viens d'avoir la même erreur (bien que je n'utilise pas de paramètres à valeurs multiples), j'ai ajouté 2 nouveaux paramètres au sous-rapport et défini les valeurs de paramètre dans le rapport principal.

Il s’est avéré que ce sont les paramètres du sous-rapport! Mes 2 nouveaux paramètres sont pour date/heure, mais lorsqu'ils ont été créés par l'assistant, ils ont été définis en tant que texte. Une fois modifiés en date/heure, tout fonctionne correctement.

1
neevesc

Vous devriez vérifier ceci:

  • plusieurs paramètres doivent être définis en tant que valeurs multiples dans le rapport principal et dans le sous-rapport (définir sur le sous-rapport pour autoriser plusieurs valeurs)
  • lorsque vous transmettez plusieurs paramètres à un sous-rapport, vous devez le passer comme [@param] et non comme =Parameters!ParamName.Value(0)

Sur ce blog est expliqué comment envoyer plusieurs valeurs au sous-rapport.

1
Gane

En plus de vérifier les étapes évidentes ci-dessus ... (Certains pourraient dire que cela est évident aussi ...), je devais m'assurer que les types de données des paramètres (dans le sous-rapport) correspondaient aux colonnes dans le rapport principal.

Quand vous avez fait cela et que vous obtenez toujours une erreur ...

Je suppose que vous utilisez VStudio comme je le suis. Voici comment je nettoie le cache de VStudio ...

Décharger le rapport Fermer VStudio Accédez au dossier de rapports dans WinExplorer. Sauvegarde du dossier de solution Accédez maintenant au dossier de projet situé sous le dossier de solution. Notez qu'il existe 3 types de fichiers: - .rdl <- Contient la définition du rapport ... Ne touchez pas cela ... - .rdl.data < - Contient les données mises en cache pour l'exécution du rapport - .rds <- Il s'agit de la définition de votre source de données ... Inutile de le toucher - .rptproj <- Contient les définitions de votre projet ... Ne le touchez pas -. rptproj.user <- Ne touchez pas cela ... Il contient les informations d'identification de votre source de données. Ensuite, vous avez un dossier bin avec 3 sous-dossiers ... Debug, Release et Debuglocal.

Voici ce que vous faites: Supprimez tous les fichiers .rdl.data Supprimez tous les fichiers sous bin/Debug/* et recommencez pour DebugLocal et Release.

Cela devrait nettoyer l'environnement VStudio. Ouvrez maintenant la solution ... Rechargez la solution dans VStudio et réessayez.

Cela a résolu un certain nombre de problèmes de cache de données embêtants.

1
RRaj

Cliquez avec le bouton droit sur le jeu de données, puis cliquez sur Dataset Properties. Allez à l'onglet Parameters. Supprimer le paramètre qui n’est pas au bon format (c.-à-d. Paramètre sans @).

0
Kimchi Man