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 04/08/2006, 09h37   #1
Invité régulier
 
Inscription : août 2006
Messages : 39
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 39
Points : 5
Points : 5
Par défaut comment récupérer une donnée du rapport pour la réutiliser dans le même rapport ?

Bonjour à tous,

j'utilise depuis peu Birt, et je voudrais savoir s'il est possible de récupérer une donnée qui se trouve dans une case d'une Grille (Grid) ou d'un composant donnée (Data) ou encore Text ou text dynamique ("Dynamic Text") de mon rapport.

En fait, dans 9 cases différentes de ma grille, je met 9 valeurs differentes provenant de 9 data sets differents. Et dans une 10eme case, je voudrais faire la somme de ces valeurs. Comment faire ça simplement? (sans être obligé de faire une succession de jointure pour avoir les 9 valeurs dans un même data set...)

j'espère avoir été assez clair pour exposer mon problème :-)

Merci,

Jérémy.
dje2303 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2006, 10h15   #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
Oui, si tu restes à l'intérieur du tableau : row[0]+row[1]+...row[N], etc. (ou row["NomColonne0"]+row["NomColonne0"]+...row["NomColonneN"] ou row.NomColonne0+row.NomColonne1+...row.row.NomColonneN.
__________________
__~{@ 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 04/08/2006, 11h02   #3
Invité régulier
 
Inscription : août 2006
Messages : 39
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 39
Points : 5
Points : 5
Merci de la réponse rapide, malheureusement, je ne comprend pas comment ça marche...

Faisons +simple:
si je créé un tableau, disons de 3 colonnes et de 1 lignes, j'ai une colonne supplémentaire à gauche avec "Header Row", "Detail Row" et "Footer Row".

dans la première case à droite de Detail row, je fais glisser mon indicateur (du premier data set) qui s'appelle "ind1": dans la case j'ai un composant data, marqué [ind1] et avec comme valeur "dataSetRow["ind1"]"
Juste à côté, je fais la même opération avec un indicateur "ind2" venant d'un 2eme data set.(j'ai donc un composant data marqué [ind2] avec comme valeur "dataSetRow["ind2"]"

Maintenant dans la 3ème colonne je veux faire la somme des 2 colonnes précédentes, je met dans la case, un composant data, et j'ai beau faire row[0]+row[1] ou row["ind1"]+row["ind2"] ça marche pas

Qu'est ce que je fais mal ou qu'est ce que je n'ai pas compris ?

Merci,

Jérémy
dje2303 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2006, 11h15   #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
Tu as tout compris sauf que c'est un élément Dynamic Text que tu dois ajouter. Pour faire l'opération en étant sûr de ne pas te tromper : Available Column Bindings => Table (il peut y en avoir plusieurs, essaye d'identifier la bonne et tu double clic sur ton premier champ (il s'affiche en haut) + (appuie sur le bouton d'opération si tu préfères) ton deuxième champ.

Voilou.
__________________
__~{@ 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 04/08/2006, 11h35   #5
Invité régulier
 
Inscription : août 2006
Messages : 39
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 39
Points : 5
Points : 5

...je dois avoir un problème de binding c'est pas possible, il y a quelque chose qui m'échappe...
quand je regarde dans "Available Column Bindings", je n'ai pas les champs du tableau...

Quand je fais glisser le premier champ du premier data set dans le tableau, le tableau se lie automatiquement au premier data set, et donc je ne peux pas faire glisser le champ qui vient du 2eme data set ! Je dois changer le binding du tableau pour que le champ du 2eme data set puisse être mise dedans... mais je pense que ça pose problème.
Un tableau peut être lié à plusieurs data set, non? comment le préciser.

encore merci,

Jérémy
(c'est pénible de ne pas réussir quelque chose qui semble tout bête )
dje2303 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2006, 11h37   #6
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
Ah oui

Selectionne ton tableaun clic droit => Edit Data Binding, tu sélectionnes le DataSet auquel il est associé. Après ce sera bon.
__________________
__~{@ 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 04/08/2006, 11h46   #7
Invité régulier
 
Inscription : août 2006
Messages : 39
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 39
Points : 5
Points : 5
on doit avoir un petit problème de compréhension.. puisque dans mon tableau, j'ai des valeurs (des champs) venant de différents data sets... je ne peux pas lier un tableau à un seul data set..
dje2303 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2006, 11h47   #8
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
Ah oki...
Tu peux mettre en pièce jointe ton rptdesign please ? Je vois pas tout à fait comment tu as fait même si j'ai ma petite idée...
__________________
__~{@ 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 04/08/2006, 12h02   #9
Invité régulier
 
Inscription : août 2006
Messages : 39
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 39
Points : 5
Points : 5
ok,

je t'envois mon fichier de test (mon vrai fichier contient quelques données privées...) faut juste remettre l'extension rptdesign pour que ça passe (je pouvais pas joindre le fichier avec l'extension "rptdesign"...)
Fichiers attachés
Type de fichier : as testAddition.as (51,2 Ko, 3 affichages)
dje2303 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2006, 12h15   #10
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
Je demanderais d'ajouter l'extension

[EDIT]Je viens de regarder... C'te bordel !! Il sort d'où ton row["ttt"] ? C'est un label. Pour faire la somme de la colonne ttt, fait Total.sum(row["test1"]) déjà dans un premier temps.[/EDIT]
__________________
__~{@ 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 04/08/2006, 14h04   #11
Invité régulier
 
Inscription : août 2006
Messages : 39
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 39
Points : 5
Points : 5
oui désolé, mon fichier de test est tres bordelique !

en fait c'est dans les derniers tableaux que j'essayais ce que tu me disais de faire... dans les premiers tableaux je testais tout et n'importe quoi (d'où le row["ttt"]... )
dje2303 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2006, 14h07   #12
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
As tu esasyé ce que je t'ai dit ?
__________________
__~{@ 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 04/08/2006, 14h19   #13
Invité régulier
 
Inscription : août 2006
Messages : 39
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 39
Points : 5
Points : 5
j'ai mis Total.sum(row["test1"]) dans une case du premier tableau, mais rien ne s'affiche...

Pourtant en dessous du label ttt, dans la case [test1], j'ai 1 (qui correspond à la valeur de test1)
(en dessous du label yyy, dans la case [test2] j'ai bien la valeur de test2 qui est 44...
dje2303 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2006, 14h27   #14
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
Enlèves tous les éléments graphiques de ton état (aides toi de la vue Outline si nécessaire).
Crées un tableau avec un header, une ligne de détail et un footer.
Tu cliques droit sur le tableau et tu fais Edit Data Binding.
Tu sélectionnes ton DataSet nommé Data Set.
Tu glisses le champs test1 dans la ligne de détail de ton tableau.

1. Affiches-tu des informations pour row["test1"] (affiché [test1] sur ton état) dans un premier temps.
2. Si oui, de quel type sont elles ?
__________________
__~{@ 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 04/08/2006, 14h40   #15
Invité régulier
 
Inscription : août 2006
Messages : 39
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 39
Points : 5
Points : 5
tu as raison, reprenons du début

bon j'ai fais c'que tu m'as dis, j'ai tout viré et créé un nouveau tableau, j'ai glissé test1 depuis "Data Set" dans le tableau, il me créé automatiquement le label test1 dans le header et quand j'affiche le rapport, j'ai
Test1
1
1
et la date.
Pourquoi 2 fois "1" ? ça je ne sais pas...

je te joins des imprim-écrans pour que tu vois de tes propres yeux
(ne fais pas gaffe à la date, j'ai dû mettre une date passée à mon PC...donc je retarde de 3 mois )

Pour infos supplémentaires, quand je double clique sur [test1], le Data Set est "Container's Data Set", s'affiche en dessous les 4 champs de "Data Set" et test1 est coché, de type Float, de valeur DataSetRow["test1"] ( et la colonne "Aggregate On" = N/A)

[EDIT: si ça s'affiche 2 fois, je pense que ça vient de ma selection du data Set... faut que je change ça pour n'avoir qu'une seule ligne..]

[EDIT 2: J'ai changé les data Set (juste au niveau des valeurs) maintenant j'ai bien une valeur unique pour chaque champs (faisons simple), donc dans l'affichage du rapport, j'ai bien un seul "1" en dessous du "Test1", désolé ]
Images attachées
Type de fichier : jpg tab.JPG (30,2 Ko, 7 affichages)
Type de fichier : jpg rapport.JPG (14,6 Ko, 7 affichages)
dje2303 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2006, 14h51   #16
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
La date correspond à la date et heure d'impression, elle se trouve par défaut sur la Master Page (le patron de la page en quelques sorte : entête et pied de page).

Pour faire la somme tu rajoutes dans la cellule du Footer un Dynamic Text avec dedans en données :
Code :
"Résultat : "+Total.sum(row["test1"]);
Et tu refais éventuellement un imprim écran si tu ne comprends pas tout et tu auras le droit à des explications supplémentaires si nécessaire.
__________________
__~{@ 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 04/08/2006, 14h54   #17
Invité régulier
 
Inscription : août 2006
Messages : 39
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 39
Points : 5
Points : 5
ça, ça a l'air de marcher, jusqu'ici tout va bien
dje2303 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2006, 14h56   #18
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
As-tu compris le principe ?

En fait, quand j'ai regardé ton exemple cela me générait quelques erreurs avant même de l'executer... Et oui, il faut regarder la vue Problems dans Eclipse, elle n'est pas faite pour faire joli
__________________
__~{@ 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 04/08/2006, 15h04   #19
Invité régulier
 
Inscription : août 2006
Messages : 39
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 39
Points : 5
Points : 5
j'ai compris le principe, faire des sommes sur 2 champs d'un même data set ne pose aucun problème, mais une somme sur 2 champs qui ne sont pas du même data set reste encore un mystère...
dje2303 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2006, 15h14   #20
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
Et bien on va avancer mais je ne vois pas pourquoi tu veux afficher des champs de deux DataSet différents... Expliques moi un peu, donne moi un exemple...
__________________
__~{@ 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
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h00.


 
 
 
 
Partenaires

Hébergement Web