将默认开始和结束日期添加到crystal report参数

时间:2018-01-09 22:56:56

标签: crystal-reports

我有一个水晶报告,其中我有一个名为range的日期参数,我想默认min和maxdate值。因此,在值选项部分下的编辑参数对话框中,有“开始”和“结束”的选项,我想分别注意和maxdate。我试图解决的问题是,如果用户没有输入范围的值,我想要返回所有记录。这甚至可能吗?提前感谢任何建议。

我正在运行最新版本的水晶报道

enter image description here

3 个答案:

答案 0 :(得分:2)

我认为简单的方法是使用2个参数而不是1个,这是开始日期的一个参数,而结束日期则是其他参数。

为两者添加默认值None,如果用户不想选择任何值,请要求选择None

现在将记录选择公式更改为

if {?start date} = "None" and {?End date} = "None"
then
//Don't pass any date filter
else
//Add date filter as per parameter selection

答案 1 :(得分:0)

一种简单的方法是手动输入最小和最大日期,并使参数不是可选的。

更优雅的方法是检查参数是否具有值,并仅筛选记录(如果有)。在记录选择公式中添加如下内容:

if hasvalue({?range}) then {yourdatefield} in {?range} else true

如果参数range具有值,则将其用作过滤器。如果它没有值,则该术语将评估为true,这意味着不会过滤任何记录。

答案 2 :(得分:0)

是的,可以将参数设为可选参数。默认情况下,如果用户没有选择任何内容,它将带来所有数据。