跳转至

修订#

凯睿德制造MES中的实体可以进行版本控制或非版本控制,在作为实体一部分的版本之间保留某些特征,而不是特定于其某个版本。在某些情况下,需要对某个实体进行更改,该实体具有在任何给定时间都无法更改的几个其他依赖项(通过当前在长期场景中处理的对象,或由于难以维护对数据交换系统特定实例的引用)因此必须与这些更改隔离开来。修订是实体的高级定义,允许对共享同一组基本定义的实体执行影响更改,同时不影响系统当前使用的其他实体。

例如,让我们想象一个流程对象,它是一个版本化的实体。在该流程处理物料时,物料始终在该流程的特定版本上启动。在处理物料时,可以对流程进行一些更改,并将其分为两种不同的类型:

影响-影响任何引用该流程修订的变更并立即生效的材料。 *不影响-不影响引用该修订的材料的变更,且仅适用于尚未处理的其他材料*。

影响已生效变更包含该修订内的新版本,而不影响创建新修订前已处理的变更。多个修订可以共存并相互独立,允许创建引用不同修订的不同版本,所有修订都关联到同一实体。受版本控制的实体除了其自己的版本属性外,还将具有修订属性。

总之,凯睿德制造MES中的实体可分为三个层次:

层级 描述
实体 表示实体的所有修订和版本
修订 表示实体同一版本内的一组可互换修订
版本 表示实体的一个可互换版本的一个修订

Table: 实体的层次级别

需考虑的一些信息:

  • 具有不同修订的实体意味着它们不可互换,应该保留以支持重大更改。
  • 具有相同修订的不同版本的实体可互换,并保留以支持微小更改,每个版本保留各自实体的样式、适合性和功能。
  • 某些属性可能仍然需要引用特定版本的的运行时间属性,通常是将原始实体(通常是实体实例)绑定到特定修订和版本的组合。
graph BT
subgraph  
subgraph 实体层级
Entity[实体]
end
subgraph 修订层级
RevisionA[实体.A] ---> Entity[实体] 
RevisionB[实体.B] ---> Entity[实体] 
RevisionC[实体.C] ---> Entity[实体] 
end
subgraph 版本层级
Version1[实体.A.1] ---> RevisionA
Version2[实体.A.2] ---> RevisionA
Version3[实体.A.3] ---> RevisionA
Version4[实体.A.4] ---> RevisionA
Version5[实体.A.5] ---> RevisionA
Version6[实体.B.1] ---> RevisionB
Version7[实体.B.2] ---> RevisionB
Version8[实体.C.1] ---> RevisionC
Version9[实体.C.2] ---> RevisionC
Version10[实体.C.3] ---> RevisionC
Version11[实体.C.4] ---> RevisionC
end
end

classDef mermaid_title color:#000, fill:#fafafa, stroke:#fafafa, stroke-width:0x, font-size:100%, font-weight:200;
classDef mermaid_start color:#000, fill:#fafafa, stroke:#fafafa, color:#fafafa, stroke-width:0x, font-size:100%, visibility: hidden;
classDef mermaid_businessdata color:#000, fill:#65CDE8, stroke:#65CDE8, stroke-width:0px, font-size:100%;
classDef mermaid_nonbusinessdata color:#000, fill:#B7DEE8, stroke:#B7DEE8, stroke-width:0px, font-size:100%;
classDef mermaid_entity color:#000, fill:#FB9F53, stroke:#FB9F53, stroke-width:0px, font-size:100%;
classDef mermaid_entitylinked color:#000, fill:#FCD5B5, stroke:#FCD5B5, stroke-width:0px, font-size:100%;
classDef mermaid_context color:#000, fill:#B9CDE5, stroke:#B9CDE5, stroke-width:0px, font-size:100%;
classDef mermaid_optional color:#000, fill:#B7DEE8, stroke:#65CDE8, stroke-width:1px, font-size:100%, stroke-dasharray: 5 5;
classDef mermaid_state color:#000, fill:#d7e4bd, stroke:#000, stroke-width:1px, font-size:100%, font-weight:300;
class Entity mermaid_entity
class Version1,Version2,Version3,Version4,Version5,Version6,Version7,Version8,Version9,Version10,Version11 mermaid_businessdata
class RevisionA,RevisionB,RevisionC mermaid_entitylinked

命名#

🔒 实体类型名.设置修订名称

修订可以自动命名,你也可以提供自己的名称。当创建新修订时,都会调用一个特定的DEE操作(称为ResolveNameGenerator),以确定要从系统中当前配置的上下文中调用的适当名称生成器,具体取决于[NameGeneratorContext](/userguide/administration>tables>system\u smart\u tables>Name\u Generator\u context)智能表中的条目。在凯睿德制造MES中,至少提供一个现成条目,以确定该修订的默认名称生成器,这称为“修订名称生成器”,该生成器定义了将为每个修订生成名称所有必需的令牌。

名称生成器配置有一个特定令牌,默认情况下,该令牌配置为按字母顺序排列的字符串序列:

Info

