Passage de paramètre via l'url de sql server reporting services
Je suis en train de passer un paramètre via l'url de SSRS et il ne semble pas que le travail!
Je suis en train de passer d'un code utilisateur (string) via l'url qui sera transmis à la base de données et utilisées par la requête.
url de base:
http://blah/Reports/Pages/Report.aspx?ItemPath=MyReport
essayé ceci mais ça ne fonctionne pas:
http://blah/Reports/Pages/Report.aspx?ItemPath=MyReport&UserId=fred
Toutes les idées
- Le problème a été Iw que d'essayer d'accéder au rapport, par l'intermédiaire d'un "statique" de l'url, ce urlonly montre un rapport déjà généré, il ne fait pas de "dynamique" de la génération de rapports - si vous voulez ce que vous avez à utiliser une url comme quelque chose de " http://<server>/ReportServer/Pages/ReportViewer.aspx... " Comme indiqué ci-dessous.
Vous devez vous connecter pour publier un commentaire.
Ainsi que ce Shiraz dit, essayez quelque chose comme ceci:
Notez le chemin d'accès ne fonctionne que si vous êtes dans un seul dossier. Lorsque j'ai pour ce faire, j'ai simplement parcourir le rapport à l'aide de la reportserver chemin ("rapports") est le gestionnaire de rapports) et de copier l'url puis ajouter
&<ParameterName>=<value>
à la fin.J'ai eu la même question, et plus, et bien que ce fil est vieux, il est toujours un bon, donc en résumé pour SSRS 2008R2 j'ai trouvé...
Situations
Actions
Le cas échéant, assurez-vous de remplacer Rapports/Pages/Rapport.aspx?ItemPath= avec ReportServer?. En d'autres termes:
Au lieu de cela:
Utiliser cette syntaxe:
Ajouter un paramètre(s) pour le rapport et de le mettre comme masqués (visibles ou si une action de l'utilisateur autorisé, mais gardez à l'esprit que, bien que le paramètre de rapport va changer, l'URL pas changement basé sur une mise à jour de l'entrée).
Fixer les paramètres d'URL avec des &ParameterName=Valeur
Paramètres peuvent être référencés ou affiché dans le rapport à l'aide de @ParameterName, qu'ils sont définis dans le rapport ou dans l'URL
Pour masquer la barre d'outils, où les paramètres sont affichés, ajouter &rc:Toolbar=false à l'URL (référence)
Ensemble, vous pouvez exécuter une URL avec les valeurs intrinsèques, ou appelez cela comme une action à partir d'un rapport et lu par un autre rapport:
En rapport dataset propriétés de la requête: SELECT trucs DE vue OÙ l'Utilisateur = @UserID
Dans le rapport, l'expression de l'ensemble de la valeur à [nom d'utilisateur] (ou =Champs!Nom d'utilisateur.Valeur)
Gardez à l'esprit que si un rapport a plusieurs paramètres, vous pourriez avoir besoin d'inclure tous les paramètres dans l'URL, même si le champ est vide, selon la façon dont votre requête de dataset est écrit.
Pour passer d'un paramètre à l'aide de l'Action = Aller à l'URL, expression de l'ensemble à:
Assurez-vous d'avoir un espace après une expression si elle est suivie par & (un saut de ligne n'est pas suffisant). Aucun espace n'est requise avant qu'une expression. Cette méthode peut passer un paramètre, mais ne cache pas qu'elle est visible dans l'URL.
Si vous n'incluez pas &rs:ClearSession=Vrai, alors le rapport n'est pas de rafraîchissement jusqu'à la session de navigation, le cache est effacé.
Pour passer d'un paramètre à l'aide de l'Action = Aller à signaler:
De référence, /= %2f
ItemPath
avecReportServer?
. Je ne pouvais pas trouver ce document n'importe où! Merci pour me sauver des heures de frustration!Je viens de résoudre ce problème moi-même. J'ai trouvé la solution sur MSDN:
http://msdn.microsoft.com/en-us/library/ms155391.aspx.
Le format est fondamentalement
Essayez de changer "les Rapports" pour "ReportServer dans votre url de
Essayer de passer plusieurs valeurs à l'aide de l'url:
Cela devrait fonctionner.
J'ai résolu un problème similaire en passant la valeur du paramètre dans l'URL au lieu de l'étiquette du paramètre.
Par exemple, j'ai un rapport avec un paramètre nommé viewName et le prédéfini de Valeurs Disponibles pour le paramètre sont les suivantes: (étiquettes/valeurs) de commandes/sub_orders, orderDetail/sub_orderDetail, produit/sub_product.
À l'appel de ce rapport avec une URL pour rendre automatiquement pour le paramètre=produit, vous devez spécifier la valeur de l'étiquette.
Ce serait une erreur:
http://server/reportserver?/Data+Dictionnaire/DetailedInfo&viewName=produit&rs:=Commande de Rendu
C'est correct:
http://server/reportserver?/Data+Dictionary/DetailedInfo&viewName=sub_product&rs:Command=Render
Que par ce lien vous pouvez également préfixe vos param avec &rp si vous n'utilisez pas de proxy syntaxe
Essayez de changer "les Rapports" pour "ReportServer" dans votre url.
Pour accéder simplement à ce
http://host/ReportServer/
et à partir de là, vous pouvez aller à la page d'un rapport. Y ajouter votre parmaters comme ceci&<parameter>=<value>
Pour de plus amples informations:
http://dobrzanski.net/2008/08/11/reporting-services-problem-with-passing-parameters-directly-in-the-url/
https://www.mssqltips.com/sqlservertip/1336/pass-parameters-and-options-with-a-url-in-sql-reporting-services/