Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Jasper
Jasper Forum d'entraide sur Jasper Reports. Avant de poster --> FAQ Jasper, Tutoriels Jasper
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 31/10/2007, 13h50   #1
Invité régulier
 
Inscription : octobre 2007
Messages : 24
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 24
Points : 5
Points : 5
Par défaut Envoyer data Source à un sous-rapport (Use datasource Expression)

Bonjour à tous...

Je suis planté sur un problème depuis un bon moment maintenant et en cherchant sur ce forum, j'ai vu que plusieurs avaient pas mal de connaissances avec Ireport, donc je vais essayer de vous exposer mon problème...

J'ai un rapport principal qui contient un sous-rapport dans la bande de détail. Le sous-rapport contient lui aussi une bande détail et je cherche déséspérement à faire afficher des données dans la bande détail du sous-rapport.

Premièrement, même si je mets un texte statique dans la bande détail du sous-rapport, la bande ne s'imprime pas dans le PDF alors que les autres bandes du sous-rapport fonctionne bien. Ensuite, je ne sais pas comment lui envoyer les données "dynamiques" pour le détail du sous-rapport.

Voilà ce que j'ai fait...

Tout d'abord, dans les properties du rapport principal, j'ai sélectionné "Use datasource expression" dans l'onglet "Subreport" et mis "$P{DATASOURCE_DETAIL}" comme valeur. Ensuite, j'ai crée un paramètre dans le modèle principal "DATASOURCE_DETAIL" et là déjà je ne sais pas trop de quel type je dois le déclarer.

Ensuite, comment au niveau java je peux lui envoyer ce paramètre (DATASOURCE_DETAIL) pour qu'il l'utilise pour remplir le détail du sous-rapport ??

Un grand merci d'avance si vous pouvez m'aider à résoudre ce problème.
brufis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 14h05   #2
Membre du Club
 
