Bonjour,
Après plusieurs jours de tentatives, je n'arrive toujours pas à résoudre mon problème.
Dans mon rapport, la source est un BeanArray d'objets ordonnés Timbre que mon appli génère dynamiquement.
Mon rapport se contente seulement d'afficher pour chaque catégorie de timbre son numéro. L'ordonnancement est de type vertical pour remplir colonne après colonne
J'ai donc déclaré un Report Groupe basé sur l'attribut Rubrique de mon bean Timbre et que j'affiche dans le header de chaque page.
Dans le columnHeader, j'affiche un texte statique et dans la bande Detail, j'ai lle champ $F{NumeroTimbre}.
Tout est bien généré comme je le souhaite mais seulement j'ai constaté que pour chaque catégorie où il faut remplir plusieurs colonnes, une page parasite est ajoutée à la fin. Et j'ai eu beau joué avec tous les paramètres disponibles, j'ai toujours ce pb. Mais ce problème n'apparait dès lors que le groupe ne nécessite pas plus d'une colonne.
Si vous pourriez regarder ce pb, je vous en serai reconnaissant.
Je vous ai ainsi joint mon rapport jrxml (que j'ai renommé en .xml pour l'uploader) et le fichier de sortie pdf qui vous montre mon souci de pagination.
Voici le code de génération du rapport :
Matthieu
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 public void generateReport( Timbre[] oCollection, String sEmptyReportFilePathName, String sExportFilePathName, Export_Utils nExportType) { Map<String, Object> params = new HashMap<String, Object>(); params.put("reportTitle", "Hello Report World"); try { // on charge le fichier jrxml en mémoire JasperDesign jasperDesign = JRXmlLoader.load(sEmptyReportFilePathName); // on compile le rapport JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign); JRBeanArrayDataSource dataSource; dataSource = new JRBeanArrayDataSource(oCollection); // on remplit le rapport compilé avec nos informations JasperPrint jasperPrint = JasperFillManager.fillReport( jasperReport, params, dataSource); JasperExportManager.exportReportToPdfFile( jasperPrint , sExportFilePathName );
Partager