FAQ Microsoft Business IntelligenceConsultez toutes les FAQ
Nombre d'auteurs : 5, nombre de questions : 30, dernière mise à jour : 24 décembre 2008 Ajouter une question
Cette F.A.Q. a été réalisée à partir des connaissances de membres de Developpez.com en vue de répondre à des questions fréquemment posées par les utilisateurs.
Elle traite de tout type de questions portant sur Reporting Services (SSRS), Analysis Services (SSAS), Integration Services (SSIS) voire Management Studio (SSMS) de SQL Server.
Nous espérons que cette F.A.Q. saura répondre à un maximum de vos questions. Nous vous souhaitons une bonne lecture.
L'équipe Microsoft BI de Developpez.com.
- Qu'est-ce que SSRS ?
- Comment insérer une image de fond à un rapport ?
- Quels outils sont nécessaires pour concevoir des rapports ?
- Comment modifier la taille d'un rapport ?
- Que faire pour avoir deux axes des Y ?
- Comment alterner la couleur des lignes d'un tableau ?
- Comment alterner la couleur des lignes d'un tableau en colorant par groupe ?
- Comment sauter une ligne dans une cellule de rapport ?
- Comment accéder au gestionnaire du serveur de rapport ?
- Comment modifier l'apparence du gestionnaire de rapport?
- Quels sont les formats d'export de rapport possibles ?
- Comment ajouter son propre modèle de rapport aux modèles existants ?
- Comment ajouter des paramètres à son rapport (requête paramétrée) ?
- Comment déployer un rapport sur le serveur de rapport ?
- Que faire lorsqu'on a un message du type "le serveur web a refusé la connexion" ?
- Comment colorer une ligne selon la valeur d'une cellule?
SSRS, qui est l'acronyme de SQL Server Reporting Services, est un outil permettant de concevoir des rapports ou des modèles de reports. Ce service est intégré à Visual Studio et SQL server. Un report (basé sur le langage XML) est créé depuis Visual Studio, ou par le générateur de rapport. Le rapport est publié sur un serveur Reporting Services et les utilisateurs pourront visionner ces rapports selon 3 possibilités :
- Directement depuis le Portail Reporting Services
- Depuis des pages WEB appelant les WebServices
- Directement via les reports
Remarque : SSRS est disponible aussi gratuitement avec une version express de SQL Server 2005 qui inclus le serveur et les Reporting Services (Microsoft SQL Server 2005 Express Edition with Advanced Services et Microsoft SQL Server 2005 Express Edition Toolkit)
Pour insérer une image il faut aller dans le menu report> embedded images, ajouter une image. Ensuite, il faut aller dans les propriétés du rapport au niveau de l'onglet backgroundImage, à source préciser la propriété embedded et value sélectionner le nom de l'image voulue.
Réalisé sur SQL Server 2K5
- Visual studio 2005
- Sinon, dans la version 2005 de SQL Server, nous disposons d'un module Business Intelligence Development Studio, qui fournit tout le nécessaire pour concevoir des rapports (Report Designer).
Pour modifier la taille d'un rapport (ou passer de portrait à paysage) il faut passer par les propriétés du rapport soit directement en cliquant sur le rapport puis propriétés où il y a un onglet Size pour préciser hauteur et largeur. Soit dans le menu rapport>Propriétés du rapport. Au niveau de l'onglet layout, il est possible de définir une taille de rapport ainsi que les marges.
Réalisé sur SQL Server 2K5
Réponse énervante : on ne peut pas ! Mais il existe des outils third party (tel que Dundas) qui permettent de le faire. Ces composants sont payants. La version 2008 de SSRS permet de faire de tels graphiques.
Réalisé sur SQL Server 2K5
SSRS, et c'est une limitation, ne possède pas de composant pour faire ce genre de présentations, il faut passer par du code VB :
Code vb : | Sélectionner tout |
=IIF(RowNumber(Nothing) Mod 2=0, "Silver","White")
Réalisé sur SQL Server 2K5
On peut également passer par du code VB pour alterner la couleur des lignes :
Code vb : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 | Private bOddRow AS BOOLEAN FUNCTION AlternateColor(ByVal OddColor AS String, _ ByVal EvenColor AS String, ByVal Toggle AS BOOLEAN) AS String IF Toggle Then bOddRow = NOT bOddRow IF bOddRow Then RETURN OddColor Else RETURN EvenColor End IF End FUNCTION |
=Code.AlternateColor("LightGrey", "White", True) pour la 1ere colonne
et
=Code.AlternateColor("LightGrey", "White", False) pour les autres
Avantage : Permet de colorer ligne à ligne le tableau indépendamment des lignes masquées par un filtre.
Ce sera encore en VB mais cette fois, on ne compte plus ligne par ligne mais on compare un élément avec celui de la ligne précédente et en fonction du résultat, on choisit une couleur :
Code vb : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | Private bOddRow AS BOOLEAN, n AS Integer FUNCTION AlternateColor(ByVal OddColor AS String, _ ByVal EvenColor AS String, ByVal Toggle AS BOOLEAN, ByVal projno AS String) AS String 'on inverse la couleur de base a chaque ligne bOddRow = Not bOddRow 'si le n° de projet est le meme qu'a la ligne précédente, on réinverse la couleur If projno = n then bOddRow = Not bOddRow 'n prend la valeur du n° de projet de la ligne n = projno 'En fonction de bOddRow, on renvoie la couleur If bOddRow Then Return OddColor Else Return EvenColor End If End Function |
=Code.AlternateColor("LightGrey", "White", True, Fields!Project_Number.Value)
pour la 1ere colonne et
=Code.AlternateColor("LightGrey", "White", False, Fields!Project_Number.Value) pour les autres
Dans cet exemple, la coloration sera identique pour chaque ligne ayant le même n° de projet et alternativement d'un groupe à l'autre.
Réalisé sur SQL Server 2K5
Il est possible dans une cellule de rapport d'insérer des sauts de lignes dans la cellule (comme un ALT + ENTER dans Excel). Pour celà, il suffit d'insérer VbCrLf.
Par exemple :
Code vb : | Sélectionner tout |
="Ligne1" & VbCrLf & Parameter!Ligne2.value
Code : | Sélectionner tout |
1 2 | Ligne1 ParamLigne2 |
Réalisé sur SQL Server 2K5
Après déploiement dudit rapport, il est accessible via l'url suivante :
http://nomdevotreserver/reports/ ou http://localhost/reports/
Réalisé sur SQL Server 2K5
Modifier la feuille de style suivante: C:\Program Files\Microsoft SQL Server\MSSQL.3\ReportingServices\ReportManager\Styles\ReportingServices.css
Pour changer les images, aller dans C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportManager\images pour mettre l'icône de votre entreprise ou autre.
Réalisé sur SQL Server 2K5
Il existe plusieurs formats d'export de rapport Reporting Services :
- Fichier au format HTML/XML
- Fichier TIFF (image)
- Fichier PDF
- Fichier Excel (97 à 2007)
- Fichier archive web
- Fichier CSV
Réalisé sur SQL Server 2K5
Etape 1 : Créer son rapport dans projet de serveur de rapports dans SQL Server Business Intelligence Development Studio
Etape 2 : Ajouter tout ce qui est nécessaire à votre modèle (un logo, nom d'entreprise, pied de page, etc.)
Etape 3 : Enregistrer et nommer votre nouveau modèle (nomdevotremodele.rdl). Il vous faut l'enregistrer dans C:\ProgramFiles\MicrosoftVisualStudio8\Common7\IDE\PrivateAssemblies\ProjectItems\ReportProject.
Etape 4 : Vous disposez d'un nouveau template
Réalisé sur SQL Server 2K5
Pour ajouter un ou plusieurs paramètres (c'est-à-dire une valeur cohérente donnée par l'utilisateur pour obtenir un résultat spécifique sur un rapport) il suffit d'aller dans le menu rapport>Paramètres du rapport.
Partant de là, il faut nommer le paramètre, spécifier le type de données, si on autorise les valeurs nulles, s'il faut une valeur par défaut, une liste de valeur, etc.
Et valider.
Réalisé sur SQL Server 2K5
Etape 1 : démarrer si ce n'est pas déjà fait votre serveur de rapport. Pour cela, aller dans démarrer>executer>cmd puis saisir net start reportserver
Etape 2 : Aller dans les propriétés du projet, pour vous éviter une "erreur" lors de l'exécution de votre report, spécifier l'url que vous utilisez pour déployer vos reports, et mettez la propriété OverwriteDataSources à true. Cela vous évitera d'avoir un message d'avertissement vous signalant que la base de données existe déjà (car elle est rechargée à chaque exécution). Si vous changez de serveur, changez aussi l'url des propriétés du projet.
Etape 3 : Déployer votre projet, cliquez droit sur votre solution et faites "Déployer"
Etape 4 : Aller sur le gestionnaire de rapport pour vérifier le déploiement (en plus de la fenêtre d'exécution) via navigateur Internet en saisisant l'URL suivante: http://nomdevotreserver/reports/ ou http://localhost/reports/ .
Réalisé sur SQL Server 2K5
Cocher "Ne pas utiliser de serveur proxy pour les adresses locales" sous
Outils > Options Internet > Connexions > Paramètres Réseaux > Serveur Proxy
Réalisé sur SQL Server 2K5
L'objectif de cette astuce est de colorer une ligne selon la valeur d'une cellule.
Appliquez cette formule en VB au niveau de la couleur de la ligne
Code vb : | Sélectionner tout |
= iif((FIELDS!Prix.Value) > 10000, "Red", "Green")
Ceci nous donne une couleur Rouge pour les prix qui dépassent la valeur 10000 et une couleur Verte pour les prix inférieur.
Astuce : L'objectif de cette astuce est de compléter la solution précédente
Code vb : | Sélectionner tout |
=IIF(FIELDS!trimestre.value=1,"Red",IIF(FIELDS!trimestre.value=2,"Blue",IIF(FIELDS!trimestre.value=3,"Black","Green")))
Réalisé sur SQL Server 2K5
Proposer une nouvelle réponse sur la FAQ
Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour çaLes sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2024 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.