![](/img/trans.png)
[英]Null value of String Array in Function of Crystal Reports - Crystal Syntax
[英]Has value function crystal reports
在我的报告中,我有3个参数when, week and year
。 如果选择“ When=schedule
则报告应在当前星期运行,而不考虑参数窗口中给出的年和周值。 如果我选择when=Now
则报表将针对我们在参数窗口中给出的周值和月值运行。 请提出建议。
我尝试过这种方法,但是没有用。
if hasvalue({?Week}) and HasValue({?Year}) and {?When} = 'Now'
Then
{?Week} = {Command.WEEK} and {?Year} = {Command.YEAR}
else
({?Week} = DatePart ("ww", Currentdatetime) and {?Year} = DatePart ("yyyy", Currentdatetime)
在水晶报表中,ISNULL和INSTR函数将在这种情况下使用。
ISNULL:-检查值是否为null,然后返回true,否则返回false。 INSTR:-检查字符串中的子字符串,如果找到,则给索引,否则返回0。
检查链接中的详细信息
就你而言
if isnull({?Week}) and isnull({?Year}) and isnull{?When}
Then
return false
else
//in else again check with if else condition
if {?When} = 'schedule'
then
do something
else
do something
我的方法是:
而不是检查参数的null
值。.给参数提供默认值,并检查该值是否为false
条件。
假设让我们将默认值设为None
if {?Week}="None" and {?Year}="None" and {?When} = 'Now'
Then
{?Week} = {Command.WEEK} and {?Year} = {Command.YEAR}
else
({?Week} = DatePart ("ww", Currentdatetime) and {?Year} = DatePart ("yyyy", Currentdatetime)
Note: Above code is just an example change it as per your requirement.
您可以通过以下方式使用:
if {?Week}<>"" then {Command.WEEK}={?Week} else {Command.WEEK}={Command.WEEK}
希望这会有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.