Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Jasper > iReport
iReport Forum d'entraide sur iReport
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 13/06/2011, 15h15   #1
Invité de passage
 
Inscription : février 2009
Messages : 34
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 34
Points : 4
Points : 4
Par défaut Generation d'un fichier PDF

Salut tout le monde,
J'ai une classe java qui génére mon rapport en PDF. ce rapport jrxml contient ma requête qui attaque la base de données. J'aimerai bien rendre cette requête dynamique en l'intégrant dans ma classe java.

voici le code de ma classe:

package com.web.struts.action;

import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.HashMap;

import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.engine.xml.JRXmlLoader;

import org.apache.struts.action.Action;


public class GeneratePDFAction extends Action {

public static void main(String[] args) {

// - Paramètres de connexion à la base de données

String url = "jdbc:oracle:thin:@192.168.200.201:1521:sipic";
String login = "sipic_web";
String password = "sipic";
Connection connection = null ;
HashMap<String, Object> map = new HashMap<String, Object>();

try {
// - Connexion à la base
Driver monDriver = new oracle.jdbc.driver.OracleDriver();
DriverManager.registerDriver(monDriver);
connection = DriverManager.getConnection(url, login, password);

// - Chargement et compilation du rapport

JasperDesign jasperDesign = JRXmlLoader.load("F:\\iReport-3.0.0\\IdentificationDocumentPrintForm0.jrxml");
JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);

map.put("SQL","select h.NUMERO_ETAT, MODELE, NBRE_PAGE, h.CODE_TRIBUNAL, h.NUM_RC, nvl(b.NBRE_PAGE_TOTAL, '0'), " +
"nvl(b.MATRICIEL, '0'), nvl(b.DOUBLON, '0') from etats_index b, etats_rc h where b.numero_etat = h.numero_etat " +
"and h.numero_etat >= 789000 and and h.numero_etat <= 790000;");

// - Execution du rapport
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, map, connection);

// - Création du rapport au format PDF
JasperExportManager.exportReportToPdfFile(jasperPrint, "F:\\iReport-3.0.0\\IdentificationDocumentPrintForm0.jrxml");
} catch (JRException e) {

e.printStackTrace();
} catch (SQLException e) {

e.printStackTrace();
} finally {
try {
connection.close();
} catch (SQLException e) {

e.printStackTrace();
}
}
}
}

lorsque je compile ma classe j'ai l'erreur:

net.sf.jasperreports.engine.JRException: Errors were encountered when compiling report expressions class file:
1. it.businesslogic.ireport.barcode.BcImage cannot be resolved to a type
value = (java.awt.Image)(it.businesslogic.ireport.barcode.BcImage.getBarcodeImage(5,((java.lang.String)field_NUMERO_ETAT.getValue())+"-"+((java.lang.String)field_MODELE.getValue())+"-"+((java.lang.String)field_NVL40B46NBRE_PAGE_TOTAL443903941.getValue())+"-"+((java.lang.String)field_NBRE_PAGE.getValue())+"-"+((java.lang.String)field_NVL40B46MATRICIEL443903941.getValue())+"-"+((java.lang.String)field_NVL40B46DOUBLON443903941.getValue()),true,true,null,0,0));//$JR_EXPR_ID=10$
<-------------------------------------->
2. it.businesslogic.ireport.barcode.BcImage cannot be resolved to a type
value = (java.awt.Image)(it.businesslogic.ireport.barcode.BcImage.getBarcodeImage(5,((java.lang.String)field_NUMERO_ETAT.getOldValue())+"-"+((java.lang.String)field_MODELE.getOldValue())+"-"+((java.lang.String)field_NVL40B46NBRE_PAGE_TOTAL443903941.getOldValue())+"-"+((java.lang.String)field_NBRE_PAGE.getOldValue())+"-"+((java.lang.String)field_NVL40B46MATRICIEL443903941.getOldValue())+"-"+((java.lang.String)field_NVL40B46DOUBLON443903941.getOldValue()),true,true,null,0,0));//$JR_EXPR_ID=10$
<-------------------------------------->
3. it.businesslogic.ireport.barcode.BcImage cannot be resolved to a type
value = (java.awt.Image)(it.businesslogic.ireport.barcode.BcImage.getBarcodeImage(5,((java.lang.String)field_NUMERO_ETAT.getValue())+"-"+((java.lang.String)field_MODELE.getValue())+"-"+((java.lang.String)field_NVL40B46NBRE_PAGE_TOTAL443903941.getValue())+"-"+((java.lang.String)field_NBRE_PAGE.getValue())+"-"+((java.lang.String)field_NVL40B46MATRICIEL443903941.getValue())+"-"+((java.lang.String)field_NVL40B46DOUBLON443903941.getValue()),true,true,null,0,0));//$JR_EXPR_ID=10$
<-------------------------------------->
3 errors

at net.sf.jasperreports.engine.design.JRAbstractCompiler.compileReport(JRAbstractCompiler.java:193)
at net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:219)
at com.web.struts.action.GeneratePDFAction.main(GeneratePDFAction.java:42)
saadtv4004 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 00h58.


 
 
 
 
Partenaires

Hébergement Web