Crystal Reports 2016公式语法

时间:2017-10-18 16:04:01

标签: crystal-reports

我是Crystal Reports的新手。 我有一个DB,其中以KB为单位报告内存列。 我为我的IT主管创建了一个报告,他希望该字段以GB格式报告内存。 我试过这个公式(根据我购买的书名为'2016年Crystal Reports的初级指南')

IF {tblDts.Memory} = "" THEN "N/A" ELSE {tblDts.Memory}*0.4256

我得到的错误是

  

此处需要数量或货币金额

并在我的{tblDts.Memory}声明之后突出显示ELSE

数据库中的那个字段只有数值(btw - 0.4256是10240的十进制格式,我尝试了一个具有相同结果的除法语句,所以我想我尝试一个乘法语句。)

我做错了什么?

1 个答案:

答案 0 :(得分:1)

在条件语句中,IFELSE都应返回相同的数据类型,否则会报告这类错误。

这里为IF你返回字符串,对于ELSE你返回Number因此错误。

建议在IF的情况下返回0并在ELSE中计算

IF {tblDts.Memory} = "" 
THEN 0
ELSE {tblDts.Memory}*0.4256

编辑---------------------------------------------- ----

if IsNumber({tblDts.Memory})
then 
(
ToNumber({tblDts.Memory})*0.4256
)
else
0