在 Maximo 7.6.1.1 中:
我在一个名为WORKORDER.X
的持久字段上有属性公式。字段类型为十进制,长度为 18,小数位数为 10。
该公式旨在执行此操作:
- 如果 WOSERVICE 地址。LONGITUDEX 不为空,使用它
- 否则,如果资产。X 不为空,使用它
- 否则,如果位置。X 不为空,使用它
这是我想出的表达方式:
NVL(SERVICEADDRESS$LongitudeX, NVL(ASSET$X, NVL(LOCATION$X,0) ) )
^
I would prefer null, not 0
问题:
如果所有搜索值最终都是 null,有没有办法返回 null 而不是 0?
我尝试使用单词null
,但出现错误:
BMXAA9399E - This formula is invalid because the following attribute or token is
invalid: null. Specify a valid attribute and try again.
我也试过""
,但这会返回0
.
使用值为 null 的字段也会引发错误。
编辑:
我在这里有一个相关的问题:使用自定义公式函数/自动化脚本的 Maximo 公式?
我还没有太多玩过这些公式,但它们用于计算数学值:
从文档中:
马克西莫公式的范围仅限于数学表达式和 因此,它只能用于计算数值。
来源: 马克西莫公式 PDF
因此,如果您确实需要获取null
值,则最好使用自动化脚本。
通过测试,这是我在 Maximo 7.6.1.2 中发现的:
- 非持久性字段可以毫无问题地处理空值。我用它来返回一个 null:
NULLVALUE()
- 但是持久字段似乎无法处理空值。我尝试使用它返回一个 null:
NULLVALUE()
错误:
BMXAA3761E - 事件失败。确保事件已正确注册。有关该错误的更多详细信息,请参阅应用主页目录中的日志文件。
零
IBM说:"...它将在 7.6.1.3 和 8.1 中工作。