2

我按层次结构创建了一个包含 5 个字段的报告:

  • 订购日期
  • 一天中的时间(上午/下午)
  • 父母姓名(又名客户)
  • 生产线
  • BIC 零件编号(又名项目)

父报告表

每个字段都向下扩展到下一个级别,因此订单日期扩展到一天中的时间等。

我想创建一个钻取报告,以便用户可以单击层次结构的每个级别并查看详细信息。

这在最低级别 - 项目 - 工作正常,因为每个字段中只有 1 个值必须传递给钻取报告参数。但是,例如,当我尝试基于 Product Line 进行钻取时,该产品线中通常会有 3 或 4 个 Item。在 Go To 操作中,我将钻取参数“bic_part”设置为主报告 FIELD 值“BIC Part Number”。

转到操作对话框

我在钻取报告集上有 tablix,其中“BIC 零件号”在 [@bic_part] 中。

子报表 tablix 过滤器

我只是想清楚一点,我将一组报表字段值传递给钻取报表参数,而不是参数到参数。

我尝试过使用表达式=Split(Join(field value),","),",")及其所有变体。我似乎无法让子报表过滤器接受BIC Part Number来自父报表字段的多个值。

我也尝试省略该部分BIC Part Number中的值go to report,但它不会让我这样做。

子报表中的所有参数都设置为接受多个值。我的两个报告的数据源是相同的存储过程,所以我可以添加一个查询过滤器。我将不胜感激任何帮助。

4

1 回答 1

0

我认为每个子报告链接都需要略有不同。

在子报表中,每个参数都需要接受 null 并且您的查询需要查找

(FieldName = @FieldNameParameter or @FieldNameParameter is null)

这将允许您传递尽可能低的实体值,然后为所有子值传递 null。

如果我们正在查看 Parent_Number 级别,则在该子报表链接上,您将传递 Fields!Parent_Number.Value,然后为每个较低的参数(Product_Line、BIC_Part_Number)传递 Nothing。

这将允许您在子报告中过滤较低的公分母 - 此链接的 Part_Number,下一个链接的 Product_Line 等。

我以前在报告中使用过这个逻辑,所以它确实有效。让我知道我的解释是否需要澄清 - 现在是星期五下午..

于 2018-07-20T14:49:11.207 回答