JasperReports: les sous-états de ne pas travailler avec positionType='Float'
Sous-rapports de chevauchement dans cet exemple -- ce que je fais mal? Le second est censé "flotter" au-dessous de la première, avec son attribut " y " d'être ignoré, mais il ne l'est pas.
Merci !!
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="report name" pageWidth="595" pageHeight="842" columnWidth="535" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
<parameter name="SUBREPORT_DIR" class="java.lang.String" isForPrompting="false">
<defaultValueExpression><![CDATA["C:\\reportFolder\\"]]></defaultValueExpression>
</parameter>
<background>
<band/>
</background>
<detail>
<band height="200">
<subreport>
<reportElement positionType="FixRelativeToTop" x="19" y="0" width="200" height="50"/>
<dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.JREmptyDataSource()]]></dataSourceExpression>
<subreportExpression class="java.lang.String"><![CDATA[$P{SUBREPORT_DIR} + "report1.jasper"]]></subreportExpression>
</subreport>
<subreport>
<reportElement positionType="Float" mode="Transparent" x="19" y="20" width="200" height="50" backcolor="#FFFF66"/>
<dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.JREmptyDataSource()]]></dataSourceExpression>
<subreportExpression class="java.lang.String"><![CDATA[$P{SUBREPORT_DIR} + "report1.jasper"]]></subreportExpression>
</subreport>
</band>
</detail>
</jasperReport>
OriginalL'auteur | 2008-12-09
Vous devez vous connecter pour publier un commentaire.
J'ai eu la réponse! (Je suis celui qui a demandé, IP différente je suppose)
Selon la documentation, la surface de l'élément a sa y attribut est ignoré. J'avais pris littéralement, essayé des valeurs arbitraires pour y et vu qu'à chaque fois que l'élément a été placé à la position spécifiée.
Mais non, vous avez besoin de ensemble y de la position de l'élément à droite en dessous de la précédente, selon que l'élément est déclaré y et la hauteur, même si sa hauteur réelle pourrait être tendu quand il est rempli avec des données. Dans mon exemple de code, le deuxième sous-état aurait dû y="50".
De plus, je vois que l'a déclaré la hauteur d'un élément est considéré comme un minimum de hauteur. Si le sous-état est plus courte que la hauteur, l'élément englobant de ne pas être réduit, de sorte qu'il serait une bonne idée de mettre le minimum de hauteur prévue pour les éléments qui pourraient être étiré.
OriginalL'auteur
Vous avez raison, mais vous avez besoin de plus. Vous devez supprimer les marges de sous-rapports.
À partir du Menu -> Format -> Supprimer les Marges du Rapport à Partir du Menu
Format -> Format -> Faire des marges 0
OriginalL'auteur mdanaci