因此,对于我创建的报告,他们有一组参数,当没有特定值过去时,报告会将其视为获得所有可能解决方案的数据。
例如:您将机器名称作为参数,并且不会将特定的机器名称放入参数中。然后,您将获取数据库中所有可能的计算机名称的返回数据。我正在谈论的一个例子如下。
但是,当我没有在参数字段中放入任何值时,报表中不会显示任何值。我想要的是让它显示“全部”到字段而不是它作为空白返回。
所以我的问题是,如果没有为参数添加值,我将如何显示“全部”红色圆圈在报告中而不是显示为空白?
非常感谢任何帮助或建议。谢谢。
答案 0 :(得分:8)
听起来你已经对记录选择进行了排序。红色圆圈中的四个字段如下:
if hasvalue({?param}) then
{?param}
else
'All';
如果其中任何一个不是字符串值,您可能需要这样做:
if hasvalue({?param}) then
cStr({?param})
else
'All';
答案 1 :(得分:2)
可选参数要求您使用hasvalue()
函数检查没有使用值的情况。所以在你的情况下,如果你有
{table.machine_name} = {?machine_name_param}
你必须使用
(not(hasvalue({?machine_name_param}))
or {table.machine_name} = {?machine_name_param})
它基本上就像对任何数据库字段进行空检查一样。
答案 2 :(得分:-1)
Crystal 2008语法 如果参数是类型编号 句法 ({?P#} = 0或{Command.p} = {?P#})
如果参数的类型为STRING 句法 (不是HasValue({?D})或{Command.d} = {?D})