Skip to content

Continuous Flows#

Overview#

The Continuous Flow feature aims to improve the handling of scenarios where parts of a lot Material can gradually move to the next step while the rest of the lot finishes the previous process Step.

It allows partial chunks of the lot to be processed in parallel in different steps, while preserving the concept of a single lot grouping - Step execution activities like Checklists and Data Collections should be applied to the lot as a whole, instead of to each individual partial material. All Materials should be merged back at the end of the Continuous Flow block.

Concept#

The logic adds a Material Rank concept, where the first/leading Material chunk will be ranked as the Head Material, whereas the last/trailing Material will have the Tail rank. All other material chunks in between will get the Middle rank.

Continuous Flow Concept diagram

The Rank is automatically set on Partial Track Out, and re-calculated when merging back.

Checklist and Data Collection contexts can be configured based on Rank, so that, for example, a Checklist can be triggered only for the Head material and a Data Collection can be filled only when the final Tail material passes through the step.

A step can be configured as a Merge Step, causing all partial Materials to be automatically merged together once they reach the Step.

Assumptions#

To use the Continuous Flow logic, the process should follow the following assumptions:

  • The material quantity should represent a bulk of non-serialized units. If sub-materials are used, a Line-Flow based approach might be more adequate.
  • The Partial Track-Out feature is used to Split the chunks of materials for the next Step.
  • The different material chunks processing will be executed in sequence, e.g. a Tail will not surpass its Head.

Setting Up a Continuous Flow#

Step Configuration#

The Steps where a Material can be temporarily split into partial chunks, need to be configured to allow Partial Track-outs, by setting the Use Split and Track-Out flag. If needed, additional Split and Trackout settings can be configured in the StepSplitTrackOutContext Smart Table.

Partial Split Step configuration

If it is intended to merge back the Materials automatically in the end of the flow block, the merge step should have the MedDevIsPartialMatMergeStep attribute set. If no step with this attribute is found in the flow, the system will assume the materials will be merged manually.

Merge Step configuration

Context Tables#

The Material Checklists and Data Collections contexts need to be setup in the new default context tables - MedDevMaterialChecklistContext and MedDevMaterialDataCollectionContext respectively.

These tables have a new Column Material Rank, which can be used to specify if the Checklist or Data Collection applies only to Materials of that Rank. Leaving the Material Rank blank means it will apply to any material, independently of rank (same behavior as before).

Continuous Flow Checklist Context

It is also possible to set different checklists/data collection variants for Head, Middle and Tail Materials, to provide the user different instructions depending on the Material stage.

Executing a Continuous Flow#

Partial Track-Out#

During the Track-Out operation, to perform a Partial Track-Out, ensure the primary quantity is set to a value below the main material's primary quantity.

Partial Track-Out

The first material Split and Tracked out will have the MedDevMaterialRank attribute set as "Head", and the main Material still InProcess will be ranked as "Tail". If additional Partial Track-Out splits are needed, the following splits will have the "Middle" rank.

If the Flow contains a Step is configured with MedDevIsPartialMatMergeStep flag, a Future Action will be created/updated during Partial Track-Out to automatically merge back the materials at the merge step.

There can be additional partial Track-Outs in subsequent steps, which will follow a similar logic, splitting the Head Material into a new Head and Middle Materials.

Context Resolution#

In the Steps following the Partial Track-out, Checklists and Data Collections will only appear to the respective Head/Middle/Tail Materials as configured in the context tables.

Materials Merge#

If a merge Step was pre-defined, the Materials will automatically get blocked at the step waiting for the Merge Future Action.

Material Waiting Future Action

Once all Materials have reached the merge Step, the system will automatically merge and release the Material.

Merge Materials

If no automatic merge was configured, the user should manually merge each partial Material as needed.

Administration#

Installing/Enabling the Feature#

To use this feature, the following actions need to be taken:

  1. Configurations

    • Enable Feature through /MedDev/ContinuousFlows/EnableContinuousFlows.
    • Enable Auto-Merging through /MedDev/ContinuousFlows/EnableMergeFutureActionOnStepFeature, if desired.
  2. Update Generic Table 'ContextResolution' with both MedDev Smart Tables to ensure the resolution includes the Material MedDevMaterialRank:

    • MaterialChecklistResolution: "MedDevMaterialChecklistContext"
    • MaterialDataCollectionResolution: "MedDevMaterialDataCollectionContext"

Context Resolution table configuration

Note

This will override the existing MaterialChecklistContext and MaterialDataCollectionContext tables - all data from the original context tables should be copied to the new MedDev equivalent tables before switching the ContextResolution settings.

Changing the Rank names#

The default values for the Rank Names are Head, Middle, and Tail. If required, these names can be changed by:

  1. Configurations

    • Set Material Rank Names:
      • /MedDev/ContinuousFlows/HeadRankName
      • /MedDev/ContinuousFlows/MiddleRankName
      • /MedDev/ContinuousFlows/TailRankName
  2. Update Lookup Table 'MedDevMaterialRank' with new names, so that the MedDev Smart Tables are prepared to use them.