As we are close to another major release, I will try to share some insights into upcoming changes. I do not want to repeat other authors and blog posts, as I think there are already enough posts about the most visible changes. Instead, I will describe the changes I...
AL Language
Replace NoSeriesManagement with the new BC Foundation No. Series app (1/2)
In BC 2024 wave 1, Microsoft will introduce a new Business Central Foundation Layer with the first app - redesigned No. Series. A few weeks back, Microsoft merged their changes into the BCApps repository (see the pull request here: Introducing new Business Foundation...
BC Open Source? How to start?
BC Open Source? How to start? One of the most exciting news introduced last month in Lyon during Directions EMEA 2023 was the changes to the open-source initiative. This means that you can now contribute to the source code of the Base app and the System app, which are...
Validate a FlowField Field. Wait? What?
Validate a FlowField Field. Wait? What? There are not many things in the AL Language that surprised me. However, last week, I found one such thing - I reviewed customizations made by another partner and had to analyze the OOTB code of the Demand Forecast matrix. I run...
Synchronizing countries from D365 Sales to D365 Business Central
Surprisingly, the out-of-the-box integration between Microsoft Dynamics 365 Sales and Microsoft Dynamics 365 Business Central does not synchronize countries. Why? Because it could be hard to maintain this synchronization as, by default, the country field in D365 Sales...
Dynamics NAV 2013 & Expired Cronus License
We found an interesting problem - we were not able to run the development environment for Dynamics NAV 2013. Whenever we tried to run the development client, we got the following error message: "Your program license has expired" and the development client has closed...
Time, DateTime, Production Orders and Time Zones – not what I expected
I decided to write this post to describe a problem we are dealing with when we are working with production orders through API or when there are users working in different time zones. Let's start with a quick introduction. Business Central has two datatypes that can...
Indirect Dependencies and Access Modifiers
Last week, there was a discussion on Yammer on how to get values from the "Sent Email" record when all fields are marked as Internal. I was surprised that many people do not know what can/can't access modifiers (such as local, protected, or internal) be used for. I...
AL Extensions: Replace Document Attachment
I have published a new simple, open-source extension that allows replacing existing document attachments in all master entities as well as in open documents. The source code as well as the app file that can be installed in your environment is available on my GitHub...
Clean up your copied environments
One of the most important things every developer should handle is to clean up the environment when the environment (or a company) is copied. Especially if the environment is managed directly by a client and they can create new copies anytime. Similarly, for copied...
7 git commands you should know
For many years, developers in C/AL did not need to know anything about Git or other versioning tools. That has changed with Business Central, or more specifically with AL Language. Today, we will look at the most important (and basic) git commands any developer should...
How to define the source for item reservations?
It's not uncommon to have a customer's request to limit from which source items could be reserved. For example, customers may not want to reserve items from return orders. How can we achieve this goal? It's really simple. All the magic is done in the procedure...
NavigationAction for ErrorInfo data type
One more article about ErrorInfo data type. Have you already read my previous posts about ErrorInfo and Collectible Errors? ErrorInfo data type & Collectible Errors | MSDyn365 Business Central - Ing. Tomáš Kapitán (kepty.cz) Collectible Errors?! | MSDyn365...
Error actions for ErrorInfo data type
It is already almost one and a half years since the ErrorInfo data type was introduced (we saw this data type for the first time in BC2021w2). If you do not know what it is and how to use this data type, check my previous posts: ErrorInfo data type & Collectible...
Data types under the microscope: List
The List data type in AL language represents an ordered collection of objects that can be accessed by their index. Unlike an Array data type, a List does not have a fixed size and does not need to have its dimension specified when it is declared. The List data type...
131005 “Library – Dialog Handler” – build test handlers differently
Test UI Handlers are necessary in many cases if you want to test any logic that shows confirm, message, or different page... The most common are ConfirmHandler (to handle Confirm()) and MessageHandler (to handle Message()). To find out more about Handlers, check...
Connect to Azure Function in BC 2022 wave 2 (v21)
The new version of the Microsoft Dynamics 365 Business Central brought a new system module "Azure Functions" that makes integration with Azure Functions much easier and straightforward. The typical scenario, why to use Azure Functions together with Business Central,...
Debugging and launch.json improvements in BC 2022 wave 2 (v21)
In the new version of Microsoft Dynamics 365 Business Central, there are also some changes to the debugging and launch.json configuration. Launch specific company Having more than one company within your development environment is rare. However, having more companies...