How to Make your App Copilot Ready

Community Summit Recap: How to Make your App Copilot Ready

At Community Summit, Kristoffer and I presented a session called “How to Make Your App Copilot Ready”. We did not want the session to become another tour of sparkly AI features, because from the time we submitted our session abstract to the day we presented, the entire landscape of tools had changed. With everything moving so rapidly, we wanted our messaging to be relevant, and carry some weight when attendees left Nashville. As we reflected on our journeys as developers, we wanted to really explore the topic of

This question moved us away from asking whether an extension has an AI feature and toward asking whether an agent can understand the application, trust its data, and interact with its processes safely.

Our central message was simple: Copilot readiness is not an AI project. It is an application design discipline.

Read More »
GitHub Copilot Playbook

GitHub Copilot Playbook: From Reusable Prompts to Skills

Our first approach to reusable GitHub Copilot workflows was a library of reusable prompt files. You can read about my reusable prompt strategy in GitHub Copilot Playbook: Reusable Prompts. Each prompt represented a specific Business Central development task, such as extending Sales Lines or adding fields to a page. This worked well if the correct prompt was selected. The challenge was knowing which prompt to use (or if one even existed), understanding naming conventions and parameters, and choosing the right one for your implementation.

As the library grew to more than 50 custom prompts, the challenge was ensuring developers had the right prompt at their fingertips. Developers needed a way to find the right workflow without memorizing filenames, naming conventions, or prompt parameters. That raised a new question: how could we keep prompts specialized while making them easier to discover?

Read More »
Leveraging TestField as Actionable Errors

Leveraging TestField as Actionable Errors

As a Business Central Developer, we know that the quickest and easiest way to check if a field has a value is to call the TestField method on a Record. When used, the system checks to see if the field is not zero or a blank string. If there is not a value, we are used to getting an error.

TestFields have gotten some love at the platform level to help users quickly solve data problems and continue in their processes. This blog post will walk you through the changes in system behavior, and how to tweak your code to maximize user efficiency.

Read More »

Building Business Central Excel Reports with Copilot

Organizations rely on Business Central for operational and financial reporting, but many teams still export data to Excel when they need flexible analysis, custom layouts, or presentation‑ready visuals. Traditionally, this meant a significant amount of manual work: formatting, building pivot tables, adding calculated fields, and assembling dashboards.

What’s changed recently isn’t just one new feature, it’s the combination of Copilot capabilities across M365, and how they now naturally show up inside of Excel. When you put Excel Copilot, Agent Mode, and in‑place editing together, Excel stops being a passive spreadsheet tool and starts acting like an active reporting assistant.

Read More »

#HumpDayHacks: RecreateSalesLines

Have you ever seen a custom Sales Line field’s data just disappear? You sit there wondering why is that getting cleared out.

There is a procedure on the Sales Header RecreateSalesLines() that deletes and rebuilds all lines for the document after key header changes. It copies existing lines into temporary tables, validates header-driven changes, and then re-inserts lines via CreateSalesLine().

Read More »