Top Menu

Chez le client où j’interviens en ce moment, il nous a été demandé de développer un outil de déploiement de rapports SSRS automatisé à l’aide de Powershell, une partie du projet où je me suis bien amusé à vrai dire 😎 .

Le package est composé des éléments ci-dessous :

  • > Un fichier de configuration (DeployConfiguration_V1.0.xml) où sont stockées les informations : 
    • – Adresse du serveur SSRS,
    • – Liste des dossiers à créer si nécessaire sur le serveur SSRS,
    • – Sources de données utilisées au sein des rapports,
    • – Les informations concernant les rapports (dossier de déploiement, sources de données).
  • > Un ensemble de fonction Powershell (OutPut_V1.0.ps1, System_V1.0.ps1) utilisées pour la gestion de l’affichage, ainsi que la transcription des erreurs et warning dans les logs,
  • > Les fichiers de définition des rapports (*.rdl) que l’on souhaite déployer sur le serveur SSRS,
  • > Le script Powershell (DeploySSRS_V1.0.ps1).

Tout ce petit monde est organisé de la manière suivante :

  • Exemple de configuration pour un éventuel déploiement d’un rapport SSRS,

Script de déploiement :

  • Obtention du chemin du fichier de configuration et lancement de la transcription dans les logs,
  • Lecture du fichier de configuration et vérification des erreurs de saisie sur ce dernier,
  • Obtention du proxy web service SSRS et de l’espace de noms générés automatiquement par le proxy web service SSRS,
  • Création des dossiers sur le serveur SSRS où seront déployés les rapports,

  • Création des sources de données utilisées par les rapports,

  • En faisant une itération sur les fichiers (rapports *.rdl) contenus dans le dossier Reports du package de déploiement, on récupère à partir des noms des rapports leurs propriétés de déploiement stockées dans le fichier de configuration (DeployConfiguration_V1.0.xml), s’ensuit la partie déploiement proprement dit,

Exécution du script :

  • Toutes les étapes d’exécution du script sont affichées sur le terminal, aussi le script gère les cas d’existence préalable des rapports ou sources de données au niveau du serveur SSRS. Le choix sera demandé à l’utilisateur d’écraser ou pas l’objet en question.

ExecutionDeploiementSSRSPowershell

  • Création des dossiers

Création des dossiers

  • Création des sources de données

Création des sources de données

  • Déploiement des rapports

Déploiement des rapports

Votre avis concernant cette méthode de déploiement ? 🙂

About The Author

Consultant Décisionnel au sein de la société coopérative SCOP IT, je vais essayer de partager avec vous sur ce blog mon expérience de consultant !

2 Comments

  1. Bonjour Haddarkh,

    Ton projet est excellent, très propre, et correspond parfaitement à ce dont j’ai besoin actuellement chez mon client pour déployer nos reports.

    Serai-t’il possible d’obtenir les sources en DL ?

    Merci d’avance,
    Patrcik

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Close