Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > BIRT
BIRT Forum d'entraide sur BIRT (Business Intelligence and Reporting Tools). Avant de poster --> FAQ BIRT,Tutoriels BIRT
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/11/2011, 17h40   #1
Invité régulier
 
Inscription : février 2003
Messages : 10
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 10
Points : 7
Points : 7
Par défaut [Birt Designer 3.7.0]Trier un diagramme en bâton (bar chart) selon la valeur des bâtons

Comme la résolution de mon précédent problème a bien fonctionné , je tente avec le second que je rencontre:

- J'ai un dataset contenant une liste de demandes dont un des champs est le nom de l'application à laquelle sont rattachées chacune des demandes
- Je créé un "bar chart" pour afficher en abscisse les applications en ordonnée le nombre de demandes => En gros j'obtiens un rapport qui me donne le nombre de demandes par application.

Mon problème, l'axe des ordonnées est classé par exemple par ordre alphabétique du libellé de l'application, alors que j'aimerais le classer selon la valeur de la barre (l'application ayant le plus de demandes doit apparaître en premier...).

J'ai lu tout en un tat de choses sur Internet, et la seule solution que j'ai trouvé c'est de créer un dataset spécifique pour ce graphique dans lequel je fais directement mon group by sur les applications que j'ordonne ensuite selon le nombre de demandes ==> Mais cette solution ne me satisfait pas car, ca rajoute inutilement un dataset et donc une requête à la base...d'autre part, je ne pas ajouter de 2ème catégorie pour, par exemple, colorer les barres selon le statut des demandes par exemple...

En PJ, un exemple de graphique pour lequel j'aimerais effectuer ce tri...quand on sait qu'Excel est capable de faire...j'ai du mal à dire que ce magnifique outil BIRT ne peut en faire autant!

Quelqu'un aurait-il une idée ?
Images attachées
Type de fichier : jpg demands_perappli.jpg (31,4 Ko, 7 affichages)
Pauloux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/11/2011, 11h31   #2
Membre confirmé
 
Homme
Consultant en Business Intelligence
Inscription : mai 2009
Messages : 186
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Consultant en Business Intelligence

Informations forums :
Inscription : mai 2009
Messages : 186
Points : 289
Points : 289
Salut,

pour ce genre de choses perso j'utilise un crosstab:
1/créer un datacube avec la mesure "nombre de demandes" et la dimension "application"
2/drag & drop du datacube vers le rapport pour créer un crosstab
3/dans le crosstab, ajouter un tri sur la mesure en ordre croissant/décroissant
4/cliquer-droit sur le crosstab -> create chart view pour transformer le tableau en graphe
c'est fini!
donino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/11/2011, 15h39   #3
Invité régulier
 
Inscription : février 2003
Messages : 10
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 10
Points : 7
Points : 7
Salut Donino,

D'abord merci pour ta réponse. En fait j'ai déjà essayé ce type de solution mais je bloque au niveau du tri ==> Je ne parviens pas à trier le crosstab (et donc le chart associé) selon la valeur obtenue.

J'ai refait un tests à l'instant (cf. screen shot).

Où dois-je gérer ce tri dans le crosstab (car celui que j'ai mis en place n'a aucune influence)
Images attachées
Type de fichier : jpg birt_pbtri_crosstab.jpg (75,5 Ko, 8 affichages)
Type de fichier : jpg birt_pbtri_crosstab1.jpg (72,0 Ko, 4 affichages)
Pauloux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/11/2011, 18h19   #4
Membre confirmé
 
Homme
Consultant en Business Intelligence
Inscription : mai 2009
Messages : 186
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Consultant en Business Intelligence

Informations forums :
Inscription : mai 2009
Messages : 186
Points : 289
Points : 289
Ok ce n'est pas tout à fait comme ça qu'il faut faire.
La première chose est de créer le niveau d'agrégat sur lequel on souhaite trier: autrement dit créer un total par ligne, puisque on veut trier sur les applications qui sont, sur l'exemple joint, en ligne
Donc dans ton crosstab tu cliques-droit sur le groupe des lignes "Appli"->Totals->cocher Grand totals

Ensuite, créer un nouveau tri avec:
Group level = <Groupe Appli>
key = ... et c'est là qu'il faut être concentré ! il faut choisir la donnée qui correspond au bon niveau d'aggrégat, c'est à dire au total que l'on vient de créer. Dans ton cas elle devrait s'appeler quelquechose comme idClientDemande_Groupe2/Appli, tu peux vérifier dans l'onglet "Binding", ce sera la seule ligne définie dans la colonne "Aggregate on".

Et là cela devrait fonctionner. Je reconnais que cette histoire de binding aggrégés est un peu compliquée au début, mais c'est en fait très pratique et donne beaucoup de possibilités quand on a un peu l'habitude

A+
donino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/11/2011, 18h08   #5
Invité régulier
 
Inscription : février 2003
Messages : 10
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 10
Points : 7
Points : 7
Ca marche Nickel, c'est plus clair désormais! Parfait, merci pour tout!
Pauloux est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h49.


 
 
 
 
Partenaires

Hébergement Web