Skip to main content

Modeling Steps (Protocols)

Goals

  • Know what Standard and Sample Protocols are and when to use them.

  • Know how to create new Protocols using:

    • Protocol details

    • Custom fields

    • Protocol Actions

Key Terms

Table 23. 

Term

Definition

Protocol (Step)

Defines the data to collect while processing the Batch.

Standard Protocol

Associates process data with the Batch.

Sample Protocol

Creates a child Entity from the Batch (parent).



What are Protocols?

Protocols (Steps) define the data to collect while processing the Batch. Contiguous fields assigned to the same group represent a Sub-Step.

master_field_grouping_3_3.png

If the grouping includes two (2) colons followed by text, the fields will be placed in a Sub-Step Table named using the text after the colons.

mes_field_grouping_3_3.png

Note

Discontiguous fields assigned to the same group create separate Sub-Steps.

Fields not assigned to a group create their own Sub-Step.

How to create new Protocols

Go to: L7|MasterProtocols+ New Protocol

master_new_protocol_3_3.png

Protocol Details

master_protocol_details_3_3.png
  • Use in manufacturing – should be set to “Yes” for Protocols that will be used in L7 MES.

  • Protocol Type – standard or sample.

    • Pipeline Protocols cannot be used in L7 MES.

    • Pipelines are executed from Pipeline button fields.

  • Duration (hours) – the time it takes to complete the Protocol.

    • This detail is used in L7 Scheduling.

  • Version – a new version of the Protocol is created each time it is saved.

    • Pin - locks the Protocol into a previously saved version for explicit use in Workflows.

  • Group Samples – N/A to L7 MES, only one (1) Batch per Batch Record.

  • Instructions – plain text or formatted using the rich text editor in the expanded instructions window.

    • Protocol instructions appear at the beginning of the Step in the Batch Record.

    • Image height cannot exceed 600 pixels.

  • OnRender – custom behavior triggered when the Step renders in the Batch Record.

Note

onRender is covered in more detail here and in the Client-Side Developer MasterClass.

To register, please visit L7 University.

  • Fields – Step data collected while processing the Batch.

  • Flex View Designer and Storage Policy – N/A to L7 MES.

  • Actions – custom behavior triggered when a condition is satisfied while processing the Step.

Standard Protocols

Standard Protocols have the default Complete field displayed as the last field in the Protocol. All fields before Complete are custom fields created to collect process-specific data.

master_protocol_fields_3_3.png

Sample Protocols

Sample Protocols have two (2) key components:

master_sample_protocol_components_3_3.png
  1. The Parent-Child Relationship must be defined.

  2. The Entity Type must be selected and represents the child Entity that will be created.

Note

While there are three (3) options, only 1-to-1 is supported in L7 MES.

  • In a 1-to-1 Sample Protocol, each parent creates one (1) child Entity.

In L7 MES, Sample Protocols are used to create an Item from the Batch.

The default fields Parent ID and Note appear at the beginning of every Sample Protocol. L7|ESP sets the Parent ID, User-provided Notes become the description of the newly created Item.

master_sample_protocol_default_fields_3_3.png

Note

The Sample ID Sequence field defines the ID Sequence that will be assigned to the Item being created. Once an Item Type has been selected, this field will default to the ID Sequence assigned to that Item Type in L7|Master.

When an Item is created, the following default fields will appear ahead of the custom fields attributed to the Item:

master_sample_protocol_default_item_fields_3_3.png
  • Initial Quantity

  • Lot ID

  • Serial ID

  • Status

  • Vendor

  • Expiration

Custom Fields

After you enter a Display Name and choose the Protocol Type, you can add custom fields to the Protocol. Over a dozen different field types are available in L7|ESP.

master_new_protocol_field_3_3.png

Note

Link and Container location are not supported in L7 MES.

In the Field Details panel, the basic details are generally the same for all field types. They allow you to:

master_protocol_field_details_3_3.png
  • Name the field.

Note

Display Name vs. ID: Display Name is the name that appears in the user interface (UI). ID is a fixed value used to reference the field. This differentiation ensures stability when changing the name of a custom resource field.

