Business Central
ERPL-Web turns a Business Central company into a DuckDB catalog. You can list companies and entities, pull data with predicate pushdown, or attach the whole company as a database.
Discover
SELECT * FROM bc_show_companies();
SELECT * FROM bc_show_entities(company => 'CRONUS Germany AG');
SELECT * FROM bc_describe(
company => 'CRONUS Germany AG',
entity => 'customer'
);
Read
SELECT no, name, balance_due
FROM bc_read(
company => 'CRONUS Germany AG',
entity => 'customer'
)
WHERE balance_due > 0;
Company names are resolved to GUIDs automatically — no manual lookup required.
Attach a company as a catalog
The most powerful pattern: turn a BC company into a queryable DuckDB database.
ATTACH 'CRONUS Germany AG' AS bc (TYPE business_central);
SELECT no, name FROM bc.customer;
SELECT * FROM bc.salesInvoice WHERE document_date > date '2026-01-01';
SELECT c.name, COUNT(s.id) AS invoice_count
FROM bc.customer c LEFT JOIN bc.salesInvoice s ON s.customerId = c.id
GROUP BY c.name;
Predicate pushdown, $expand support, and OData V4 metadata discovery are all built in.