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 11/04/2011, 18h10   #1
Invité régulier
 
Ulysse
Inscription : décembre 2010
Messages : 9
Détails du profil
Informations personnelles :
Nom : Ulysse

Informations forums :
Inscription : décembre 2010
Messages : 9
Points : 5
Points : 5
Par défaut problème rapport et control list

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
ulixdreams est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/04/2011, 00h00   #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
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.
Gabriel.Entressangle est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 13/04/2011, 14h26   #3
Futur Membre du Club
 
Inscription : juin 2009
Messages : 26
Détails du profil
Informations personnelles :
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : juin 2009
Messages : 26
Points : 18
Points : 18
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é.
jiladiarra est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/04/2011, 16h39   #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
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.
Gabriel.Entressangle est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 14/04/2011, 16h43   #5
Invité régulier
 
Ulysse
Inscription : décembre 2010
Messages : 9
Détails du profil
Informations personnelles :
Nom : Ulysse

Informations forums :
Inscription : décembre 2010
Messages : 9
Points : 5
Points : 5
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
ulixdreams est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/04/2011, 16h47   #6
Invité régulier
 
Ulysse
Inscription : décembre 2010
Messages : 9
Détails du profil
Informations personnelles :
Nom : Ulysse

Informations forums :
Inscription : décembre 2010
Messages : 9
Points : 5
Points : 5
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:
Envoyé par jiladiarra Voir le message
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é.
ulixdreams est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/04/2011, 21h16   #7
Futur Membre du Club
 
Inscription : juin 2009
Messages : 26
Détails du profil
Informations personnelles :
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : juin 2009
Messages : 26
Points : 18
Points : 18
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
jiladiarra est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/04/2011, 21h17   #8
Futur Membre du Club
 
Inscription : juin 2009
Messages : 26
Détails du profil
Informations personnelles :
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : juin 2009
Messages : 26
Points : 18
Points : 18
J'oubliais, dans ce cas, tes graphiques, tu les mets dans le group footer et tu oublies le summary...
jiladiarra 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 00h56.


 
 
 
 
Partenaires

Hébergement Web