首页 > 解决方案 > SSRS 报告 - 查找当前正在呈现的 tablix

问题描述

我正在尝试解决以下问题。我的报告中有两个 tablix。每个都有自己的数据集。我想根据正在呈现的 tablix 在页脚中显示不同的消息。每个表可能占用不同数量的页。任何想法?我专门针对 Word 导出。Alan 的回复中建议的内容不适用于 Word 导出。

谢谢

标签: reporting-servicesssrs-tablix

解决方案


如果我正确理解了您的问题,您可以使用报告变量和文本框来执行此操作。

下面是我使用的布局。为了清楚起见,我对一些区域进行了着色。

在此处输入图像描述

这两个表包含示例“人员”和示例“地址”,这些是我将在相应页面的页脚中显示的标签。

首先,您需要添加一个报表变量,因此右键单击报表正文的空白区域并选择“报表属性”,单击“变量”选项卡并添加一个名为的新变量LastTablix,将其值设置为您第一次想要的任何值页脚是,在我的情况下是“人”。确保您取消选中只读选项

在此处输入图像描述

现在为您的报告添加一个页脚(在我的示例中为黄色)并在页脚中添加一个文本框(在我的示例中为绿色)。

将文本框的表达式设置为

=Variables!LastTablix.Value 

确保名称拼写正确,区分大小写。

如果您现在运行报告,您将在每个页脚上看到“人员”,现在我们只需要一种方法来更改它。

接下来,添加一个新的文本框(示例中为红色)。将此文本框的表达式设置为

=Variables!LastTablix.SetValue("Addresses")

接下来,在第二个 tablix 上,将 PageBreak/BreakLocation 设置为Start

如果您现在运行报表,您应该会看到页脚更改为上述表达式中的文本。

现在您只需要将红色文本框尽可能小,将背景和字体颜色设置为空/白色,就应该这样。 注意:您不能将文本框设置为 Hidden=True,因为文本框不会被渲染,更新变量的表达式也不会执行。


推荐阅读