XCo*_*m69 5 function crystal-reports crystal-reports-2008
我试图在Crystal Reports中创建自定义IsNull函数; 该函数必须以与MS SQL Server中的IsNull函数相同的方式运行.我想指定一个字段,如果该字段为null,则必须使用我指定的值返回该字段.
IsNull({myField},0) or
IsNull({myField},'Hello World')
Run Code Online (Sandbox Code Playgroud)
我遇到过,我必须为数字字段创建一个单独的函数,为文本字段创建一个单独的函数.我还发现Crystal不允许在自定义函数中使用标准函数,例如ISNULL函数:
Function(NumberVar param, Numbervar setter)
IF ISNULL(param) THEN setter ELSE param
Run Code Online (Sandbox Code Playgroud)
和
Function(StringVar param, StringVar setter)
IF param = NULL THEN setter ELSE param
Run Code Online (Sandbox Code Playgroud)
有谁知道如何在Crystal中创建这样的函数,并解决ISNULL自定义函数内部的问题?
dot*_*joe 11
你不能将空值传递给自定义函数,所以isnull在其中使用crystal 函数是没有意义的.唯一的选择就是把它写成......
if isnull({myField}) then 0 else {myField}
Run Code Online (Sandbox Code Playgroud)
我遇到过同样的行为,但我还没有看到有记录的原因。
我建议您使用 SQL 表达式:
//{%myField}
(
ISNULL({myField},'Hello World')
)
Run Code Online (Sandbox Code Playgroud)