Datasets & scenarios

Clone the live plan, try changes, publish only what works.

The Live dataset

Your default dataset is called Live. It mirrors Odoo every sync. Live is read-only — you cannot run the scheduler against it or edit ops directly. Treat Live as the canonical reference state.

To plan, you create a scenario (an editable working copy of Live). All scheduling and edits happen inside scenarios.

What is a scenario

A scenario is a named, editable copy of a dataset. Create one when you want to:

  • Try a different scheduling strategy without disturbing the floor
  • Test a what-if (“what if priority for order X were raised?”)
  • Simulate a disruption (machine breakdown, material delay)
  • Show options to a colleague before committing

Scenarios are completely isolated. Editing a scenario does not touch Live or Odoo until you explicitly publish.

Create a scenario

  1. Click New Scenario in the top bar (or Save Scenario when already inside a scenario).
  2. Give it a name (e.g. “Q3 ramp-up”) and an optional description.
  3. Click Save.

APS clones the currently-active dataset — usually Live — into a new scenario, copying every MO, WO, BOM line, locked state and priority. The Locked column on this page counts the locks each plan carries, read fresh every time, so you know how many decisions are in it before a run. Unlock all on the Work Orders page clears them. You're switched into the new scenario automatically.

Switching datasets

Use the dataset switcher in the top bar to move between Live and your scenarios. Every page — Schedule, Orders, Materials — updates to show the active dataset's data.

Edit a scenario

Inside a scenario you can:

  • Run any number of scheduler runs with different settings
  • Change MO priorities or due dates
  • Lock or unlock individual operations
  • Drag-and-drop on the Gantt
Live keeps syncing from Odoo (when auto-sync is enabled in Settings). Scenarios do not — they're a snapshot taken at creation time. If you want fresh Odoo data inside a scenario, delete it and clone again.

Comparing plans

Tick two to ten datasets on the Datasets page and press Compare selected. The plans sit side by side as columns, measured inside one horizon you pick at the top: the whole plan, or the next 7, 30 or 90 days.

  • Settings the plan was made with, recorded when a run is applied. Older plans say "not recorded".
  • Finished in the window: orders and hours of work whose last step ends inside the horizon.
  • Promises: of the orders due inside the horizon (every order with a due date, for the whole plan), how many finish on time, how many late, how many are not planned at all, and the lateness added up in days.
  • Material: orders left out of the plan for material, when the plan was made with "leave it out"; otherwise orders unplanned or planned with a shortage. Live's figure is Odoo's reservation state, not a plan.
  • Bottleneck: the work centre with the highest utilisation in the horizon and its idle hours; switch on Work centres for every row.
  • Priorities differing from Live: how many orders a scenario ranks differently, since that is usually the lever.

Below the table is the only list: orders that come out differently, finished in one plan and not another or more than a day apart, widest spread first, with each plan's finish and priority. Everything that moved by minutes is left out on purpose; on a real plant that list runs to hundreds of rows and says nothing. An order's row opens the schedule on the last column's plan with the first column as baseline, see Work orders for the ghost bars.

Publish back to Odoo

When you're happy with a scenario, click Publish in the top bar. APS writes the scenario's schedule (start dates, resource assignments) onto the matching MOs in Odoo. Only fields APS owns are touched — quantities, customers, products, etc. remain untouched.

Update material reservations is on by default. After the dates are written, APS releases the reservations it is allowed to touch and hands the stock back out in the order the plan starts the manufacturing orders: the order planned to start first is served first, whatever its priority. Orders the plan leaves without a date come last, rush orders first among them, then highest priority, then earlier deadline. Work that has already started keeps its material. The run has already shared out what Odoo reserved for orders free to move (see Materials), so this is the step that makes Odoo agree with the plan.

Publishing moves the dates of sub-assembly orders too. That is Odoo's own behaviour: a component's need date follows the order that consumes it, the same way Odoo's own Plan button works. The delivery date of the finished order, which comes from the sales order, is not touched.

Publish only works from a scenario. The Publish button is disabled when Live is active (Live is read-only). After publishing, your Live dataset catches up on the next sync.

Unplan what this plan leaves out is the second switch, and it is off unless you turn it on. With it, an order the run deliberately left out of the plan — because nothing covers its components — also has its dates cleared in Odoo, so the shop floor is not left looking at a date APS no longer stands behind.

Cleaning up

Old scenarios cost nothing but clutter the switcher. Delete from the Datasets page when no longer relevant. Live cannot be deleted.

APS 4 Manufacturing

Built by Avalah

Odoo Gold Partner

APS 4 Manufacturing

Built by Avalah

Odoo Gold Partner