突出显示NetSuite中包含有时为空字段的公式

突出显示NetSuite中包含有时为空字段的公式,netsuite,Netsuite,我对包含有时为空的字段的突出显示公式有一些问题 我有一个对几个字段求和的搜索:field_a+field_B+field_C。问题是在某些情况下,字段C要么为空,要么值为0。所以我试图找到一个公式,它说:如果字段C是空的,不要在计算中使用它,否则就使用它。我能够使用以下公式计算搜索结果: 当{field_C}为空时,则到_char({field_A}+{field_B},'999999.99')或到_char({field_A}+{field_B}+{field_C},'999999')结束 我

我对包含有时为空的字段的突出显示公式有一些问题

我有一个对几个字段求和的搜索:field_a+field_B+field_C。问题是在某些情况下,字段C要么为空,要么值为0。所以我试图找到一个公式,它说:如果字段C是空的,不要在计算中使用它,否则就使用它。我能够使用以下公式计算搜索结果:

当{field_C}为空时,则到_char({field_A}+{field_B},'999999.99')或到_char({field_A}+{field_B}+{field_C},'999999')结束

我的问题是当我试图突出显示搜索中的某些项目时。基本上,我将字段D与字段A到C的总和进行比较。如果字段D高出10%,则我们的预算不足,如果字段D低出10%,则我们的预算过高。但是,我的公式不起作用:

当{Field_C}为空时,则当1.1*(max({Field_A})+max({Field_B}))>sum({Field_D})时,则当'OK'ELSE'OVERBUDGET'结束,当1.1*(max({Field_A})+max({Field B})+max({Field C}))>sum({Field Field D})时,则'OK'ELSE'OVERBUDGET'结束

你看到我的公式有什么不正确的地方吗?你知道怎么做吗


非常感谢你

您可以通过使用
NVL
功能大大简化此过程。几乎所有的PL/SQL函数都在Netsuite formulaX字段中工作——它们只是没有记录在NS文档中

因此,求和公式变成:

NVL({field_A},0) + NVL({field_B},0) + NVL({field_C},0)
测试变成:

CASE 
  WHEN (sum(NVL({field_A},0) + NVL({field_B},0) + NVL({field_C},0) > 1.1* sum({Field_D}) THEN 'OVERBUDGET' 
  WHEN (sum(NVL({field_A},0) + NVL({field_B},0) + NVL({field_C},0) < 0.9* sum({field_D} THEN 'UNDERBUDGET' 
  ELSE 'OK' END
案例
当(sum(NVL({field_A},0)+NVL({field_B},0)+NVL({field_C},0)>1.1*sum({field_D})时,则“超额预算”
当(和)(NVL({field_A},0)+NVL({field_B},0)+NVL({field_C},0)<0.9*sum({field_D})时,则“预算不足”
否则“OK”结束

请注意,这些使用公式中的聚合函数意味着为行选择了汇总值。因此,第一个公式为SUM,第二个公式为min、max或average。我不知道是否有记录,但公式字段中的任何聚合函数都会覆盖这些汇总列选择,并显示由e formula.

通过使用
NVL
函数,您可以大大简化这个过程。几乎所有的PL/SQL函数都在Netsuite formulaX字段中工作——它们只是没有在NS文档中记录

因此,求和公式变成:

NVL({field_A},0) + NVL({field_B},0) + NVL({field_C},0)
测试变成:

CASE 
  WHEN (sum(NVL({field_A},0) + NVL({field_B},0) + NVL({field_C},0) > 1.1* sum({Field_D}) THEN 'OVERBUDGET' 
  WHEN (sum(NVL({field_A},0) + NVL({field_B},0) + NVL({field_C},0) < 0.9* sum({field_D} THEN 'UNDERBUDGET' 
  ELSE 'OK' END
案例
当(sum(NVL({field_A},0)+NVL({field_B},0)+NVL({field_C},0)>1.1*sum({field_D})时,则“超额预算”
当(和)(NVL({field_A},0)+NVL({field_B},0)+NVL({field_C},0)<0.9*sum({field_D})时,则“预算不足”
否则“OK”结束
请注意,这些使用公式中的聚合函数意味着为行选择了汇总值。因此,第一个公式为SUM,第二个公式为min、max或average。我不知道是否有记录,但公式字段中的任何聚合函数都会覆盖这些汇总列选择,并显示由e公式