NetSuite案例即使所有单独的陈述都有效,也不能正常工作

问题描述 投票:0回答:1

我在NetSuite的保存搜索中遇到了问题。

这作为公式(文本):

CASE WHEN {type} THEN 'Kit' ELSE 'not kit' END

这些作为公式(数字):

min(({memberitem.quantityonhand}/NULLIF({memberquantity},0))/(NULLIF({memberitem.preferredStockLevel}/NULLIF({memberquantity},0),0)))

还有这个

{quantityonhand}/NULLIF({preferredstocklevel},0)

但当我尝试将它们作为公式(数字)放在一起时,它们会失败:

CASE WHEN {type}='Kit/Package' THEN min(({memberitem.quantityonhand}/NULLIF({memberquantity},0))/(NULLIF({memberitem.preferredStockLevel}/NULLIF({memberquantity},0),0))) ELSE {quantityonhand}/NULLIF({preferredstocklevel},0) END 

我也尝试过多个CASE WHEN语句:

CASE WHEN {type}='Kit/Package' 
    THEN min(({memberitem.quantityonhand}/NULLIF({memberquantity},0))/(NULLIF({memberitem.preferredStockLevel}/NULLIF({memberquantity},0),0))) 
ELSE 
    CASE WHEN {type}='Inventory Item' 
        THEN {quantityonhand}/NULLIF({preferredstocklevel},0) 
    ELSE 'nope' 
    END 
ELSE 'nope' 
END

还是行不通。

我认为问题可能是我的CASE WHEN语句用于公式(文本)而我的输出用于公式(数字)。如果是这种情况,我如何以数字格式检查我的项目类型,或者我的代码是不是很难?

提前致谢。

netsuite case-when
1个回答
0
投票

好。我想在这里跟进并根据评论中的帮助发布我想出的答案。

@Brian想出了这个问题并给了我建议,我需要让它运作起来。他是对的 - 我把混合聚合物与非聚合物混合在一起。以下是最终的工作:

CASE WHEN {type}='Kit/Package' THEN ({memberitem.quantityonhand}/NULLIF({memberquantity},0))/(NULLIF({memberitem.preferredStockLevel}/NULLIF({memberquantity},0),0)) ELSE {quantityonhand}/NULLIF({preferredstocklevel},0) END

所以你可以看到有效的方法是从套件部分中删除min()函数。我仍然需要弄清楚如何获得正确的套件库存数量,但@ Brian的建议解决了主要问题。

© www.soinside.com 2019 - 2024. All rights reserved.