All case studiesPharmaceutical distribution

Upgrading 1,300 customized objects from Business Central 14 to 27 for a pharmaceutical distributor

A regional pharmaceutical distributor needed 1,300+ customized objects and 20+ integration touchpoints moved from Business Central 14 to 27 without pausing daily shipping. With its in-house developer, we converted the C/AL code to AL, split it into two apps, ran four UAT rounds, and went live in August 2026.

2025 – 2026 (JTANG partner since 2021) · Business Central · 5 min read · Published

Industry
Pharmaceutical distribution
Period
2025 – 2026 (JTANG partner since 2021)
Scale
1,328 objects
19 modules
2 apps
214 report layouts
Platform
Business Central 27 on-premises, AL (converted from C/AL-era customizations); Insight Works Warehouse Insight; Continia Document Capture.
Building blocks
Insight Works Warehouse InsightContinia Document Capture

The client and the system

The client is a regional pharmaceutical wholesale distributor running two operating companies in one Business Central database. Its system carries years of customization from two earlier partners, an in-house developer, and us. We have worked on it since 2021, across 160 work orders, sharing the development with that in-house developer. Until August 2026 all of it ran on Business Central 14 on-premises, with the customizations written in C/AL.

The system also talks to a long list of outside parties. Pharmacy point-of-sale systems send orders in and receive invoices and catalogs over FTP. A customer web portal connects through OData. Payment files and direct debits go to the client's banks, and bank statements come back in. Suppliers send EDI 810 invoices, and sales and inventory feeds go out to chains and manufacturers. Then there are carriers, mobile warehouse scanning, an automated storage carousel, document capture, email and e-fax notifications, regulatory reporting for controlled substances, and exports to Power BI.

The challenge

Moving to Business Central 27 meant converting the C/AL customizations to AL, on a system the business could not switch off. The upgrade had to:

  • Move 1,300+ objects and 20+ integration touchpoints without pausing a business that ships daily.
  • Preserve every customization layer, whoever had written it.
  • Keep the controlled-substance controls intact.

How the upgrade ran

  1. Mar–Apr 2025Converted 1,322 files from C/AL to AL and fixed the converted code.
  2. May 2025Worked out the data upgrade from the Business Central 14 database.
  3. Jun–Jul 2025Reworked the code for the Business Central 27 platform.
  4. Jun–Jul 2025Split the extension into two apps, a schema app and a code app, so code can be republished without touching the schema.
  5. Aug–Sep 2025Resolved the app dependencies and merged in the latest changes from the live Business Central 14 system.
  6. Oct 2025 – May 2026Ran four rounds of user acceptance testing, plus dry runs.
  7. Mar–Apr 2026Built new features for go-live: bank-reconciliation matching, drop-shipment invoicing, passing vendor credits on to customers, credit-card-fee invoices, and purchase-invoice analytics.
  8. Jun–Jul 2026Added cut-over tooling: a one-click pick-and-post, and an import for the job-queue schedule.
  9. Aug 2026Went live on Business Central 27 and started hypercare.
  10. Sep–Oct 2026Moved to production support.

What is in the system today

The upgraded system holds 1,328 objects in two apps, grouped into 19 modules. It adds 131 custom tables and 82 table extensions with 837 new fields. Its logic hooks into the platform through 341 event subscriptions across 123 event publishers, and reporting runs on 339 reports with 214 report layouts.

Core setup & configuration

Shared setup and a configuration store for the other modules.

Customers, chains & restrictions

The customer master, chain membership, and customer-level restrictions.

Item master & product data

Item records and the product data attached to them.

Pricing, deals, rebates & promotions

How prices, deals, rebates, and promotions are set up and applied.

Sales order processing & allocation

Order processing and the allocation of stock to orders.

Controlled substances

The controls and regulatory reporting that controlled substances require.

Routes, delivery & shipping

Delivery routes, shipping, and the carrier connections.

Warehouse & inventory

Mobile scanning pages, picks, put-aways, the storage carousel, counts, and lots, in 190 objects.

Purchasing, replenishment & AP

Purchase orders, stock replenishment, and accounts payable.

Returns, recalls & vendor claims

Customer returns, product recalls, and the claims that go back to vendors.

Finance & banking

Bank payment files, direct debits, statement import, reconciliation, deposits, aging, and tax.

EDI & document capture

Supplier EDI 810 invoices and Continia Document Capture.

Pharmacy POS integrations

Orders in from pharmacy point-of-sale systems, and invoices and catalogs out over FTP.

Web portal & API

The OData services behind the customer web portal.

Email, notifications & printing

Email and e-fax notifications, and document printing.

Vendor & chain data feeds

Sales and inventory feeds to chains and manufacturers.

Sales analytics & BI exports

Sales analytics and the exports to Power BI.

Auditor exports & change log

Exports for the auditors and a change log of edits.

Administration & upgrade tools

Administration pages and the utilities written for the upgrade and cut-over.

Outcome

The client has been live on Business Central 27 since August 2026. Every module is documented, and the source code behind that documentation builds both apps with the same compiler results as production. The on-premises dependencies (.NET interop, direct SQL, and file and FTP access) are listed as the roadmap for any future move to Business Central online.

What we would tell another distributor

  • Split schema and code into two apps. Code can then be republished on its own, without touching the schema.
  • Tag every customization layer. When several partners and an in-house developer have changed one system over the years, the tags show which layer each change belongs to, so none is lost in the conversion.
  • Plan four UAT rounds for a system this size. On this project they ran from October 2025 to May 2026, alongside the dry runs.
  • Build cut-over tooling early. The one-click pick-and-post and the job-queue schedule import were built in June and July, ahead of the August go-live.

More case studies

Food manufacturing

One extension, ten modules: four years of Business Central for a short-shelf-life food manufacturer

Business Central · 4 min read

Wholesale distribution

Scan-to-verify shipments and automated EDI 812 chargebacks for a wholesale distributor

Business Central · 4 min read

Get started

Ready to modernize your ERP system?

Talk with JTANG Consulting about your Business Central implementation, upgrade, customization, integration, or support needs. Initial consultations are free, scoped to your business, and never pushy.