> ## Documentation Index
> Fetch the complete documentation index at: https://docs.garmentflow.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 物料表、成本表与文件版本

> 款式的文件如何版本控管、如何核准、如何绑定到所运行的订单——让一个款式服务多张订单在实务上安全运作的保证。

一个<Tooltip tip="可重复使用的产品记录，拥有其物料表、成本表与制造单。">[款式](/zh-Hans/reference/glossary#style)</Tooltip>的
文件——它的物料表与成本表——是会随时间变动、且跨多张订单共用的活记录。本页说明它们如何构成、
版本控管如何让共用成果保持安全，以及核准与复制流程如何让文件向前推进，同时不波及正在进行中的工作。

本页是版本控管模型与核准流程的正规所在地。[以款式为中心的模型](/zh-Hans/concepts/style-centric-model)
做摘要并链回此处；[物料表页面](/zh-Hans/modules/bom)与[成本表页面](/zh-Hans/modules/cost-sheet)
则是对象参考。

## 心智模型

款式是可重复使用的产品记录。它的物料表与它的成本表并非单一份文件——它们是编号的修订版本所构成的序列。
每一个有意义的变更都会保存为一个新的修订版本，而旧版本则完整保留它原本的样子。
每张运行此款式的订单对应到一个特定的修订版本，因此款式可以持续演进，
而每张订单也都继续读取它当初所构建于其上的版本。

三个观念撑起这个模型：

* **版本是某个款式文件在某一时间点，编号、已保存的修订版本。**
* **每张订单各自绑定一个自己所运行的版本**——让为某张订单所做的变更，
  不会从另一张底下抽走地毯。
* **核准是下游工作所等待的信号。** 核准把某个版本标示为该订单的定稿，
  并为采购、就绪引擎与生产打开闸门。

## 物料表，以业务语言说明

一个款式的<Tooltip tip="物料表——一个款式由哪些面料与辅料构成的清单。">[物料表](/zh-Hans/reference/glossary#bom-bill-of-materials)</Tooltip>是
这个款式由什么构成的权威逐件清单——它的面料、它的辅料（拉链、纽扣、标签、吊牌等等），
以及其他组成一件成衣的零部件。每一行记录物料是什么、位于成衣的哪个部位、单位与每件用量、
该行采购所对应的供应商、该行所适用的
<Tooltip tip="款式生产时所采用的特定颜色或颜色组合。">[配色](/zh-Hans/reference/glossary#colorway)</Tooltip>，
以及一段简短的采购备注。物料表是采购、计价与就绪引擎共同读取的单一物料骨架。
完整的对象参考是[物料表页面](/zh-Hans/modules/bom)。

## 成本表，以业务语言说明

<Tooltip tip="款式的成本明细，用于报价与毛利分析。">[成本表](/zh-Hans/reference/glossary#cost-sheet)</Tooltip>是
同一份物料样貌的金钱面——每件的价格构成，并排两条字段：一边是工厂成本、一边是给客户的报价、中间则是毛利。
明细通常从物料表种出（请见下方"从物料表复制"），每行的客户加成倍率则让客户端随工厂端的构成同步演进。
成本表是您向客户报价时所定价的依据，也是款式成本分析视图所读取、用以推算毛利的来源。
完整的对象参考是[成本表页面](/zh-Hans/modules/cost-sheet)。

## 什么是文件版本

一个<Tooltip tip="款式文件（如物料表或成本表）已保存且编号的修订版本。">[文件版本](/zh-Hans/reference/glossary#artifact-version)</Tooltip>是
某个款式文件编号、已保存的修订版本。同样的模型适用于款式所拥有的每一份文件——
物料表、成本表，以及其他款式文件——因此您在某一分页学到的行为，在所有分页上都适用。

* **编号以款式、以文件为单位。** 物料表的版本号跑自己的序列（1、2、3、……），
  成本表的版本号跑另一条。某份文件的下一个版本永远是上一个的下一个整数。
* **同一时间，仅有一个当前版本。** 当您创建新版本时，它会成为当前版本；
  原本的当前版本仍完整保留且仍可打开，但失去"当前"的标记。
* **旧版本仍可读。** 一次修订并不会覆盖上一个版本；它与旧版本并陈于历史中。

您会在款式的**物料表**分页与**成本**分页看到版本列表——各自显示版本时间线与哪一个是当前版本——
以及在订单对该款式的视角内，看到该订单所运行的版本。

## 同一款式如何跨订单保持安全：每张订单的版本绑定

同一个款式可同时运行于多张
<Tooltip tip="客户承诺购买特定款式、配色与数量，并于指定日期前出货。">[订单](/zh-Hans/reference/glossary#order)</Tooltip>上——
一张正在出货的春季订单、一张正在计价的秋季返单、一张正在准备的更晚季节订单。
每张订单都需要依据自己所运行的物料表与成本表版本作业，且为某张订单所做的变更，
绝不能悄悄改动到另一张。这正是**每张订单对版本的绑定**所做的事。

* 当新的物料表或成本表版本是在某张订单的上下文下创建时，该版本会绑定到该张订单，
  订单也会重新绑定到它。同款式上其他订单不会被动到——它们仍绑定在原本的版本上。
* 从款式界面把另一个版本标记为当前版本时，所对应订单的绑定会同步推进。
* 没有绑定任何订单的版本则是**款式层级**的版本——在款式上可见，但未绑定到任何特定订单的版本链。

这个绑定正是让"一个款式跨多张订单共用"在实务上能安全运作的关键。同款式的两张订单各读自己所绑定的版本，
为某张订单的版本链所做的修订并不会出现在另一张上。

## 物料表的核准流程

物料表版本处于两种状态之一：**草稿** 或 **已核准**。

* 新版本以**草稿**起始。
* 核准**以版本、以订单为单位**——核准订单 A 的物料表版本，不会核准订单 B 的，
  即使两张订单共用同一个款式。
* 核准由具备物料表核准权限的使用者执行。
* 已核准的版本不能再次核准；该动作不会多做任何事。

### 核准会冻结什么

核准时，物料表会在每一行上捕获一个小型**快照**——供应商名称、该行的物料识别、交期，
以及核准发生的时间。快照取自核准当下的活主档，因此日后若编辑某个供应商或主档记录，
并不会改变该订单当初所核准的内容。明细的工作内容仍可在款式界面上编辑，
但快照本身会停留在签核当下的样子。

### 核准会在下游打开什么

物料表的"已核准"状态，是下游工作一直在等的信号：

* 采购在为款式的物料开立采购单时，会读取已核准的物料表。
* [就绪引擎](/zh-Hans/concepts/readiness-engine-and-ai)在评估那些依赖于敲定物料清单的闸门时，
  会把物料表视为已核准。
* 物料表上的第一次核准，会把所关联的订单从"已收订单"阶段推进到"采购中"阶段，
  让生产管线得以开始。

### 撤回核准

具备物料表核准权限的使用者，也可将已核准的物料表版本退回到**草稿**。动作会被记录下来，
但**不会**回卷已依该次核准展开的后续工作——已开立的采购单仍然在、订单的阶段推进也不会被撤销。
若要在物料表已核准并被使用后变更其值，正规做法是创建**新的**版本、编辑它、再核准它；
原本的核准与它的快照会留档，作为先前订单所运行内容的稽核轨迹。

## 成本表的核准流程

成本表版本处于三种可见状态之一：**草稿**、**部分已核准**或**已核准**。

成本表的核准是**以对象为单位**进行，而非整份文件一次签核。对象通常为**工厂**、**客户**与**内部**——
您的管理员设定您租户中哪些对象启用，且至少要有一个启用，才能创建新的成本表版本。

表头状态由对象核准行推导而来；您不直接设定它：

* 任一对象驳回 → 成本表回到**草稿**。
* 所有启用对象都核准 → 成本表为**已核准**。
* 至少一个已核准、其余仍待核准 → **部分已核准**。
* 其他情况（全部待核准） → **草稿**。

这正是为什么单一次驳回——例如工厂就成本构成提出异议——不论已有多少其他对象核准过，
都会把整张表退回到"草稿"。当原本被驳回的对象再次被核准，该行的驳回记录会被清除，
表头状态也会重新推导。

成本表的编辑仅限于**草稿**。一旦成本表离开草稿，所有表头与明细的写入都会被以"仅限草稿"消息拒绝；
要变更某个值，正规做法是创建新的版本。每个对象的核准由"成本表核准权限"管控，
而非由"正在核准哪个对象"决定——客户对象并不限给业务、内部对象也并不限给财务。

## 从物料表复制：成本表如何从物料清单开始

成本表的明细列表不必重新录入。从一张草稿成本表上，**从物料表复制**会以每一条合格的物料表明细，
为成本表种出一条成本明细。

* 仅有**面料**与**辅料**的物料表明细会被种入；成本表的工缴与杂项金额是表头上每张表的加项，
  并非被复制的明细。
* 每一条被种入的成本明细捕获自己一份的物料表明细物料识别、部位、供应商、单位与每件用量——
  从那一刻起，成本明细就是这些值的真实来源。日后变更物料表、面料主档或辅料主档，
  都**不会**改动成本明细上所说的值。
* "从物料表复制"**不需要**物料表已核准；不论状态为何，它都从款式的当前物料表复制。
  动作仅在款式没有当前物料表时才会被拒绝。
* 在同一张草稿成本表上再次执行"从物料表复制"，并不会把先前已复制过的明细复制成重复。
  它只会把上一次执行之后新增的物料表明细带进来。

同样的原则也适用于成本表的表头：一旦成本表进入**已核准**，它的值便不可再编辑。
要变更某个值，请创建新的版本，并在新版本上编辑。

## 锁定的三个层次

读者经常会问："是什么锁住了成本表上的某个值？"答案分成三个明确的层次，各自处理不同的问题：

1. **数值在"从物料表复制"时锁到成本明细上。** 一旦某条物料表明细被复制，
   成本明细便拥有自己一份的值；物料表、面料或辅料主档可以变动，而不会打扰成本明细。
2. **"已核准"锁住整份文件，不能再编辑。** 一旦所有启用对象都已核准，成本表便不能再编辑。
   要变更某个值，请创建新的版本。
3. **每张订单的版本绑定把版本锁到该订单。** 订单会依据它所绑定的版本作业；
   日后在款式上创建的更晚版本，并不会悄悄接管该订单的计价。

物料表也是同一个形状，只是更简单：每行的快照是该行的锁、**已核准**状态是整份文件的锁，
每张订单的版本绑定则是把已核准的物料表绑到它所核准之订单的关键。

## 为何要有版本：多张订单，一个款式

这个模型的重点，是让一个款式可以服务多张订单而不冲突。一个实际的例子：

* 一张春季订单正以这件外套款式的物料表版本 1 与成本表版本 1 生产中——
  两者皆已为该订单核准。
* 同一款式被重新下单给秋季，并要求替换一个辅料。
  商品开发人员从秋季订单内部打开新的物料表版本（版本 2）；只有秋季订单会重新绑定到它。
  春季订单仍继续读取版本 1，不受打扰。
* 秋季的成本表跟着更新，反映这次替换；创建新的成本表版本，并随各对象逐一签核而以对象为单位核准。
* 数月后，第三个季节再次运行。团队打开款式、为每张订单挑选应运行的版本，工作便继续进行。

一个共用的款式。三张订单。每张订单各自绑定在它当初所构建于其上的版本。
每一个更早的修订版本，都为它所服务的订单完整保留。

## 您会在哪里遇到这个模型

* **款式的物料表分页**——版本时间线、当前版本的标记、核准与撤回动作、
  已核准版本上每行的快照，以及开启新版本的选项。
* **款式的成本分页**——版本时间线、对象核准行、每个对象的状态、**从物料表复制**动作，
  以及依对象剪裁的导出。
* **订单对款式的视角内**——该订单在物料表与成本表上所绑定的版本，
  以及订单团队用来推进这个绑定的动作。
* **下游闸门上**——采购与[就绪引擎](/zh-Hans/concepts/readiness-engine-and-ai)
  通过款式的版本绑定解析每张订单的版本，因此它们看到的是该订单实际所运行的版本，
  而非款式上最新的那一个。

## 相关概念

* [以款式为中心的模型](/zh-Hans/concepts/style-centric-model)
* [款式、订单与制造单](/zh-Hans/concepts/style-vs-order-vs-mo)
* [订单生命周期](/zh-Hans/concepts/order-lifecycle)
* [款式页面](/zh-Hans/modules/styles)
* [成本表页面](/zh-Hans/modules/cost-sheet)
* [物料表页面](/zh-Hans/modules/bom)
