我在Maximo中有一个有任务的工作单。
我想配置Maximo,以便在任何任务未完成时无法将工作订单更改为完成。
原因:我要这样做是为了确保在更改工作订单时不会意外遗漏任何任务。
我该怎么做?
我的顾问建议只能使用Java定制Maximo才能做到这一点。我想验证这是否是唯一的选择。
版本:7.6.1
答案 0 :(得分:2)
从屏幕截图来看,您似乎正在使用Maximo 7.6.1。因此,Java当然不是唯一的选择。
一种无需任何“编码”(条件表达式除外,该表达式不计算在内)的方法之一是将条件表达式放在WOSTATUS同义词域中Complete的同义词上。此解决方案将防止Complete的同义词出现在您可以选择的状态列表中,除非条件评估为true。
如果要使用自动化脚本,则可以从“对象启动点”或“属性启动点”中调用一个,如果会出现类似屏幕快照的情况,则会引发错误。
或者,您可以选择让“任务”自动从父级继承状态更改,在这种情况下,当将WO更改为“ COMP”时,屏幕快照中的“任务”将变为“ COMP”。您可以将“继承状态更改”默认配置为true,并配置用户是否可以覆盖该默认设置。
答案 1 :(得分:1)
限制子工作或任务工作时关闭父工作订单 订单正在处理中您可以限制用户关闭父级 如果未关闭,未完成任何子工作或任务工作单, 或取消。您创建一个条件表达式并将其应用于 WOSTATUS域已关闭,已取消并已完成值。
如果必须完成所有任务并且您不关心父子工作订单,则可以使用以下条件:
not exists (select 1 from workorder where parent = :wonum
and istask=0 and status not in ('COMP','CLOSE','CAN'))
警告语。正确测试。如果您需要完成所有任务,则可能会影响升级,并且技术人员可能不喜欢必须在常规工作计划中检查所有任务是否已完成。