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 29/06/2011, 08h43   #1
Invité régulier
 
Inscription : juin 2011
Messages : 30
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : juin 2011
Messages : 30
Points : 6
Points : 6
Par défaut paramètre de rapport

Bonjour,

Cela fait deux jours que j'essaye de créer des paramètres de rapport, j'ai suivi la plupart des discussions à ce sujet, et suivi toutes les indications, mais il y a surement quelque chose qui m'échappe puisque je n'obtiens pas ce que je veux.

En fait, je veux donner la possibilité aux utilisateurs finaux de pouvoir "paramétrer les résultats" en fonction de certains critères. Par exemple, si le rapport présente une liste de toutes les commandes depuis le début de l'année, l'utilisateur va vouloir avoir une liste en fonction de ses besoins tel que les commandes en cours de paiement pour ce mois ci, ...

J'ai donc créer les paramètres, puis quand je fais "aperçu" et "affiche les paramètres du rapport" pour modifier mon choix, la liste reste la même.

Si ce n'est pas très claire, je vous ai mis des captures d'écran en fichier joint.

Aussi j'aimerai savoir si c'est possible de faire la même chose pour des .rpttemplate et si ça ce fait de la même manière ou pas.
Je suis prenant pour toutes remarques

merci
Images attachées
Type de fichier : jpg saisie des paramètres.JPG (50,9 Ko, 15 affichages)
Type de fichier : jpg modification du parametre.JPG (57,1 Ko, 13 affichages)
soumay est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 08h58   #2
BiM
Modératrice
 
Avatar de BiM
 
Femme
Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
Inscription : janvier 2005
Messages : 7 299
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 26
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

Informations forums :
Inscription : janvier 2005
Messages : 7 299
Points : 8 650
Points : 8 650
Bonjour,

