我有一个水晶报告,其中我有一个名为range的日期参数,我想默认min和maxdate值。因此,在值选项部分下的编辑参数对话框中,有“开始”和“结束”的选项,我想分别注意和maxdate。我试图解决的问题是,如果用户没有输入范围的值,我想要返回所有记录。这甚至可能吗?提前感谢任何建议。
我正在运行最新版本的水晶报道
答案 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)
是的,可以将参数设为可选参数。默认情况下,如果用户没有选择任何内容,它将带来所有数据。