2013-07-22 59 views
2

我怎樣才能合併或連接幾個JRXML JasperReports的合併形成一個報告單位,合併幾份報告/有幾個報告章節

不使用Java代碼

我可以上傳jrxml文件並使用REST API/Webservice生成報告單元只有

還是有這個元素的佈局任何其他的解決辦法

--header-- 
* group of countries 
    england 
    australia 
    croatia 
* pie chart with countries 
--footer-- 

--new page-- 

--header-- 
* group of something else 
    something 1 
    something else 2 
    .... 
* chart of something else 
--footer-- 

我認爲具有陣列變量,我遍歷與<group>元素和打印每個元素一個Sub報告。像:

<variable name="chapters" class="java.util.List" resetType="None" resetGroup="ChapterGroup" incrementType="Group" incrementGroup="BrowserGroup"> 
    <variableExpression> 
     <![CDATA[java.util.Arrays.asList("browser", "country")]]>   
    </variableExpression> 
    <initialValueExpression> 
     <![CDATA[new java.util.ArrayList()]]> 
    </initialValueExpression> 
</variable> 

<group name="ChapterGroup" isStartNewPage="true" keepTogether="true"> 
    <groupExpression><![CDATA[$V{chapters}]]></groupExpression> 
    <groupHeader> 
     <band height="20" splitType="Stretch"/> 
    </groupHeader> 
    <groupFooter> 
     <band height="20" splitType="Stretch"> 
    <subreport> 
    <reportElement isPrintRepeatedValues="false" x="5" y="25" width="325" height="20" isRemoveLineWhenBlank="true" backcolor="#ffcc99"/> 
    <subreportParameter name="<![CDATA[$V{chapters}]]>"> 
     <subreportParameterExpression><![CDATA[$V{chapters}]]></subreportParameterExpression> 
    </subreportParameter> 
    <connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression> 
    <subreportExpression class="net.sf.jasperreports.engine.JasperReport"><![CDATA["repo:/reports/" + $V{chapters}]]></subreportExpression> 
    </subreport> 

但我無法得到它的工作..

使用碧玉報告服務器5,(我的代碼JRXML自己,只使用iReports預覽)。 相同的數據源的一切,兩個查詢2個分組章節與圖表。

+0

有什麼分報告? – cjava

+0

..這是問題。如何使用它們沒有Java? – DanFromGermany

回答

0

這可以通過添加報告組來完成,您可以根據每個圖表需要添加任意多的報告組,並保持在所有圖表和每一份報告組在同一報告組中的頁眉和頁腳將有子數據集。 我已經結合5報告與不同的頁眉和頁腳。

你可以看到報表目錄下通過的JasperSoft名稱「標準表報告」提供的樣本報告。

要做到這一點: - 1: - 添加數據集 2: - 添加報告組 3: - 從調色板

這裏將一個圖表的代碼示例,在此代碼示例我正在結合條形圖和堆疊條形圖在兩個頁面與兩個不同的子數據集: -

<group name="bar"> 
    <groupExpression><![CDATA[null]]></groupExpression> 
    <groupHeader> 
     <band height="400"> 
      <barChart> 
       <chart evaluationTime="Report"> 
        <reportElement x="0" y="0" width="555" height="300"/> 
        <chartTitle> 
         <titleExpression><![CDATA["Bar Chart"]]></titleExpression> 
        </chartTitle> 
        <chartSubtitle> 
         <subtitleExpression><![CDATA["Chart Displaying Bars"]]></subtitleExpression> 
        </chartSubtitle> 
        <chartLegend/> 
        <hyperlinkTooltipExpression><![CDATA["Bar Chart"]]></hyperlinkTooltipExpression> 
       </chart> 
       <categoryDataset> 
        <dataset incrementType="Group" incrementGroup="salesState"> 
         <datasetRun subDataset="categoryDataset"/> 
        </dataset> 
        <categorySeries> 
         <seriesExpression><![CDATA[$F{sales_state}]]></seriesExpression> 
         <categoryExpression><![CDATA[$F{full_name}]]></categoryExpression> 
         <valueExpression><![CDATA[$V{personAmount}]]></valueExpression> 
        </categorySeries> 
       </categoryDataset> 
       <barPlot> 
        <plot/> 
        <itemLabel/> 
        <categoryAxisLabelExpression><![CDATA["Name"]]></categoryAxisLabelExpression> 
        <valueAxisLabelExpression><![CDATA["Amount"]]></valueAxisLabelExpression> 
       </barPlot> 
      </barChart> 
     </band> 
    </groupHeader> 
</group> 
<group name="stackedBar"> 
    <groupExpression><![CDATA[null]]></groupExpression> 
    <groupHeader> 
     <band height="400"> 
      <stackedBarChart> 
       <chart evaluationTime="Report"> 
        <reportElement x="0" y="0" width="555" height="300"/> 
        <chartTitle> 
         <titleExpression><![CDATA["Stacked Bar Chart"]]></titleExpression> 
        </chartTitle> 
        <chartSubtitle> 
         <subtitleExpression><![CDATA["Chart Displaying Stacked Bars"]]></subtitleExpression> 
        </chartSubtitle> 
        <chartLegend/> 
        <hyperlinkTooltipExpression><![CDATA["Stacked Bar Chart"]]></hyperlinkTooltipExpression> 
       </chart> 
       <categoryDataset> 
        <dataset incrementType="Group" incrementGroup="salesState"> 
         <datasetRun subDataset="categoryDataset"/> 
        </dataset> 
        <categorySeries> 
         <seriesExpression><![CDATA[$F{sales_state}]]></seriesExpression> 
         <categoryExpression><![CDATA[$F{full_name}]]></categoryExpression> 
         <valueExpression><![CDATA[$V{personAmount}]]></valueExpression> 
        </categorySeries> 
       </categoryDataset> 
       <barPlot> 
        <plot/> 
        <itemLabel/> 
        <categoryAxisLabelExpression><![CDATA["Name"]]></categoryAxisLabelExpression> 
        <valueAxisLabelExpression><![CDATA["Amount"]]></valueAxisLabelExpression> 
       </barPlot> 
      </stackedBarChart> 
     </band> 
    </groupHeader> 
</group> 
+0

因此,當您知道如何合併報告時,爲什麼不告訴我如何或修復我的嘗試? – DanFromGermany

+0

在iReport中打開示例報告「示例圖表報告」,您可以看到結構。 – Sharad

+0

你的回答可能是更好的方式,它並沒有真正幫助我也不是要幫助其他人那麼多。唯一有用的提示是查看樣本報告。 – DanFromGermany