水晶报道。如何显示两个可选日期之间的记录数量

时间:2012-06-23 22:12:38

标签: crystal-reports

我是Crystal的新手,我必须创建一个需要2个输入可选参数的基本报告:DateStartDateEnd。 报告应包括两个日期之间的表中的记录数量(如果错过了DateEnd日期值,报告应认为它需要所有记录,无论它们多大。如果遗漏DateStart,报告应考虑它需要所有记录,无论他们多么年轻)

我想我必须使用SQL Expression Field,但无法弄清楚如何实现where子句。

您如何实施此类报告?

提前谢谢!

2 个答案:

答案 0 :(得分:0)

试试这个:

使用Date Parameteroptional prompt创建range

然后我记录选择公式:

if ( (not HasValue({?PARAM_YOUR_DATE}) or (not(HasLowerBound({?PARAM_YOUR_DATE}))) or (not(HasUpperBound({?PARAM_YOUR_DATE}))) ) then
  True
else
  {YOURDB.YOUR_DATE_FIELD} in {?PARAM_YOUR_DATE};

答案 1 :(得分:0)

当您想要显示所有记录时添加特殊值,即01/01/1900

crParameterDiscreteValue.Value ="19000101";

在第一个公式中

{?DateStart} = '19000101' or {table.DateStart} = {?DateStart}

在第二个公式中

{?DateEnd} = '19000101' or {table.DateEnd} = {?DateEnd}

无需使用if else语句。