IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

iReport Discussion :

Gestion des parametres avec java


Sujet :

iReport

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 154
    Points : 72
    Points
    72
    Par défaut Gestion des parametres avec java
    Bonjour,

    Je débute avec i report, et je suis bloqué sur deux problèmes :

    - J'ai une chaine de caractère en dure dans mon formulaire et a côté ou parfois en dessous de cette chaine, je souhaite y inscrire une donnée par l'intermédiaire de mon code java. Ex :

    Nom du client : {Valeur rempli par le code java}

    - Mon deuxième soucis, je dois simuler l'utilisation de case a cocher. Pour ce faire j'ai créer deux images représentant une case non cochée et une autre cochée.



    Je fais appel a vous pour savoir comment résoudre ces deux problèmes. Est il possible de représenter des cases a cocher autrement que par ma petite bidouille ?

    Je vous remercie par avance.

  2. #2
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    616
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Luxembourg

    Informations forums :
    Inscription : Mars 2007
    Messages : 616
    Points : 556
    Points
    556
    Par défaut
    Pour la case à cocher tu peux les dessiner avec les traits, sinon la solution avec deux images est bonne.

    Pour la chaine: tu peux mettre toute sorte d'expression Java dans un champs.
    Par ex: "Votre nom: "+ $F{Nom}
    Par contre il est déconseillé d'avoir les labels et les valeurs dynamiques dans un seul champ. Il vaut mieux en créer 2
    champ 1 : "Votre nom: "
    champ 2 : $F{Nom}

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 154
    Points : 72
    Points
    72
    Par défaut
    Merci cmako pour ta réponse.
    J'ai utilisé 2 champs comme tu l'indique dans ta réponse. Mais j'avais mis $P{Nom} par exemple. Par la suite dans ireport 4.7.0 j'ai instancié dans Parameters mon parametre Nom. Lorsque je compile dans ireport, j'obtiens mon PDF avec la valeur du paramètre que j'intègre, cependant lorsque j'utilise dans mon code Java une map pour donner une valeur a mon paramètre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Map<String, Object> parametres = new HashMap<String, Object>();
    parametres.put("Nom", "Titi");
    JasperPrint jasperPrint = JasperFillManager.FillReport(jasperReport, parametres);
    JasperExportManager.exportReportToPdfFile(jasperPrint, "/home/projet/doc.pdf");
    j'obtiens un fichier pdf vide

    Est ce parce que j'utilise $P au lieu de $F ? Et quelle différence y a t'il entre ces deux éléments !!!

    Concernant les cases a cocher, je cherche une solution pour que la case soit coché ou non de façon dynamique, est il possible d'envoyer en paramètre une image a la place d'un String pour réaliser cette opération, ou mettre les deux images et lui dire d'en afficher une en fonction de la valeur d'un paramètre, et si oui, comment peut on le faire.

    Merci encore.

  4. #4
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    616
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Luxembourg

    Informations forums :
    Inscription : Mars 2007
    Messages : 616
    Points : 556
    Points
    556
    Par défaut
    Citation Envoyé par top_eagle Voir le message
    j'obtiens un fichier pdf vide

    Est ce parce que j'utilise $P au lieu de $F ? Et quelle différence y a t'il entre ces deux éléments !!!
    Il est blanc blanc ou juste tu as un label sans valeur?
    Si c'est blanc blanc, tu as surement oublié la datasource, si tu n'a pas de datasource il faut quand même passer une JREmptyDataSource.
    Jettes un œil ici.
    La différence entre $P et $F est que $P est un paramètre que tu passes au Jasper, $F est un champs qui est extrait pas Jasper depuis une Datasource
    Concernant les cases a cocher, je cherche une solution pour que la case soit coché ou non de façon dynamique, est il possible d'envoyer en paramètre une image a la place d'un String pour réaliser cette opération, ou mettre les deux images et lui dire d'en afficher une en fonction de la valeur d'un paramètre, et si oui, comment peut on le faire.
    Tu peux créer deux images superposées l'une sur l'autre et tu affiches l'une ou l'autre. Tu dois remplir la Boolean expression du champs.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 154
    Points : 72
    Points
    72
    Par défaut
    Mille mercis cmako

    J'ai utilisé la classe JREmptyDataSource, et cela fonctionne. J'arrive maintenant a avoir mon fichier PDF. Toi qui semble bien t'y connaitre, a quoi bon référencer les classes JRXmlDataSource ou JREmptyDataSource ? Elles servent a quoi exactement ces classes ??

    En ce qui concerne les cases a cocher, j'ai réussi a appliquer ta méthode, et cela fonctionne a merveille.

    Merci encore.

  6. #6
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    616
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Luxembourg

    Informations forums :
    Inscription : Mars 2007
    Messages : 616
    Points : 556
    Points
    556
    Par défaut
    Jasper a besoin d'une datasource.
    Si ton application utilise Jasper juste comme mise en page, tu dois lui spécifier JREmptyDataSource.
    Sinon, Jasper est capable de lire une source de donnée XML, DB, Excel ... et construire un rapport à partir de cette source, c'est pour cela que tu dois lui spécifier quelle datasource tu veux utiliser.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 154
    Points : 72
    Points
    72
    Par défaut
    Thank's

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. gestion des affectations avec java
    Par skouza dans le forum Langage
    Réponses: 1
    Dernier message: 18/04/2011, 12h55
  2. Gestion des transactions avec les composants DOA
    Par lper dans le forum Bases de données
    Réponses: 2
    Dernier message: 01/12/2008, 16h06
  3. Gestion des cookies avec Indy 10
    Par membrax dans le forum Web & réseau
    Réponses: 5
    Dernier message: 21/09/2005, 18h44
  4. Réponses: 2
    Dernier message: 21/07/2005, 14h20
  5. Class de gestion des images avec rotation
    Par Johnny Boy dans le forum MFC
    Réponses: 1
    Dernier message: 03/05/2005, 11h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo