Teamcenter学习平台正式上线(https://www.plmvision.top),安装配置实施开发源码仓库,全套学习教材!关注公众号发送“二维码“咨询加入!
如果说 Item 和 Dataset 是 PLM 的皮肉,那么
一、 PSOccurrence:它不是简单的“父子表”
为什么需要这个中间层?
Quantity (数量) :不仅是整数,还支持小数(如胶水、油漆)。Notes (注释) :比如“安装时需涂抹润滑油”。这些信息只属于这次装配,不属于螺栓本身。Variant Condition (配置条件) :这是 BOM 变型管理的核心。
TC 的 BOM 是“超级 BOM”(150% BOM)。所有可能的配置都在一棵树上。 PSOccurrence 上挂载了逻辑表达式,例如 IF (Engine == V8 AND Market == US)。只有当配置器满足这些条件时,这条 BOM 行才会“显形”,否则它就像幽灵一样不可见。
二、 Transform Matrix:数字样机的空间魔法
4×4 矩阵的奥义
Translation (平移) :X, Y, Z 坐标。Rotation (旋转) :绕轴旋转的角度。Scaling (缩放) :零部件的大小比例(虽然工业上极少用缩放)。
相对坐标 vs. 绝对坐标
它只记录“车轮”相对于“车桥”的位置。 它不记录“车轮”相对于“地球原点”的位置。
三、 BOM View 的多维世界:EBOM、MBOM 与 SBOM
Design BVR (EBOM) :结构按“功能”划分。关注的是设计意图。Manufacturing BVR (MBOM) :结构按“装配工艺”划分。关注的是生产顺序,可能会添加虚拟件、工艺合件。Service BVR (SBOM) :结构按“备件包”划分。关注的是维修便利性。

四、 精确(Precise)与非精确(Imprecise):TC 的时间机器
1. 什么是非精确(Imprecise)?—— “只要最新的”
定义 :PSOccurrence 指向的是 Item(对象本身),而不是具体的 ItemRevision。逻辑 :系统加载 BOM 时,会动态去抓取该 Item 的最新版本 (或符合规则的版本)。场景 :WIP(在研)阶段 。小王设计发动机,小李设计底盘。小王把底盘挂进总装 BOM。小李每天都在改底盘(出 A 版、B 版、C 版)。 因为是非精确引用,小王每天打开总装图,看到的都是小李最新的底盘。数据是活的。
2. 什么是精确(Precise)?—— “冻结历史”
定义 :PSOccurrence 强行指向具体的 ItemRevision(例如 Part-001/A)。逻辑 :无论 Part-001 后来升级到了 Z 版,这条 BOM 行永远指向 A 版。场景 :Release(归档/发布)阶段 。设计定型了,要发给工厂生产。必须把 BOM 里的每一个零件都“钉死”。 这时的 BOM 是一张历史快照。如果不这样,工厂生产到一半,系统自动变成了新版图纸,会导致严重的实物不符。
3. Revision Rule(版本规则):时光穿梭机
规则 A (Working) :优先找“正在工作”的版本,没有则找“最新发布”的。 ->非精确加载 规则 B (Released) :只找“已发布”的版本,忽略正在修改的。规则 C (As Saved) :找当初保存时锁定的那个版本。 ->精确加载
偷师要点:如何构建高级 BOM 引擎
区分“结构”与“内容” :
不要把 BOM 关系直接写在 Part 表里。 必须建立独立的 Occurrence 表。
在代码层面(API),BOM 的展开(Expand)操作必须接受一个“规则参数”。
在 UI 上,允许用户“锁定”某一行(转化为 Precise),或“解锁”某一行(转化为 Imprecise)。这是工程师最常用的功能。
空间上 :通过变换矩阵,构建数字样机。时间上 :通过精确/非精确与版本规则,在“最新设计”与“历史归档”之间自由切换。