Avec les captures d'écran, je n'ai pas mieux compris. Explique nous ce que tu veux précisément (sans mettre de terme technique ni expliquer la façon dont tu veux le faire, seulement ce que l'utilisateur doit voir, faire et avoir comme rendu).
__________________
__~{@ BiM - Modératrice "Business Intelligence" @}~
Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
___________.~{@ Lapine crétine @}~
BiM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 14h21   #3
Invité régulier
 
Inscription : juin 2011
Messages : 30
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : juin 2011
Messages : 30
Points : 6
Points : 6
En fait je suis en stage et comme je suis encore en train de découvrir cet outil (plugin Birt dans IBM Rational ClearQuest) je peux comprendre que je n'ai pas été assez clair. Désolé

Le but de mon stage est de générer des modèles de rapports.
Pour cela, les utilisateurs finaux, qui vont se servir des modèles que je fait pour créer leurs rapports, devront avoir la possibilité de faire des tris sur les données.

Donc si le rapport est fait à partir du modèle 'liste des factures', l'utilisateur va avoir la liste de toutes les factures présentent dans la base de données.
Imaginons maintenant que l'utilisateur souhaite avoir la 'liste des factures non payées du mois de juin' (ou autre) ... comment va t-il faire ?
J'ai alors pensé que la solution serait d'inclure des paramètres de rapport pour qu'il ai la liberté de manipuler ces données. C'est ce que j'ai fait.
Cependant, avec ou sans paramètres, le resultat reste le même, c'est à dire qu'au lieu d'avoir la 'liste des factures non payées du mois de juin', j'ai toujours la 'liste des factures' (c'est à dire toutes les factures en cours, payées, non payées, ....)

j'espère avoir été plus clair
soumay est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 14h40   #4
BiM
Modératrice
 
Avatar de BiM
 
Femme
Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
Inscription : janvier 2005
Messages : 7 299
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 26
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

Informations forums :
Inscription : janvier 2005
Messages : 7 299
Points : 8 650
Points : 8 650
Ok, tu as rajouté tes paramètres au rapport mais pas au DataSet. Il faut prévenir le DataSet que tu veux filtrer tes données OU la table au pire.
__________________
__~{@ BiM - Modératrice "Business Intelligence" @}~
Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
___________.~{@ Lapine crétine @}~
BiM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/07/2011, 07h49   #5
Invité régulier
 
Inscription : juin 2011
Messages : 30
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : juin 2011
Messages : 30
Points : 6
Points : 6
Ah oui, ça fonctionne mieux maintenant
J'en profite également pour poser une autre question au sujet des paramètres.
Est ce possible de remplir un seul champ du rapport (ex : ID de la facture) et que tous les autres champs correspondant à cet ID se remplissent automatiquement? et comment faire exactement svp (je pense qu'il s'agit des paramètres dynamiques mais je n'ai pas compris comment les utiliser)
Merci
soumay est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/07/2011, 18h35   #6
Rédacteur/Modérateur
 
Avatar de David55
 
Homme David S.
Etudiant en alternance
Inscription : août 2010
Messages : 1 167
Détails du profil
Informations personnelles :
Nom : Homme David S.
Âge : 22
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Etudiant en alternance
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : août 2010
Messages : 1 167
Points : 2 304
Points : 2 304
Si tu as besoin que de l'ID, pourquoi ne pas demander que l'ID ^^

Une fois l'ID récupéré, tu peux demander les autres info dans ton dataset avec une requête SQL!

Tu peux toujours garder tes autres paramètres mais du coup, ne les met pas en obligatoire!

Sinon, tu veux faire un effet cascade?
__________________
Vous trouverez ma page perso avec des tutoriels sur Android et BIRT au lien suivant : http://dsilvera.developpez.com
N'oubliez pas de voter pour les messages dont la réponse est pertinente (en bas à droite du cadrant)
Vous voulez afficher du code :
Votre problème est résolu :
Pas de question technique par MP !
David55
David55 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/07/2011, 14h04   #7
Invité régulier
 
Inscription : juin 2011
Messages : 30
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : juin 2011
Messages : 30
Points : 6
Points : 6
D'accord mais n'y a t-il pas un moyen de le faire sans requête SQL ?
j'ai joint une capture d'écran de mon template. Quand un utilisateur va faire un rapport en choisissant ce template, je veux simplement qu'il renseigne le champ [RP_id] (en haut à droite) et que tous les autres champs (entre crochets) se remplissent automatiquement.

Remarque : Les utilisateurs finaux ne doivent pas toucher au dataset, ni faire des requêtes supplémentaires,...

Par ailleurs pouvez vous m'expliquer les paramètres en cascades svp, je pense ne pas avoir compris le principe. (Désolé mais je suis encore novice dans le domaine)
Images attachées
Type de fichier : png ex_template.PNG (53,2 Ko, 9 affichages)
soumay est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2011, 10h23   #8
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
Perso j'ai un peu de mal à comprendre la cinétique de l'appli: la plupart du temps dans ce type de fonctionnements listes/détails tu as 2 rapports:
- le premier rapport qui liste les factures, décrits dans ton premier post
- le deuxième rapport facture détaillée, décrit dans ton dernier post, accessible entre autre par "drill to template" en cliquant sur un élement de la liste du premier rapport.

Le rapport facture détaillée doit donc être un .rptdesign, avoir son propre dataset et en paramètre requis l'ID qui viendra filtrer le SQL sur la facture souhaitée. Ce parametre ID sera renseigné soit par le Drill to template, soit par une saisie utilisateur si le rapport a été lancé directement.

Il y a sans doute un truc que j'ai mal compris car je ne vois pas ce que vient faire le rpttemplate dans l'archi de ton appli? Tu veux que chaque utilisateur puisse créer des rapports personnalisés ?
donino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2011, 12h10   #9
Invité régulier
 
Inscription : juin 2011
Messages : 30
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : juin 2011
Messages : 30
Points : 6
Points : 6
Citation:
la plupart du temps dans ce type de fonctionnements listes/détails tu as 2 rapports:
- le premier rapport qui liste les factures, décrits dans ton premier post
- le deuxième rapport facture détaillée, décrit dans ton dernier post, accessible entre autre par "drill to template" en cliquant sur un élément de la liste du premier rapport.
Non, je ne travaille que sur le rapport "facture détaillée" qui est en fait un .rpttemplate. Il n'y a pas de liste. (la liste concernait une autre question)

Citation:
Le rapport facture détaillée doit donc être un .rptdesign, avoir son propre dataset et en paramètre requis l'ID qui viendra filtrer le SQL sur la facture souhaitée. Ce paramètre ID sera renseigné soit par le Drill to template, soit par une saisie utilisateur si le rapport a été lancé directement.
Oui, le rapport facture détaillée sera bien un .rptdesign (créer par l'utilisateur final).
Cependant, le dataset et le paramètre ID sont définit dans le .rpttemplate. (en effet, un .rpttemplate peut contenir les sources de données, les datasets,…).
Donc quand l’utilisateur sélectionne un template pour son rapport, la trame du rapport est déjà faite … Il appui sur aperçu, rempli le paramètre ID pour que toutes les données correspondantes (nom, prénom, adresse, montant,…) se remplissent automatiquement.
Oui, je veux que chaque utilisateur puisse créer des rapports personnalisés, par là j'entend que selon l'id entré par l'utilisateur, une nouvelle facture est de nouveau créée.
Le problème c’est que quand on rempli le paramètre ID, les champs nom, prénom… de la facture ne correspondent pas à l’ID entré, mais à l’ID de la première ligne de ma base de donnée.

Merci pour votre patience... j'ai vraiment besoin d'aide
soumay est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2011, 20h02   #10
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
Citation:
Envoyé par soumay Voir le message
Oui, je veux que chaque utilisateur puisse créer des rapports personnalisés, par là j'entend que selon l'id entré par l'utilisateur, une nouvelle facture est de nouveau créée.
J'ai peut être mal compris mais je crois qu'il y a une petite confusion avec l'utilisation des rptdesign/rpttemplate. D'aprés ce que j'ai vu tu souhaites qu'un fichier .rptdesign soit créé pour chaque nouvelle facture, mais ce n'est pas le but de ces fichiers: un rptdesign est déjà un template parametré en soi, ce n'est pas un fichier ou on stocke une instance de rapport comme on le ferait avec un fichier excel ou pdf par exemple.

Si les données retournées sont la premiere ligne de la base c'est que tu as oublié de les filtrer avec le paramètre ID.

Donc voici un récap de ce qu'il faut faire dans les grandes lignes pour que ce rapport fonctionne:

Créer un paramètre ID requis dans le rapport
Il est conseillé de mettre une valeur par défaut réelle pour que les prévisualisations SQL fonctionnent dans le designer

Créer 2 datasets dans le rapport
-Entete de facture, avec une requête du type:

select name, firstame, country, dest_name, dest_firstame, etc...
from facture_Entete
where ID = ?


-Ligne détails, avec une requête du type:

Select designation, quantite, puHT, MontantTTC
from facture_Details
where ID = ?


A l'interieur des 2 datasets Il faut affecter le parametre ID pour que le "?" soit remplacé par l'ID choisi par les utilisateurs à l'exécution.

Tu lies le tout avec les champs à afficher (ou tu fais directement un drag & drop des datasets vers le rapport puis un peu de cosmétique), et hop tout fonctionnera, une belle facture générique paramétrée par ID sans avoir besoin de rpttemplate! Maintenant si tu en veux absolument un, libre à toi , mais à moins que je sois très fatigué et que je n'ai rien compris tu n'en as pas du tout besoin au stade actuel du projet.
donino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2011, 21h57   #11
BiM
Modératrice
 
Avatar de BiM
 
Femme
Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
Inscription : janvier 2005
Messages : 7 299
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 26
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

Informations forums :
Inscription : janvier 2005
Messages : 7 299
Points : 8 650
Points : 8 650
Effectivement il y a une énorme confusion.

Tu devrais peut être reprendre les bases.
Qu'est ce que BIRT ?
Quels sont les différents types de fichiers existants dans BIRT ?
__________________
__~{@ BiM - Modératrice "Business Intelligence" @}~
Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
___________.~{@ Lapine crétine @}~
BiM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/07/2011, 14h37   #12
Invité régulier
 
Inscription : juin 2011
Messages : 30
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : juin 2011
Messages : 30
Points : 6
Points : 6
En effet, la distinction entre le rpttemplate et rptdesign n'est pas très clair.
Mais merci beaucoup pour vos conseils, je vais à présent essayer de résoudre mon problème avec une nouvelle approche. J'espère y arriver.
Thanks again !!
soumay est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/07/2011, 15h51   #13
Invité de passage
 
Étudiant
Inscription : juillet 2011
Messages : 11
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juillet 2011
Messages : 11
Points : 4
Points : 4
Bonjour tout le monde !

Pour revenir sur le conseil de Donino à propos de :

Citation:
Créer 2 datasets dans le rapport
-Entete de facture, avec une requête du type:

select name, firstame, country, dest_name, dest_firstame, etc...
from facture_Entete
where ID = ?
Je voulais savoir s'il était possible d'avoir la même chose mais plutôt sous forme de script car sur mon outil, je ne peux pas modifier les requêtes comme ça. Je suis obligé de passer par des scripts.
Magdag est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/07/2011, 17h17   #14
Nouveau Membre du Club
 
Femme Marie
Ingénieur développement logiciels
Inscription : septembre 2008
Messages : 48
Détails du profil
Informations personnelles :
Nom : Femme Marie
Âge : 25
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Conseil

Informations forums :
Inscription : septembre 2008
Messages : 48
Points : 28
Points : 28
C'est quoi l'outil que tu utilises ?
Par script tu entends les sections script birt beforeOpen etc du DataSet ?
shintaa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2011, 08h59   #15
Invité de passage
 
Étudiant
Inscription : juillet 2011
Messages : 11
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juillet 2011
Messages : 11
Points : 4
Points : 4
Oui c'est ça je parles des sections script birt beforeOpen etc du DataSet. Peut-tu m'en dire un peu plus sur son utilisation?
J'utilise IBM Rational ClearQuest. (Soumay tu utilises aussi cet outil ?)
Magdag est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2011, 11h12   #16
Invité régulier
 
Inscription : juin 2011
Messages : 30
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : juin 2011
Messages : 30
Points : 6
Points : 6
Oui mais je suis encore novice en la matière.
Je serai également interressé par une éventuelle solution
soumay est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2011, 11h33   #17
Nouveau Membre du Club
 
Femme Marie
Ingénieur développement logiciels
Inscription : septembre 2008
Messages : 48
Détails du profil
Informations personnelles :
Nom : Femme Marie
Âge : 25
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Conseil

Informations forums :
Inscription : septembre 2008
Messages : 48
Points : 28
Points : 28
Je ne sais pas si j'ai bien compris mais si tu veux modifier la requête par script alors c'est possible. Dans le beforeOpen tu peux accéder à

et la modifier.

Si ta requête de base est

Code :
1
2
select name, firstame, country, dest_name, dest_firstame, etc...
from facture_Entete
tu peux faire

Code :
this.queryText += "where ID = ?"
Est-ce que c'est ça que tu cherches ?

--
Marie
shintaa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/07/2011, 15h19   #18
Invité régulier
 
Inscription : juin 2011
Messages : 30
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : juin 2011
Messages : 30
Points : 6
Points : 6
J'ai trouvé la solution à mon problème.
Je la fait partager au cas où ça pourrait aider quelqu'un d'autre :
J'ai rajouté un filtre dans mon dataset :
Expression : params["RP_Id"] (mon paramètre de rapport),
Opérateur : Egal à
Valeur 1 : row["id"]
soumay 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 02h29.


 
 
 
 
Partenaires

Hébergement Web