【发布时间】:2016-03-06 16:23:55
【问题描述】:
我正在尝试创建一个查找。我想从 PERSON 表中选择 - 如果我通过查找选择一个值,则选择人员 ID,但我需要显示名称值。我尝试过创建表域、查找表、lookup.XML 和所有方法。
【问题讨论】:
-
问题不清楚你想要什么样的结果。也许包括更多详细信息或描述您希望显示名称如何显示的屏幕截图会更有帮助。
标签: maximo
我正在尝试创建一个查找。我想从 PERSON 表中选择 - 如果我通过查找选择一个值,则选择人员 ID,但我需要显示名称值。我尝试过创建表域、查找表、lookup.XML 和所有方法。
【问题讨论】:
标签: maximo
如果您需要将 DisplayName 复制到本地对象除了 PersonID,那么您需要一个以 DisplayName 作为源的交叉域而不是表域字段和应将 Person.DisplayName 的副本保存为目标字段的本地属性。
如果您需要将 DisplayName 复制到本地对象 而不是 PersonID,那么您需要在目标属性上创建一个查找映射,以便 Maximo 知道什么域返回的属性映射到本地对象上的哪个属性。您可以使用“数据库配置”中“属性”选项卡右侧的白色“页面”小图标/按钮为所需的目标属性设置查找图。
如果您只需要在选择 PersonID 后查看 DisplayName,则使用多部分文本框并将“第 2 部分的属性”设置为类似 PERSON.DISPLAYNAME,其中 PERSON 是从本地对象到 PERSON 对象的关系。
【讨论】:
正如 Preacher 已经提到的,您可以使用查找图复制 DISPLAYNAME 属性 - 在数据库配置应用程序上,转到要复制到的属性 - 可能是您使用表域的那个属性 - 然后单击 图标。
如果您创建了一个自定义字段并且上面没有 Java 类,那么您仍然需要表域,因此请将其保留在属性上。现在,在查找图上,您可以定义要将哪些字段从源 MBO 复制到目标 MBO。您可以从这里定义多个目标字段(因此无需定义交叉域,即使您需要复制多个字段) - 只需为要从源 (Person) 对象复制的任何字段输入一个新行。
在许多版本的 Maximo 上,您必须重新启动才能开始工作!我相信您不必在 7.6 上重新启动,但在任何以前的版本上您可能都必须重新启动。
现在,关于lookups.XML 中的定义:如果您想显示与默认“人”查找中已显示的属性不同的属性,您需要定义自己的属性,就像您所做的那样。如果默认的看起来不错,对你来说,你可以使用“person”作为查找,因为复制字段的逻辑是在查找映射中定义的,而不是在 lookups.XML 中。
【讨论】: