Steps are used to collect additional information in Unplanned Functions or on Order/Lines.



Where are steps defined

Steps in Planned functions 

Step on posting (header step)

Additional information that is collected when Posting registrations.

This happens only once.

OrdersStep on a Receipt Order


Custom steps and existing standard steps are both ordered by "id".

We use "Receive" in this example due to it being the only planned function to feature a Header Step as standard.


A standard step "Delivery Note" may exist at warehouse receipts and purchase orders (Controlled by Mobile WMS Setup, field: "Skip collection of delivery note on receive" ).

  • Standard Step "DeliveryNote" is id=10
    • Adding new steps with id less than 10 will display before DeliveryNote
    • Adding new steps with id greater than 10 will display after DeliveryNote

The standard step for entering "Delivery Note" when posting a Receipt

See also: Whitepaper Understanding Steps 

Step per line (line step)

Additional information that is collected during a line registration

This happens for each and every order line.

Order LinesStep on a Receipt Line


Custom steps and existing standard steps are both ordered by "id".


Standard steps are defined by the workflow named "standard".

Standard steps are numbered with ID's 10, 20, 31 etc.

So, adding new steps with ID 25 will be displayed between "To/From Bin" and "Expiration Date" 

Note: Order Lines must be configured with stepSorting=byId

Steps in Unplanned functions

Steps are used to collect information after a Header has been accepted

  1. The user "accepts" the Header

  2. Backend responds with a set of Steps to Collect 

See more Unplanned Functions.

Using steps in code

Adding steps

All Steps must be assigned a mandatory Id and unique Name that identifies it and then a number of (mostly optional) attributes that defines the behavior of the step.

Attributes are not be the same for every step, but depends on what is being collected.

The editor suggests two kinds of functions:

  • Template steps
    • Create_TextStep_LotNumber : A text step based on a "template" specifically designed to accept Lot Numbers.
  • Create-functions 
    • Create_TextStep : You must input at least the mandatory properties for the step.
    • Set_.... can be used to set additional attributes.

In the editor: Type _steps.create.... to see the wide selection of create- and template-functions.


Use these to define/overrule attributes from create/template functions.

Commonly used are:

  • Set_visible
  • Set_optional / Set_locked
  • Set_minValue / Set_maxValue
  • Set_label
  • Set_helpLabel
  • ....use the editor to find them all..

See Step Configuration Matrix for all the possibilities.

Template uses Set-functions too

Create_TextStep_LotNumber is implemented using the Create_TextStep base-type and then Setting all the necessary attributes.

    Create_TextStep(7'LotNumber');    // 7 =  Id, could be any value but Steps is generally sorted by Id – the Name is actual identifier and must be unique
    Set_header(MobWmsLanguage.GetMessage('ITEM'' ' + ItemNo + ' - ' + MobWmsLanguage.GetMessage('ENTER_LOT'));

... this is exactly how you would create a Step 'from scratch' yourself.

Combining Templates with Set-functions

You may do a combination:

  1. Use a Template to create a step
  2. Then override specific attributes of your choice

For example:

    Create_DecimalStep_Quantity(5, ItemNo);