Microsoft Fabric
BI Endpoints data can be loaded into Microsoft Fabric lakehouses with Spark notebooks for scalable analytics. The Fabric Spark Notebook in the support material is a working example.
Use the sample notebook
- In Business Central, open BI Endpoints, expand the factbox pane, and download the Fabric Spark Notebook under Support Material. Unzip it.
- In your Fabric workspace, create a Lakehouse.
- Upload the notebook to the workspace.
- Replace the configuration values at the top of the notebook and run it:
# ==========================================================================
# CONFIGURATION - Update these values
# ==========================================================================
tenant_id = "YOUR-TENANT-ID"
client_id = "YOUR-APP-CLIENT-ID"
client_secret = "YOUR-CLIENT-SECRET" # For production, use Key Vault
bc_environment = "Production" # Or "Sandbox"
bc_company_id = "YOUR-COMPANY-GUID" # GUID of the company in BC
# Date range for GL Entries
from_date = "2025-01-01"
to_date = "2025-12-31"
The notebook loads the data into the lakehouse.
warning
Don't keep the client secret in the notebook in production. Read it from Azure Key Vault instead.
Incremental loading
Use the systemModifiedAt field to load only what changed:
- Store the last successful extraction timestamp in a control table.
- Filter API requests with
$filter=systemModifiedAt ge <last timestamp>. - Merge the changes into Delta tables by the endpoint's business key.
- Read
deletedEntriesfor the same period and delete those keys from the Delta tables.
This keeps data transfer and processing time to a minimum. The details are in Incremental loads and deletions.