Salut,

après plusieurs tentatives le mécanisme permettant de limiter le nbr de lignes par page dans iReport me semble toujours aussi mystérieux

Voilà, dans la spécification il faut afficher au max 4 lignes par page dans la section détail. Ceci s'applique à chacune des sections détails, car il y en a deux qui utilisent le même dataset. Le dataset provient d'une liste de type ArrayList passé en paramètre dans un objet Java. J'ai réalisé plusieurs rapports qui utilisent cette mécanique et en général c'est ok.

Le rapport contient les sections:

Page Header
Detail 1
Detail 2
Column Footer
Page Footer
Last Page Footer

Déjà essayé d'ajouter un page break conditionnel ou bien les groupes, mais c'est pas mon jour de chance car ça n'a donné rien de bon

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
<!-- Test 1: page break conditionnel placé après la section Detail 1 -->
<detail>
  <band height="56">
    <break>
      <reportElement x="0" y="23" width="100" height="1">
        <printWhenExpression><![CDATA[new java.lang.Boolean((int)($V{REPORT_COUNT}.intValue())%4==0)]]></printWhenExpression>
       </reportElement>
    </break>
  <componentElement> ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<!-- Test 2: utilisation de la mécanique de groupe. Affiche seulement 3 lignes sur la première page et aucune limite sur les pages subséquentes
<group name="group_1" isStartNewPage="true">
<groupExpression><![CDATA[new Boolean($V{REPORT_COUNT}.intValue()%4==0)]]></groupExpression>
  <groupHeader>
    <band height="1" splitType="Prevent"/>
  </groupHeader>
</group>
La version de iReport est v3.7.5