Szukaj…


Parametry

Parametr Detale
parametersMapExpression Mapa z parametrami. Nie wymagane
subreportParameter Para nazwy i wartości (zestaw z subreportParameterExpression ). Nie wymagane Kilka parametrów można przekazać do podraportu
connectionExpression Połączenie do pobierania danych. Nie wymagane
dataSourceExpression Wyrażenie do przekazywania źródła danych. Nie wymagane
subreportExpression Ścieżka / identyfikator URI podraportu, a nawet obiekt JasperReport. Nie wymagane
returnValue Para nazwy i wartości. Nie wymagane Kilka wartości można zwrócić z podraportu do raportu głównego z powrotem

Uwagi

  • Podraporty można wykorzystywać do konstruowania złożonych raportów. Ponowne wykorzystanie istniejących raportów to kolejny cel korzystania z podraportów.

  • Podraport zostanie pokazany jako część raportu głównego w przypadku użycia elementu <subreport> .

  • Wartość parametru subreportExpression jest różna w przypadku używania na serwerze JasperReports lub po prostu w ramach struktury JasperReports (niektóre interfejsy API używają lub używają w IDE).

    W przypadku serwera JasperReports wygląda to następująco:

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

    Do korzystania tylko z silnika JasperReports :

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

    Świetne wyjaśnienie @AndreasDietrich można znaleźć na stronie JasperServer: Nie można znaleźć postu dotyczącego wyjątku dotyczącego podraportu

  • Z niektórych powodów podraport może być używany jako wspólny raport - bez wywoływania z raportu głównego (za pomocą elementu <subreport> ). Podraport jest zawsze raportem.

Przekazywanie połączenia do podraportu; zwraca wartości z powrotem do raportu głównego

To jest fragment raportu głównego. Dwa parametry i połączenie (na przykład jdbc ) są przekazywane do podraportu. Jedna wartość jest zwracana z podraportu z powrotem do raportu głównego, tej wartości ( zmiennej ) można użyć w raporcie głównym

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

Przekazywanie danych do podraportu

To jest fragment raportu głównego. Źródło danych jest przekazywane do podraportu za pomocą konstruktora net.sf.jasperreports.engine.data.JRBeanCollectionDataSource

<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
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow