我们如何在最大问题当前项目对话框中添加新的自定义字段。其中 ISSUECURRENTITEM 是非持久性表
终于多亏了 SASHULL 我找到了解决方案
解决方案是:
向 ISSUECURRENTITEM添加属性很容易(转到数据库配置并将属性添加到 ISSUECURRENTITEM 对象(,但挑战在于捕获 MATUSETRANS 表中的数据。由于这是一个非持久性对象,Java 类将数据从非持久性对象复制到持久性对象 MATUSETRANS。如果您使用的是 Maximo 7.5 或 7.6,您应该能够从自动化脚本获取该数据。
您的启动点将在 MATUSETRANS 对象添加事件上,您需要如下所示的内容。请务必将属性名称替换为适当的名称。我留下了脚本中的笔记来帮助解释正在发生的事情,但如果您对其中任何一个有任何疑问,请告诉我。
# Purpose is for the Issue Current Item dialog, they want a custom field that would be stored on MATUSETRANS.
# Since it's a non-persistent object, we need a way to crossover the value with an automation script.
owner= mbo.getOwner()
# During save of the Issue Current Item, it goes up to the Inventory record to create the MATUSETRANS record.
# We need to go from MATUSETRANS->INVENTORY->ISSUECURRENTITEM to get the value
if owner and owner.getRecordMboName()=="INVENTORY":
issueitemMbo=owner.getMboSet("ISSUECURRENTITEM").getMbo(0)
if issueitemMbo:
mbo.setValue("MATUSETRANSFIELD", issueitemMbo.getString("ISSUECURRENTITEMFIELD"))
1( 使用数据库配置将字段添加到 ISSUECURRENTITEM 对象
2( 转到应用程序设计器并打开清单 (INVENTOR( 应用程序。
3( 从工具栏中单击"编辑对话框">
4( 打开对话框 - 问题 (标签:发布当前项目(
5( 根据需要将您在数据库中配置的字段添加到对话框中。