Ireport:variables utilisant une fonction classpath && code java
Nicodoss
Messages postés
56
Statut
Membre
-
Nicodoss Messages postés 56 Statut Membre -
Nicodoss Messages postés 56 Statut Membre -
Bonsoir,
j'ai un petit soucis
j'aimerais savoir comment renseigner la classpath d'une fonction entrée en paramètre pour afficher mon Etat à partir de mon code java saisie depuis netbeans sans utiliser la classpath de ireport ou de netbeans.
Supposons que:
-je crée une variable V qui est une fonction qui change le format d'une date (YYYY-DD-MM) en (DD-MM-YYYY).
-J'importe la classepath de la fonction compiler (jar) dans ireport. Il est clair que ca marche à merveille.
Mais ce que je souhaite c'est que la fonction soit sous forme paramètre que je pourrais ou une manière de la renseigner depuis mon code java afin qu'elle effectue la conversion du format pour l'affichage.
Je précise aussi que la fonction est aussi dans une classe de mon projet
voici par exemple mon code java pour impression
Voici mon code pour la fonction de conversion
Dans quelle partie du code java pour l'impression je pourrais renseigner en paramètre la fonction
S'il y a d'autre méthode je suis preneur aussi
j'ai un petit soucis
j'aimerais savoir comment renseigner la classpath d'une fonction entrée en paramètre pour afficher mon Etat à partir de mon code java saisie depuis netbeans sans utiliser la classpath de ireport ou de netbeans.
Supposons que:
-je crée une variable V qui est une fonction qui change le format d'une date (YYYY-DD-MM) en (DD-MM-YYYY).
-J'importe la classepath de la fonction compiler (jar) dans ireport. Il est clair que ca marche à merveille.
Mais ce que je souhaite c'est que la fonction soit sous forme paramètre que je pourrais ou une manière de la renseigner depuis mon code java afin qu'elle effectue la conversion du format pour l'affichage.
Je précise aussi que la fonction est aussi dans une classe de mon projet
voici par exemple mon code java pour impression
try {
if ((DateDebut1.getDate() == null) || (DateFin1.getDate() == null) || datedifference.datediff(DateDebut1, DateFin1) == true) {
JOptionPane.showMessageDialog(this, "Veuillez revoir les dates sélectionnées");
} else {
String st = ((JTextField) DateDebut1.getDateEditor().getUiComponent()).getText();
String st2 = ((JTextField) DateFin1.getDateEditor().getUiComponent()).getText();
String chemin = "./Etat/LST_DES_AGENTS_PAR_FORMATION_FIN.jrxml";
JasperReport jr = JasperCompileManager.compileReport(chemin);
String Dateretour1 = jsf.DateEng(st);
String Dateretour2 = jsf.DateEng(st2);
HashMap param = new HashMap();
param.put("parameter1", Dateretour1);
param.put("parameter2", Dateretour2);
param.put("parameter3","./images/LOGO.jpg");
conn = ConnectBD.javaconnect();
JasperViewer jasperViewer;
JasperPrint jp = JasperFillManager.fillReport(jr, param, conn);
jasperViewer = new JasperViewer(jp, false);
JDialog dialog = new JDialog(this);//the owner
dialog.setContentPane(jasperViewer.getContentPane());
dialog.setSize(jasperViewer.getSize());
dialog.setTitle("Impression");
dialog.setVisible(true);
}
} catch (Exception e) {
JOptionPane.showMessageDialog(this, e);
}
dans ce code nous avons les datedebut et datefin qui doivent être convertie par la fonction.
Voici mon code pour la fonction de conversion
public static String DateEng(String datefrench) {
String Dateretour = "";
try {
String date[]=datefrench.split("-");
Dateretour=date[2]+"-"+date[1]+"-"+date[0];
} catch (Exception e) {
JOptionPane.showMessageDialog(null, e);
}
return Dateretour;
}
Dans quelle partie du code java pour l'impression je pourrais renseigner en paramètre la fonction
S'il y a d'autre méthode je suis preneur aussi
A voir également:
- Ireport:variables utilisant une fonction classpath && code java
- Ireport - Télécharger - Édition & Programmation
1 réponse
Bonjour,
Je ne comprends pas tes explications avec ton code...
"je crée une variable V qui est une fonction"
C'est une variable ou une fonction ? Où est-elle dans ton code ? Comment tu t'en sers ?
"J'importe la classepath de la fonction compiler (jar) dans ireport"
Quelle est cette "fonction compiler" ? Où est-elle dans ton code ? Comment tu t'en sers ? Quel jar as-tu importé et comment ?
"sous forme paramètre que je pourrais renseigner depuis mon code java"
Si c'est depuis le code java, pourquoi vouloir "renseigner la classpath d'une fonction" ?
Je ne comprends pas tes explications avec ton code...
"je crée une variable V qui est une fonction"
C'est une variable ou une fonction ? Où est-elle dans ton code ? Comment tu t'en sers ?
"J'importe la classepath de la fonction compiler (jar) dans ireport"
Quelle est cette "fonction compiler" ? Où est-elle dans ton code ? Comment tu t'en sers ? Quel jar as-tu importé et comment ?
"sous forme paramètre que je pourrais renseigner depuis mon code java"
Si c'est depuis le code java, pourquoi vouloir "renseigner la classpath d'une fonction" ?
C'est pour ça que je te demande d'être plus clair dans tes explications parce que là tu utilises des termes qui ne semblent pas appropriés et du coup je ne comprends pas ce que tu veix.
j'ai une fonction v que j'ai créé à partir de java.
La fonction consiste à changer le format d'une date passée en paramètre dans une requête sql éditer dans ireport.
Maintenant, pour utiliser la fonction j'ai pris le fichier jar(fonction compilée) que j'ai renseigner dans le menu Outils\Options\Classpath où j'ai renseigné le chemin menant vers le fichier jar de la fonction.celà converti le format de la date avant l'affichage du rapport.
Mon problème est : comment pourrais-je déployer l'application avec le report de sorte que le chemin que j'ai renseigner pour le classpath de ma fonction puisse être passé en paramètre(coe un chemin relatif) et ceci depuis mon code java de mon projet.
Encore une fois Merci pour la patience car je suis un grand novice en programation
Merci d'avance