Maximo 自动化脚本:使用 mboConstants 覆盖 Maximo 业务逻辑
Phil Runion
June 12, 2023


Maximo 是 IBM 的综合资产管理系统,允许用户管理其资产、工单和维护操作。Maximo 的一项强大功能是能够使用自动化脚本自定义系统以满足特定的业务需求。在本文中,我们将讨论使用 Maximo 自动化脚本的最佳实践、使用适当的验证和访问检查的重要性以及实现类似目标的替代方法。
使用自动化脚本和为 Maximo 编写的 Java 代码时,可以使用各种各样的 MBOConstants 来控制脚本与 Maximo 业务逻辑的交互方式。为代码选择正确的常量至关重要,这样才能确保代码正常运行且不会损害系统的完整性。使用适用于具体情况的侵入性最小的 MBOConstant 来处理每个用例。
例如,NOVALIDATION_AND_NOACTION 或 9L 常量表示没有验证也没有操作,这意味着该脚本不会触发任何额外的自动化或检查输入的值。尽管这在某些情况下可能有用,但它可能导致意想不到的结果,甚至打破Maximo的业务逻辑。对于大多数情况,更合适的常量是 NOVALIDATION 或 1L,它允许脚本在不验证正在设置的数据或抑制其他 MBO 逻辑的情况下运行。

所有可用的常量都可以在 Java 文档中找到: https://ibm.ent.box.com/v/maximojavadocs
有几种方法可以引用 MBO常量。IBM 代码通常使用像 “2L” 这样的长值,除非你记住参考表,否则很难读取。使用写出的常量值可大大提高可读性。你可以通过导入 MBOConstants 类或引用 MBO 来做到这一点。在下面的示例中,NOACCESSCHECK 是通过三种不同的方式设置的。
没有常数
mbo.setValue(“描述”,“测试值”)
值 mboConstants
mbo.setValue(“描述”,“测试值”,2L)
导入 mboConstants 类
从 psdi.mbo 导入 mboConstants
mbo.setValue(“描述”、“测试值”、mboConstants.noAccessCheck)
MBO 将提取 mboConstants
mbo.setValue(“描述”、“测试值”、mbo.noAccessCheck)
奖励:将常量与 Java 管道相结合
mbo.setValue(“描述”、“测试值”、mbo.noAccessCheck|mbo.noValidation)
Discover everything you need to know to modernize your asset management strategy.
Inside, you’ll learn:

ActiveG, BPD Zenith, EAM Swiss, InterPro Solutions, Lexco, Peacock Engineering, Projetech, Sharptree, and ZNAPZ have united under one brand: Naviam.
You’ll be redirected to the most relevant page at Naviam.io in a few seconds — or you can
go now.