Leçon 1 : Créer le projet Visual Studio du schéma RDL
Dans ce didacticiel, vous allez créer une application console simple. Ce tutoriel suppose que vous développez dans Microsoft Visual Studio 2010.
Notes
Lorsque vous accédez au service Web Report Server exécuté sur SQL Server Express avec Advanced Services, vous devez ajouter « _SQLExpress » au chemin d’accès « ReportServer ». Par exemple :
http://myserver/reportserver_sqlexpress/reportservice2010.asmx"
Pour créer le proxy de service Web
Dans le menu Démarrer , sélectionnez Tous les programmes, Microsoft Visual Studio, Visual Studio Tools, puis Invite de commandes de Visual Studio 2010.
Dans la fenêtre d'invite de commandes, exécutez la commande suivante si vous utilisez C# :
wsdl /language:CS /n:"ReportService2010" http://<Server Name>/reportserver/reportservice2010.asmx?wsdl
Si vous utilisez Visual Basic, exécutez la commande suivante :
wsdl /language:VB /n:"ReportService2010" http://<Server Name>/reportserver/reportservice2010.asmx?wsdl
Cette commande génère un fichier .cs ou .vb. Vous ajouterez ce fichier à votre application.
Pour créer une application console
Dans le menu Fichier , pointez sur Nouveau, puis cliquez sur Projet pour ouvrir la boîte de dialogue Nouveau projet .
Dans le volet gauche, sous Modèles installés, cliquez sur le nœud Visual Basic ou Visual C# , puis sélectionnez une catégorie de types de projets dans la liste développée.
Choisissez le type de projet Application console .
Dans la zone Nom , tapez le nom de votre projet. Tapez le nom
SampleRDLSchema
.Dans la zone Emplacement , entrez le chemin d'accès de l'emplacement où vous voulez enregistrer le projet, ou cliquez sur Parcourir pour rechercher le dossier.
Cliquez sur OK. Une vue réduite de votre projet apparaît dans l'Explorateur de solutions.
Dans le menu Projet , cliquez sur Ajouter un élément existant.
Naviguez jusqu'à l'emplacement où vous avez généré le fichier .cs ou .vb, sélectionnez le fichier, puis cliquez sur Ajouter.
Vous devrez également ajouter une référence à l'espace de noms Services pour que votre référence Web fonctionne.
Dans le menu Projet, cliquez sur Ajouter une référence.
Dans la boîte de dialogue Ajouter une référence , dans l'onglet .NET , sélectionnez System.Web.Services, puis cliquez sur OK.
Pour plus d’informations sur la connexion au service Web Report Server, consultez Génération d’applications à l’aide du service web et du .NET Framework.
Dans l'Explorateur de solutions, développez le nœud du projet. Un fichier de code portant le nom par défaut Program.cs (Module1.vb pour Visual Basic) a été ajouté à votre projet.
Ouvrez le fichier Program.cs (Module1.vb pour Visual Basic) et remplacez le code par ce qui suit :
Le code suivant fournit les stubs de méthode que nous utiliserons pour implémenter les fonctionnalités de chargement, de mise à jour et d'enregistrement.
using System; using System.Collections.Generic; using System.IO; using System.Text; using System.Xml; using System.Xml.Serialization; using ReportService2010; namespace SampleRDLSchema { class ReportUpdater { ReportingService2010 _reportService; static void Main(string[] args) { ReportUpdater reportUpdater = new ReportUpdater(); reportUpdater.UpdateReport(); } private void UpdateReport() { try { // Set up the Report Service connection _reportService = new ReportingService2010(); _reportService.Credentials = System.Net.CredentialCache.DefaultCredentials; _reportService.Url = "http://<Server Name>/reportserver/" + "reportservice2010.asmx"; // Call the methods to update a report definition LoadReportDefinition(); UpdateReportDefinition(); PublishReportDefinition(); } catch (Exception ex) { System.Console.WriteLine(ex.Message); } } private void LoadReportDefinition() { //Lesson 3: Load a report definition from the report // catalog } private void UpdateReportDefinition() { //Lesson 4: Update the report definition using the // classes generated from the RDL Schema } private void PublishReportDefinition() { //Lesson 5: Publish the updated report definition back // to the report catalog } } }
Imports System Imports System.Collections.Generic Imports System.IO Imports System.Text Imports System.Xml Imports System.Xml.Serialization Imports ReportService2010 Namespace SampleRDLSchema Module ReportUpdater Private m_reportService As ReportingService2010 Public Sub Main(ByVal args As String()) Try 'Set up the Report Service connection m_reportService = New ReportingService2010 m_reportService.Credentials = _ System.Net.CredentialCache.DefaultCredentials m_reportService.Url = _ "http:// <Server Name>/reportserver/" & _ "reportservice2010.asmx" 'Call the methods to update a report definition LoadReportDefinition() UpdateReportDefinition() PublishReportDefinition() Catch ex As Exception System.Console.WriteLine(ex.Message) End Try End Sub Private Sub LoadReportDefinition() 'Lesson 3: Load a report definition from the report ' catalog End Sub Private Sub UpdateReportDefinition() 'Lesson 4: Update the report definition using the ' classes generated from the RDL Schema End Sub Private Sub PublishReportDefinition() 'Lesson 5: Publish the updated report definition back ' to the report catalog End Sub End Module End Namespace
Leçon suivante
Dans la prochaine leçon, vous allez utiliser l'outil de définition de schéma XML (Xsd.exe) pour générer des classes à partir du schéma RDL et les inclure dans votre projet. Consultez Lesson 2: Generate Classes from the RDL Schema using the xsd Tool.
Voir aussi
Mise à jour des rapports à l'aide des classes générées à partir du schéma RDL (didacticiel SSRS)
Langage de définition de rapport (SSRS, Report Definition Language)