报表中根据查询条件动态加载不同的报表内容

(一)背景介绍
在进行报表设计时,有的时候需要根据用户选择的查询条件,加载不同的子报表。比如:用户选择【年报】的时候,我们加载年报的查询结果;选择【月报】的时候,我们加载月报的查询结果。
类似这样的需求,在 Wyn Enterprise 中可以将报表组件的【隐藏】属性设置为表达式来实现,在运行的时候动态决定显示哪些元素。

(二)实现步骤
接下来,我们就演示如何根据用户选择的查询条件来动态显示不同的报表内容。
最终用户可以选择查询【年报】或者【月报】,选择【年报】时加载年报的内容,选择【月报】时加载月报内容。

要实现这个需求,我们需要创建三个报表:

  • 主报表,用于显示年报或者月报
  • 年报报表
  • 月报报表


第1步:创建RDL报表,命名为【年度报表】
创建一个RDL报表,仅添加一个文本框到报表设计界面,设置文本框的内容为【这是年度报表】,并为文本框设置一个任意的背景色,如下图所示:
选择【年报】子报表,为其【隐藏】属性设置以下表达式:

<font size="3">=IIF(Parameters!报表名称.Value = "年报",false,true)</font>

按照同样的方法,为【月报】子报表的【隐藏】属性设置以下表达式:

<font size="3">=IIF(Parameters!报表名称.Value = "月报",false,true)</font>

Wyn Enterprise报表中,这种根据条件加载/显示不同报表内容的需求,都是通过设置组件的【隐藏】属性为一个表达式来实现的。