Zoeken…


parameters

Parameter Details
parametersMapExpression De kaart met parameters. Niet verplicht
subreportParameter Het paar naam en waarde (ingesteld met subreportParameterExpression ). Niet verplicht Verschillende parameters kunnen worden doorgegeven aan subrapport
connectionExpression Verbinding voor het ophalen van gegevens. Niet verplicht
dataSourceExpression Expressie voor het doorgeven van Datasource. Niet verplicht
subreportExpression Het pad / URI van het subrapport of zelfs het JasperReport-object. Niet verplicht
winstwaarde Het paar naam en waarde. Niet verplicht Verschillende waarden kunnen worden geretourneerd van subrapport naar hoofdrapport

Opmerkingen

  • Subrapporten kunnen worden gebruikt voor het samenstellen van complexe rapporten. Het hergebruiken van bestaande rapporten is een ander doel van het gebruik van subrapporten.

  • Het subrapport wordt weergegeven als onderdeel van het hoofdrapport voor het geval het element <subreport> .

  • De waarde van de parameter subreportExpression is anders voor gebruik bij JasperReports Server of alleen door JasperReports framework (sommige API gebruiken of gebruiken in IDE).

    Voor JasperReports Server ziet het eruit als:

    <subreportExpression><![CDATA["repo:subreport.jrxml"]]></subreportExpression>
    

    Voor gebruik door alleen de JasperReports- engine:

    <subreportExpression><![CDATA["/somePath/subreport.jasper"]]></subreportExpression>
    

    De geweldige uitleg van @AndreasDietrich is te vinden op JasperServer: Kan de uitzonderingspost voor het subrapport niet vinden

  • Om sommige redenen kan het subrapport worden gebruikt als een gemeenschappelijk rapport - zonder het hoofdrapport aan te roepen (met behulp van het element <subreport> ). Het subrapport is altijd een rapport.

Verbinding doorgeven aan subrapport; retourneer waarden terug naar het hoofdrapport

Dit is een fragment van het hoofdrapport. Twee parameters en de verbinding (bijvoorbeeld jdbc ) worden doorgegeven aan het subrapport. Er wordt één waarde geretourneerd van het subrapport terug naar het hoofdrapport. Deze waarde ( variabele ) kan worden gebruikt in het hoofdrapport

<subreport>
    <reportElement x="0" y="80" width="200" height="100"/>
    <subreportParameter name="someSubreportParameter">
        <subreportParameterExpression><![CDATA[$P{someMasterReportParamter}]]></subreportParameterExpression>
    </subreportParameter>
    <subreportParameter name="anotherSubreportParameter">
        <subreportParameterExpression><![CDATA["Some text - constant value"]]></subreportParameterExpression>
    </subreportParameter>
    <connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
    <returnValue subreportVariable="someVariableInSubreport" toVariable="someVariableInMasterReport"/>
    <subreportExpression><![CDATA["$P{SUBREPORT_DIR} + "subreport.jasper"]]></subreportExpression>
</subreport>

Gegevensbestand doorgeven aan subrapport

Dit is een fragment van het hoofdrapport. De gegevensbron wordt doorgegeven aan het subrapport met behulp van net.sf.jasperreports.engine.data.JRBeanCollectionDataSource constructor

<field name="someFieldWithList" class="java.util.List"/>
<!-- ...... -->
<subreport>
    <reportElement x="0" y="0" width="200" height="70"/>
    <parametersMapExpression><![CDATA[$P{REPORT_PARAMETERS_MAP}]]></parametersMapExpression>
    <dataSourceExpression><![CDATA[net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{someFieldWithList})]]></dataSourceExpression>
    <subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "subreport.jasper"]]></subreportExpression>
</subreport>


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow