Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Jasper > iReport
iReport Forum d'entraide sur iReport
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 30/07/2007, 16h19   #1
Membre confirmé
 
Inscription : mai 2006
Messages : 418
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 418
Points : 254
Points : 254
Par défaut calculer la somme de deux variables

salut,
j'ai deux variable $V{Nombre1} et $V{Nombre2} et je veux faire leus somme dans une autre variable $V{Resultat} mais je ne sais pas comment.
mehdiing est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 09h09   #2
Membre actif
 
Inscription : janvier 2007
Messages : 57
Détails du profil
Informations personnelles :
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : janvier 2007
Messages : 57
Points : 165
Points : 165
Salut,

Tout d'abord de quel type sont tes variables?
Mettons qu'elles sont de type Float, pour faire la somme de tes deux variables, tu crées une nouvelle variable de type Float $V{Resultat}. Ensuite dans le champ 'expression de variable' tu mets :
new Float($V{nombre1}.floatValue() + $V{Nombre2}.floatValue())

Arnaud
arno a. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 13h27   #3
Membre confirmé
 
Inscription : mai 2006
Messages : 418
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 418
Points : 254
Points : 254
salut,
les variables sont du type Double. J'ais essayer ceci :

Code :
1
2
 
new Double($V{MONTANT_FACT_IMP_CYCLE1}.doubleValue()+$V{MONTANT_FACT_IMP_CYCLE2}.doubleValue()+$V{MONTANT_FACT_IMP_CYCLE3}.doubleValue())
et il n'y a aucune erreur à la compilation mais à l'éxécution il m'affiche null??
pou être plus précis je veux faire l'addition de deuc variables dont les quelles j'ai récupérer des valeurs depuis des subreport. quand j'affiche ces deux variables elles contiennet bien les valeurs retournées par les subreprot mais quand je fais la somme le résultat est null.
mehdiing est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 14h46   #4
Membre actif
 
Inscription : janvier 2007
Messages : 57
Détails du profil
Informations personnelles :
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : janvier 2007
Messages : 57
Points : 165
Points : 165
Peut-être que ta variable n'est pas évaluée au bon moment.
Essaie de changer le moment d'évaluation par exemple en le mettant 'au rapport'.

Arnaud
arno a. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 15h44   #5
Membre confirmé
 
Inscription : mai 2006
Messages : 418
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 418
Points : 254
Points : 254
salut,
bon j'ai trouvé le problème :
parfois un subreport retourne null dans l'une des variables c'est pourquoi la somme des deux est null. est ce que je peut ajouter des conditions dans :
Code :
1
2
 
new Double($V{MONTANT_FACT_IMP_CYCLE1}.doubleValue()+$V{MONTANT_FACT_IMP_CYCLE2}.doubleValue())
pour pouvoir afficher la somme ou la variable différente du null si l'une est null?
mehdiing est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 15h53   #6
Membre actif
 
Inscription : janvier 2007
Messages : 57
Détails du profil
Informations personnelles :
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : janvier 2007
Messages : 57
Points : 165
Points : 165
Citation:
Envoyé par mehdiing
est ce que je peut ajouter des conditions pour pouvoir afficher la somme ou la variable différente du null si l'une est null?
Je ne sais pas tellement comment faire cela.
Une autre solution serait de superposer deux champs avec affichage suivant une expression conditionnelle. Ce n'est certainement pas le plus efficace mais cela fonctionne néanmoins.

Arnaud
arno a. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 19h14   #7
Membre confirmé
 
Inscription : mai 2006
Messages : 418
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 418
Points : 254
Points : 254
salut,
peut tu me donner un exemple?
mehdiing est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 19h28   #8
Membre confirmé
 
Inscription : mai 2006
Messages : 418
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 418
Points : 254
Points : 254
salut,
pour la superposition des champs c'est fais avec print when expression mais ça fait rire je résoud un problème pour tomber dans un autre le champs de la somme n'est pas aligné avec les champs de variables.
le fichier suivant illustre le problème.
Fichiers attachés
Type de fichier : pdf exemple.pdf (16,0 Ko, 21 affichages)
mehdiing est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 09h12   #9
Membre actif
 
Inscription : janvier 2007
Messages : 57
Détails du profil
Informations personnelles :
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : janvier 2007
Messages : 57
Points : 165
Points : 165
Je n'ai pas tellement compris ton problème. Quels sont les champs que tu souhaites aligner?

Arnaud
arno a. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2007, 12h34   #10
Membre confirmé
 
Inscription : mai 2006
Messages : 418
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 418
Points : 254
Points : 254
salut,
dans le rapport en principe la somme qui est : 106729.0 doit être alignée avec 98 634 et 8 095 donc elle est en avance d'une ligne par rapport à eux.
mehdiing est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2007, 17h23   #11
Membre actif
 
Inscription : janvier 2007
Messages : 57
Détails du profil
Informations personnelles :
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : janvier 2007
Messages : 57
Points : 165
Points : 165
Je ne vois pas trop d'où cela peut venir, je n'ai jamais eu un tel cas.
arno a. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2007, 13h32   #12
Membre confirmé
 
Inscription : mai 2006
Messages : 418
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 418
Points : 254
Points : 254
salut,
je pense quel problème est que la somme des deux variables est exécutés avant que les valeurs de ces deux dernières soient mises à jour. donc, à chaque fois on obtient la somme de la ligne précedante j'ai essayer avec le evaluation time mais c'est toujours le même problème donc y'a t-il un autre moyen pour donner la priorité à la mise à jour des deux variables avnat de calculer la somme?
mehdiing est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2007, 17h25   #13
Membre actif
 
Inscription : janvier 2007
Messages : 57
Détails du profil
Informations personnelles :
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : janvier 2007
Messages : 57
Points : 165
Points : 165
Peut-être que tu peux regarder du côté de la valeur initiale de ta variable, sans conviction...
arno a. est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h14.


 
 
 
 
Partenaires

Hébergement Web