Netsuite CASE WHEN自定义搜索中的表达式返回“无效表达式”

时间:2013-08-08 21:54:16

标签: sql netsuite

我是NetSuite中编写CASE表达式的新手。我在自定义搜索的公式字段中插入了以下表达式。

CASE WHEN {item.custitem_custid}=05 OR {item.custitem_custid}=12 THEN
     ({item.custitem_margin}/2) 
ELSE 
     ({item.custitem_margin}/3)
END

并且得到“无效的表达结果。如果WHEN情况为真,我试图将保证金字段值除以2,如果不是真的则除以3。任何人都知道我的公式出了什么问题?

2 个答案:

答案 0 :(得分:1)

我认为您需要添加括号:

CASE WHEN ({item.custitem_custid}=05 OR {item.custitem_custid}=12) THEN
     ({item.custitem_margin}/2) 
ELSE 
     ({item.custitem_margin}/3)
END

答案 1 :(得分:0)

我同意egrubaugh360语法很好,并且联接可能无法正常工作。在您的论坛中,只需仔细检查“项目”。部分,看看你能做些什么。

我也同意NVL()建议,但我也可以看到你的分母分别是2和3,因此NVL()函数不会做任何事情来帮助你。请在每次分母都是未知值时使用NVL(),例如记录/交易中的字段。