Configuration de ReportViewer pour un traitement distant
Les contrôles ReportViewer peuvent être configurés pour utiliser la fonctionnalité de traitement d'un serveur de rapports SQL Server Reporting Services. Le serveur de rapports traite les données et rend le rapport dans un format de sortie. Le contrôle ReportViewer affiche ensuite le résultat rendu à l'écran.
Pour utiliser un rapport de serveur, vous devez avoir accès à un serveur de rapports SQL Server 2008 (ou version ultérieure) Reporting Services. Vous pouvez vérifier que vous avez accès à un rapport en ouvrant une fenêtre de navigateur et en tapant l'URL du serveur de rapports et le chemin d'accès du rapport dans l'adresse URL. Lors de la configuration d'une connexion au serveur de rapports, assurez-vous que le compte que vous utilisez a l'autorisation d'afficher le rapport.
Configuration de ReportViewer pour un traitement distant
Pour configurer un contrôle ReportViewer pour un traitement distant, spécifiez un rapport serveur à utiliser avec le contrôle. Suivez ces étapes pour sélectionner un rapport de serveur.
Ajoutez le contrôle ReportViewer de la section Création de rapports de la boîte à outils au formulaire ou à la page Web dans votre projet.
Dans le panneau des balises actives de tâches ReportViewer, dans Choisir un rapport, sélectionnez Rapport du serveur.
Dans la zone de texte Report Server, tapez l'URL du serveur de rapports. Par défaut, l'URL est https://localhost/reportserver. L'URL réelle utilisée dans votre installation pourrait être différente selon la configuration des paramètres de répertoire virtuel du serveur de rapports.
Dans la zone de texte Chemin d'accès du rapport, tapez le chemin complet d'un rapport publié. Lorsque vous faites référence à un rapport sur un serveur de rapports en mode natif, le chemin d'accès du rapport commence par une barre oblique (/) ; lorsque vous faites référence à un rapport sur un serveur de rapports en mode intégré SharePoint, le chemin d'accès du rapport est une URL complète. Par exemple :
Mode natif : /Adventureworks 2008 Sample Reports/Company Sales 2008
Mode intégré SharePoint : http://MyServer/sites/MySite/MyLibrary/Adventureworks 2008 Sample Reports/Company Sales 2008.rdl
Créez ou déployez l'application pour vérifier que le rapport y apparaît correctement.
Caractéristiques des rapports de serveur
Le tableau suivant décrit les caractéristiques des rapports de serveur traités à distance.
Traitement des rapports |
Les rapports de serveur s'exécutent sur un serveur de rapports SQL Server 2008 (ou version ultérieure) Reporting Services. Les rapports de serveur sont des fichiers de définition de rapport (.rdl) qui sont créés dans Business Intelligence Development Studio ou le Générateur de rapports. |
Traitement des données |
Les rapports serveurs utilisent les extensions pour le traitement des données d'un serveur de rapports afin de se connecter à un jeu de résultats et le traiter. Des extensions pour le traitement des données par défaut sont fournies pour les sources de données SQL Server, Analysis Services, SQL Server Integration Services, Oracle, SAP NetWeaver® Business Intelligence, XML, ODBC et OLE DB. Vous pouvez créer ou utiliser des extensions pour le traitement des données personnalisées afin de prendre en charge d'autres types de données. Contrairement aux rapports clients, les rapports serveurs incluent des informations de connexion à la source de données et une ou plusieurs requêtes dans la définition de rapport. En mode de traitement distant, les traitements de données et du rapport sont tous deux effectués par le serveur de rapports. |
Paramétrage |
Lors du traitement d'un rapport de serveur, le contrôle ReportViewer peut afficher une zone de message relatif au paramètre en haut du rapport afin que les utilisateurs puissent taper ou sélectionner des valeurs de paramètres lors de l'interrogation de la source de données sous-jacente. Lors du traitement d'un rapport local, le contrôle ReportViewer n'affiche pas la zone de message relatif au paramètre, car il n'effectue aucune récupération de données ; vous devez donc demander manuellement à l'utilisateur et effectuer le traitement des données selon l'entrée d'utilisateur directement dans votre application. Pour plus d'informations sur les rapports locaux, consultez Configuration de ReportViewer pour le traitement local. |
Connexion à des serveurs externes |
Les sources de données utilisées par les rapports serveurs récupèrent généralement les données à partir de sources externes sur d'autres serveurs. Lors de l'exécution d'un rapport serveur dans votre application, veillez à bien comprendre comment le serveur de rapports se connecte et récupère les données de sources de données externes pour le rapport. Par exemple, si le rapport utilise la sécurité intégrée de Windows, vous devez configurer votre application ou réseau pour éviter le problème de double saut NTLM, par exemple l'activation de l'authentification Kerberos pour votre réseau. Pour plus d'informations, consultez Authentication Types in Reporting Services and Understanding Kerberos Double Hop (en anglais). Notez que le contrôle ReportViewer ne fournit pas de pages de demande d'informations d'identification. Si votre application se connecte à un serveur de rapports qui utilise une authentification basée sur les formulaires, votre application doit fournir la page de connexion. |
Gestion de rapports |
Les rapports de serveur sont gérés sur un serveur de rapports. Un administrateur de serveur de rapports peut modifier les affectations de rôle qui fournissent accès à un rapport, reconfigurer les connexions aux sources de données et mettre à jour, déplacer, renommer ou supprimer le rapport. Toutes ces modifications peuvent compromettre ou interdire l'exécution du rapport dans votre application. Lorsque vous utilisez un rapport serveur dans votre application, veillez à bien comprendre comment il sera géré après le déploiement de l'application. |
Pour plus d'informations sur la conception de rapports, la récupération de données, le déploiement et les paramètres de sécurité pour SQL Server Reporting Services, consultez la documentation en ligne de SQL Server sur msdn.microsoft.com.
Quand utiliser le traitement distant
Une fonction de création de rapports basée sur un serveur vous permet de centraliser le stockage et la gestion des rapports, de définir des stratégies et de sécuriser l'accès aux rapports et dossiers, de contrôler le mode de traitement et de distribution des rapports et enfin, de normaliser l'utilisation des rapports dans l'entreprise. Reporting Services peut être installé dans des configurations ne comptant qu'un seul serveur, des configurations distribuées ou des configurations en cluster. Envisagez le traitement à distance si votre rapport a les caractéristiques suivantes :
Le rapport sera accessible par de nombreux utilisateurs.
Le rapport comporte une requête très complexe ou contient une grande quantité de données.
Un rapport est déjà publié sur un serveur de rapports, et vous souhaitez l'inclure dans une application que vous créez et déployez.
Le traitement distant nécessite l'accès à une copie sous licence de SQL Server, qui met un large ensemble de fonctionnalités à la disposition de votre application, par exemple des abonnements, la mise en cache, la sécurité et plus de formats de rendu. Pour plus d'informations sur les fonctionnalités de traitement distant dans SQL Server Reporting Services, consultez Reporting Services and ReportViewer Controls in Visual Studio dans la documentation en ligne de SQL Server.
Voir aussi
Concepts
Conversion de fichiers RDLC en fichiers RDL
Ajout et configuration de contrôles ReportViewer