Skip to Content

AL MES

AL MES - User guide

How to set up and use the app in Business Central.

Download the guide as PDF

1. Concepts in one minute

  • An MES User is an operator. Operators act on the shop floor from the operator client, which talks to Business Central over the AL MES Web API.
  • Each Start / Pause / Finish on an operation (a Prod. Order Routing Line) is recorded as a timed MES Routing Entry. An operation can have several entries (pauses plus a finish).
  • In the back office you review the entries and run Calc. and Open Output Journal: AL MES fills the Output Journal with the produced quantity, scrap and run time, as machine capacity lines and operator capacity lines.
  • When one operator worked several operations in overlapping time, the operator's time is split across those operations automatically (proportionally to the quantity produced). You then post the journal with standard Business Central.

2. Prerequisites

  • Business Central version 28.0 or higher (Cloud/SaaS).
  • The AppLibra dependencies installed automatically with the app: AL License and Trial Management, AL Message Passing.
  • Standard manufacturing in use: production orders with routings, Work Centers and Machine Centers, and an Output (and, if needed, Consumption) item journal template and batch.
  • The operator client (the companion shop-floor app) configured to reach the Business Central Web API of this app.

3. Setup

3.1 Activate the license

Search for Setup (MES) in Tell Me (Alt+Q), open it and run Add License to activate the app (trial or full).

3.2 Setup (MES)

On the Setup (MES) page fill in:

FieldPurpose
Output Template Name / Output Batch NameThe item journal (Output) template and batch where AL MES writes the output and capacity lines.
Consumption Template Name / Consumption Batch NameThe Consumption journal template and batch, if consumption is posted.
Back Office User No. (MES)Default operator used for postings made from the back office.
Back Office Reason No. (MES)Default reason code used for back-office postings.
Require Machine CenterIf on, an operation must run on a Machine Center to be started.
Require Operator Machine CenterIf on, posting fails when an operator involved in a co-work group has no Machine Center assigned (see 3.3).
Round Output To IntegerIf on, the output quantity distributed across the operations of a shared phase is rounded to whole numbers.
Require Verified TimesOff by default. If on, only production orders whose times are verified are included when the registration lines are generated (see 4.5). It changes calculation only - journal posting stays standard Business Central.
Allow Concurrent OperatorsOff by default. If on, several operators can have open segments on the same phase at the same time (see 5.1).
Setup (MES) page with the output/consumption journal templates and back-office defaults filled in.
Setup (MES) page with the output/consumption journal templates and back-office defaults filled in.

3.3 Users (MES) - operators

Search for Users (MES) and create one row per operator:

FieldPurpose
No. / NameOperator identifier and name.
Capacity TypeWork Center or Machine Center - the kind of capacity that represents the operator's labor.
Capacity No.The Work/Machine Center used for the operator's capacity line when posting labor.
Default Time TypeThe time type proposed at every Start of this operator: Run or Setup. It lands on the routing entry and, at posting, decides whether the time goes to run time or setup time.
Machine UserFor a user that represents a machine (for example a scale): it can restart the phase even after its own finish, cycle after cycle, until posting closes the phase (see 5.1). Only effective when Allow Concurrent Operators is on.

The operator's capacity center is what lets AL MES post the operator capacity separately from the machine capacity. If Require Operator Machine Center is on, every operator that takes part in a co-work group must have a capacity center set.

A dedicated setup technician is configured with Default Time Type = Setup: their starts go to setup time with no extra gestures.

Users (MES) list with operators (OP01, OP02) and their capacity center.
Users (MES) list with operators (OP01, OP02) and their capacity center.

3.4 Reason codes

Search for Reason Codes (MES) and define the scrap/reason codes operators can pick when reporting scrap.

Reason Codes (MES): the scrap/reason codes operators can pick, plus the back-office default reason.
Reason Codes (MES): the scrap/reason codes operators can pick, plus the back-office default reason.

3.5 Web API

AL MES exposes API pages the operator client consumes: MES Users, Machine Centers, Work Centers, Scrap Reasons, Prod. Order Routing Lines and Routing Entries. Point the operator client at the Business Central Web API base URL for the company; no extra configuration is needed inside Business Central.

4. Daily use

