Previous topicNext topic
Help > 操作指南 > 页面报表/RDL报表操作方法 > 互动 > 添加参数 >
添加级联参数

当一个参数的值列表依赖于另一个参数的值时,报表将收集所需的参数值,并使用它来为第二个参数创建值列表。这种参数值级联有时也称为从属参数或分层参数。

使用以下说明创建自己的级联参数。这些步骤假定您已将页面报表/RDL 模板添加到报表中,并具有数据连接。有关详细信息,请参阅快速入门和连接到数据源。在阅读本主题之前,另请参阅添加数据集。

1.在报表资源管理器中,右键单击“数据源(默认情况下为 DataSource1)”节点,然后选择“添加数据集”以创建名为“区域”的数据集。
 

2.在“数据集”对话框的“查询”页上,使用以下 SQL 查询从“区域”表中获取数据。
SELECT RegionID, Region FROM Regions

3.单击“确定”关闭“区域数据集”对话框。

4.按照步骤 1 创建另一个名为“地区”的数据集,然后在“数据集”对话框的“参数”页上,单击 Add(+) 图标以添加名为“区域”的参数,其值设置为:

= Parameters!Region.Value此参数稍后将添加到报表参数集合中。

5.在“地区数据集”对话框的“查询”页上,添加以下 SQL 查询以从“地区”表中提取数据。此查询取决于区域参数。
SELECT DistrictID, District FROM Districts WHERE Region = ?
6.单击“确定”关闭“区域数据集”对话框。
7.按照步骤 1 创建另一个名为 StoreNames 的数据集,然后在“数据集”对话框的“参数”页上,单击 Add(+) 图标以添加名为 DistrictID 的参数,其值设置为:

= Parameters!DistrictID.Value此参数稍后将添加到报表参数集合中。

8.在 StoreNames 数据集的“查询”页上,添加以下 SQL 查询以从所选区域检索所选区域的数据。此查询取决于 DistrictID 参数。
SELECT StoreID, StoreName, OpenDate FROM Store WHERE NOT StoreID = 0 AND DistrictID = ?
9.单击“确定”关闭“存储名称数据集”对话框。
10.在报表资源管理器中,右键单击“参数”节点,然后选择“添加参数”

11.在出现的“报表 - 参数”对话框中,添加一个名为“区域”的“整数”数据类型的参数。在“可用值”选项卡上,选择“从查询”,然后将数据集设置为“区域”,将值字段设置为“RegionID”,将标签字段设置为“区域”。
12.单击“确定”关闭“报告 - 参数”对话框。
13.按照与步骤 10 和 11 相同的过程添加名为 DistrictID 的第二个参数,该参数的数据类型为 Integer。在可用值选项卡上,选择从查询并将数据集设置为区,值字段为区 ID,标注字段为区。
14.从 Visual Studio 工具箱中,将表数据区域(或任何其他数据区域)拖放到设计图面上,然后将“存储 ID”、“存储名称”和“打开日期”字段拖到表详细信息行上。
15.单击预览选项卡以查看结果。

请注意,区域和地区的两个下拉列表显示在“参数”边栏中,而第二个下拉列表在选择区域之前保持禁用状态。单击“查看报告”按钮可查看为所选区域和地区返回的“商店 ID”、“商店名称”和“打开日期”值。

注意:在页报表中,当报表中有多个数据集时,需要在“固定页面”对话框的“常规”选项卡上设置 DataSet 属性,以便指定用于在报表中显示数据的数据集。