Skip to content

Change Set#

🔒 ChangeSet.Show

Overview#

A Change Set is an object which is used to bundle together changes to versioned objects. Bear in mind that the Change Set only refers to the versioned data of the object, so, the global data is not part of the Change Set.

In the current Critical Manufacturing MES version, the following objects are change-controlled:

Change Set Approvals#

Individual Change Set Items can have individual approval Roles which indicate the Change Set Item must be approved by a person that belongs to that Role. Only after all individual Change Set Items have been approved can the Change Set approval process begin. A Change Set can have an Approval Role or an Approval Workflow, but not both.

Note

The Approval Workflow should follow the State Model described in the section below.

All the Change Set Items of a given Change Set only become Active if the Change Set as a whole is approved. The Change Set can be approved in three basic ways:

  1. No Change Set Approval Role or Approval Workflow defined: the Change Set is approved immediately after all Change Set Items are approved (if individual Change Set Item approval roles have been defined).
  2. A Change Set Approval Role is defined: the Change Set is approved after all Change Set Items are approved (if individual Change Set Item approval roles have been defined) and the Change Set itself is approved by a person that belongs to the Change Set approval Role.
  3. A Change Set Approval Workflow is defined: the Change Set is approved after all Change Set Items are approved (if individual Change Set Item approval roles have been defined) and the Change Set itself is approved in its final Workflow state. Before the Change Set approval reaches the final Workflow state, it must be approved in every intermediate state of the Workflow. In every state of the Workflow, the Change Set can be approved only by a person that belongs to the Role defined in the Workflow State (if defined).

Note

The Approval Type of State reviewers is as follows:

  • Approver - if the Reviewer is set as Approver they must explicitly approve the Change Set at a certain state (this action is mandatory and relevant).
  • Observer - if the Reviewer is set as Observer they can add, approve or reject, but the response is not required and not relevant for the Change Set approval, but it will be kept in the historical details of the state transition approval.

Implicit Change Sets#

It is possible to have implicit Change Sets created automatically for change controlled entities. To enable change controlled entities to have implicit Change Sets, it is necessary to change its metadata.

To enable implicit Change Sets for an entity, it is necessary to perform the following:

  1. Go to the Entity Types in the Administration page group.
  2. Open the desired Entity.
  3. Select Edit to enter edit mode.
  4. Make the following changes:

  5. Check the Allow Automatic Change Set option.

  6. Provide the Name Generator that will be used to generate the Change Set name.
  7. Optionally, specify an Approval Role or Approval Workflow for the Change Set.

    Info

    If there is no Approval Role or Approval Workflow defined, the Change Set will be automatically approved.

  8. Select Save to make the changes effective.

Subscribe to Notifications#

You can subscribe to Change Set notifications. For more information see Manage Change Set Subscribers.

State Model#

A Change Set itself has a system defined state model described in the next figure.

graph TD
    Start -->|Create Change Set| A1
    A1[Created] -->|Request Change Set Approval| A2[In Approval]
    A2 -->|Rework Change Set| A1
    A2 -->|Approve Change Set| L1[Approved]
    A2 -->|Reject Change Set| C1[Rejected]
    L1 -->|Change Set Items Effective| L2["Terminated (automatic)"]

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;
classDef mermaid_initial_state fill:#d7e4bd,stroke:#92d050,stroke-width:3px,color:#000;
classDef mermaid_final_state fill:#a7e2f2,stroke:#65CDE8,stroke-width:3px,color:#000;
class Main mermaid_entity
class Start mermaid_start
class A1,A2,L1 mermaid_initial_state
class C1,L2 mermaid_final_state

A Change Set, when created, goes to the system state Created. In this state, users can add multiple Change Set Items, which are versions of the change-controlled entities. After the desired Change Set Items are added, the Change Set can be set for approval. At this point, all associated Change Set Items become frozen, meaning they can no longer be modified.

The Change Set then goes through the approval process and can be either be approved or rejected. If the Change Set is approved, all Change Set Items transition to the Active state. The Change Set also contains an additional property, called Make Change Set Items Effective on Approval. When this option is enabled, the system attempts to automatically make all Change Set Items effective after approval. Once the Change Set Items become effective, the Change Set is automatically terminated.

In case the Change Set is rejected, both the Change Set and all associated Change Set Items are terminated.

Tying Everything Together#

graph TD
    Main[Change Set] -.- A1[Approval Role]
    N1[Approval Workflow] -.- Main
    Main === L1[Change Set Item]
    A1[Approval Role] -.- L1
    L1 ---A3[Product]
    L1 --- A4[Flow]
    L1 --- A5[...]

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;
class Main mermaid_entity
class A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12 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

click Main "../../business-data/change-set"
click A1 "../../administration/security/roles"
click A3 "../../business-data/product"
click A4 "../../business-data/flow"

Sequence Of Steps#

The necessary steps for correctly using a Change Set are the following:

  1. Optionally, create the intended Approval Workflow (State Model).
  2. Create a Change Set and assign Change Set Items to it.
  3. Request a Change Set approval.
  4. Optionally, send the Change Set for Rework (after addressing rework issues, repeat Step 2).
  5. Approve or Reject the Change Set.

Available Pages#

Dive into the pages below to explore more about Change Set:

Main Page#

Generic Operations#

Specific Operations#