与其他应用程序集成 > 与 Creo Elements/Direct Model Manager 集成 > 配置 > 配置发布
  
配置发布
GatewayConfig.xml 文件
用于发布的配置在 <管理器服务器安装>\windchill\GatewayConfig.xml 文件中指定。GatewayConfig.xml 文件允许您灵活控制 Creo Elements/Direct Model Manager 对象到 Windchill 对象的映射。对于特殊要求,它甚至允许您在不同级别插入自定义的实施。
要修改 GatewayConfig.xml 文件,请编辑该文件并在 Windows 服务面板中重新启动 Creo Elements/Direct Model Manager 服务。自定义的配置也可保存在 CustomGatewayConfig.xml 文件中 - 如果存在此文件,其优先级高于默认的 GatewayConfig.xml 文件。
一般控制参数
参数
说明
默认
ScanStructure
控制导出是否遵循结构以收集所有部件
true
WriteDocuments
控制是否写入 Windchill 文档
true
WritePartUsageLinks
控制是否写入部件使用关系链接 (如 BOM 结构)
true
WritePartDescribeLinks
控制是否将文档链接至部件
true
WriteContentItems
控制是否写入内容项 (缩略图、文件附件)
true
Incremental
设置为“真”时,如果 Windchill数据更新,之前发布的未更改部件或模型将不会写入至 IXB
true
WriteRepresentationForRoot
设置为 "if_exists" 时,可供顶级主数据对象使用的可视项作为表示附加至 Windchill 部件。
if_exists
WriteRepresentationForChildren
设置为 "if_exists" 时,可供子主数据对象使用的可视项作为表示附加至 Windchill 部件
if_exists
指定 Windchill 目标产品 - <WindchillConfiguration> 部分
以在 Model Manager 端触发作业的用户的名义将数据导入到 Windchill 中。
参数
说明
Organization
Windchill 组织名称
Product
Windchill 产品名称 - 不可与存储库同时使用
存储库
Windchill 存储库名称 - 不可与产品同时使用
控制版本化
当数据在 Creo Elements/Direct Model Manager 中发生更改且必须要在 Windchill 中更新时,应用以下版本化规则:
1. 如果主数据对象下方的结构发生更改,则在 Windchill 中创建 Windchill 部件的新小版本。
2. 如果模型或绘图的几何发生更改,则创建相应 Windchill 文档的小版本。
3. 如果模型或绘图的新次要或主要版本是在 Creo Elements/Direct Model Manager 中创建的,则创建相应 Windchill 文档的新小版本。
4. 如果仅主数据、模型或绘图的属性值发生更改,则根据配置参数 "IterateOnAttributeChanges" 来迭代和覆盖 Windchill 中的相应对象。
5. 如果新建或修改的文件附件在 Creo Elements/Direct Model Manager 中可用,则在 Windchill 中附加或更新此文件,而不创建新的小版本。
6. 如果在 Creo Elements/Direct Model Manager 中创建新的主数据修订版本,则会在 Windchill 中创建 Windchill 部分的新版本
* 
这仅适用于在 Creo Elements/Direct Model Manager 中启用“主数据修订”的情况 - 有关详细信息,请参阅 Creo Elements/Direct Model Manager 帮助。
利用 GatewayConfig.xml 文件,您可以定义在将文档保存至 Creo Elements/Direct Model Manager 且使用覆盖选项时,新的小版本如何传播至关联项。例如,模型几何发生更改时,规则 2 适用并会创建 Windchill 文档的新小版本。"IteratePartOnNewDocumentIteration" 版本化开关用于控制是否应在链接至本文档的 Windchill 部件上自动触发新小版本。
用于版本化的配置参数
参数
说明
默认
IterateDocumentOnNewPartIteration
设置为“真”时,将创建所有 Windchill文档子项的新小版本并将其链接至 Windchill 部件的新小版本
false
IterateOnAttributeChange
设置为“真”时,只要 Model Manager 对象中的任一属性发生更改,即会创建 Windchill对象的新小版本。如果设置为“假”,则会更新和覆盖现有的 Windchill对象。
(适用于 Creo Elements/Direct Model Manager 18.1 M060 及更高版本)
true
IteratePartOnNewDocumentIteration
设置为“真”时,只要创建链接的 Windchill文档的新小版本,即会创建 Windchill 部件的新小版本 (例如,由于规则 2、3 或 4)
true
ReviseChildrenOnNewPartRevision
设置为“真”时,将创建所有 Windchill部件子项的新修订版本并将其链接至 Windchill 部件的新修订版本
* 
这仅适用于在 Model Manager 中启用“主数据修订”的情况。
false
控制文档创建
CadDocSelector 允许您选择哪些链接至主数据对象的 Model Manager 文档会发布到 Windchill,并链接至相应的 Windchill 部件。DefaultCadDocSelector 根据文档类型来选择文档
参数
说明
默认
指定待传输文档的 Model Manager 业务类。
控制编号生成
Windchill Gateway for Creo Elements/Direct Model Manager 使用 Windchill 编号生成器将部件或文档编号分配给新的 Windchill 部件或文档。通过向 Windchill 发送 HTTP 请求生成编号。默认情况下,将使用基于协议的验证方案 (基本 HTTP 验证),而与服务器的验证配置无关。对于 Windchill 10.1 及更高版本,也可以使用未经验证的请求。要完成此操作,必须在 Windchill 中将 Model Manager 服务器注册为可信主机,且必须在 GatewayConfig.xml 中配置 com.osm.windchill.rng.AnonymousHttpNumberReader
系统以块的形式检索和管理编号以获得更佳性能。当网关请求一个编号块但未在发布操作中使用所有这些编号时,编号会保存下来并用于下一个发布操作。默认情况下,Windchill Gateway 将未使用的编号存储在一个文件中。也可以实施不同的持续性方法。
参数
说明
默认
NumberBlockSize
在一个请求中从 Windchill 所请求的 ID 数。这些编号被拦截在 Windchill 端并用于网关。
100
NumberReader
Windchill 检索新部件或文档的编号。将 com.osm.windchill.rng. AnonymousHttpNumberReader 用于未经验证的请求。
com.osm.windchill.rng.ProtocolBasedHttpNumberReader
NumberStore
<File> 标记允许您指定存储未使用编号的文件的名称。路径可以是绝对路径或相对于 <服务器>\windchill 目录的路径。
windchill 目录中的 NumberStore.xml
控制用户映射
以在 Model Manager 端触发作业的用户的名义将数据导入到 Windchill 中。这需要将 Creo Elements/Direct Model Manager 用户映射至 Windchill 用户。未指定映射时,将用默认用户导入数据。Windchill Gateway for Creo Elements/Direct Model Manager 提供一个简单实施,用于在 XML 文件中指定此类映射。也可以实施不同的映射方法 (例如,从数据库检索用户映射信息)。
参数
说明
默认
UserMapStore
<File> 标记允许您指定存储映射的文件的名称。路径可以是绝对路径或相对于 <服务器>\windchill 目录的路径。
windchill 目录中的 UserMap.xml
在下列 XML 格式中指定映射:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<UserMap>
<User ModelManagerUser="medmgr">wcadmin</User>
<User ModelManagerUser="user1">demo</User>
</UserMap>
指定 Windchill 配置 - <Windchill Configuration> 部分
设置 Windchill - 用于映射的特定参数如下:
参数
说明
默认
FolderPath
创建对象的 Windchill 文件夹的路径
/Default
DomainName
Windchill 对象的域名
/Default
Department
Windchill 对象的部门
ENG
VersionLevel
要用于 Windchill 对象的版本等级
1
UfidRepositoryID/UfidDomain
Creo Elements/Direct Model Manager 生成的 Windchill 对象 UFID 的元素
ModelManagerGateway
配置 Windchill 部件 - <WTPartFactory> 部分
本节包括用于控制 Windchill 部件的值和附件的条目
参数
说明
默认
UfidGenerator
请参阅自定义一节
“无”
NumberGenerator
请参阅自定义一节
“无”
StateMap
定义 Creo Elements/Direct Model Manager 生命周期状态至 Windchill 状态的映射
如 <Map> 标记中所示。未明确列出的所有 Creo Elements/Direct Model Manager 状态均映射至 <DefaultState>
属性
请参阅属性映射一节
“无”
IBA
请参阅属性映射一节
“无”
ContentItems
请参阅配置内容项 – <ContentItems> 部分一节
JPEG 缩略图
表示
请参阅配置表示 – <Representations> 部分一节
适用于 3D:PVZ
适用于 2D:DXF
配置 Windchill 文档 - <WTDocumentFactory> 部分
本节包括用于控制 Windchill 文档的值和附件的条目
参数
说明
默认
UfidGenerator
请参阅自定义一节
“无”
NumberGenerator
请参阅自定义一节
“无”
StateMap
定义 Creo Elements/Direct Model Manager 生命周期状态至 Windchill 状态的映射
如 <Map> 标记中所示。未明确列出的所有 Creo Elements/Direct Model Manager 状态均映射至 <DefaultState>
属性
请参阅属性映射一节
“无”
IBA
请参阅属性映射一节
“无”
ContentItems
请参阅配置内容项 – <ContentItems> 部分一节
JPEG 缩略图
Model Manager 链接文件 (MMLF)
表示
请参阅配置表示 – <Representations> 部分一节
“无”
配置 Windchill 部件使用关系链接 - <WTPartUsageLinkFactory> 部分
本节包括用于控制 Windchill 部件使用关系链接的值的条目:
参数
说明
属性
请参阅属性映射一节
IBA
请参阅属性映射一节
配置内容项 - <ContentItems> 部分
本节描述附加至 Windchill 部件或 Windchill 文档的文件的列表。特定格式必须已经存在于 Creo Elements/Direct Model Manager 中。
参数
说明
FileType
在 wmconf.xml 的 <FileType> 元素中指定的文件类型
属性
应用于内容项以进行评估的属性。请参阅属性映射一节
配置表示 - <Representations> 部分
本节描述附加至 Windchill 部件或 Windchill 文档的表示的列表。特定格式必须已经存在于 Creo Elements/Direct Model Manager 中。
参数
说明
FileType
在 wmconf.xml 的 <FileType> 元素中指定的文件类型
属性
应用于表示以进行评估的属性。请参阅属性映射一节
配置适配器 - <Adapter> 部分
本节包含网关服务和 MOM 服务器分别与 Windchill 进行通信的设置。这些值只能通过运行 Creo Elements/Direct Model Manager.server 配置工具来修改。
自定义
可使用自定义的实施替换导出操作的默认实施。有关编写 自定义代码的详细信息,请参阅 Model Manager Customization GuideCreo Elements/Direct Model Manager (《Model Manager 自定义指南》)。
使用自定义的实施替换特定操作涉及两个步骤:
1. 实施为此操作所定义的界面。新实施通常衍生自原始 Java 类,并通过覆盖相应方法来添加或修改某些步骤。
2. 在 GatewayConfig.xml 的 "java_class" 属性组成部分中注册一个新实施。
例如,如果想要更改用于选择待导出文档的运算法则
1. 实施 IDocumentSelector 界面
public class MyDocumentSelector extends XmlConfigurable implements IDocumentSelector
{
….
}
2. 在 GatewayConfig.xml
<DocumentSelector java_class="com.osm.windchill.export.MyDocumentSelector ">
...
</DocumentSelector>
的 <DocumentSelector> 元素中注册新实施
下表显示可替换的组成部分的列表。
XML 元素
说明
要实施的界面
默认实施
<Exporter>
定义主要导出步骤
com.osm.integration.export.IExporter
com.osm.windchill.export.DefaultWindchillExporter
<VersioningRule>
定义用于确定何时创建新 Windchill 修订版本或小版本的规则
com.osm.windchill.export.IVersioningRule
com.osm.windchill.export.DefaultVersioningRule
<DocumentSelector>
选择要映射到 Windchill 文档的文档
com.osm.windchill.export.IDocumentSelector
com.osm.windchill.export.DefaultDocumentSelector
<NumberReader>
收集新 Windchill 部件或文档的编号 (默认实施)
com.osm.windchill.rng.INumberReader
com.osm.windchill.rng.WindchillNumberReader (通过 HTTP 请求从 Windchill 查询编号)
<NumberStore>
被拦截在 Windchill 中、但尚未使用的编号的持续性方法
com.osm.windchill.rng.INumberStore
com.osm.windchill.rng.XMLNumberStore (将用户映射存储在服务器文件系统上的 XML 文件中)
<UfidGenerator>
为新的 Windchill 部件或 Windchill 文档生成 UFID
com.osm.windchill.export.IUfidGenerator
com.osm.windchill.export.DefaultUfidGenerator
<UserMapStore>
用户映射信息的持续性方法
com.osm.windchill.mapping.IUserMapStore
com.osm.windchill.mapping.XMLUserMapStore (将用户映射存储在服务器文件系统上的 XML 文件中)
<NumberGenerator>
生成新 Windchill 部件或 Windchill 文档的编号
com.osm.windchill.rng.INumberGenerator
com.osm.windchill.rng.WindchillNumberGenerator (分配从 Windchill 检索的数字,另请参阅 <WindchillNumberManager>
Windchill 中关闭自动编号时,编号生成操作失败 (进而导致导出操作失败)。在此情况下,可在 <AutonumberingOffHandler> 元素中指定一个备用编号生成器。
<StateMap>
定义 Creo Elements/Direct Model Manager 生命周期状态至 Windchill 状态的映射
com.osm.windchill.mapping.ILifecycleStateMap
com.osm.windchill.mapping.DefaultLifecycleStateMap (应用在 GatewayConfig.xml 中指定的映射)
下列组成部分负责以 IXB 格式创建实际的 XML 文件。可在 com.osm.windchill.wt 包中找到所有界面和实施。
XML 元素
说明
要实施的界面
默认实施
<WTPartFactory>
创建 Windchill 部件 XML 文件
IWTPartFactory
DefaultWTPartFactory
<WTDocumentFactory>
创建 Windchill 文档 XML 文件
IWTDocumentFactory
DefaultWTDocumentFactory
<WTPartUsageLinkFactory>
创建 Windchill 部件使用关系链接 XML 文件
IWTPartUsageLinkFactory
DefaultWTPartUsageLinkFactory
<WTPartDescribeLinkFactory>
创建 Windchill 部件说明链接 XML 文件
IWTPartDescribeLinkFactory
DefaultWTPartDescribeLinkFactory
<WTContentItemFactory>
创建包含在 Windchill 部件或 Windchill 文档 XML 文件中的内容项参考
IWTContentItemFactory
DefaultWTContentItemFactory
<WTContentItemFileFactory>
创建附加至 Windchill 部件或 Windchill 文档的实际内容项文件
IWTContentItemFileFactory
DefaultWTContentItemFileFactory
<RepresentationFactory>
创建表示 XML 文件
IRepresentationFactory
DefaultRepresentationFactory
<RepresentationJarFactory>
创建附加至 Windchill 部件或 Windchill 文档的实际表示
IRepresentationJarFactory
DefaultRepresentationJarFactory
属性映射
Windchill 对象的属性通过映射以下列格式在 GatewayConfig.xml 中指定:
<Windchill 属性名称>%Model Manager 属性名称%</Windchill 属性名称>
Creo Elements/Direct Model Manager 属性可以是数据库属性,也可以是对应 Java 业务对象中的属性。也可以指定多个 Creo Elements/Direct Model Manager 源属性。
下列示例为从 Creo Elements/Direct Model Manager "Part" 属性到 Windchill "WTPart" 属性的映射:
1. <DefaultUnit>ea</DefaultUnit>
Windchill 部件中的 DefaultUnit 属性设置为常数值 "ea"。
2. <Name>%Name%</Name>
Windchill 部件的 Name 属性通过在 Creo Elements/Direct Model Manager 部件对象上评估 getName 方法来确定。
3. <Name>%DESCRIPTION%</Name>
Windchill 部件的 Name 属性通过评估 MASTERDATA 对象的 DESCRIPTION 属性来确定。
4. <Name>%Name% - %ClassName%</Name>
Windchill 部件的 Name 属性由 Creo Elements/Direct Model Manager 对象的 getName 和 getClassName 值构成。
可通过目标元素中的附加 XML 属性来进一步改进映射。
XML 属性
说明
允许值
默认
类型
源对象中的属性的类型
布尔值、整数、浮点数、日期、字符串
字符串
source_class
仅在 Creo Elements/Direct Model Manager 源对象具有此 Java 类型时,该映射才适用
Java 类名称
java.lang.Object
格式
值的格式字符串
Java 格式 (仅用于日期值)
max_length
属性值的最大长度
无限制
如果需要特殊映射,可指定每个属性的自定义实施 (例如,PartType 属性规范)。
XML 元素
说明
要实施的界面
默认实施
<属性名称>
为单个属性定义映射
com.osm.windchill.mapping.IAttributeMap
com.osm.windchill.mapping.WTAttributeMap
在高级别上,也可以自定义所有属性的映射运算法则。
XML 元素
说明
要实施的界面
默认实施
<Attributes>
定义如何为 Windchill 对象设置属性值
com.osm.windchill.mapping.IAttributeMapper
com.osm.windchill.mapping.WTAttributeMapper
<Ibas>
定义如何为 Windchill 对象设置 IBA 值
com.osm.windchill.wt.IIbaFactory
com.osm.windchill.wt.IbaFactory
选择规则
网关允许建立定期检查 Creo Elements/Direct Model Manager 元素更改并将更改发送至 Windchill 的预定任务。任务配有用于选择所有待检查元素的规则。排程到期时,系统会评估规则并检查产生的元素,而且有可能进行更新。默认情况下,网关会提供几个任务类型和常见选择规则。可轻松地自定义可用规则。此外,可添加新任务和附加选择规则。
选择规则
说明
“按名称”
指定按名称样式来选择对象,支持通配符 *
“按已保存的搜索”
指定按用户之前定义的已保存搜索来选择对象
“在包中”
指定在包中选择所有对象
“在项目中”
指定在项目中选择所有对象
“修改时间”
指定选择在最近 <由用户指定> 天内修改的对象。
“发布时间”
指定选择在最近 <由用户指定> 小时内发布的对象。
添加任务类型及新选择规则
可通过在 taskagent\jobconfig 目录中添加或删除 XML 配置文件来添加或删除任务类型 (请参阅 Model Manager Customization Guide (《Model Manager 自定义指南》) 中的 Task Agent Customization (任务代理自定义) 一节)。访问完整 SQL 查询语法的附加规则示例可在 taskagent\jobconfig\samples 中找到。
按下列步骤添加新任务:
1. 创建新的作业配置 XML 文件。使用从 windchill 开始的作业类型。
2. 将 XML 文件添加至服务器 taskagent\jobconfig 目录。
3. 通过运行 clntwin\gatewaybuild.bat 脚本创建一个新客户端部署包。