Twenty-two days on the showcase estate
How a first load into Maestro runs, with the checks doing their job. Figures are from the showcase estate.
connect
inventory
first extraction
first load
net-change
write-back
hand-over
Maestro recalculates the whole plan the moment an input changes, so it needs a complete and consistent copy of parts, sources, bills of material, stock, open orders and demand from every ERP you run. Lima Backbone builds that copy from SAP and Oracle, checks it before every load, delivers it inside the run window, and returns planned orders to the ERP as acknowledged transactions.
Maestro keeps planning data in tables that reference each other: a source belongs to a part, a bill of material belongs to a source, a receipt belongs to a part and a source. Maestro checks those references as it loads, which is why the order and the completeness of the load matter more than for most targets.
| Object | What it holds, in plain words | Why the plan needs it | SAP source | Oracle source |
|---|---|---|---|---|
| Part | One item at one site with its planning rules: lot size, safety stock, lead time, planning time fence, unit | Every other record hangs off it; a missing Part rejects everything that references it | MARA · MARC · MARM | MTL_SYSTEM_ITEMS_B |
| PartSource | Each way the part can be supplied: made on a production version, bought from a supplier, transferred from another site — with its own lead time and order policy | Decides which lead time and which bill of material the plan uses | MKAL · EINA/EINE · EORD · MARC special procurement | Sourcing rules · approved supplier list · routings |
| BillOfMaterial | Components consumed per unit, per source, with quantity per and effectivity dates | Dependent demand: what the plan orders for lower levels | MAST · STKO · STPO | BOM_BILL_OF_MATERIALS · BOM_INVENTORY_COMPONENTS |
| OnHand | Stock by storage location, batch and status, with the date it becomes available | Projected inventory starts here | MARD · MCHB · MSKA · MSLB | MTL_ONHAND_QUANTITIES_DETAIL |
| ScheduledReceipt | Every open supply order: purchase orders and schedule lines, planned orders, production orders, transfers, requisitions | The supply side of the balance | EKKO/EKPO/EKET · PLAF · AFKO/AFPO · EBAN | PO_HEADERS_ALL/PO_LINES_ALL · WIP_DISCRETE_JOBS · MRP planned orders |
| IndependentDemand | Customer orders with requested and confirmed dates and quantities; forecast | The demand side of the balance | VBAK/VBAP/VBEP · PBIM/PBED | OE_ORDER_HEADERS_ALL/LINES_ALL · MRP_FORECAST_DATES |
| Constraint · Calendar | Capacity per resource, working days and shifts per site | Makes the plan feasible in time | CRHD · KAKO/KAZY · TFACS | BOM_RESOURCES · BOM_DEPARTMENTS · BOM_CALENDARS |
| HistoricalDemandActual | Shipments and billed quantities by period | Forecasting and pegging | LIKP/LIPS · VBRP | WSH_DELIVERY_DETAILS · billed lines |
These are the problems that show up in every Maestro program, regardless of the tool used to load it. Each one has a cause in how ERPs store data and an effect a planner can see.
Semiconductor-equipment and high-tech estates bring the deepest bills of material, frequent engineering changes, configure-to-order variants and contract manufacturers who receive components on subcontracting purchase orders. Aerospace adds serial and lot tracking and program pegging. Automotive adds scheduling agreements with delivery schedules in place of discrete orders. Life sciences adds batches with expiry dates. Each of these has a specific check in Step 4.
The figure shows the hardest one — turning SAP production versions and source lists into Maestro sources. The table maps all six.
| Problem | What Lima does | The capability behind it | What you see |
|---|---|---|---|
| 1 · Sources | Reads MKAL, EINA/EINE, EORD and the plant record together and generates one PartSource per way of supply, attaching the BOM alternative and routing each production version names; lead time comes from the routing for make, from the info record for buy | Model-aware transformation operators for SAP and Oracle; versioned mappings | A source table with counts by type (make, buy, transfer) and the production version behind each |
| 2 · Order and references | Loads Part → PartSource → BillOfMaterial → OnHand, ScheduledReceipt, IndependentDemand, and checks every reference before the load, so Maestro receives no dangling rows | Dependency-ordered orchestration; pre-load referential rules | A load report with zero rejections, or exceptions with owners before anything reaches Maestro |
| 3 · Units | Converts every quantity to the part's Maestro unit using MARM and Oracle conversions; a missing conversion is an exception for the item owner | Quality rules in plain language with preview on live rows | The rule, the row and the owner; the load continues with the rest |
| 4 · Stock | Maps each SAP stock table to OnHand rows with a type and an available date: quality-inspection stock gets its expected release date, blocked stock is excluded or dated per your policy, in-transit stock comes from stock transport orders | Rule packs per stock type; policy as a governed rule with an owner | OnHand by type, with the policy that produced it |
| 5 · Open quantities | Computes ordered minus delivered per schedule line from EKET and EKBE (Oracle: shipments minus receipts) and drops delivered lines through change-data capture | Change-data capture with deletes applied; control totals per table | Open quantity totals reconciled against the ERP's own open-order figures each run |
| 6 · Effectivity and phantoms | Carries effectivity dates to every BOM row, flattens or keeps phantom assemblies according to your Maestro setting, and turns subcontracting orders into receipts with component demand | 150+ operators including BOM explode and flatten | Effectivity coverage per assembly; phantom handling stated per part |
Every check is a rule with an owner. A failed row is held with the rule and the row; the load continues with the rest and the report says what was held. Examples from the showcase estate:
| Check | Kind | Example | When it fails |
|---|---|---|---|
| Every part referenced by a source, BOM, receipt or demand row exists at that site | Completeness | 1,204 STPO components at plant 1000 with no MARC record | Rows held; exception to the material-master owner; load continues |
| Every make source has at least one BOM row and a routing valid on the load date | Completeness | PV02 for P-1001 has a BOM alternative with zero valid components on the load date | Exception to the BOM owner |
| Quantity-per and units are positive and convertible to the part's unit | Quality | Component supplied in cases with no conversion to each | Exception to the item owner |
| Effectivity windows are consistent: in-date before out-date, no overlap between alternatives | Consistency | Alternative 1 and 2 both valid on 2026-07-01 | Exception to the BOM owner |
| Batch stock sums to storage-location stock; storage-location stock sums to plant stock | Consistency | MCHB total differs from MARD total for one material | Exception with both figures side by side |
| Open order quantity = ordered − delivered, and never negative | Quality | A schedule line delivered twice in history | Exception to the buyer |
| Confirmed delivery date is on or after the order date; requested quantity ≥ confirmed | Quality | 16 schedule lines with confirmed dates before order dates | Held; exception to the planner |
| Record counts and quantity control totals per table match the source | Completeness | Every table, every load | Load report stays open until they match |
| The calendar covers the planning horizon for every site | Completeness | Site 2100 calendar ends 2026-12-31 | Exception to the site planner |
Integration suites such as Informatica sell data integration, data quality, the catalog and lineage as separate services on one consumption meter, and a team stitches the four together for each load. Lima runs the four as one surface. The screen above is the same for every load into Kinaxis Maestro: each step from the SAP or Oracle order table to the Maestro IndependentDemand row shows its row count; the rule that stopped a row shows the row and the person who owns the fix; the fix is applied where the row stopped and the replay starts from that step. Column-level lineage is recorded from the run itself, so the trace from a number in Kinaxis Maestro back to the ERP table is current every morning without a scanning project.
A rule such as "confirmed date is on or after order date" is written in words, previewed on live rows, versioned, and owned by a named person.
A row that fails a rule becomes an exception with the row, the rule, an owner and a deadline. The load carries on with the valid rows and says what it held.
Every step records what it read and wrote at column level, so the trace from a planning number back to the ERP field is captured as a by-product of running.
Values the ERP never held — hierarchies, changeover matrices, demand-stream rules — live in Lima with an owner and an effective date.
Results return to the ERP as transactions the ERP confirms; the confirmation is stored and reconciled against what was sent.
Each load carries its window and deadline; a tripped rule pauses the run and the clock, and the run resumes from its checkpoint after the fix.
Maestro is loaded on its planning calendar; every load ends with a reconciliation report; the plan it produces returns to the ERP as transactions the ERP confirms.
Changes since the last load, in dependency order, inside the window; counts and control totals per table.
Sales-order and receipt changes every 15 minutes where you want them, so the plan sees today's orders today.
A complete refresh with the same checks, used after mass changes or a new site.
| Result | SAP transaction | Oracle interface | How it is confirmed |
|---|---|---|---|
| Planned orders | BAPI_PLANNEDORDER_CREATE · BAPI_PLANNEDORDER_CHANGE | WIP job interface (WIP_JOB_SCHEDULE_INTERFACE) | Acknowledgement and order number stored against the Maestro record; counts reconciled; failures re-queued with reason |
| Purchase requisitions | BAPI_PR_CREATE | PO_REQUISITIONS_INTERFACE_ALL | Requisition number stored; acknowledged and reconciled |
| Approved master-data corrections | BAPI_MATERIAL_SAVEDATA (lead times, safety stock) | Item interface | Second-person approval in Lima, then the acknowledged write; visible on the next extraction |
How a first load into Maestro runs, with the checks doing their job. Figures are from the showcase estate.
| Program | What it gives you | Status |
|---|---|---|
| Kinaxis PartnerLink · Solution Extension | A Kinaxis-certified application badge planning COEs check for | Application planned · Q4 2026 |
| Maestro agent marketplace | A listing for Lima's ETL-runner agent beside Maestro's own agents | Planned · after PartnerLink |
| Systems integrator delivery | Delivery by your SI or ours on the same fixed-scope offer | Available |
One engine underneath every page in this family. It reads from any source and writes to any target, runs batch loads or change-data streams, handles a nightly delta or a multi-terabyte migration, and is licensed by capacity, so the bill stays the same however many rows move. Lima's fabric answers questions on data in place; Lima Backbone moves, transforms and returns data on a deadline. When to federate and when to pipeline · The Backbone hub.
Maestro accepts loads through its file and API interfaces, and Lima produces those loads: the source resolution, the ordering, the checks, the reconciliation and the run-window schedule. Your Kinaxis team keeps its data model, its scenarios and its resources.
Each ERP is a source on the same pipeline. Consolidation resolves the item, site and unit differences into one Part code before the load, and the report shows the counts per ERP.
A subcontracting purchase order becomes a ScheduledReceipt for the finished part and component demand at the subcontractor for the parts you supply, from the order's component list (RESB).
Net-change runs nightly before the planning run, with intraday loads for order changes every 15 minutes where you want them; the dashboard shows lag and window margin.
Planned orders and purchase requisitions through released BAPIs and Oracle open interfaces, plus approved master-data corrections after a second-person approval — each acknowledged and reconciled.
Yes. One plant or one product family is the usual first dataset; the pattern extends from there.
One planning dataset, four weeks, fixed price, with the checks above run on your own data and a reconciliation report at the end.