L7|ESP will set the Display Name as the ID if the user does not define the ID themselves.

  • Define the field type.

  • Assign a default value (static value or Python expression).

  • Group the fields into Sub-Steps.

  • Add field-level instructions (plain text or formatted using the rich text editor).

    • Image height cannot exceed 600 pixels.

  • Hide the field if:

    • It should be conditionally visible.

  • Make the field read-only if:

    • It has a computed value and should not be editable (data integrity).

  • Make the field required if:

    • A value must be recorded, either as part of the business process or data dependencies in L7|ESP.

Note

The shared toggle is N/A to L7 MES and reportable fields are used in L7|Intelligence.

Exceptions to basic field details:

  • Approval fields cannot be hidden or made read-only, and are required by default.

  • Instruction fields cannot have a default value because they do not have any data associated with them.

Custom Editor – not supported in L7 MES.

Custom Renderer – not supported in L7 MES.

Event Handler onChange – custom behavior triggered when a field value changes. This includes entering a value for the first time.

Note

onChange is covered in more detail here and in the Client-Side Developer MasterClass.

To register, please visit L7 University.

Field Parameters

Field parameters are dependent on the field type, see the table below for more information:

Table 24. 

Field Type

Parameters

Free-form text entry – enter any character (both text and numbers allowed).

Rich Text is not supported in L7 MES.

master_text_field_parameters_3_3.png

Numbers only allowed – enter any number.

See Entity Types and Specifications to learn more.

master_numeric_field_parameters_3_3.png

Picklist – select one (1) or more static or dynamic options.

master_picklist_field_parameters_3_3.png

Date/Time – select a date and/or time in predefined or custom formats.

master_date_field_parameters_3_3.png

Checkbox – boolean true or false.

N/A

Attachment – attach one (1) or more files with predefined or custom extensions.

master_attachment_field_parameters_3_3.png

Barcode – capture data as a barcode (1D, mini data matrix, or QR).

Entity barcode assigns the value as the Entity’s barcode.

* This is the Entity being processed when the barcode is collected.

master_barcode_field_parameters_3_3.png

Approval – enter an electronic signature.

Only Signature Flows should be used in L7 MES for Step and Batch Sign Off.

master_approval_field_parameters_3_3.png

Pipeline Button – execute a Pipeline (computational task).

* Automate manual tasks, data egress and ingress.

Select a Pipeline and define its variables.

Pipeline – collection of Tasks (shell scripts) run on compute resources (cluster, cloud, or directly in L7|ESP).

* Pipeline are covered in more detail in the Client-Side Developer MasterClass.

To register, please visit L7 University.

master_pipeline_field_parameters_3_3.png

Resource link – link to another L7|ESP resource.

If the Link Type is Entity Class, Container, Item, or Service Type, a multi-select picklist will appear to restrict to the selected:

  • Entity Types, Container Types, Item Types, or Service Types.

If the Link Type is Container, a multi-select list of statuses can be selected to filter the list of Containers based on their status.

This status can be updated after use.

* Container statuses are managed in the esp Configuration.

master_resource_field_parameters_3_3.png

Inventory item use – track Items and their consumption.

Record used quantity – if deselected, the field will convert to a multi-select picklist, and only the Item name will be recorded in the Worksheet.

Only use items within containers – restrict available inventory to Items stored in a location (e.g., kit); use an ESP Expression to reference a Resource Link field of type Container:

{{ [json_loads(cell('Field ID', 'Protocol ID'))['uuid']] }}

master_inventory_field_parameters_3_3.png

Instructions – field-level instructions that do not require data collection.

* Image height cannot exceed 600 pixels.

N/A

Sample Point – create new Samples during production.

See Sample Plans to learn more.

master_sample_field_parameters_3_3.png


Protocol Actions

Add an action by navigating to the Actions tab and selecting + Add Action.

Note

Actions can be added to both Standard and Sample Protocols.

master_new_protocol_action_3_3.png

Each action has a name and description - these fields are used in error reporting and logging, and are useful for documenting the intent of the action.

The condition is defined in the If section and the action to perform if the condition is satisfied is defined in the Then section. L7|ESP offers several out-of-box conditions and actions:

Available Conditions in L7|ESP

Table 25. 

Condition

Definition

All rows completed

