|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Ulysse Inscription : décembre 2010 Messages : 9 ![]() |
Bonjour à tous!
J'utilise le serveur jasperreport surtout pour automatiser la génération des rapports (les schedule job). Mais mon souci est le suivant: Certains de mes rapports prennent en entrée une control list (des pays par exemple). Comment pourrais-je faire en sorte d'avoir un rapport (un pdf) par élément de la control list? Exemple concret: le rapport génère les statistiques sur l'activité de succursales d'une multinationale avec les pays de localisation, ce que je veux faire c'est pouvoir en fournissant la liste de pays, avoir un fichier pdf par pays et pour les pays sélectionnés. Si besoin de plus d'informations pour m'aider, ne pas hésiter. MERCI |
|
00
|
|
|
#2 |
|
Membre expérimenté
![]() ![]() Gabriel EntressangleConsultant informatique Inscription : août 2007 Messages : 293 ![]() |
En fait, la control list est une façon de limiter le nombre de valeurs possibles d'un paramètre à un ensemble de valeurs bien définies.
Par ailleurs, un scheduled job peut avoir des paramètres qui sont définis dans un onglet spécifique lors de la création de l'instance. Donc tu vas créer un report identique à celui "interactif" mais qui , comme input control, n'aura pas une control list mais une "string" simple et tu vas créer autant d'instances de job schedulées sur ce "template" que tu as de valeurs possibles dans ta liste. Pour résumer, si ta control list comporte 10 entrées, tu vas créer 10 "jobs schedulés" sur le même report avec chaque fois un paramètre différent correspondant à une des valeurs de la control list. J'ai déjà fait quelque chose de ce style et c'est assez pénible à gérer, surtout lorsque ces jobs doivent être "arrêtés" puis "relancés" en fonction de périodes de temps. |
|
|
10
|
|
|
#3 |
|
Futur Membre du Club
![]() Inscription : juin 2009 Messages : 26 ![]() |
Bonjour,
J'ai réalisé un rapport suivant la même trame que Gabriel et qui fonctionne très bien. Ceci-dit, je trouve cela un peu bricolé, car cela suppose également que la liste soit finie. Si cette liste évolue, il faut alors penser à ajouter/supprimer/ éditer une instance du rapport. Si on raisonne sous forme de groupe, on peut, dans un même document, programmer des sauts de page, mais on n'a qu'un seul pdf. Si quelqu'un a une solution plus automatique, je suis assez intéressé. |
|
|
00
|
|
|
#4 |
|
Membre expérimenté
![]() ![]() Gabriel EntressangleConsultant informatique Inscription : août 2007 Messages : 293 ![]() |
On doit pouvoir faire de façon "programmatique" sans utiliser les possibilités de jasperserver : il faut faire un main en java qui , a des moments prédéfinis, va lire la liste de paramètres et pour chaque paramètre "lance" le rapport via l'interface programmatique java
Si tu maîtrises bien java ca ne devrait pas être très compliqué à faire. Par contre je ne te suis d'aucun secours dans ce contexte. PS : j'ai oublié Il faut bien sûr prendre en charge l'envoi par mail du pdf généré. Finalement la solution job schédulé n'est peut-être pas si idiote que çà, même si pas idéale. |
|
|
10
|
|
|
#5 |
|
Invité régulier
![]() Ulysse Inscription : décembre 2010 Messages : 9 ![]() |
Merci pour l'aide.
En fait j'ai environ une quarantaine de rapports différents (modèle jrxml différents) qui ont des périodicités variables (certains sont journaliers, d'autres bimensuels, d'autres mensuels, d'autres trimestriels) et pour les paramètres, même principe (parfois 10 mais souvent plus de 50 - multiselect query - et même des paramètres en cascade). Et tout ça n'est qu'un début (en prévision 60 différents états en fait). Donc la solution la meilleure pour moi reste l'utilisation du serveur jasper. tout soupçon d'idée serait la bienvenue! Pour la programmation java, j'y ai pensé, mais dans mon contexte, je me suis rendu compte qu'elle serait fastidieuse et pas forcément adapté; mon programme ne pouvant ni "tourner en boucle"; ni mobiliser une personne qui lancerait à chaque fois la génération et l'envoi. Merci |
|
00
|
|
|
#6 | |
|
Invité régulier
![]() Ulysse Inscription : décembre 2010 Messages : 9 ![]() |
Bonjour
Merci pour ta proposition. En effet, j'ai pu le remarquer, mais la pagination dans ce cas n'est pas très correcte; puis quand on utilise d'autres groupes ou des graphes dans la bande summary les données manquent de cohérence. Citation:
|
|
|
00
|
|
|
#7 |
|
Futur Membre du Club
![]() Inscription : juin 2009 Messages : 26 ![]() |
Je ne l'ai pas mis en oeuvre perso, mais je pense qu'il est possible de réinitialiser la numérotation à chaque changement de groupe.
Ce qui est sûr également, c'est que tu peux réinitialiser te variables, donc tes stats, donc tes graphiques. Donc, si la génération d'un fichier unique convient à ton besoin, tu dois pouvoir t'en sortir de cette façon. Cdlt, Jila |
|
|
00
|
|
|
#8 |
|
Futur Membre du Club
![]() Inscription : juin 2009 Messages : 26 ![]() |
J'oubliais, dans ce cas, tes graphiques, tu les mets dans le group footer et tu oublies le summary...
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com