, Fleur-Anne.Blain Ci-dessous un problème concernant le passage de paramètres d’un rapport à l’autre de manière user-friendly avec SSRS.
Voici comment procéder :
1 - Contexte :
Création d'un rapport sur des formulaires InfoPath stockés en xml dans une base de données SQL Serveur 2008. Les formulaires contenant des informations liées à la gestion de projet.
Le rapport à construire devait ressembler au formulaire InfoPath et pouvait contenir les informations d’un ou plusieurs rapports.
Dans le cas d’un rapport sur plusieurs formulaires, le rassemblement des données devait se faire section par section.
Représentons le problème de la manière suivante:
Sx – Section de rapport
Fx – Données de formulaire
Le rassemblement des données devant se pésenter comme ceci :
• S1
o F1
o F2
o …
o Fx
• S2
o F1
o F2
o …
o Fx
• …
• Sx
o F1
o F2
o …
o Fx
La granularité définissant un formulaire étant:
Un rapport de projet d’une division spécifique, d’une entité spécifique pour une période déterminée.
Ou d’une autre manière:
• Entité
o Division
Project
• Formulaire pour une période spécifique
2 - Première approche : les paramètres à valeurs multiples
Créer le layout du rapport, créer quelques sous rapports pour les différentes sections pour un formulaire, puis l’étendre à plusieurs, en choisissant de définir les paramètres projet et période comme paramètres à valeurs multiples, ce qui à priori devait permettre de sélectionner plusieurs projets et plusieurs périodes.
A utiliser, des paramètres en cascade ayant pour ordre la hiérarchie définie ci-dessus.
Les paramètres Projet et Période pouvant recevoir plusieurs valeurs alors qu’Entité et Division non.
Mais, nous rencontrons 2 problèmes:
• Impossibilité de comparer 2 projets de divisions/entités différentes.
• Impossibilité de rapporter sur un formulaire F1 pour une période P1 et un formulaire F2, pointant sur un autre projet, pour une période P2. Lors de ce choix dans les paramètres, il était retourné F1P1, F1P2, F2P1, F2P2.
3 - Deuxième approche : L’arborescence de paramètres
Malheureusement, il n’y a pas moyen de montrer un arbre de paramètres ou les feuilles de cet arbre pointerais sur l’ID d’un formulaire spécifique.
Il faut donc créer un rapport de paramètres.
Créer un parametre appelé ParameterList, défini comme string et autorisant les valeurs nulles et les chaines vides.
Ensuite créer un rapport sur les données, groupées comme ceci :
• Entité
o Division
Project
• Période
Au niveau des feuilles, ajouter une action pour construire dynamiquement la chaine de paramètres à passer au rapport suivant, basé sur l’ID d’un formulaire.
L’action rappelle le rapport lui-même en se passant comme paramètre ParameterList le retour de la fonction suivante :
Public Function setParameter(ByVal ParameterList As String, ByVal SelectedParam As String) As String
'Keep the parameter list value in a template variable
Dim returnParameterList as String
returnParameterList = ParameterList
'Create a full parameter:
'The "_" prefix is used to keep strings unique
Dim parameterAlias as String
parameterAlias = "_" + SelectedParam + ","
If (Replace(returnParameterList, parameterAlias, "") = ParameterList) Then
Return returnParameterList + parameterAlias
Else
Return Replace(returnParameterList, parameterAlias, "")
End If
End Function
Cette fonction à 2 rôles:
• Ajouter un nouvel ID de formulaire à la liste de formulaires à afficher
• Retirer de la liste des formulaires à afficher un ID déjà existant
Lorsqu’un ID n’existe pas encore dans la liste, la fonction l’y place sous le format suivant : _ID,
La virgule sert de délimiteur de paramètres à même titre que l’underscore.
Voici pourquoi j’utilise ces artéfacts:
• Sans artéfact,
Soit la chaine suivante :
1, 2, 10, 15, 30, 31,
Imaginons que l’on veuille supprimer l’ID 1:
• Replace(ParameterList,”1”,””) retournerait , 2, 0, 5, 30, 3, Ca casse complètement notre liste d’ID
• Replace(ParameterList,”1,”,””) retournerait 2, 10, 15, 30, 3 Un peu mieux mais toujours pas correct
• Avec artéfact,
Soit la chaine suivante
_1, _2, _10, _15, _30, _31,
• Replace(ParameterList,”_1,”,””) retournerait _2, _10, _15, _30, _31, Ca y est !
Par principe d’être user-friendly, utilisons une fonction pour parser cette liste de paramètres et montrer des checkbox pour les formulaires sélectionnés. Voici le code:
Public Function getItemSelected(ByVal ParameterList As String, ByVal StatusReportID As String) As String
'Create a full parameter:
'The "_" prefix is used to keep strings unique
Dim StatusReportIDAlias = "_" + StatusReportID + ","
If (Replace(ParameterList, StatusReportIDAlias, "") = ParameterList) Then
Return "checkboxempty"
Else
Return "checkboxselected"
End If
End Function
Nous obtenons un rapport, affichant la liste des formulaires en format « arbre », avec des boutons pour replier/deplier les différentes sections et des checkbox permettant la sélection des paramètres.
Finalement nous créons un bouton (textbox) pour passer les IDS de formulaires au rapport affichant les données desdits formulaires en utilisant le code suivant qui enlève la dernière virgule et les underscores et qui finalement éclate la chaine en un tableau de paramètres: =Split(Replace(Mid(Parameters!ParameterList.Value,1,Len(Parameters!ParameterList.Value)-1), "_",""),",")
Et ca marche !!!
Merci à Ptit_Dje pour avoir partager ses astuces avec nous ![]()
Vous devez être identifié pour poster un commentaire.
, Antoine Dinimant Une réponse à un besoin analytique
Les bases de données relationnelles modélisées selon les principes classiques de normalisation s’adaptent très mal à un contexte analytique (OLAP). En analyse, l’utilisateur doit disposer d’un modèle relativement intuitif et capable de stocker le résultat de nombreux calculs d’agrégation (ce qui, d’un strict point de vue relationnel, constitue une redondance), tandis que les problématiques classiques de contrôle de saisie et de cohérence sont inexistantes (on suppose que les données de base sont déjà saisies dans une BDD relationnelle cohérente) ou déplacées (on ne saisit plus des données mais des paramètres de calcul ou de simulation – voir plus bas).
Dimensions et indicateurs
La modélisation multidimensionnelle (formalisée notamment par Edgar F. Codd dans un article commandité par Arbor Software) propose donc d’analyser des indicateurs numériques (par exemple chiffre d’affaires, nombre d’individus, ratios, etc.) dans un contexte précisé par le croisement de plusieurs dimensions d’analyse (par exemple temps, géographie, organisation, produits, etc.), généralement présentées sous forme d’arbres hiérarchiques.
Par exemple, considérons les trois dimensions Temps, Marchés et Produits utilisées pour analyser les ventes d’un producteur de boissons :
Vous devez être identifié pour poster un commentaire.
, Aitone SAP Business One permet à ses clients d’accéder à la business intelligence grâce à une version gratuite du logiciel Crystal Reports
Vous devez être identifié pour poster un commentaire.
, Aitone Jaspersoft et l'éditeur Talend, leader de l'intégration de données en open source, viennent de conclure un accord visant à renforcer leur partenariat. Basée sur la technologie phare d'intégration de données de Talend, la nouvelle version de JasperETL intègrera les éléments de Talend Integration Suite qui sont nécessaires pour les utilisateurs de solutions décisionnelles. Cette version répondra ainsi plus particulièrement aux besoins des clients de Jaspersoft, qui ont besoin d'ETL leur permettant de gagner en puissance et en souplesse lors du déploiement de systèmes décisionnels.
Vous devez être identifié pour poster un commentaire.
, Aitone Cegedim, leader mondial du CRM (Customer Relationship Management) pour l'industrie pharmaceutique, annonce l'acquisition de la société Reportive, éditeur de logiciels de pilotage des performances.
Vous devez être identifié pour poster un commentaire.
, Aitone Business Objects et l’Ecole Centrale de Paris joignent leurs compétences au profit de l’innovation et de la recherche, en créant une chaire « Business Intelligence ». Celle-ci a pour vocation de rapprocher les étudiants et la R & D de Business Objects, structure d’enseignement mondialement reconnue, qui s’apprête à recruter pour l’occasion une équipe dédiée.
Vous devez être identifié pour poster un commentaire.
, Fleur-Anne.Blain Informatica lance Informatica On Demand Data Loader,un service de chargement de données à la demande pour Salesforce.
Ce service bidirectionnel à la demande permet aux utilisateurs d’améliorer leur efficacité opérationnelle en automatisant de nombreuses tâches d’intégration de données.
Paris, 13 mai 2008—Informatica Corporation (NASDAQ: INFA), premier fournisseur indépendant de logiciels d’intégration de données, a annoncé aujourd’hui Informatica On Demand (IOD) Data Loader Service for Salesforce, dernier-né de ses offres SaaS (Software-as-a-Service : logiciel en tant que service).
Le service IOD Data Loader est une offre d’intégration bidirectionnelle qui permet aux administrateurs Salesforce d’automatiser de nombreux processus d’intégration. La synchronisation des informations de comptes avec d’autres applications, la création de commandes en back office à partir des opportunités de vente concrétisées ou encore le chargement de leads commerciaux sont, en effet, automatisés grâce à IOD Data Loader. Outre qu’il élimine les efforts de codage manuel, ce service présente l’avantage d’être entièrement basé sur le Web et d’éliminer ainsi la nécessité de déployer sur site des machines ou des logiciels spécifiques. Cette solution a été annoncée lors de Dreamforce Europe, la conférence des utilisateurs et des développeurs de salesforce.com.
Vous devez être identifié pour poster un commentaire.
, Aitone La solution SAS® for Sustainability Management est conçue pour le management d’une politique de développement durable. C’est la première plate-forme d'aide à la décision qui permette d’identifier d’une manière proactive les stratégies innovantes de gestion effective de situations complexes qu’elles soient économiques, environnementales ou sociales tout en préservant les objectifs de performance fixés par les actionnaires.
Vous devez être identifié pour poster un commentaire.
, Aitone SAS enrichit ainsi ses solutions analytiques de technologies de traitement du langage naturel et de linguistique avancée
SAS, leader de l'informatique décisionnelle et des solutions analytiques, a annoncé, lors de SAS Global Forum qui s’est déroulé à San Antonio, Texas du 17 au 21 mars, l’acquisition de Teragram , société non cotée en bourse, numéro un sur le marché des technologies de traitement du langage naturel (NLP) et de linguistique avancée. Cette acquisition va permettre à SAS d’enrichir son offre de solutions de text mining et décisionnelles, et de les développer vers la recherche d’informations d’entreprise y compris via des terminaux mobiles.
SAS a été l'un des premiers éditeurs à s’intéresser au text mining, c’est-à-dire à l’analyse de textes et de données non structurées telles que les pages Web, les documents, les courriers électroniques, les images et autres informations non stockées dans une base de données structurée. Aujourd’hui, SAS est un acteur incontournable de ce secteur en constante progression.
Vous devez être identifié pour poster un commentaire.
, Fleur-Anne.Blain Stimulsoft, fournisseur de logiciels leader de la Business Intelligence , ne s'arrête jamais dans ses recherches et est maître des nouvelles technologies. Un de leur produit est la création de Stimulsoft DevReports Studio.
"Stimulsoft DevReports Studio est le premier concepteur de rapport qui permet aux utilisateurs de modifier des rapports dans un navigateur web", explique Vladimir Hotchenko, un chef d'équipe du département de développement de produits. "Et le plus attrayant est qu'Il n'y a aucun besoin pour vous d'installer. Net Framework, les composants ActiveX ou certains plug-ins sur la machine du client. Il vous suffit d'un navigateur web".
Vous devez être identifié pour poster un commentaire.
, Fleur-Anne.Blain Smile, 1er intégrateur de solutions open source en France, annonce l’ouverture d’une nouvelle agence à Kiev, capitale ukrainienne.
En 2008, Smile s’ouvre à l’international et offre ses services à l’Ukraine avec la création d’une nouvelle agence commerciale à Kiev, capitale du pays. Smile souhaite ainsi profiter d’un marché sur lequel l’open source est encore peu présent mais offre d’excellentes perspectives de croissance. Smile Ukraine répondra aux demandes de clients locaux.
« Nos objectifs sont d’atteindre un CA de 200 K€ en 2008 sur cette agence et de recruter 6 ingénieurs d’ici fin avril. », précise Marc Palazon, Président du directoire de Smile.
La nouvelle agence a ouvert ses portes en janvier et débute son activité actuellement.
Vous devez être identifié pour poster un commentaire.
, Fleur-Anne.Blain J’ai fait quelques tests de la version Crystal Reports 2008 car une des nouveautés annoncées concerne le choix de l’orientation des pages section par section. Des nouveautés semblent intéressantes (par exemple la gestion des codes barres) mais je ne les ai pas testées car je n’en ai pas l’utilité et ma période de test est de toute façon expirée.
Vous devez être identifié pour poster un commentaire.
![]() |
| Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
Copyright © 2000-2012 - www.developpez.com