The action is triggered if all Entities are completed during the save.

All rows rejected

N/A to L7 MES. Signatures denote approval.

All rows match an expression

The action is triggered if all Entities evaluate True for the supplied Expression.

* The expression is evaluated in L7 MES context.

Any row completed

The action is triggered if any Entity is completed during the save.

Any row rejected

N/A to L7 MES. Signatures denote approval.

Any rows match an expression

The action is triggered if any Entity evaluates True for the supplied Expression.

* The expression is evaluated in L7 MES context.

Entity added to worksheet

N/A to L7 MES. Additional Entities cannot be added to the Batch Record.

Entity removed from worksheet

N/A to L7 MES. This is synonymous with failing the Batch.

Only once

The action is only triggered once for a satisfied condition.



Available Actions in L7|ESP

The available out-of-box actions are listed below. "EE" means the value can contain Expressions. Unless otherwise noted, these Expressions are evaluated in the Protocol Action Expression Context (see the parameters table below).

Table 26. 

Action

Description

Archive Objects (remove from UI)

Archives the matching objects (e.g., consumed Entity or Item, multi-well plate).

  • The expression must resolve to:

    • UUID

    • Dictionary with a UUID key

    • List of UUIDs or dictionaries with UUID keys

  • To archive objects, the Role the user is assigned to must have the following permission:

    • LIMS → Sample → Delete

Create MES Batch

Creates a new Batch in L7 MES.

* This will be covered in advanced modeling.

Fail Samples

This action should not be used in L7 MES. Batches are failed from the Quality Review tab.

Notify Roles

Sends an L7|ESP notification to users in the specified Role(s).

It accepts the following parameters:

  • Roles - case-sensitive list of roles.

  • Title - notification title (EE).

  • Message - notification message (EE).

Notify Users

Sends an L7|ESP notification to the specified User(s).

It accepts the following parameters:

  • Users - case-sensitive list of users.

  • Title - notification title (EE).

  • Message - notification message (EE).

Notify Workgroups

Sends an L7|ESP notification to users in the specified Workgroup(s).

It accepts the following parameters:

  • Workgroups - case-sensitive list of workgroups.

  • Title - notification title (EE).

  • Message - notification message (EE).

Start Workflow

Creates an Experiment using the specified Workflow for the matching Entities.

It accepts the following parameters:

  • Workflow - name of the Workflow to start (EE).

  • Project - name of the Project to put the Experiment in (EE).

  • Experiment Name - name of the Experiment to create (EE).

  • Tags - list of tags to add to the Experiment.

  • Worksheet Name - name of the Worksheet to create (EE). All Entities from the newly-created Experiment will be added to the Worksheet.

    • If this is empty, a Worksheet will not be created.

Start Workflow Chain

Creates an Experiment using the specified Workflow Chain for the matching Entities.

It accepts the following parameters:

  • Workflow Chain - name of the Workflow Chain to start (EE).

  • Project - name of the project to put the Experiment in (EE).

  • Experiment Name - name of the Experiment to create (EE).

  • Tags - list of tags to add to the Experiment.

  • Worksheet Name - name of the Worksheet to create (EE). All Entities from the newly-created Experiment will be added to the Worksheet.

    • If this is empty, a Worksheet will not be created.

Start MES Workflow Chain

Submits the current Batch to a downstream process (Recipe).

* This will be covered in advanced modeling.

Synchronize Field Value To Entity

Copies a value from a LIMS field to an Entity custom field for the current Sample Set in the Protocol.

It accepts the following parameters:

  • Source Field - ID of the LIMS field to copy the value from.

  • Target Field - ID of the Entity custom field to copy the value to.

Tag Row Samples

Adds the specified tag(s) to the matching Entities. If the Entity is already tagged, no change occurs.

Untag Row Samples

Removes the specified tag(s) from the matching Entities. If the tag is not on the entity, no change occurs.



Note

Developers can create custom Protocol Actions, which is a topic of the Server-Side Developer MasterClass.

Protocol Action Example

In this Protocol, chocolate chips and oats are being added to the cookie dough. Since diary products and oats are common allergens, it has been requested that tags are appended to each Batch to indicate they contain dairy and oats.

master_protocol_action_example_3_3.png