Inscription : avril 2006
Messages : 57
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 57
Points : 62
Points : 62
Envoyer un message via MSN à Mandibull
Si j'ai bien compris pour résoudre ton problème il est possible de passer les Fields en paramètre au rapport secodaire en faisant ça :
Dans les propriétés de l'élément sous rapport (dans le rapport principal) aller à l'onglet "Rapport secondaire (ou autre)" (mais vu que t'es en anglais, c'est le 3ième) et là, en bas, tu ajoutes un "Paramètre de rapport secondaire" par champ (field, les $F) de ton rapport principal pour le rapport secondaire (un nom quelconque est $F{nomDuParametre} pour l'expression).

Maintenant je n'ai pas testé et il est possible que Japser n'arrive pas a passer un Field en paramètre à un sous rapport...
Mandibull est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 14h09   #3
Invité régulier
 
Inscription : octobre 2007
Messages : 24
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 24
Points : 5
Points : 5
ok, merci... mais est-ce que ça peut bien résoudre mon problème ?? Car ce que je souhaite, c'est passer à mon sous-rapport un "datasource" complet pour remplir le détail du sous-rapport... ! Tu vois comment ?

Car ce que tu m'expliques, je le fais pour les autres champs (qui ne sont pas dans la bande détail du sous-rapport) et ça fonctionne...

Mais je dois passer une liste (datasource) pour remplir le détail (plusieurs lignes)
brufis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 14h43   #4
Membre du Club
 
Inscription : avril 2006
Messages : 57
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 57
Points : 62
Points : 62
Envoyer un message via MSN à Mandibull
Euh, tu veux transferer l'intégralité des données dans un sous rapport qui est dans la bande "detail" ?

En effet faudrais passer $P{REPORT_DATA_SOURCE} en paramètre, mais j'ai pas d'idée sur comment l'utiliser dans le sous-rapport via iReport...

Tu peux pas refaire la requête à l'intérieur de ton sous rapport ? Bon... ok c'est super, super, super crade
Mandibull est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 15h10   #5
Invité régulier
 
Inscription : octobre 2007
Messages : 24
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 24
Points : 5
Points : 5
Bon, merci... J'ai réussi en partie à régler le problème, mais.....

Prenons un exemple....

Voilà ce que je voudrais obtenir (schématiquement)

Titre 1
Titre 1A
Titre 1B

Titre 2
Titre 2A

Titre 3
Titre 3A
Titre 3B
Titre 3C

.....

En sachant que les titres principaux (Titre 1, 2 et 3) sont dans le détail du rapport principal et que les sous-titres (titres 1A, 1B, etc....) sont dans le détail du sous-rapport !!

Pour l'instant, ça m'affiche le pdf comme ci :


Titre 1
Titre 1A
Titre 1B
Titre 2A
Titre 3A
Titre 3B
Titre 3C

Titre 2

Titre 3
brufis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 15h15   #6
Membre du Club
 
Inscription : avril 2006
Messages : 57
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 57
Points : 62
Points : 62
Envoyer un message via MSN à Mandibull
Mais... ça ressemble fortement à un groupe ça ! T'as pas essayé de faire ce que tu veux en créant un groupe ? (en remaniant un peu la requête certainement)
Mandibull est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 15h18   #7
Invité régulier
 
Inscription : octobre 2007
Messages : 24
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 24
Points : 5
Points : 5
J'ai pas trop essayé non, je maîtrise pas trop je dois dire...

Mais est-ce que c'est possible de gérer cela avec des groupes ? Si oui, de quelle façon (en grande ligne) ?
brufis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 15h31   #8
Membre du Club
 
Inscription : avril 2006
Messages : 57
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 57
Points : 62
Points : 62
Envoyer un message via MSN à Mandibull
Et bien les groupe se font sur une expression (la plus part du temps un Field). Si par exemple t'as les données nom, prenom et ville suivantes :
Jean Dupont Paris
Cristophe Durand Paris
Nicolas Jacques Lyon

Tu peux avoir, en créant un groupe sur ville :

Ville : Paris
Jean Dupont
Cristophe Durand

Ville : Lyon
Nicolas Jacques

PS : j'avais un souvenir de groupes très flexibles mais c'est quand j'utilisais BIRT en fait... ceux de JasperReports sont malheureusement plus basiques
Mandibull est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 16h16   #9
Invité régulier
 
Inscription : octobre 2007
Messages : 24
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 24
Points : 5
Points : 5
ok, mais honnêtement, je comprends pas bien comment mettre ça en place dans IReport...

Tu pourrais m'expliquer un peu + en détail stp ?

Là, je dois partir, mais demain matin je m'attèle à ce problème que je vais résoudre...

Merci encore à tous et d'avance merci pour la suite....
brufis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 16h24   #10
Membre du Club
 
Inscription : avril 2006
Messages : 57
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 57
Points : 62
Points : 62
Envoyer un message via MSN à Mandibull
Il y a un bouton dans la barre d'outils ou alors faut aller dans le menu "Afficher" et choisir "Groupes de rapports" et après c'est pas très compliqué, tu sauras te débrouiller je pense !
Mandibull est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/11/2007, 08h09   #11
Invité régulier
 
Inscription : octobre 2007
Messages : 24
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 24
Points : 5
Points : 5
OK, bon, je vais me lancer alors... Mais je dois tout faire dans le même modèle (principal), je laisse tomber le sous-rapport ?
brufis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/11/2007, 08h57   #12
Invité régulier
 
Inscription : octobre 2007
Messages : 24
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 24
Points : 5
Points : 5
ça avance....

Mais là, j'ai un problème d'affichage....

Je parviens à utiliser les groupes, mais ça me donne ceci comme résultat :

(si je reprends mon exemple)

Titre 1
Titre 1B

Titre 2
Titre 2A

Titre 3
Titre 3C

et les autres sous-titres ne s'affichent pas...

Vous avez une idée de comment je dois passer les paramètres pour que tout s'affiche ?
brufis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2007, 10h13   #13
Membre du Club
 
Inscription : avril 2006
Messages : 57
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 57
Points : 62
Points : 62
Envoyer un message via MSN à Mandibull
Pour pouvoir t'aider il faut que l'on connaisse ta requête dans le détail et sur quoi tu veux grouper.

Néamoins, il semblerait que tu ais que le dernier champ. Tu as du mettre ta zone de texte (celle qui affiche les données) dans la bande "nomDuGroupeFooter" au lieu de "detail" !
Mandibull est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2007, 10h28   #14
Invité régulier
 
Inscription : octobre 2007
Messages : 24
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 24
Points : 5
Points : 5
voili voilà, je suis là....

Et merveilleuse nouvelle, j'ai réussi et ça marche !!!

Je gèrais mal la requête en effet et je regroupais faux les données... Là, c'est tout bon et ça marche, je vais pouvoir continuer...

Merci à tous
brufis 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 06h55.


 
 
 
 
Partenaires

Hébergement Web