2010-03-19 8 views
3

J'ai créé des rapports ad hoc sur certains modèles de rapports publiés sur Report Server (nous utilisons SSRS 2008). Tout fonctionne bien. Maintenant, dans notre environnement de production, nous avons près de quarante (40) clients qui ont leur propre base de données (chacun a les mêmes structures de table et d'autres objets de base de données). Le défi consiste désormais à se connecter au serveur de rapports à l'aide de l'authentification Windows et à essayer d'afficher les rapports dont nous avons besoin pour extraire les données SQL de la base de données appropriée uniquement. Les rapports sont conçus à l'aide du modèle de rapport et chaque modèle possède une source de données valide qui est connectée à une base de données particulière. Nous pouvons créer quarante sources de données distinctes, chacune étant connectée à une base de données spécifique. Ma question est la suivante: existe-t-il un moyen de changer le nom de la source de données du modèle de rapport dynamiquement ou pendant l'exécution en fonction du nom du client afin que SSRS puisse extraire les données de la base de données correcte autre base de données.Puis-je modifier la source de données du modèle de rapport lors de l'exécution?

S'il vous plaît aidez-moi.

Répondre

1

Je ne pense pas qu'il existe un moyen de spécifier une source de données à l'heure d'exécution car la source de données fait partie de la définition de rapport (.rdl) et elle a une certaine sécurité empêchant un type trouver-remplacer méthode. Cependant, il existe des fonctions disponibles dans les services SSRS (recherchez par exemple ReportingService2010.cs) pour nous dans les applications .NET qui vous permettent de définir une source de données. Je sais que j'ai déjà participé à un projet dans le cadre duquel nous avons déployé une application .NET créée en interne qui utilise ces appels pour définir la source de données à publier. C'était pour SSRS 2005.

Sur un autre projet, j'ai été sur la méthode de choix est de publier en utilisant BIDS publier. Nous avons remarqué que si le rapport était déjà publié dans un environnement avec un ensemble de sources de données, la publication à l'aide de BIDS au même emplacement conserverait les informations de source de données (même si elles étaient différentes de votre source de développement). C'était en utilisant SSRS 2008R2.

Questions connexes