要创建在报告级别应用过滤的级联报告参数,请按照以下步骤操作:

1.使用DataSource 向导将报表绑定到带有查询的 SqlDataSource:(这里建立一个表格,比较直观,使用如下数据源)

 

SELECT
  Production.Product.ProductNumber,
  Production.Product.Name AS ProductName,
  Production.Product.ProductSubcategoryID,
  Production.ProductSubcategory.Name AS SubcategoryName
FROM
Production.Product
INNER JOIN Production.ProductSubcategory
    ON Production.Product.ProductSubcategoryID = Production.ProductSubcategory.ProductSubcategoryID

-----------------------------演示的数据表格添加完整--------------------------------------

2.单击Report.ReportParameters 属性上的省略号。这将调用ReportParameter Collection 编辑器。

选中report,不要选中表格或其他项目

 

 

 3.添加新的报告参数

 

 4.将其命名 为ProductCategoryID。

5.将 参数的Type设置为Integer。

6.展开可用值。

 

 7.使用Data Source Wizard将DataSource设置 为 SqlDataSource with query:

SELECT
  ProductCategoryID,
  Name AS CategoryName
FROM
Production.ProductCategory

8.当数据源只包含一个表时,不需要设置DataMember 属性。

9.将DisplayMember设置 为= Fields.CategoryName 列。

10.将ValueMember设置 为= Fields.ProductCategoryID。

11.将文本设置 为Product Category。

12.如果需要,将Visible 属性设置为True 。

-----------------------------第一个参数添加完毕--------------------------------------

13.添加新的报告参数。

14.将其命名 为ProductSubcategoryID。

15.将 参数的Type设置为Integer。

16.展开可用值。

17.使用Data Source Wizard将DataSource设置 为 SqlDataSource with query:

SELECT
  ProductCategoryID,
  ProductSubcategoryID,
  Name AS SubcategoryName
FROM
Production.ProductSubcategory

18.当数据源只包含一个表时,不需要设置DataMember 属性。

19.将DisplayMember设置 为= Fields.SubcategoryName 列。

20.将ValueMember设置 为= Fields.ProductSubcategoryID。

21.单击过滤器 属性上的省略号。

 

 22.添加新过滤器。

 

 23.作为表达式 选择=Fields.ProductCategoryID。

24.作为运算符 选择equals(=)。

25.作为值选择=Parameters.ProductCategoryID.Value。-----使用第一个参数的值作为筛选条件

26.单击确定。

27.将Multivalue设置 为false( 如果您希望一次能够选择多个子类别,则设置为 true)。

28.将文本设置 为Product Subcategory。

29.如果需要,将Visible 属性设置为True 。

30.关闭ReportParameter 集合编辑器。

-----------------------------第二个参数添加完毕--------------------------------------

31.单击报告的过滤器 属性上的省略号以打开编辑过滤器 对话框。-------------将报表参数应用在第一步中创建的表格上

32.添加新过滤器。

33.作为Expression 选择=Fields.ProductSubcategoryID。

34.作为Operator 选择equals(=) ( 如果您已将ProductSubcategoryID 参数设置为多值参数,则选择IN运算符)。

35.作为值选择=Parameters.ProductSubcategoryID.Value。

36.单击确定。

37.预览报告。使用产品类别和产品子类别参数过滤报告中显示的产品列表。

 

 

 

 数据全部加载,根据筛选条件显示相应的数据。

机翻:https://docs.telerik.com/reporting/designing-reports/connecting-to-data/report-parameters/how-to-cascade-parameters-with-applied-filtering-on-report-level