1

我看过很多文章和文章,但其中很多看起来很旧或难以阅读。

我用一堆子参数创建了一个报告。我保存了它,创建了一堆具有相同名称的输入控件,并将其保存到 jasper 服务器。所以现在我知道它不是那么简单,我知道你必须在主报告中创建这些参数并以某种方式链接它们。

我尝试创建具有相同名称的参数,我尝试使用默认表达式来使用主要参数,我尝试使用表的数据集属性中的参数按钮添加所有参数。

我不知道从这里去哪里。如何链接主要数据集参数以及与我的表关联的数据集的参数。

4

1 回答 1

3

您使用的是 Jaspersoft Studio,对吗?

如果是这样,请选择您的表。在“属性”框(通常在右下角)中,如果您选择“数据集”选项卡并滚动到它的末尾,您可能会注意到一个“参数”按钮。在那里,您可以将表达式映射到您在表数据集中使用的每个参数。因此,在这些表达式中,您可以使用在主报告中声明的参数。

在您的 JRXML 文件中,它类似于(对于java.lang.String参数):

...
<parameter name="MAIN_REPORT_PARAMETER" class="java.lang.String"/>
...
<subDataset name="Dataset1">
    ...
    <parameter name="DATASET_PARAMETER" class="java.lang.String"/>
    ...
</subDataset>
...
<jr:table xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd">
                <datasetRun subDataset="Dataset1">
                    <datasetParameter name="DATASET_PARAMETER">
                        <datasetParameterExpression><![CDATA[$P{MAIN_REPORT_PARAMETER}]]></datasetParameterExpression>
                    </datasetParameter>

                     ...
                </datasetRun>
...
</jr:table>
于 2014-07-09T16:41:35.577 回答