Servigistics InService 发布和加载 > 使用发布和加载 > TAL 配置 > 配置标识管理 (IMAN)
  
配置标识管理 (IMAN)
IMANConfig.xml 配置文件可用于根据 SIM 数据类型配置束源的类型和源的标识属性及其他属性。它使 TAL 能够处理来自不同创作系统的各种束并将标识分配给各个对象。这些属性用于生成 IMAN ID。必须进行此配置。该文件位于 INSERVICE_HOME\InS_SW\Config\Applications\DataProcess\Config\Common\Templates\IMANIntegration
Servigistics InService 提供了配置器实用程序,以帮助您创建和更新此配置文件。配置器提供了 TAL 实体,其中包含这些更新的 IMAN 特性。通过 IMAN 特性,您可以重命名或更改源加载优先级。该操作可以在该特性的“源”部分中完成。
以下源为只读源:
您可以使用加号图标 在您的组织中添加其他源。此操作会创建 PTC 源的副本,并将新的源添加到 IMANConfig.xml。例如:
您可以通过单击源旁边的图标,然后将该源拖放到顺序中的所需位置来更改源的源加载优先级:
请注意,您必须发布该配置器中所做的任何 TAL 更改,并在这些更改生效之前重新启动 JBoss 服务器。有关配置器实用程序的信息,请参阅 《Servigistics InService 部署指南》 中的 Using the Servigistics InService Deployment Configurator Utility
有的 IMAN 配置无法在配置器中完成。下列各节提供了有关此配置的详细信息。
在 IMAN 中配置源名称
束制品 PublishInfo.xml 包含参数 Bundle-Source,用以标识束所有者。如果此特性不存在,则 TAL 默认使用来自束源 Rootobjects 中的特性 orgName。以下是 orgName 示例:
IMANConfig.xml 中,您必须定义与业务标识属性相关的 Source name 以及详细信息,以便区分不同数据类型。这些属性可以是各种类型的业务对象的公用属性,也可以根据各个对象而有所不同。如果未配置源,则 TAL 进程可能会失败。
通常情况下,使用束源配置可以查找到对象。如果未查找到对象 (由于其他源已加载同一对象),则可以配置要查找的源。通常,当两个不同源具有两个不同的标识属性集时会发生这种情况。
例如,设想这样一个情景:PARTS 已从名为 SAP 的源中加载,且该源的标识属性被标记为 orgNameobjNumber。但是,目前我们正从另一个名为 PTC 且标识属性为 URI 的源中获取部件。在这种情况下,您不应通过 URI 查找任何部件,因为同一个源在 SAP 中不可用。系统甚至不应该创建新部件。解决方案即执行级联搜索。
以下是级联搜索的配置方法:
<Source name="com.cat.ncr">
<Type name="PARTS" CascadeSeq="SAP,PTC" >
<IdentifyingAttributes>
<Property name="uri"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="objNumber"/>
<Property name="orgName"/>
</OtherAttributes>
</Type>
</Source>
对于给定的 Type name,如果使用标识属性在数据库中未查找到对象,则可以使用级联序列中提供的源标识属性完成搜索。必须确保作为级联序列的源仅将这些属性用作标识属性 (可供当前源使用的标识属性或其他属性),否则会发生错误。
在上述情况下,如果 SAP 的 IdentifyingAttributes 包含 objNumberorgName,则为有效用例。如果它包含 familyCode,则会因源 PTC 不具有该属性而出现错误。
在 IMAN 中配置优先级
配置器可为您的内容定义主要源。如需定义其他源,必须在 IMANConfig.xml 文件中完成。在这种情况下,复制 PTC 源、更改源 name,并将 SourceID 更新为 -1,如下所示:
<Source SourceID="-1" name="ABC" priority="3">
为每个束源提供了优先级,以便启用或禁用对任何对象的更新。具有最高优先级的源已被授权对具有相同或最低优先级源的对象进行任何更改,反过来则不然。具体可在定义源时通过 IMANConfig.xml 配置文件进行配置。优先级属性仅接受整数值。值越高,表示优先级越高。如果源试图更新或删除它不拥有的对象,则其优先级必须与当前所有者相同或高于当前所有者,否则将忽略此操作。
例如,名为 PL1 的部件属于源 ABC。由于 PTC 的优先级高于 ABC,因此,只要 PTC 源想要尝试更新此部件,随时都可以进行更新。但是,如果 ABC 试图更新 PTC 所拥有的对象,则不被允许,因为其优先级低于 PTC 的优先级。
以下是 IMANConfig.xml 配置文件的示例:
<IMANConfig>
<Source SourceID="4" name="CSV" priority="4">
<Type name="PDFM">
<IdentifyingAttributes>
<Property name="objNumber" primary="true" reference="PDF Code|Document Code"/>
<Property name="orgName" primary="true" reference="$$ORGNAME$$"/>
<Property name="PTC_DD_LANGUAGE" reference="File Name_|Description_"/>
<Property name="SIM.authoringLanguage" reference="$$AUTHORED_DOC_LANGUAGE$$"/>
</IdentifyingAttributes>
<OtherAttributes>
</OtherAttributes>
</Type>
<Type name="IEXML">
<IdentifyingAttributes>
<Property name="objNumber" primary="true" reference="XML Code|Document Code"/>
<Property name="orgName" primary="true" reference="$$ORGNAME$$"/>
<Property name="PTC_DD_LANGUAGE" reference="File Name_|Description_"/>
<Property name="SIM.authoringLanguage" reference="$$AUTHORED_DOC_LANGUAGE$$"/>
</IdentifyingAttributes>
<OtherAttributes>
</OtherAttributes>
</Type>
<Type name="GRAPHIC">
<IdentifyingAttributes>
<Property name="objNumber" primary="true" reference="GRAPHIC Code|Document Code"/>
<Property name="orgName" primary="true" reference="$$ORGNAME$$"/>
<Property name="PTC_DD_LANGUAGE" reference="File Name_|Description_"/>
<Property name="SIM.authoringLanguage" reference="$$AUTHORED_DOC_LANGUAGE$$"/>
</IdentifyingAttributes>
<OtherAttributes>
</OtherAttributes>
</Type>
<Type name="PARTS">
<IdentifyingAttributes>
<Property name="objNumber" reference="Part Code"/>
<Property name="orgName" reference="orgname|$$ORGNAME$$"/>
</IdentifyingAttributes>
<OtherAttributes>
</OtherAttributes>
</Type>
<Type name="PI">
<IdentifyingAttributes>
<Property name="objNumber" reference="concat(Model,'_',SN)"/>
<Property name="orgName" reference="$$ORGNAME$$"/>
</IdentifyingAttributes>
<OtherAttributes>
</OtherAttributes>
</Type>
<Type name="BOM">
<IdentifyingAttributes>
<Property name="objNumber" reference="Object Number"/>
</IdentifyingAttributes>
<OtherAttributes>
</OtherAttributes>
</Type>
<Type name="GROUP">
<IdentifyingAttributes>
<Property name="objNumber" reference="$$Part Code"/>
<Property name="orgName" reference="$$ORGNAME$$"/>
</IdentifyingAttributes>
<OtherAttributes>
</OtherAttributes>
</Type>
<Type name="IS">
<IdentifyingAttributes>
<Property name="objNumber" reference="Parent Entity Code"/>
<Property name="orgName" reference="$$ORGNAME$$"/>
</IdentifyingAttributes>
<OtherAttributes>
</OtherAttributes>
</Type>
<Type>
<IdentifyingAttributes>
<Property name="objNumber" reference="Document Code|Assembly Code"/>
<Property name="orgName" reference="$$ORGNAME$$"/>
</IdentifyingAttributes>
<OtherAttributes>
</OtherAttributes>
</Type>
</Source>
<Source SourceID="3" name="FLW" priority="3">
<Type name="PDFM">
<IdentifyingAttributes>
<Property name="uri"/>
<Property name="PTC_DD_LANGUAGE"/>
<Property name="SIM.authoringLanguage"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="objNumber" reference="number"/>
<Property name="orgName"/>
<Property name="SIM.lastUpdated"/>
<Property name="SIM.lastUpdatedSrc"/>
<Property name="SIM.lastUpdatedMeta"/>
<Property name="checksum"/>
<Property name="collectedDate"/>
</OtherAttributes>
</Type>
<Type name="IEXML">
<IdentifyingAttributes>
<Property name="uri"/>
<Property name="PTC_DD_LANGUAGE"/>
<Property name="SIM.authoringLanguage"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="objNumber" reference="number"/>
<Property name="orgName"/>
<Property name="SIM.lastUpdated"/>
<Property name="SIM.lastUpdatedSrc"/>
<Property name="SIM.lastUpdatedMeta"/>
<Property name="checksum"/>
<Property name="collectedDate"/>
</OtherAttributes>
</Type>
<Type name="SYMPTOMS">
<IdentifyingAttributes>
<Property name="uri"/>
<Property name="PTC_DD_LANGUAGE"/>
<Property name="SIM.authoringLanguage"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="objNumber" reference="number"/>
<Property name="orgName"/>
<Property name="SIM.lastUpdated"/>
<Property name="SIM.lastUpdatedSrc"/>
<Property name="SIM.lastUpdatedMeta"/>
<Property name="checksum"/>
<Property name="collectedDate"/>
</OtherAttributes>
</Type>
<Type CascadeSeq="SAP" name="PARTS">
<IdentifyingAttributes>
<Property name="uri"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="objNumber"/>
<Property name="orgName"/>
<Property name="PTC_DD_LANGUAGE_TL"/>
</OtherAttributes>
</Type>
<Type name="IS">
<IdentifyingAttributes>
<Property name="uri"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="objNumber"/>
<Property name="orgName"/>
<Property name="PTC_DD_LANGUAGE_TL"/>
</OtherAttributes>
</Type>
<Type name="PS">
<IdentifyingAttributes>
<Property name="uri"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="objNumber"/>
<Property name="orgName"/>
<Property name="PTC_DD_LANGUAGE_TL"/>
</OtherAttributes>
</Type>
<Type name="BOM">
<IdentifyingAttributes>
<Property name="objNumber"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="uri"/>
</OtherAttributes>
</Type>
<Type name="GRAPHIC">
<IdentifyingAttributes>
<Property name="uri"/>
<Property name="PTC_DD_LANGUAGE"/>
<Property name="SIM.authoringLanguage"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="orgName"/>
<Property name="CADName"/>
<Property name="SIM.lastUpdated"/>
<Property name="SIM.lastUpdatedSrc"/>
<Property name="SIM.lastUpdatedMeta"/>
<Property name="checksum"/>
<Property name="collectedDate"/>
</OtherAttributes>
</Type>
<Type name="ILLUSTRATION">
<IdentifyingAttributes>
<Property name="uri"/>
<Property name="PTC_DD_LANGUAGE"/>
<Property name="SIM.authoringLanguage"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="orgName"/>
<Property name="CADName"/>
<Property name="SIM.lastUpdated"/>
<Property name="SIM.lastUpdatedSrc"/>
<Property name="SIM.lastUpdatedMeta"/>
<Property name="checksum"/>
<Property name="collectedDate"/>
</OtherAttributes>
</Type>
<Type name="EMBEDDEDIMG">
<IdentifyingAttributes>
<Property name="uri"/>
<Property name="PTC_DD_LANGUAGE"/>
<Property name="SIM.authoringLanguage"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="CADName"/>
<Property name="orgName"/>
<Property name="SIM.lastUpdated"/>
<Property name="SIM.lastUpdatedSrc"/>
<Property name="SIM.lastUpdatedMeta"/>
<Property name="checksum"/>
<Property name="collectedDate"/>
</OtherAttributes>
</Type>
<Type name="P2CRELATION">
<IdentifyingAttributes>
<Property name="objNumber"/>
</IdentifyingAttributes>
</Type>
<Type CascadeSeq="CSV" name="GROUP">
<IdentifyingAttributes>
<Property name="uri"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="objNumber"/>
<Property name="orgName"/>
</OtherAttributes>
</Type>
<Type CascadeSeq="CSV" name="PARTSLIST">
<IdentifyingAttributes>
<Property name="uri"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="objNumber" reference="number"/>
<Property name="orgName"/>
<Property name="PTC_DD_LANGUAGE_TL"/>
</OtherAttributes>
</Type>
<Type>
<IdentifyingAttributes>
<Property name="uri"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="objNumber" reference="number"/>
<Property name="orgName"/>
</OtherAttributes>
</Type>
</Source>
<Source SourceID="2" name="KIT" priority="2">
<Type>
<IdentifyingAttributes>
<Property name="objNumber"/>
<Property name="orgName"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="uri"/>
</OtherAttributes>
</Type>
</Source>
<Source SourceID="1" name="SAP" priority="1">
<Type>
<IdentifyingAttributes>
<Property name="objNumber" xpath="OBJNUMBER"/>
<Property name="orgName" xpath="ORGNAME"/>
</IdentifyingAttributes>
<OtherAttributes>
<Property name="uri"/>
</OtherAttributes>
</Type>
</Source>
</IMANConfig>