RDLC 报告:将筛选器应用于报告

RDLC Report: Apply Filter to Report

我有两个参数 dateFromdateTo,我想根据这些值过滤我的报告,并显示报告中过滤行的 total 列的总和。

目前,当我使用表达式 =Sum([total]) 时,它 returns 数据库中整列的总和,并且它没有对表达式应用日期过滤器。

问题: 如何应用日期 dateFromdateTo 参数之间的总和,就像这样的伪代码:

=Sum(Field!Total.Value) where date between dt_from to dt_to

这是我用来加载展示报告的代码:

invoice_viewTableAdapter.Fill(this.db_posDataSetInvoice.invoice_view);
reportViewer1.RefreshReport();

您应该在报告的数据源上应用过滤器,例如:

invoice_viewTableAdapter.Fill(this.db_posDataSetInvoice.invoice_view);
this.invoice_viewBindingSource.Filter = "Put your filter here";
reportViewer1.RefreshReport();

假设您有一个 MyDateField 字段并且您有 DateTime.

类型的 dateFrom 和 dateTo

这可以是您的日期过滤器:

String.Format("MyDateField>= #{0:yyyy/MM/dd}# AND MyDateField<= #{1:yyyy/MM/dd}#"
              , dateFrom, dateTo);

您可以找到有关 BindingSource.Filter 表达式语法的更多信息 here