2. Windchill零部件数据模型
在Windchill中,零部件不是一张“表里的记录”,而是一组彼此关联、各司其职的对象。理解这套数据模型,是后续做分类、标准件库治理、属性规范、变更控制的前提。如果只把WT Part当成一个物料编号来用,很快会遇到“同一个零件为什么有多个版本”“为什么改了属性却看不到生效”“为什么BOM里挂的是旧版本”等问题。本节围绕WT Part、部件主数据、版本、视图、生命周期五个核心对象,说明它们各自承担什么、通过什么关系连接、在实际操作中如何观察和判断。
一、WT Part是“业务对象”,不是“数据表”
WT Part(wt.part.WTPart)是Windchill中表示零部件的核心业务对象。它承载的是“这个零件是什么”的业务语义:编号、名称、类型、来源、单位、材料、分类归属等。真正让WT Part区别于普通数据库记录的,是它同时具备三件事:一是可被BOM引用,二是可挂载CAD文档、图纸、规格书等关联内容,三是可参与生命周期和变更流程。
在Windchill的数据模型中,WT Part本身并不直接保存所有版本的数据。它更像一个“主对象”,向下挂接多个版本对象(WTPartMaster与WTPart的关系)。WTPartMaster保存的是跨版本不变的标识信息,例如零件编号;而每一个WTPart实例则对应一个具体版本,保存该版本下的属性值、关联关系和状态。理解这一层“主数据—版本实例”的分离,是理解后续所有行为的关键。
二、部件主数据:跨版本不变的“身份”
部件主数据(Part Master)解决的是“同一个零件在不同版本之间如何被识别为同一个零件”。它通常包含零件编号、名称、类型等相对稳定的信息。编号一旦确定,通常不随版本变化;名称、描述等属性可以在不同版本中不同,但主数据层面仍指向同一个零件身份。
实际使用中,主数据的作用体现在几个地方:搜索时按编号能聚合出所有版本;BOM中引用的是主数据身份,但具体展开时选择某个版本;变更时针对主数据发起,再落到具体版本上。如果主数据被错误地拆成两个编号,后续就会出现“同一零件两套历史”的治理难题。因此标准件库治理中,编号规则和主数据唯一性往往是最先要约束的。
三、版本:同一零件的不同“快照”
版本(Version)是WT Part在某一时刻的完整状态快照。Windchill中常见的版本标识由“版本序列+版本号”组成,例如A.1、A.2、B.1。版本序列通常对应一次大的设计阶段或变更阶段,版本号对应同一序列内的小修订。版本不是简单覆盖,而是保留历史,使旧版本仍可被引用、追溯和对比。
版本与主数据的关系可以这样理解:主数据是“这个零件”,版本是“这个零件在某个时间点的样子”。当工程师修改属性、替换关联文档、调整BOM结构时,系统不会直接改掉旧版本,而是产生新版本。这样,已经发布出去的旧版本仍然可查、可用,新版本则承载新的设计意图。
四、视图:同一版本在不同业务视角下的表达
视图(View)是Windchill中容易被忽略但非常关键的概念。同一个WT Part版本,可以在不同视图下呈现不同的属性集合和关联内容。常见视图包括设计视图、制造视图、采购视图等。设计视图关注CAD模型、设计属性;制造视图关注工艺、材料、制造属性;采购视图关注供应商、采购规格。
视图不是“复制一份数据”,而是同一版本对象在不同业务语境下的属性映射和关联扩展。例如,一个零件在设计视图下可能只有设计编号和CAD文档,在制造视图下则补充了制造编号、工艺路线和工装信息。视图之间通过“视图关联”建立对应关系,使同一零件在不同业务环节中既能保持身份一致,又能承载各自需要的属性。
五、生命周期:控制版本“能不能用、怎么用”
生命周期(Life Cycle)是挂在WT Part上的状态机。它定义了一个零件从创建到报废经历哪些状态,例如“工作中—审批中—已发布—已冻结—已废弃”,以及状态之间如何迁移、谁有权迁移、迁移时触发什么动作。生命周期不改变零件的几何或属性,但它决定这个版本在当前状态下是否可被BOM引用、是否可被下游使用、是否允许修改。
生命周期与版本的关系是:版本是“内容”,生命周期是“内容的状态”。一个版本可以处于“工作中”,此时允许修改;一旦进入“已发布”,通常锁定关键属性,只能通过变更流程产生新版本。这样,版本负责历史留痕,生命周期负责使用控制,两者配合才能保证数据既完整又可控。
六、对象之间的关系与实操判断
把五个对象放在一起看,关系可以概括为:主数据定义“是谁”,版本定义“哪一版”,视图定义“从哪个业务角度看”,生命周期定义“当前能不能用”。在Windchill中打开一个零件,通常先看到主数据信息,再选择具体版本,然后切换视图查看不同属性,最后看生命周期状态判断是否可引用。
实际治理中,有几个判断点值得注意。第一,编号是否唯一对应一个主数据。如果同一编号下出现多个主数据,说明编号规则或导入过程有问题。第二,版本序列是否清晰。A.1到A.2是小修订,A到B是大阶段,如果混用会导致版本历史难以阅读。第三,视图是否完整。设计视图有数据但制造视图为空,说明下游属性没有维护,BOM展开到制造环节时可能缺信息。第四,生命周期状态是否与业务阶段匹配。已发布版本不应再被直接修改,如果需要改,应通过变更流程产生新版本。
理解这套模型后,后续做分类、属性规范、标准件入库、变更控制时,就能清楚每一步操作落在哪个对象上:改属性是改版本,换视图是换业务视角,发布是改生命周期状态,而编号和身份始终由主数据守住。这样,数据模型不再是抽象概念,而是日常操作中可观察、可判断、可治理的具体对象。