为报表选择多个参数,如何在参数列表中为每个项目创建多个页面?

Posted

技术标签:

【中文标题】为报表选择多个参数,如何在参数列表中为每个项目创建多个页面?【英文标题】:Selecting multiple parameters for a report, how to create multiple pages per item in parameter list? 【发布时间】:2016-01-13 16:45:03 【问题描述】:

我有一份报告,它是在运行报告之前选择的每个订单号的表格。我想这样做,以便您可以从列表中选择多个 order_nos(由首先运行的查询填充)。现在,它会抛出一个错误,说必须使用 ANY 或 ALL。我认为它试图同时使用 order_nos 作为报告的参数。我希望它一次只使用一个 order_nos 创建报告,然后多次复制报告。这可能吗?

所附照片显示了我尝试执行的操作以及引发的错误。

Error

【问题讨论】:

您能否提供您报告的屏幕截图? 你想要报表布局还是数据集? 【参考方案1】:

如果您想创建完全独立的输出,则需要为您的报告创建数据驱动订阅。

订阅将为您创建的预设主查询中生成的每条记录迭代地执行您的报告。

主查询中的每条记录都应返回您希望为其执行报告的所有订单号。

但是,如果报告需要保持交互性,并且订单号仅在运行时确定。那么我建议你保持你的报告不变。根据订单号在您的 tablix 上进行分组,然后为每个组实例应用分页符。

这将生成单个报告输出,每个订单不会出现在不同的页面上。

如上所述,如果您想要一个完全独立的输出(多个 excel/pdf 文件输出),那么您将需要使用数据驱动订阅。

如果您需要有关如何执行上述任一操作的详细步骤,请在此处告诉我,我可以提供步骤。

【讨论】:

卡利姆,感谢您的回答。如果可能的话,我可能会进行 tablix 分组。你能详细说明一下吗? 我已经在另外两个问题中讨论了这个确切的主题。请在那里查看我的回复。 ***.com/questions/33664532/… 和 ***.com/questions/31672462/… 这应该为您提供为每个订单号实施分组和分页所需的所有详细信息。 Kalim,我的情况实际上有点不同。我的 tablix 不是整个报告,它仅作为报告的一部分嵌入,看起来像一个文档。我需要为参数的每个实例创建一个新的报告(文档)实例。这个可以吗? 如果订阅不是一个选项,那么唯一可能的建议是将上述方法与嵌入式子报表结合使用。您需要创建一个新报告以及上面提到的 tablix,按订单号分组。您需要确保对于订单的每个实例都不需要出现分页符。在 tablix 的单元格上插入一个子报表。将您现有的报告链接到此子报告。这将确保针对每个订单号执行整个报告。 如上所述,我认为不可能以这种方式为每个订单生成单独的输出,因为您需要订阅。

以上是关于为报表选择多个参数,如何在参数列表中为每个项目创建多个页面?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Crystal 报表连接到多个数据库?

局部区块多个报表 TAB 页切换及局部区块的参数查询

报表服务器:如果参数 = null 或空白,如何选择所有内容(启用多个值)

参数字段中每个值的多个子报表

JSON数据源提供多值参数的实现

如何在php中为函数定义带有常量变量的参数? [复制]