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 25/11/2010, 11h37   #1
Nouveau Membre du Club
 
Inscription : janvier 2005
Messages : 155
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 155
Points : 26
Points : 26
Par défaut Faire une boucle sur un liste dans jasper report

Bonjour,

Je veux générer un document PDF à partir de ireport. Je crée mon document jrxml. Je crée à l'intérieur un une variable qui représente une liste de valeur.
Comment faire une boucle sur cette liste dans mon rapport jrxml ?

Merci.
Tail est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/11/2010, 00h08   #2
Membre expérimenté
 
Homme Gabriel Entressangle
Consultant informatique
Inscription : août 2007
Messages : 293
Détails du profil
Informations personnelles :
Nom : Homme Gabriel Entressangle
Âge : 67
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Consultant informatique
Secteur : Service public

Informations forums :
Inscription : août 2007
Messages : 293
Points : 567
Points : 567
Je ne pense pas qu'il y ait à l'intérieur de jasperreport des mécanismes de bouclage. En fait c'est la requête principale (celle du rapport) qui détermine le déroulement de ce qui se passe et le seul endroit où l'on boucle c'est la bande détail.
Donc, selon moi, pour faire ce que tu veux faire, il faut que ta requête principale ramène comme enregistrements les items de ta liste de valeurs et à partir de çà tu peux faire ce que tu veux dans la bande détail : appeler des sous-rapports, mettre d'autres objets : crosstabs,....etc..
J'ai fait çà par exemple pour des centres de loisirs pour lesquels j'avais un certain nombre d'infos à afficher. Ma requête principale va chercher les centres de loisirs valides et dans la zone détail j'affiche pour chaque centre ce qu'on me demande.
Gabriel.Entressangle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/11/2010, 09h31   #3
Nouveau Membre du Club
 
Inscription : janvier 2005
Messages : 155
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 155
Points : 26
Points : 26
Citation:
Envoyé par Gabriel.Entressangle Voir le message
Je ne pense pas qu'il y ait à l'intérieur de jasperreport des mécanismes de bouclage. En fait c'est la requête principale (celle du rapport) qui détermine le déroulement de ce qui se passe et le seul endroit où l'on boucle c'est la bande détail.
Donc, selon moi, pour faire ce que tu veux faire, il faut que ta requête principale ramène comme enregistrements les items de ta liste de valeurs et à partir de çà tu peux faire ce que tu veux dans la bande détail : appeler des sous-rapports, mettre d'autres objets : crosstabs,....etc..
J'ai fait çà par exemple pour des centres de loisirs pour lesquels j'avais un certain nombre d'infos à afficher. Ma requête principale va chercher les centres de loisirs valides et dans la zone détail j'affiche pour chaque centre ce qu'on me demande.
Merci pour ta réponse.
Chez moi, je ramène une liste d'objet à partir d'une classe java. Je veux afficher ces valeurs dans un tableau que je construit dans iReport.
Tu sais comment faire ça ?
Merci encore.
Tail est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/11/2010, 20h00   #4
Membre expérimenté
 
Homme Gabriel Entressangle
Consultant informatique
Inscription : août 2007
Messages : 293
Détails du profil
Informations personnelles :
Nom : Homme Gabriel Entressangle
Âge : 67
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Consultant informatique
Secteur : Service public

Informations forums :
Inscription : août 2007
Messages : 293
Points : 567
Points : 567
Perso je connais bien SQL et pas trop java. Je parlais donc d'une requête SQL.
Il me semble que dans jasper tu peux définir une source de type java beans ou quelquechose comme çà. Donc tu pourrais lire tes valeurs par ce moyen.
Mais je ne peux t'aider sur ce point car en dehors de ce que je sais faire.
Gabriel.Entressangle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2010, 11h31   #5
Membre actif
 
Avatar de Nicomart
 
Inscription : septembre 2005
Messages : 206
Détails du profil
Informations personnelles :
Âge : 27
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : septembre 2005
Messages : 206
Points : 176
Points : 176
Envoyer un message via Skype™ à Nicomart
je confirme la réponse de Gabriel. Tu peux jeter un œil ici pour la liaison IR/Java : http://www.developpez.net/forums/d96...ort-javabeans/.

Sinon, en ce qui concerne ta question sur la boucle, IR va boucler lui-même sur ta collection d'objets, que tu devras déclarer en champs dans IR pour les utiliser dans la bande details. La bande est itérée autant de fois que tu as d'enregistrements. L'outil de recherche du forum et les tutos jasper devraient t'aider.

Une fois la datasource paramétrée, tu utilises les attributs de tes objets comme les champs d'une table renvoyés par une requête.
Nicomart 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 18h10.


 
 
 
 
Partenaires

Hébergement Web