4.1 On the shop floor (operator client)

From the operator client, over the Web API, the operator:

  1. picks the operation to work on (a released production order routing line) and presses Start - AL MES opens a routing entry with the start time, the operator, the work center and (when applicable) the machine center;
  2. presses Pause to interrupt and Start again to resume - each interval is its own segment of the same operation;
  3. presses Finish and enters the output quantity, and any scrap quantity with a reason - AL MES closes the operation with the end time and the produced/scrapped quantities.

Start uses the operator's Default Time Type; to start in setup regardless, there is a dedicated Start Setup action. When resuming after a pause, the segment continues with the same time type as the paused segment, not with the default: whoever was setting up resumes setting up.

The same Start / Pause / Finish actions are available inside Business Central from the MES User card (action Get Active Prod. Order Routing Lines), useful for a back-office operator or for testing without the mobile client:

Select Action To Make (MES): the operator screen with Start / Pause / Finish and the live Routing Status (MES) per operation.
Select Action To Make (MES): the operator screen with Start / Pause / Finish and the live Routing Status (MES) per operation.
On Finish, the operator reports the produced quantity and any scrap with a reason:
Finish Card (MES): report the output quantity, scrap quantity and scrap reason for the operation.
Finish Card (MES): report the output quantity, scrap quantity and scrap reason for the operation.
On the same MES User card, the Forced Machine Center No. field is for an operator who works on a specific machine while the routing phases are planned on the work center. Pick the machine center and run Get Active Prod. Order Routing Lines: the list offers the active phases of that machine's work center, both those planned on the work center and those already on the machine. Start (or Start Setup) moves the phase onto the chosen machine, as the operator client does when it starts a phase on a machine. The field is not saved: it holds while the card stays open. With Require Machine Center on, the list only offers the phases already on that machine.

4.2 In the back office (Business Central)

Open Routing Entries (MES) to see what the floor reported. The page offers:

  • Get Active Prod. Order Routing Lines - list the operations currently open.
  • Close User Active Prod. Order Routing Lines - close the operations still open for an operator (back-office correction).
  • Calc. and Open Output Journal - the main action: from the selected Finish entries, AL MES calculates the output, scrap and run time and opens the Output Journal prefilled, including the distributed operator capacity for co-worked phases.
  • Show Prod. Order Routing Lines - jump to the related routing lines.

Routing Entries (MES) with finished entries and the Calc. and Open Output Journal action.
Routing Entries (MES) with finished entries and the Calc. and Open Output Journal action.
The action bar is organized into promoted groups, so the actions you use most are one click away:

  • Phases - take and close the active phases.
  • Time verification - Mark Times Verified / Clear Times Verified (see 4.5).
  • Registrations - calculate output and calculate consumption.

Update Item Info (a one-time backfill of the source item columns described in 4.4) sits under the Actions menu.

The operator activity is also reflected on the standard Prod. Order Routing page, where the Routing Status (MES) column shows each operation as blank (not started), Start, Pause or Finish - a quick read of where the production order stands:

Routing Status (MES) column on the production order routing: operation 10 Finish, operation 20 Start, operation 30 not started.
Routing Status (MES) column on the production order routing: operation 10 Finish, operation 20 Start, operation 30 not started.

4.3 Review and post

