水晶报告参数设置,以便当空白等于全部时

时间:2014-05-19 17:31:38

标签: parameters crystal-reports

我目前正在尝试添加按名称过滤的水晶报表参数, 与日期不同,你可以设置一个宽范围来包含所有内容,如果参数按名称输入,它只能输入用户输入的名称,当没有输入时,它显示所有空白。

如何更改公式,以便在没有输入名称时显示空白,而不显示全部?

我当前的日期选择和名称选择公式是:

{transfer.type} in ["date", "Dep", "Pmt"] and
{transfer.qdate} = {?date} and
{transfer.method} = 0 and
(not HasValue({?First Name}) OR {student.student} = {?First Name})

我只想更改名称部分,以便在没有输入名称时显示全部=。非常感谢!

2 个答案:

答案 0 :(得分:0)

如果你在记录选择记录选择中包含参数将使用那些来获取...这就是你在这里做的....

因此,当paramter中没有输入任何内容时,您需要返回所有值,为此,最好的选择是不输入任何内容时发送name参数。

所以你的公式是:

if hasvalue({?First Name}) then                // if parameter has value then use in condition 
{transfer.type} in ["date", "Dep", "Pmt"] and
{transfer.qdate} = {?date} and
{transfer.method} = 0 and
 {student.student} = {?First Name})
else                                         // if parameter doesn't has value then don't use so that all values are returned
{transfer.type} in ["date", "Dep", "Pmt"] and
{transfer.qdate} = {?date} and
{transfer.method} = 0 

答案 1 :(得分:0)

我通常将“全部”(而不是空白)设为默认值,并让用户更改它:

({?First Name} = "All" OR {student.student} = {?First Name})

空白,空值,空字符串看起来很相似,但表现不同。可见的“全部”告​​诉用户和开发人员确切的期望。