2005 IR Help Posted August 27, 2006 Share Posted August 27, 2006 By: Ulf Heyder - olpp Blank Pages only with PageHeader and -Footer 2004-12-09 07:52 I hope, anybody has a clue!! I have a mainreport with a pageheader and a pagefooter with several subreports. Every time when there is data until the bottom of a page, jasper creates a second, blank page (without any data) only with the pageheader and pagefooter. I have tried isRemoveLineWhenBlank="true" and positionType="Float" in each reportelement, but it doesn?t work. Thanx, Olpp Here is the code of the mainreport: <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE jasperReport PUBLIC "-//JasperReports//DTD Report Design//EN" "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd"> <!-- Einheit aller Maߥ im Report ist 1pt = 1/72 inch. 1 inch = 2.54 cm. -> 1cm ~= 28.35pt bzw. 1pt ~= 0.353mm 595x842 = DIN A4. columnWidth<=pageWidth-leftMargin-rightMargin --> <jasperReport name="flst_nw" pageWidth="595" pageHeight="842" columnWidth="525" leftMargin="40" rightMargin="30" topMargin="30" bottomMargin="30" whenNoDataType="NoPages"> <!-- vordefinierte Fonts --> <reportFont name="Arial_Normal" isDefault="true" fontName="Arial" size="10" pdfFontName="Helvetica" pdfEncoding="Cp1252" isPdfEmbedded="false"/> <reportFont name="Arial_Bold" isDefault="false" fontName="Arial" size="8" isBold="true" pdfFontName="Helvetica-Bold" pdfEncoding="Cp1252" isPdfEmbedded="false"/> <reportFont name="Arial_Italic" isDefault="false" fontName="Arial" size="8" isItalic="true" isBold="true" pdfFontName="Helvetica-Oblique" pdfEncoding="Cp1252" isPdfEmbedded="false"/> <!-- Parameter, die in der ParameterMap mit ?ben wurden (bei uns i.d.R. der Pfad der Reporte und die subReportMaps) --> <parameter name="JasperReportPath" class="java.lang.String"/> <parameter name="subMapLage" class="java.util.Map"/> <parameter name="subMapLageSize" class="java.lang.Integer"/> <parameter name="subMapAbs" class="java.util.Map"/> <parameter name="subMapAbsSize" class="java.lang.Integer"/> <parameter name="subMapKlass" class="java.util.Map"/> <parameter name="subMapKlassSize" class="java.lang.Integer"/> <parameter name="subMapGbst" class="java.util.Map"/> <parameter name="subMapGbstSize" class="java.lang.Integer"/> <parameter name="subMapEig" class="java.util.Map"/> <parameter name="subMapEigSize" class="java.lang.Integer"/> <parameter name="subMapHinwFlst" class="java.util.Map"/> <parameter name="subMapHinwFlstSize" class="java.lang.Integer"/> <parameter name="subMapFreierText" class="java.util.Map"/> <parameter name="subMapFreierTextSize" class="java.lang.Integer"/> <parameter name="subMapAusfStelle" class="java.util.Map"/> <parameter name="subMapAusfStelleSize" class="java.lang.Integer"/> <!-- Datenfelder f?sen Report --> <field name="BU11001_AFL" class="java.lang.Integer"/> <field name="BU11001_FSK" class="java.lang.String"/> <field name="BU11001_LF220" class="java.lang.String"/> <field name="BU11001_LF23" class="java.lang.String"/> <field name="BU11001_LF26" class="java.lang.String"/> <field name="BU11001_LF31" class="java.util.Date"/> <field name="BU11001_LF32" class="java.lang.String"/> <field name="BU11001_LF33" class="java.lang.String"/> <field name="BU11001_LF5" class="java.lang.String"/> <field name="BU11001_LF6" class="java.lang.String"/> <field name="BU11001_LF9" class="java.lang.String"/> <field name="BU11001_LF7" class="java.lang.Integer"/> <field name="BU11001_LF1" class="java.lang.Integer"/> <field name="BU11001_OBK_EAS" class="java.lang.Double"/> <field name="BU11001_OBK_NOR" class="java.lang.Double"/> <field name="BU11001_OID_UID" class="java.lang.String"/> <field name="BU11001_ZDE" class="java.util.Date"/> <field name="BU11001_Gemeinde" class="java.lang.String"/> <field name="BU73107_BEZ" class="java.lang.String"/> <field name="RepFirmenName" class="java.lang.String"/> <field name="RepFirmenNameZusatz" class="java.lang.String"/> <field name="RepFirmenStrasseHsn" class="java.lang.String"/> <field name="RepFirmenPlz" class="java.lang.String"/> <field name="RepFirmenOrt" class="java.lang.String"/> <field name="RepFirmenEmail" class="java.lang.String"/> <!-- Konstante zum xxx.equals(Int0) Vergleich --> <variable name="Int0" class="java.lang.Integer" resetType="None" calculation="Nothing"> <variableExpression> new Integer(0) </variableExpression> </variable> <!-- Diese Variable erzeugt zu Beginn und bei jedem Reset durch die "SubLageGroup" eine neue JasperMapDataSource aus den Subreportdaten, damit diese f? n䣨sten ParentKey wieder von Beginn an durchlaufen wird --> <variable name="subMapLageDataSource" class="ibr.jasper.JasperMapDataSource" resetType="Group" resetGroup="SubLageGroup" calculation="System"> <variableExpression> new ibr.jasper.JasperMapDataSource($P{subMapLage},$P{subMapLageSize}.intValue()) </variableExpression> <initialValueExpression>new ibr.jasper.JasperMapDataSource($P{subMapLage},$P{subMapLageSize}.intValue())</initialValueExpression> </variable> <variable name="subMapAbsDataSource" class="ibr.jasper.JasperMapDataSource" resetType="Group" resetGroup="SubAbsGroup" calculation="System"> <variableExpression> new ibr.jasper.JasperMapDataSource($P{subMapAbs},$P{subMapAbsSize}.intValue()) </variableExpression> <initialValueExpression>new ibr.jasper.JasperMapDataSource($P{subMapAbs},$P{subMapAbsSize}.intValue())</initialValueExpression> </variable> <variable name="subMapKlassDataSource" class="ibr.jasper.JasperMapDataSource" resetType="Group" resetGroup="SubKlassGroup" calculation="System"> <variableExpression> new ibr.jasper.JasperMapDataSource($P{subMapKlass},$P{subMapKlassSize}.intValue()) </variableExpression> <initialValueExpression>new ibr.jasper.JasperMapDataSource($P{subMapKlass},$P{subMapKlassSize}.intValue())</initialValueExpression> </variable> <variable name="subMapGbstDataSource" class="ibr.jasper.JasperMapDataSource" resetType="Group" resetGroup="SubGbstGroup" calculation="System"> <variableExpression> new ibr.jasper.JasperMapDataSource($P{subMapGbst},$P{subMapGbstSize}.intValue()) </variableExpression> <initialValueExpression>new ibr.jasper.JasperMapDataSource($P{subMapGbst},$P{subMapGbstSize}.intValue())</initialValueExpression> </variable> <variable name="subMapHinwFlstDataSource" class="ibr.jasper.JasperMapDataSource" resetType="Group" resetGroup="SubHinwFlstGroup" calculation="System"> <variableExpression> new ibr.jasper.JasperMapDataSource($P{subMapHinwFlst},$P{subMapHinwFlstSize}.intValue()) </variableExpression> <initialValueExpression>new ibr.jasper.JasperMapDataSource($P{subMapHinwFlst},$P{subMapHinwFlstSize}.intValue())</initialValueExpression> </variable> <variable name="subMapFreierTextDataSource" class="ibr.jasper.JasperMapDataSource" resetType="Group" resetGroup="SubFreierTextGroup" calculation="System"> <variableExpression> new ibr.jasper.JasperMapDataSource($P{subMapFreierText},$P{subMapFreierTextSize}.intValue()) </variableExpression> <initialValueExpression>new ibr.jasper.JasperMapDataSource($P{subMapFreierText},$P{subMapFreierTextSize}.intValue())</initialValueExpression> </variable> <variable name="subMapAusfStelleDataSource" class="ibr.jasper.JasperMapDataSource" resetType="Group" resetGroup="SubAusfStelleGroup" calculation="System"> <variableExpression> new ibr.jasper.JasperMapDataSource($P{subMapAusfStelle},$P{subMapAusfStelleSize}.intValue()) </variableExpression> <initialValueExpression>new ibr.jasper.JasperMapDataSource($P{subMapAusfStelle},$P{subMapAusfStelleSize}.intValue())</initialValueExpression> </variable> <!-- Die "SubLageGroup" gruppiert alle Daten nach der FlstOID. Groups k?n Reset-Ereignisse f?iablen ausl?, wenn die groupexpression sich 䮤ert. --> <group name="SubLageGroup"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> </group> <group name="SubAbsGroup"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> </group> <group name="SubKlassGroup"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> </group> <group name="SubGbstGroup"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> </group> <group name="SubHinwFlstGroup"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> </group> <group name="SubFreierTextGroup"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> </group> <group name="SubAusfStelleGroup"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> </group> <group name="Flst0" isReprintHeaderOnEachPage="true" isStartNewPage="true"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> <groupHeader> <band height="24"> <!-- Feldbezeichnungen --> <staticText> <reportElement x="0" y="0" width="100" height="12" positionType="Float" isRemoveLineWhenBlank="true"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Flurst?;/text> </staticText> <!-- Feldinhalte --> <textField isBlankWhenNull="true"> <reportElement x="115" y="0" width="300" height="12" positionType="Float" isRemoveLineWhenBlank="true"/> <textFieldExpression class="java.lang.String"> $F{BU73107_BEZ} + " " + $F{BU11001_FSK} </textFieldExpression> </textField> </band> </groupHeader> </group> <group name="Flst1" isStartNewPage="false"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> <groupHeader> <band height="44"> <rectangle> <reportElement x="0" y="0" width="525" height="12" backcolor="#c0c0c0" positionType="Float"/> <graphicElement stretchType="NoStretch" pen="None"/> </rectangle> <staticText> <reportElement x="2" y="1" width="300" height="12" positionType="Float"/> <textElement textAlignment="Left"> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Flurst?gaben</text> </staticText> <staticText> <reportElement x="0" y="20" width="100" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Gemeinde</text> </staticText> <staticText> <reportElement x="0" y="32" width="100" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Lage(n)</text> </staticText> <!-- Feldinhalte --> <textField isBlankWhenNull="true"> <reportElement x="115" y="20" width="300" height="12" positionType="Float"/> <textFieldExpression class="java.lang.String"> $F{BU11001_Gemeinde} </textFieldExpression> </textField> <!-- hier wird der Subreport Lage eingef?> <subreport isUsingCache="true"> <!-- Koordinaten und Gr?des subReport-Blockes so w䨬en, als kä¥ genau eine Zeile als Ergebnis zur?nbsp; isRemoveLineWhenBlank -> Leere Zeilen entfernen --> <reportElement x="115" y="32" width="400" height="12" isRemoveLineWhenBlank="true" positionType="Float"/> <!-- Der aktuell verarbeitete ParentKey wird dem Subreport als Parameter mitgegeben. --> <subreportParameter name="ParentKey"> <subreportParameterExpression> $F{BU11001_OID_UID} </subreportParameterExpression> </subreportParameter> <!-- Der Repotrpfad mußauch weitergereicht werden, damit der Subreport Bilder oder SubSubReporte findet --> <subreportParameter name="JasperReportPath"> <subreportParameterExpression> $P{JasperReportPath} </subreportParameterExpression> </subreportParameter> <!-- Die subMapLageDataSource, die dem Hauptreport als Parameter mitgegeben wurde, wird hier als SubReportDatenquelle festgelegt. --> <dataSourceExpression> $V{subMapLageDataSource} </dataSourceExpression> <!-- Der Pfad und Name des Subreport wird gesetzt --> <subreportExpression class="java.lang.String"> $P{JasperReportPath}+"flst_nw_sublage.jasper" </subreportExpression> </subreport> </band> </groupHeader> </group> <group name="Flst2"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> <groupHeader> <band height="132"> <!-- Feldbezeichnungen --> <staticText> <reportElement x="0" y="0" width="100" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Karte</text> </staticText> <staticText> <reportElement x="0" y="12" width="100" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Gr?lt;/text> </staticText> <staticText> <reportElement x="0" y="24" width="100" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Koordinaten</text> </staticText> <staticText> <reportElement x="0" y="36" width="100" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Entstehungs-FN</text> </staticText> <staticText> <reportElement x="0" y="48" width="100" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Nachfolge-FN</text> </staticText> <staticText> <reportElement x="0" y="60" width="100" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Forstamtschl?lt;/text> </staticText> <staticText> <reportElement x="0" y="72" width="105" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Finanzamtschl?lt;/text> </staticText> <staticText> <reportElement x="0" y="84" width="100" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Baublock</text> </staticText> <staticText> <reportElement x="0" y="96" width="100" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Aktualitä´³nummer</text> </staticText> <staticText> <reportElement x="0" y="108" width="100" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Pr?hen</text> </staticText> <staticText> <reportElement x="0" y="120" width="100" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Hinweise zum Flst.</text> </staticText> <!-- Feldinhalte --> <textField isBlankWhenNull="true"> <reportElement x="115" y="0" width="300" height="12" positionType="Float"/> <textFieldExpression class="java.lang.String"> $F{BU11001_LF5} </textFieldExpression> </textField> <textField isBlankWhenNull="true"> <reportElement x="115" y="12" width="300" height="12" positionType="Float"/> <textFieldExpression class="java.lang.String"> $F{BU11001_AFL}+" m?" </textFieldExpression> </textField> <textField isBlankWhenNull="true"> <reportElement x="115" y="24" width="300" height="12" positionType="Float"/> <textFieldExpression class="java.lang.String"> (($F{BU11001_OBK_EAS}!=null)?(($F{BU11001_OBK_EAS}.toString())+" - "):("")) + (($F{BU11001_OBK_NOR}!=null)?($F{BU11001_OBK_NOR}.toString()):("")) </textFieldExpression> </textField> <textField isBlankWhenNull="true"> <reportElement x="115" y="36" width="20" height="12" positionType="Float"/> <textFieldExpression class="java.lang.String"> $F{BU11001_LF23} </textFieldExpression> </textField> <textField isBlankWhenNull="true"> <reportElement x="140" y="36" width="60" height="12" positionType="Float"/> <textElement textAlignment="Right"/> <textFieldExpression class="java.lang.String"> (($F{BU11001_LF220}!=null)?($F{BU11001_LF220}+"/"):"")+(new SimpleDateFormat("yyyy")).format($F{BU11001_ZDE}).toString() </textFieldExpression> </textField> <textField isBlankWhenNull="true"> <reportElement x="115" y="48" width="20" height="12" positionType="Float"/> <textFieldExpression class="java.lang.String"> $F{BU11001_LF33} </textFieldExpression> </textField> <textField isBlankWhenNull="true"> <reportElement x="140" y="48" width="60" height="12" positionType="Float"/> <textElement textAlignment="Right"/> <textFieldExpression class="java.lang.String"> (($F{BU11001_LF32}!=null)?($F{BU11001_LF32}+"/"):"")+(new SimpleDateFormat("yyyy")).format($F{BU11001_LF31}).toString() </textFieldExpression> </textField> <textField isBlankWhenNull="true"> <reportElement x="115" y="60" width="300" height="12" positionType="Float"/> <textFieldExpression class="java.lang.String"> $F{BU11001_LF9} </textFieldExpression> </textField> <textField isBlankWhenNull="true"> <reportElement x="115" y="72" width="300" height="12" positionType="Float"/> <textFieldExpression class="java.lang.String"> $F{BU11001_LF26} </textFieldExpression> </textField> <textField isBlankWhenNull="true"> <reportElement x="115" y="84" width="300" height="12" positionType="Float"/> <textFieldExpression class="java.lang.String"> $F{BU11001_LF6} </textFieldExpression> </textField> <textField isBlankWhenNull="true"> <reportElement x="115" y="96" width="300" height="12" positionType="Float"/> <textFieldExpression class="java.lang.Integer"> $F{BU11001_LF7} </textFieldExpression> </textField> <textField isBlankWhenNull="true"> <reportElement x="115" y="108" width="300" height="12" positionType="Float"/> <textFieldExpression class="java.lang.Integer"> $F{BU11001_LF1} </textFieldExpression> </textField> <!-- hier wird der Subreport Hinweise zum Flurst?ngef?> <subreport isUsingCache="true"> <!-- Koordinaten und Gr?des subReport-Blockes so w䨬en, als kä¥ genau eine Zeile als Ergebnis zur?nbsp; isRemoveLineWhenBlank -> Leere Zeilen entfernen --> <reportElement x="115" y="120" width="400" height="12" isRemoveLineWhenBlank="true" positionType="Float"/> <!-- Der aktuell verarbeitete ParentKey wird dem Subreport als Parameter mitgegeben. --> <subreportParameter name="ParentKey"> <subreportParameterExpression> $F{BU11001_OID_UID} </subreportParameterExpression> </subreportParameter> <!-- Der Repotrpfad mußauch weitergereicht werden, damit der Subreport Bilder oder SubSubReporte findet --> <subreportParameter name="JasperReportPath"> <subreportParameterExpression> $P{JasperReportPath} </subreportParameterExpression> </subreportParameter> <!-- Die subMapLageDataSource, die dem Hauptreport als Parameter mitgegeben wurde, wird hier als SubReportDatenquelle festgelegt. --> <dataSourceExpression> $V{subMapHinwFlstDataSource} </dataSourceExpression> <!-- Der Pfad und Name des Subreport wird gesetzt --> <subreportExpression class="java.lang.String"> $P{JasperReportPath}+"flst_nw_subhinwflst.jasper" </subreportExpression> </subreport> </band> </groupHeader> </group> <group name="Flst2a"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> <groupHeader> <band height="12"> <staticText> <reportElement x="0" y="0" width="100" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Freier Text</text> </staticText> <!-- hier wird der Subreport Freier Text eingef?> <subreport isUsingCache="true"> <!-- Koordinaten und Gr?des subReport-Blockes so w䨬en, als kä¥ genau eine Zeile als Ergebnis zur?nbsp; isRemoveLineWhenBlank -> Leere Zeilen entfernen --> <reportElement x="115" y="0" width="400" height="12" isRemoveLineWhenBlank="true" positionType="Float"/> <!-- Der aktuell verarbeitete ParentKey wird dem Subreport als Parameter mitgegeben. --> <subreportParameter name="ParentKey"> <subreportParameterExpression> $F{BU11001_OID_UID} </subreportParameterExpression> </subreportParameter> <!-- Der Repotrpfad mußauch weitergereicht werden, damit der Subreport Bilder oder SubSubReporte findet --> <subreportParameter name="JasperReportPath"> <subreportParameterExpression> $P{JasperReportPath} </subreportParameterExpression> </subreportParameter> <!-- Die subMapLageDataSource, die dem Hauptreport als Parameter mitgegeben wurde, wird hier als SubReportDatenquelle festgelegt. --> <dataSourceExpression> $V{subMapFreierTextDataSource} </dataSourceExpression> <!-- Der Pfad und Name des Subreport wird gesetzt --> <subreportExpression class="java.lang.String"> $P{JasperReportPath}+"flst_nw_subfreiertext.jasper" </subreportExpression> </subreport> </band> </groupHeader> </group> <group name="Flst3a"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> <groupHeader> <band height="19"> <staticText> <reportElement x="0" y="0" width="110" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Ausf. Stelle / Verfahren</text> </staticText> <!-- hier wird der Subreport Freier Text eingef?> <subreport isUsingCache="true"> <!-- Koordinaten und Gr?des subReport-Blockes so w䨬en, als kä¥ genau eine Zeile als Ergebnis zur?nbsp; isRemoveLineWhenBlank -> Leere Zeilen entfernen --> <reportElement x="115" y="0" width="400" height="12" isRemoveLineWhenBlank="true" positionType="Float"/> <!-- Der aktuell verarbeitete ParentKey wird dem Subreport als Parameter mitgegeben. --> <subreportParameter name="ParentKey"> <subreportParameterExpression> $F{BU11001_OID_UID} </subreportParameterExpression> </subreportParameter> <!-- Der Repotrpfad mußauch weitergereicht werden, damit der Subreport Bilder oder SubSubReporte findet --> <subreportParameter name="JasperReportPath"> <subreportParameterExpression> $P{JasperReportPath} </subreportParameterExpression> </subreportParameter> <!-- Die subMapLageDataSource, die dem Hauptreport als Parameter mitgegeben wurde, wird hier als SubReportDatenquelle festgelegt. --> <dataSourceExpression> $V{subMapAusfStelleDataSource} </dataSourceExpression> <!-- Der Pfad und Name des Subreport wird gesetzt --> <subreportExpression class="java.lang.String"> $P{JasperReportPath}+"flst_nw_subAusfStelle.jasper" </subreportExpression> </subreport> </band> </groupHeader> </group> <group name="Flst3"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> <groupHeader> <band height="66"> <!--Ü¢erschrift Abschnitte--> <rectangle> <reportElement x="0" y="0" width="525" height="12" backcolor="#c0c0c0" positionType="Float"/> <graphicElement stretchType="NoStretch" pen="None"/> </rectangle> <staticText> <reportElement x="2" y="1" width="300" height="12" positionType="Float"/> <textElement textAlignment="Left"> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Abschnitte</text> </staticText> <staticText> <reportElement x="0" y="24" width="105" height="12" positionType="Float"/> <textElement> <font reportFont="Arial_Italic" size="10"/> </textElement> <text>Tats䣨liche Nutzung</text> </staticText> <staticText> <reportElement x="400" y="24" width="70" height="12" positionType="Float"/> <textElement textAlignment="Right"> <font reportFont="Arial_Italic" size="10"/> </textElement> <text>Gr?lt;/text> </staticText> <!-- hier wird der Subreport Abschnitte eingef?> <subreport isUsingCache="true"> <!-- Koordinaten und Gr?des subReport-Blockes so w䨬en, als kä¥ genau eine Zeile als Ergebnis zur?nbsp; isRemoveLineWhenBlank -> Leere Zeilen entfernen --> <reportElement x="0" y="44" width="525" height="12" isRemoveLineWhenBlank="true" positionType="Float"/> <!-- Der aktuell verarbeitete ParentKey wird dem Subreport als Parameter mitgegeben. --> <subreportParameter name="ParentKey"> <subreportParameterExpression> $F{BU11001_OID_UID} </subreportParameterExpression> </subreportParameter> <!-- Der Repotrpfad mußauch weitergereicht werden, damit der Subreport Bilder oder SubSubReporte findet --> <subreportParameter name="JasperReportPath"> <subreportParameterExpression> $P{JasperReportPath} </subreportParameterExpression> </subreportParameter> <!-- Die subMapLageDataSource, die dem Hauptreport als Parameter mitgegeben wurde, wird hier als SubReportDatenquelle festgelegt. --> <dataSourceExpression> $V{subMapAbsDataSource} </dataSourceExpression> <!-- Der Pfad und Name des Subreport wird gesetzt --> <subreportExpression class="java.lang.String"> $P{JasperReportPath}+"flst_nw_subabs.jasper" </subreportExpression> </subreport> </band> </groupHeader> </group> <group name="Flst4"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> <groupHeader> <band height="45"> <!-- Feldbezeichnungen --> <!--staticText> <reportElement x="0" y="0" width="240" height="12"/> <textElement> <font reportFont="Arial_Italic" size="10"/> </textElement> <text>Gesetzliche Klassifizierung</text> </staticText> <staticText> <reportElement x="250" y="0" width="70" height="12"/> <textElement textAlignment="Right"> <font reportFont="Arial_Italic" size="10"/> </textElement> <text>Gr?lt;/text> </staticText> <staticText> <reportElement x="330" y="0" width="100" height="12"/> <textElement> <font reportFont="Arial_Italic" size="10"/> </textElement> <text>Bodenschä´ºung</text> </staticText> <staticText> <reportElement x="440" y="0" width="85" height="12"/> <textElement> <font reportFont="Arial_Italic" size="10"/> </textElement> <text>Ertragsmeߺahl</text> </staticText--> <textField isBlankWhenNull="true"> <reportElement x="0" y="0" width="240" height="12" isRemoveLineWhenBlank="true" positionType="Float"/> <textElement> <font reportFont="Arial_Italic" size="10"/> </textElement> <textFieldExpression class="java.lang.String"> ($P{subMapKlassSize}.intValue() > 0 ? "Gesetzliche Klassifizierung" : "") </textFieldExpression> </textField> <textField isBlankWhenNull="true"> <reportElement x="250" y="0" width="70" height="12" isRemoveLineWhenBlank="true" positionType="Float"/> <textElement textAlignment="Right"> <font reportFont="Arial_Italic" size="10"/> </textElement> <textFieldExpression class="java.lang.String"> ($P{subMapKlassSize}.intValue() > 0 ? "Gr?quot; : "") </textFieldExpression> </textField> <textField isBlankWhenNull="true"> <reportElement x="330" y="0" width="100" height="12" isRemoveLineWhenBlank="true" positionType="Float"/> <textElement> <font reportFont="Arial_Italic" size="10"/> </textElement> <textFieldExpression class="java.lang.String"> ($P{subMapKlassSize}.intValue() > 0 ? "Bodenschä´ºung" : "") </textFieldExpression> </textField> <textField isBlankWhenNull="true"> <reportElement x="440" y="0" width="85" height="12" isRemoveLineWhenBlank="true" positionType="Float"/> <textElement> <font reportFont="Arial_Italic" size="10"/> </textElement> <textFieldExpression class="java.lang.String"> ($P{subMapKlassSize}.intValue() > 0 ? "Ertragsmeߺahl" : "") </textFieldExpression> </textField> <!-- hier wird der Subreport Klassifizierungen eingef?> <subreport isUsingCache="true"> <!-- Koordinaten und Gr?des subReport-Blockes so w䨬en, als kä¥ genau eine Zeile als Ergebnis zur?nbsp; isRemoveLineWhenBlank -> Leere Zeilen entfernen --> <reportElement x="0" y="20" width="525" height="12" isRemoveLineWhenBlank="true" positionType="Float"/> <!-- Der aktuell verarbeitete ParentKey wird dem Subreport als Parameter mitgegeben. --> <subreportParameter name="ParentKey"> <subreportParameterExpression> $F{BU11001_OID_UID} </subreportParameterExpression> </subreportParameter> <!-- Der Repotrpfad mußauch weitergereicht werden, damit der Subreport Bilder oder SubSubReporte findet --> <subreportParameter name="JasperReportPath"> <subreportParameterExpression> $P{JasperReportPath} </subreportParameterExpression> </subreportParameter> <!-- Die subMapKlassDataSource, die dem Hauptreport als Parameter mitgegeben wurde, wird hier als SubReportDatenquelle festgelegt. --> <dataSourceExpression> $V{subMapKlassDataSource} </dataSourceExpression> <!-- Der Pfad und Name des Subreport wird gesetzt --> <subreportExpression class="java.lang.String"> $P{JasperReportPath}+"flst_nw_subklass.jasper" </subreportExpression> </subreport> </band> </groupHeader> </group> <group name="Flst5"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> <groupHeader> <band height="20"> <rectangle> <reportElement x="0" y="0" width="525" height="12" backcolor="#c0c0c0" isRemoveLineWhenBlank="true" positionType="Float"/> <graphicElement stretchType="NoStretch" pen="None"/> </rectangle> <staticText> <reportElement x="2" y="1" width="300" height="12" isRemoveLineWhenBlank="true" positionType="Float"/> <textElement textAlignment="Left"> <font reportFont="Arial_Bold" size="10"/> </textElement> <text>Eigentums- und Grundst?gaben</text> </staticText> </band> </groupHeader> </group> <group name="Flst6"> <groupExpression> $F{BU11001_OID_UID} </groupExpression> <groupHeader> <band height="171"> <!-- hier wird der Subreport Grundbuchstelle eingef?> <subreport isUsingCache="true"> <!-- Koordinaten und Gr?des subReport-Blockes so w䨬en, als kä¥ genau eine Zeile als Ergebnis zur?nbsp; isRemoveLineWhenBlank -> Leere Zeilen entfernen --> <reportElement x="0" y="0" width="400" height="171" isRemoveLineWhenBlank="true" positionType="Float"/> <!-- Der aktuell verarbeitete ParentKey wird dem Subreport als Parameter mitgegeben. --> <subreportParameter name="ParentKey"> <subreportParameterExpression> $F{BU11001_OID_UID} </subreportParameterExpression> </subreportParameter> <!-- Die SubMapEig wird dem Subreport als Parameter mitgegeben. --> <subreportParameter name="subMapEig"> <subreportParameterExpression> $P{subMapEig} </subreportParameterExpression> </subreportParameter> <!-- Die SubMapEigSize wird dem Subreport als Parameter mitgegeben. --> <subreportParameter name="subMapEigSize"> <subreportParameterExpression> $P{subMapEigSize} </subreportParameterExpression> </subreportParameter> <!-- Der Repotrpfad mußauch weitergereicht werden, damit der Subreport Bilder oder SubSubReporte findet --> <subreportParameter name="JasperReportPath"> <subreportParameterExpression> $P{JasperReportPath} </subreportParameterExpression> </subreportParameter> <!-- Die subMapLageDataSource, die dem Hauptreport als Parameter mitgegeben wurde, wird hier als SubReportDatenquelle festgelegt. --> <dataSourceExpression> $V{subMapGbstDataSource} </dataSourceExpression> <!-- Der Pfad und Name des Subreport wird gesetzt --> <subreportExpression class="java.lang.String"> $P{JasperReportPath}+"flst_nw_subgbst.jasper" </subreportExpression> </subreport> </band> </groupHeader> </group> <!-- Seitenkopf --> <pageHeader> <band height="160"> <line> <reportElement x="0" y="31" width="525" height="0"/> <graphicElement stretchType="NoStretch" pen="2Point"/> </line> <line> <reportElement x="0" y="36" width="525" height="0"/> <graphicElement stretchType="NoStretch" pen="1Point"/> </line> <textField> <reportElement x="0" y="50" width="190" height="12"/> <textElement textAlignment="Left"> <font reportFont="Arial_Bold" size="10"/> </textElement> <textFieldExpression class="java.lang.String"> $F{RepFirmenName} </textFieldExpression> </textField> <textField> <reportElement x="0" y="70" width="190" height="10"/> <textElement textAlignment="Left"> <font reportFont="Arial_Bold" size="8"/> </textElement> <textFieldExpression class="java.lang.String"> $F{RepFirmenNameZusatz} </textFieldExpression> </textField> <textField> <reportElement x="0" y="82" width="190" height="10"/> <textElement textAlignment="Left"> <font reportFont="Arial_Bold" size="8"/> </textElement> <textFieldExpression class="java.lang.String"> $F{RepFirmenStrasseHsn} + ", " + $F{RepFirmenPlz} + " " + $F{RepFirmenOrt} </textFieldExpression> </textField> <textField> <reportElement x="0" y="94" width="190" height="10"/> <textElement textAlignment="Left"> <font reportFont="Arial_Bold" size="8"/> </textElement> <textFieldExpression class="java.lang.String"> $F{RepFirmenEmail} </textFieldExpression> </textField> <textField> <reportElement x="200" y="50" width="325" height="12"/> <textElement textAlignment="Right"> <font reportFont="Arial_Bold" size="10"/> </textElement> <textFieldExpression class="java.lang.String"> (new SimpleDateFormat("d. MMMM yyyy")).format(new Date()).toString() </textFieldExpression> </textField> <textField evaluationTime="Now" isStretchWithOverflow="true"> <reportElement x="200" y="62" width="313" height="12"/> <textElement textAlignment="Right"> <font reportFont="Arial_Bold" size="10"/> </textElement> <textFieldExpression class="java.lang.String"> "Seite "+$V{PAGE_NUMBER}+" / " </textFieldExpression> </textField> <textField evaluationTime="Report" isStretchWithOverflow="true"> <reportElement x="513" y="62" width="12" height="12"/> <textElement textAlignment="Right"> <font reportFont="Arial_Bold" size="10"/> </textElement> <textFieldExpression class="java.lang.Integer"> $V{PAGE_NUMBER} </textFieldExpression> </textField> <line> <reportElement x="0" y="106" width="525" height="0"/> <graphicElement stretchType="NoStretch" pen="1Point"/> </line> <line> <reportElement x="0" y="109" width="525" height="0"/> <graphicElement stretchType="NoStretch" pen="2Point"/> </line> <staticText> <reportElement x="0" y="126" width="525" height="17"/> <textElement textAlignment="Left"> <font reportFont="Arial_Bold" size="14"/> </textElement> <text>Flurst?und Eigent?chweis</text> </staticText> </band> </pageHeader> <!-- Hauptdatenblock --> <detail> <band height="0"> </band> </detail> <!-- Seitenfuß--> <pageFooter> <band height="20"> <line> <reportElement x="0" y="0" width="525" height="0"/> <graphicElement stretchType="NoStretch" pen="2Point"/> </line> <textField isStretchWithOverflow="true"> <reportElement x="0" y="8" width="525" height="12"/> <textElement textAlignment="Left"> <font reportFont="Arial_Italic" size="10"/> </textElement> <textFieldExpression class="java.lang.String"> "Die Angaben entsprechen dem Stand des Liegenschaftsbuches, soweit sie in der Beh? beim Ausdruck bekannt waren. Maߧeblich ist die Eintragung im Grundbuch." </textFieldExpression> </textField> </band> </pageFooter> </jasperReport> And here is the code of the last subreport: <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE jasperReport PUBLIC "-//JasperReports//DTD Report Design//EN" "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd"> <!-- Einheit aller Maߥ im Report ist 1pt = 1/72 inch. 1 inch = 2.54 cm. -> 1cm ~= 28.35pt bzw. 1pt ~= 0.353mm columnWidth<=pageWidth-leftMargin-rightMargin Subreporte ohne R䮤er definieren. Ausmaߥ so w䨬en, dass die so großsind wie der Haupterport OHNE R䮤er (oder kleiner). --> <jasperReport name="flst_nw_subgbst" pageWidth="400" pageHeight="171" columnWidth="400" columnSpacing="0" leftMargin="0" rightMargin="0" topMargin="0" bottomMargin="0" whenNoDataType="NoPages"> <!-- vordefinierte Fonts --> <reportFont name="Arial_Normal" isDefault="true" fontName="Arial" size="10" pdfFontName="Helvetica" pdfEncoding="Cp1252" isPdfEmbedded="false"/> <reportFont name="Arial_Bold" isDefault="false" fontName="Arial" size="8" isBold="true" pdfFontName="Helvetica-Bold" pdfEncoding="Cp1252" isPdfEmbedded="false"/> <reportFont name="Arial_Italic" isDefault="false" fontName="Arial" size="8" isItalic="true" pdfFontName="Helvetica-Oblique" pdfEncoding="Cp1252" isPdfEmbedded="false"/> <!-- Parameter, die der ParentReport weitergegeben hat. Z.B. der Pfad der Reporte und das Verkn?sschl?eld.) --> <parameter name="JasperReportPath" class="java.lang.String"/> <parameter name="ParentKey" class="java.lang.String"/> <parameter name="subMapEig" class="java.util.Map"/> <parameter name="subMapEigSize" class="java.lang.Integer"/> <!-- Datenfelder f?sen Subreport --> <field name="BU11001_OID_UID" class="java.lang.String"/> <field name="BU21007_BBK_BBN" class="java.lang.String"/> <field name="BU21007_BBK_BBZ" class="java.lang.String"/> <field name="BU21007_OID_UID" class="java.lang.String"/> <field name="BU21007_LE1" class="java.lang.Integer"/> <field name="BU21007_LE2" class="java.lang.Integer"/> <field name="BU21008_ANTGBST" class="java.lang.String"/> <field name="BU21008_LEBAR" class="java.lang.String"/> <field name="BU21008_LELNR" class="java.lang.String"/> <field name="BU21007_LE4" class="java.lang.String"/> <field name="BU21007_Amt" class="java.lang.String"/> <field name="BU21007_GBBZ" class="java.lang.String"/> <!-- Diese Variable erzeugt zu Beginn und bei jedem Reset durch die "SubEigGroup" eine neue JasperMapDataSource aus den Subreportdaten, damit diese f? n䣨sten ParentKey wieder von Beginn an durchlaufen wird --> <variable name="subMapEigDataSource&q Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now