根据系统中名称的需要,可以根据需要自定义此令牌

revision_name_generator

有关更多信息,请参阅 名称生成器.

状态模型#

修订存在三种可能的状态,一个实体在任何时候只有一种修订被视为默认。

  • 默认 - 默认修订是在没有指定特定版本时加载的修订
  • 活跃 - 存在于系统中,需要时可以引用,但使用时必须明确指定,否则将优先使用默认版本。
  • 已过时 - 现有对象可以继续引用该修订,但处于过时状态的修订不能被新对象引用。此外,不能从过时版本创建新版本。

以下是修订状态的简化状态模型图:

graph LR
Active[活跃] --> DefaultTest{该修订有<br>生效的修订<br>且<br>实体类型支持<br>默认修订日期}
DefaultTest -->|是|默认
Active --> |标记为已过时|ObsoleteTest{还有一个生效版本的修订版}
Default --> |标记为已过时|ObsoleteTest{还有一个生效版本的修订版}
ObsoleteTest -->|是|Obsolete
ObsoleteTest -->|否|DefaultObsolete[默认/已过时]
Obsolete -->|重新激活修订|ReactivateTest{还有一个有效版本的修订版}
DefaultObsolete -->|重新激活修订|ReactivateTest{还有一个有效版本的修订版}
ReactivateTest -->|是|默认
ReactivateTest -->|否|活跃

classDef mermaid_title color:#000, fill:#fafafa, stroke:#fafafa, stroke-width:0x, font-size:100%, font-weight:200;
classDef mermaid_start color:#000, fill:#fafafa, stroke:#fafafa, color:#fafafa, stroke-width:0x, font-size:100%, visibility: hidden;
classDef mermaid_businessdata color:#000, fill:#65CDE8, stroke:#65CDE8, stroke-width:0px, font-size:100%;
classDef mermaid_nonbusinessdata color:#000, fill:#B7DEE8, stroke:#B7DEE8, stroke-width:0px, font-size:100%;
classDef mermaid_entity color:#000, fill:#FB9F53, stroke:#FB9F53, stroke-width:0px, font-size:100%;
classDef mermaid_entitylinked color:#000, fill:#FCD5B5, stroke:#FCD5B5, stroke-width:0px, font-size:100%;
classDef mermaid_context color:#000, fill:#B9CDE5, stroke:#B9CDE5, stroke-width:0px, font-size:100%;
classDef mermaid_optional color:#000, fill:#B7DEE8, stroke:#65CDE8, stroke-width:1px, font-size:100%, stroke-dasharray: 5 5;
classDef mermaid_state color:#000, fill:#d7e4bd, stroke:#000, stroke-width:1px, font-size:100%, font-weight:300;
class Active,Default,Obsolete,DefaultObsolete mermaid_entity
class DefaultTest,ObsoleteTest,ReactivateTest mermaid_businessdata
class L1,L2,L3,L4,L5,L6 mermaid_entitylinked
class C1,C2,C3,C4,C5,C6 mermaid_context
class N1,N2,N3,N4,N5,N6 mermaid_nonbusinessdata

状态转换#

活跃/默认状态和已过时状态之间的转换可以通过两种不同的操作来执行:

实体/修订/版本的属性#

所有属性都可以与实体的特定层级相关联,对变更控制的不同要求如下所述:

层级 变更受控
实体
修订
版本 总是

Table: 各层级的属性更改受控

大多数属性都可绑定到现有的任何版本并引用任意的修订。部分特定属性与特定修订版绑定

  • 次序 - 该值确定与实体关联的修订顺序
  • `默认起始日期 - 用于配置默认修订起始日期。有关更多信息,请参阅管理默认修订.
  • 默认截止日期 - 用于配置默认修订截止日期。有关更多信息,请参阅管理默认修订.
  • 系统状态 - 修订版的当前系统状态,可以是活跃的,也可以是已过时的
  • 是默认修订 - 定义是否将修订设置为默认值

默认修订#

默认修订是指在系统中始终用作默认值的修订,在其他对象中引用该版本时,默认情况下将显示和加载该修订版,除非另一个修订已被设置为已引用。有关详细信息以及用于定义每个实体的默认修订的方法,请参见管理默认修订.

显示修订和版本信息#

在版本化实体页面的顶部功能区下方,从左到右可以看到实体名称,然后是一个下拉列表,您可以在其中选择修订,然后是另一个下拉列表,您可以在其中选择版本:

revision_version_dropdown

修订和版本的视觉效果约定如下所述:

实体 [ 修订 . 版本 ]

例如: 产品 X [A.1] 表示产品 X的修订A版本1

要在实体页面中选择特定修订,请使用顶部功能区正下方、实体名称旁边的修订下拉列表。

revision_select

创建修订#

有关创建修订的详细信息,请参见创建修订.

Info

有关通过主数据包创建修订的信息,请参阅Master Data Packages.

克隆修订#

有关克隆修订的更多信息,请参阅 克隆.

终止和取消终止修订#

有关终止修订的详细信息,请参阅 终止和取消终止.