分布目标类
ESITarget
分布目标表示唯一的目标位置。每个目标位置都保留在 Windchill 数据库中,并且 ESITarget 对象表示持续的目标位置。类 ESITargetwt.fc.Item 的子类,继承了项类的 Windchill 持久化和访问控制功能。此外,它还执行接口 wt.type.Typedwt.notify.Notifiable,以便允许创建可变类型扩展,并分别支持对象事件通知。
ESITarget 对象有七个模型化属性。提供的 namenumberdescription 属性适用于 ERP Connector 分布目标分配用户界面。名称属性的值最多可包含 450 个字符,而编号属性的值最多可包含 32 个字符。说明属性的值最多可包含 2048 个字符。名称和编号属性是必填项。说明属性可以为空。此外,每个 ESITarget 对象在数据库中的编号属性必须具有唯一值。defaultForContext 属性指示给定 ESITarget 对象是否为在其中创建该对象的容器的默认对象。如果设置为 true,则表示该 ESITarget 对象是关联容器的默认对象;默认情况下设置为 false。status 属性指示给定 ESITarget 对象是否处于启用状态。状况值由 ESITargetStatusType 类定义,该类是 wt.fc.EnumeratedType 的扩展。存储在枚举类型中的 active 值表示该 ESITarget 对象处于启用状态;inactive 值表示目标处于未启用状态,这意味着它不能参与 ESI 事务处理。默认情况下,状况属性设置为“启用”。taskURI 属性包含将用于向所需目标位置传送 ESI 响应消息的 Info*Engine 任务的路径。默认情况下,属性设置为 com/ptc/windchill/esi/export/ExportToFile.xmlcom/ptc/windchill/esi/export/ExportToFTP.xmlcom/ptc/windchill/esi/export/ExportToSMTP.xml,具体取决于目标位置为文件、FTP 还是电子邮件目标。responseMetaInfoPath 属性包含 ESI 响应元信息文件的路径,该文件用于确定将为分布目标生成的响应消息的格式。默认情况下,此属性设置为 $CODEBASE$/com/ptc/windchill/esi/ESIResponseMetaInfo.xml。有关如何修改此文件以获取响应消息的自定义版本的信息,请参阅修改 ESI 响应元信息文件一节。
* 
默认情况下,通过 ESI 响应发送的 <TargetID><Destination> 元素均具有适用分布目标的编号属性。上述元素的内容分别使用 ESITargetUtility 类的 getDestinationId() 和 getTargetId() API 获取,这些将在建立分布目标分配类中介绍。
除了上述模型化属性外,ESITarget 对象还具有多个可变属性,这些可变属性的值决定了将确切地构成响应消息的数据。例如,属性 ESIPart_AlternateFlag 设置为 true 时,可确保在生成分布目标的响应消息时处理与正在发布的部件关联的全局替换部件。有关此类属性 (与给定业务对象类型相关) 及其说明的列表,请参阅发布变更通告发布 BOM发布部件发布工艺计划发布资源小节。
为了能够将特定于给定 ERP Connector 目标位置的属性存储在 ESITarget 对象上,ERP Connector 默认提供了三个可变类型扩展名 - 即:eSIFileTarget、ESIFTPTarget 和 ESIEmailTarget。有关此类属性的信息,请参阅 ERP Connector 联机帮助。
ERP Connector 提供用于定义 ESITarget 对象的用户界面 - 可通过“站点-” > “实用程序”“组织” > “实用程序”页面上的“管理分布”用户界面选项进行访问。
* 
ESITarget 属性在用户界面中以其 display names (而不是其内部名称) 显示 - 例如,responseMetaInfoPath 属性以名称 ESI Response Meta Information File Path 显示。在大多数情况下,应该能够轻松确定给定显示名称确切引用哪些属性。
Windchill ESI 服务还提供了以下方法,用于:
定义 ESITarget 对象。
删除 ESITarget 对象。
WTOrganization 对象与 ESITarget 对象关联。
移除 WTOrganization 对象与 ESITarget 对象之间的关联。上述所有模型化属性都具有公用 setter 和 getter 方法。
有关类中可用属性和方法的详细信息,请参阅 Windchill 版本特定的 Java 文档。
* 
至于属性 defaultForContext,公用 getter 方法名为 DefaultForContext。它仅返回属性中的值。
ESITargetAssignmentLink
通过创建 ESITarget 可持续对象和 Windchill 之间的持续关系,可完成分布目标分配。ESITargetAssignmentLink 对象表示这些关系。ESITargetAssignmentLinkwc.fc.ObjectToObjectLink 类的子类,并继承了该类的持续关系功能 (请参阅图:使用 Windchill ESI 呈现器)。
ESITargetAssociation
Windchill ESI 服务方法通常需要维护 Windchill 可持续对象和 ESITarget 临时对象之间的关系。关系可以保留在数据库中,但并不需要保留。ESITargetAssociation 接口为 Windchill ESI 服务方法提供了关系管理功能。方法无需知道关系是否持续。一些公开可用的 Windchill ESI 服务方法可接受 ESITargetAssociation 对象的集合作为自变量。这些方法通常会返回 ESITargetAssociation 对象的集合。
如果已知关系是持续关系,则创建 ESITargetAssignmentLink 对象或从 Windchill 持续对象管理器创建获取该对象 (请参阅图:分布目标分配对象)。
ESIQueryTargetAssociation
如果不知道关系为持续关系,则 ESIQueryTargetAssociation 对象由 Windchill ESI 服务的调用者创建 (请参阅图:使用 Windchill ESI 呈现器)。Windchill ESI 服务 API 的几种方法都需要 ESITargetAssociation 的实例作为自变量。提供 ESIQueryTargetAssociation 类旨在方便需要提供此类自变量的对象。使用 ESIQueryTargetAssociation 的对象不需要在数据库中创建任何对象。
这对您有帮助吗?