【问题标题】:Maximo custom field in non persistent table非持久表中的 Maximo 自定义字段
【发布时间】:2016-07-25 07:20:40
【问题描述】:

我们如何在 maximo 问题当前项目对话框中添加新的自定义字段。其中 ISSUECURRENTITEM 是非持久表

【问题讨论】:

  • 没人评论???
  • 此链接对您有帮助吗? xcentricway.ca/tutorial01.htm 如何在 Maximo 中创建自定义对话框以允许用户通过电子邮件发送 BIRT 报告
  • 感谢您的回复,但这里的情况不同。在库存应用程序中,有一个默认对话框 ISSUE CURRENT ITEM,我想要在其中添加一些 morentext 字段。

标签: customization maximo


【解决方案1】:

感谢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"))

【讨论】:

    【解决方案2】:

    1) 使用数据库配置将您的字段添加到 ISSUECURRENTITEM 对象

    2) 转到应用程序设计器并打开 Inventory (INVENTOR) 应用程序。

    3) 点击工具栏中的“编辑对话框”

    4) 打开对话框 - ISSUE(标签:发布当前项目)

    5) 将你在数据库中配置的字段随意添加到对话框中。

    【讨论】:

      猜你喜欢
      • 2019-05-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多