Sök…


parametrar

Parameter detaljer
parametersMapExpression Kartan med parametrar. Inte nödvändig
subreportParameter Paret med namn och värde (inställt med subreportParameterExpression ). Krävs inte . Flera parametrar kan skickas till delrapport
connectionExpression Anslutning för att få data. Inte nödvändig
dataSourceExpression Uttryck för att passera datakälla. Inte nödvändig
subreportExpression Delrapportens väg / URI eller till och med JasperReport-objekt. Inte nödvändig
returvärde Paret med namn och värde. Krävs inte . Flera värden kan returneras från delrapport till masterrapport tillbaka

Anmärkningar

  • Delrapporter kan användas för att konstruera komplexa rapporter. Återanvändning av befintliga rapporter är ett annat mål för att använda delrapporter.

  • Delrapporten kommer att visas som en del av <subreport> om du <subreport> elementet <subreport> .

  • Värdet på subreportExpression- parametern är olika för att använda på JasperReports Server eller bara med JasperReports- ramverket (en del API som använder eller använder i IDE).

    För JasperReports Server ser det ut som:

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

    För användning med bara JasperReports- motor:

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

    Den fantastiska förklaringen från @AndreasDietrich kan hittas på JasperServer: Det går inte att hitta undantagsstället för underrapporten

  • Av vissa skäl kan delrapporten användas som en gemensam rapport - utan att ringa från huvudrapporten (med hjälp av <subreport> ). Delrapporten är alltid en rapport.

Överför anslutning till delrapport; returnera värden tillbaka till huvudrapporten

Detta är en bit av huvudrapporten. Två parametrar och anslutningen (till exempel jdbc ) övergår till delrapporten. Ett värde returneras från delrapporten tillbaka till huvudrapporten, detta värde ( variabel ) kan användas i huvudrapporten

<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>

Vidarebefordrar databas till delrapport

Detta är en bit av huvudrapporten. Datakällan skickas till delrapporten med hjälp av net.sf.jasperreports.engine.data.JRBeanCollectionDataSource- konstruktör

<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
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow