Fourteen days on the showcase estate
How the proof-of-scale runs into Fabric on the showcase estate's largest tables. Figures are from the showcase estate.
scope
profile
initial load
change data
cost
use
hand-over
Lima Backbone lands SAP and Oracle data in your Fabric workspace as Delta tables in a OneLake Lakehouse — raw as loaded, conformed across ERPs — with every table reconciled, and keeps it current with change-data capture. Power BI reads the tables directly through Direct Lake. Extraction and transformation run on Lima's own capacity, so your Fabric capacity units stay for Power BI and analytics, and no Datasphere subscription is needed on this route.
Everything lands in your workspace as Delta tables in a Lakehouse on OneLake. The raw layer keeps SAP and Oracle as they are; the conformed layer is where the decimals are shifted, the keys trimmed and the ERPs joined — written in the order Power BI reads fastest.
| Layer | What lands there | How Lima writes it | Status |
|---|---|---|---|
| raw tables | Every extracted table as loaded, productive client only, raw values kept, typed correctly (decimal with scale, date, datetime2) | Delta written to OneLake in parallel by partition; change data merged by full key | Shipped |
| conformed tables | Item, site, customer, order and accounting tables across ERPs with decimals shifted, keys trimmed, texts and code descriptions joined; V-Ordered for Power BI | Built from raw by Lima operators; reconciled against raw totals | Shipped |
| SQL analytics endpoint | T-SQL access to the same tables for analysts and tools | Created with the Lakehouse; nothing extra to load | Shipped |
| Direct Lake semantic model | Power BI reports on the conformed tables without an import refresh | Your Power BI team builds the model on the landed tables | Shipped |
| History tables | Closed periods and retired systems under retention rules and legal hold | Offload and decommissioning runs | Shipped |
| Delta and Iceberg on your own storage | Open table formats written outside OneLake for engines beside Fabric | On the published standards schedule | Scheduled · standards plan |
These are the reasons a straight copy of ERP tables produces wrong totals. Each has a cause in how the ERP stores data and an effect an analyst sees.
Three things are specific to landing in Fabric. Capacity units: everything that runs inside Fabric draws on one capacity, so a heavy SAP extraction inside it slows the Power BI reports it was meant to feed. Direct Lake: Power BI can read Delta tables in OneLake directly, without an import refresh, when the tables are written in the right layout (V-Order) and kept current. Lakehouse versus Warehouse: the two hold data differently; the tables have to land where the reports will read them.
The figure follows one accounting line from SAP into Microsoft Fabric. The table maps all six problems and the Microsoft Fabric-specific ones.
| Problem | What Lima does | The capability behind it | What you see |
|---|---|---|---|
| 1 · Client and org | Filters to the productive client (and the operating units you name) on every table, and records the client in the landed row | Connector settings per source; lineage records the filter | Row counts per client before and after the filter |
| 2 · Keys | Keeps every key column, adds a trimmed business key beside the raw one, and enforces uniqueness on the full key before the write | Key-aware transformation operators; uniqueness rules | Key coverage per table; duplicates listed with owners |
| 3 · Dates and times | Converts eight-character dates and six-character times to real date and timestamp columns, turns the zero date into null, and converts system time to UTC with the source's time zone | Type-aware SAP operators | Conversion counts per column; anomalies listed |
| 4 · Amounts and units | Applies the currency decimals table to every amount, keeps the unit beside every quantity, and checks totals per company code and period against the ERP | Currency and unit rules; control totals | Totals per company code and period, raw and shifted, against the ERP |
| 5 · Wide and cluster tables | Reads ECC cluster tables through a named function module that unpacks them, and lands wide tables with their full column set, partitioned by period | Named SAP read paths; partitioned parallel loads | Column coverage per table; partitions with counts |
| 6 · Change capture and deletes | Finds changes through change documents, change pointers, timestamps or triggers depending on the table, applies deletes, and replays late rows from the watermark | Change-data capture with per-table methods; ordered replay | Method per table; lag and deletes applied per run |
| Fabric · capacity | Runs extraction and transformation on Lima's own cluster and writes finished Delta tables to OneLake, so Fabric capacity units are spent on reads and reports | Lima's capacity tiers; parallel Delta writes | Capacity consumed by the load, shown beside the rows written |
| Fabric · Direct Lake | Writes the conformed tables V-Ordered and keeps them current with merged change data, so a Direct Lake semantic model reads them without an import refresh | Target-model catalogue for Fabric; change-data merges | Tables ready for Direct Lake, with their last-reconciled time |
Every check is a rule with an owner. A failed partition reruns from its checkpoint; a failed row is held with the rule and the row; the report stays open until every table reads Reconciled.
| Check | Kind | Example | When it fails |
|---|---|---|---|
| Row count per table and per partition equals the source, for the productive client only | Completeness | BSEG fiscal 2024: 132 monthly partitions, each counted | Partition reruns from its checkpoint; report stays open until they match |
| Amount control totals per company code and period match the ERP's own totals after the decimal shift | Consistency | Sum of BSEG amounts for company code 1000, period 2024-03, in JPY and EUR | Exception to finance with both figures |
| Quantity control totals per unit match the source | Consistency | MSEG quantities per unit of measure, plant 1000 | Exception to the data owner |
| Every key is unique in the target and every key column is present | Quality | Company code, document, year and line together on accounting lines | Load refused for the partition; owner notified |
| Zero dates become null; no date lies outside the valid range | Quality | '00000000' in 1.4 million rows of one table | Converted and counted; anomalies listed |
| Every currency used has a decimals entry; every unit pair used has a conversion | Completeness | 9 rows in a currency with no entry in TCURX | Rows held; exception to finance |
| Rows deleted in the source are removed in the target | Consistency | Weekly full-key compare on schedule lines and conditions | Deletes applied; count reported |
| In the conformed layer, every child has its parent | Consistency | Every sales-order item has its header; every line has its material | Exception to the data owner |
| Change events applied in order; lag below the agreed threshold | Consistency | Watermark per table; lag shown on the dashboard | Run pauses and resumes from the checkpoint |
| Tables land in the Lakehouse the semantic model reads, with the approved schema | Quality | A table written to a Warehouse the report cannot read | Write refused; owner notified |
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 Microsoft Fabric: each step from the SAP or Oracle table to the Microsoft Fabric table 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 Microsoft Fabric 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.
After the initial load, Lima keeps the raw and conformed tables minutes behind the source; Power BI reads them through Direct Lake, and the same data serves questions, agents and planning loads without another copy.
Inserts, updates and deletes found per table by the method that table allows, merged into the raw tables, then re-conformed; late rows replayed from the watermark; 1 minute 48 seconds behind SAP on the showcase estate.
Replication and sync →A Direct Lake semantic model reads the conformed tables as they are; a report shows the change minutes after SAP posted it.
Extraction and transformation ran on Lima's cluster; a heavy SAP load never slows a report.
ChatLima joins OneLake history with live SAP stock in one query; planning loads draw demand history from the conformed tables on the calendar.
Planning integration →How the proof-of-scale runs into Fabric on the showcase estate's largest tables. Figures are from the showcase estate.
| Program | What it gives you | Status |
|---|---|---|
| Microsoft partner listing | Recognised technology partner status | Planned |
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.
Lima reads SAP through interfaces SAP keeps open, fixes the six problems above on the way, reconciles every table, and writes finished Delta tables to OneLake on its own capacity. Your capacity stays for Power BI and analytics, and no SAP replication subscription is needed on this route.
Yes. They are Delta tables in a OneLake Lakehouse, written V-Ordered; a Direct Lake semantic model reads them without an import refresh.
The write into OneLake is the only part inside Fabric; extraction and transformation run on Lima's cluster. The report on day nine shows the capacity consumed.
The tables land in the Lakehouse the semantic model reads; the SQL analytics endpoint gives T-SQL access to the same tables. A Warehouse copy is made only if a report needs it.
Lima's methods sit outside the interface SAP restricted in Note 3255746, so the December 2026 change has no effect on this path.
Two weeks on your largest tables into Microsoft Fabric: terabytes moved, rows per minute, reconciliation variance, and cost per terabyte beside the metered alternative you run today.