In the Output Journal opened by the action you will find, per operation:

  • a machine capacity line (output quantity, measured run time and scrap), and
  • an operator capacity line (the operator's share of run time).

Review the lines and Post the journal with standard Business Central. The result is standard Capacity Ledger Entries plus the production output.

Output Journal after Calc. and Open: machine run-time lines plus the distributed operator-capacity lines (86.25 + 33.75 = 120 min).
Output Journal after Calc. and Open: machine run-time lines plus the distributed operator-capacity lines (86.25 + 33.75 = 120 min).

4.4 Context columns on Routing Entries

Each entry carries a few columns that tell you, at a glance, what was produced and for whom. They are filled automatically when the entry is created, so you mostly just read them:

  • Source Item No. / Source Item Description - the item produced by the operation. For header-cycle orders (a shared phase that serves several order lines) the item is left blank and the description shows "(N items)" together with the header order's description; use the drill-down to open the order lines behind it.
  • Sales Order No. - the parent sales order. It is filled directly for project orders, and resolved through order-to-order commitments for item orders. The drill-down opens the sales order.
  • Notes - a free per-entry note you can type yourself, for example the agreed price of an external processing.

If the source item columns are empty on entries created before this release, run Update Item Info (under the Actions menu) once to backfill them.

4.5 Verifying times

Before captured times feed accounting you can have a supervisor certify them.

  • On the released production order header, tick Times Verified (MES) to certify that order's captured times.
  • On Routing Entries (MES), Times Verified is a filterable column. Select one or more entries and use Mark Times Verified or Clear Times Verified (in the Time verification group) - the action works on the production orders of the selected entries.

What Require Verified Times (Setup, see 3.2) changes: when it is on, the calculation of output, consumption and operator capacity includes only verified orders. Unverified entries are skipped (you get a message), and a co-work group that contains an unverified phase is deferred as a whole until it is verified. When it is off (the default), verification is informational only.

Note: this gate acts only when the registration lines are generated. Journal posting is unchanged - you still post with standard Business Central.

5. How the operator time is distributed

This is the core of AL MES and runs automatically inside Calc. and Open Output Journal.

  • When the same operator worked several operations whose time intervals overlap (same or different machine), AL MES groups those operations together.
  • The operator's wall-clock time over the group is split across the operations proportionally to the quantity each one produced (when the total quantity is zero, the time is split equally).
  • The distribution is computed only when every operation in the group is finished. If one is still open, posting for that group is deferred until it is closed, so the time is never allocated partially.
  • The machine lines always carry the measured run time; only the operator line carries the distributed share.

Set Round Output To Integer in Setup (MES) if you want the distributed output rounded to whole numbers.

5.1 Several operators on the same phase (optional)

By default a phase allows one open segment, whoever the operator is: when a second operator tries to start it, the Start button is disabled inside Business Central, and from the operator client the start call is rejected (the client shows its own message). A finished phase does not restart.

With Allow Concurrent Operators on in Setup (MES), several operators can have open segments on the same phase at the same time; the block only applies against yourself (your own open segment, or your own finish, block you - not your colleagues). Posting then counts time differently:

  • the machine time is computed as the union of the intervals: two operators overlapping on the same machine never charge it twice (without the switch, machine time is the sum of the entries' times);
  • every operator keeps their own capacity line, with the usual time distribution.

With the switch on, the Machine User flag (MES User card) becomes useful: a regular user cannot reopen a phase after their own finish - their participation is closed; a machine user can, and every cycle is a new start/finish pair on the same routing line, until posting actually closes the phase. The typical case is a scale weighing several times on the same phase.

6. Scheduling

Today the calculation is started on demand from the Routing Entries (MES) page. Unattended execution on a schedule through a Job Queue Entry is planned for a later version: the app does not expose a runnable object to schedule yet.

7. Tips and troubleshooting

  • An operation cannot be started. With Require Machine Center on, the operation must run on a Machine Center; check the routing line Type and the machine center.
  • Posting fails for an operator with no capacity center. With Require Operator Machine Center on, every operator in a co-work group needs a Capacity No. on the MES User card.
  • A co-work group does not post. It is deferred until all its operations are finished - close the still-open operation (on the floor or with Close User Active Prod. Order Routing Lines).
  • No operator line appears. Confirm the MES User has a Capacity Type and Capacity No. set.
  • An order is skipped when calculating. With Require Verified Times on, only verified orders are included; tick Times Verified (MES) on the order header, or Mark Times Verified from the selected entries, then run the calculation again. Posting itself is never blocked by this switch.
  • A second operator cannot start an already-started phase. That is the default rule (one open segment per phase): to work the same phase together, turn on Allow Concurrent Operators in Setup (MES).
  • An operator cannot restart a phase after their own finish. Expected: their participation is closed. If the one cycling is a machine (for example a scale weighing several times), mark its user as Machine User.

8. Support and resources

  • Publisher: AppLibra
  • Website: https://applibra.com
  • Apps catalog: https://applibra.com/apps
  • Privacy policy: https://applibra.com/privacy-policy
  • Terms of use: https://applibra.com/terms