Sign in

Arend-Jan Kauffmann

@aj.kauffmann.nl
392 followers 67 following 42 posts

🏠 Dutch 👨‍👩‍👧‍👦 (Grand)father 🏢 CTO @ Lumos 365 Ltd. 🖥️ Microsoft Dynamics 365 Business Central 🏅 Microsoft MVP 📝 kauffmann.nl ⚡ Opinionated

PostsRepliesMedia
Arend-Jan Kauffmann @aj.kauffmann.nl · 14/06/2025
It was fun presenting with Dmitry Katson at @bctechdays.com about vibe coding vs. hand-crafted AL. It turned out that AI is helpful, but not for every step on the way. The conclusion was evident: It takes a captain to use a copilot! The community voted and thought the same. But, we had our beer! 🍻
251
Arend-Jan Kauffmann @aj.kauffmann.nl · 14/06/2025
The @bctechdays.com bear has been adopted!
0111
Arend-Jan Kauffmann @aj.kauffmann.nl · 14/05/2025
Thanks for confirming. My point is that there is an AL:Package command in VS Code. I don't like mixing up command names. It's either package or compile. And in this case package is the correct term. Call me purist or perfectionist (which I am actually), but I'm a bit of a stickler for accuracy.
020
Arend-Jan Kauffmann @aj.kauffmann.nl · 14/05/2025
In fact this is packaging, right? Compiling means translating into another language.
100
Reposted by Arend-Jan Kauffmann
Areopa webinars @areopawebinars.bsky.social · 13/05/2025
😯 Did you learn your lessons? 🫢 @aj.kauffmann.nl told us he did! In this session, with a lot of demos, he told all about his "Lessons learned from using Power Automate approvals with Business Central". Link to the learning material on YouTube: bit.ly/3F7NNH6 #MSdyn365BC
bit.ly
20250512 - Lessons learned from using Power Automate approvals with Business Central
It's quite easy setting up Power Automate approvals to work with Business Central. However, after the initial setup there are quite some pitfalls and you may find yourself wrestling with unexpected behavior. This session will discuss various lessons learned from implementing Power Automate approvals with Business Central. We will discuss the proper way of canceling approval requests, monitoring progress, exception handling and maintaining and upgrading existing approval flows. Combined with many demos this session will give you a lot of take-aways that can be applied immediately in your daily work. Presenter: Arend-Jan Kauffmann Moderator: Bert Verbeek 00:03:19 - Introduction Arend-Jan 00:03:51 - Lessons learned while... 00:06:25 - Common Sense 00:08:34 - Maintaining existing flows 00:09:45 - Using variables for environment and company 00:14:35 - Demo 00:25:19 - Power Automate Approvals 00:33:46 - Demo 00:44:59 - Canceling an approval flow 00:47:22 - Demo 00:50:28 - Upgrading approval request 00:54:46 - Request an approval as delegated admin 00:56:38 - Delete approval workflow as delegated admin 00:58:03 - Investigating why a flow is stuck 00:59:35 - Handling error situations 01:02:58 - Q&A
085
Reposted by Arend-Jan Kauffmann
Areopa webinars @areopawebinars.bsky.social · 10/05/2025
🔊 🔊 🔊 🔊 Learn from @aj.kauffmann.nl lessons learned!!!! 🔊 🔊 🔊 🔊 Coming Monday, May 12, AJ will share his lessons learned using #powerautomate approvals with #msdyn365bc. Join AJ to save yourself a lot of hassle. Did not subscribe yet? Use the registration on our website areopa.academy
areopa.academy
areopa.academy – Microsoft Dynamics 365 Business Central Expert Webinars
084
Arend-Jan Kauffmann @aj.kauffmann.nl · 02/05/2025
Full house at Days of Knowledge Nordic organized by Directions4Partners #msdyn365bc #doknordic
060
Reposted by Arend-Jan Kauffmann
BC TechDays @bctechdays.com · 14/04/2025
🚨 Workshops are filling up fast! 🚨 Several of our #BCTechDays workshops on Wed 11 June are already SOLD OUT — thanks to everyone who’s registered so far! 🙌 There are still spots available for our Tue 10 June #msdyn365bc workshops. 🎯 Secure your place before they're gone
063
Arend-Jan Kauffmann @aj.kauffmann.nl · 11/04/2025
That's easy, the Rest Client module supports mocking test results. You don't need to use the new HttpClientHandler feature in test codeunits for this, it's a built-in feature of the Rest Client itself.
160
Arend-Jan Kauffmann @aj.kauffmann.nl · 21/03/2025
I had this idea for my session at Directions NA! Great minds... 😊
010
Arend-Jan Kauffmann @aj.kauffmann.nl · 20/03/2025
I'm also using it daily. But I can't get used to how the Tab key works with auto completion. When a dropdown is open, then I expect Tab to insert the selected value rather than a suggestion. I can't find a setting for this. Using Enter for dropdowns and Tab for suggestions is very uncomfortable.
000
Reposted by Arend-Jan Kauffmann
BC TechDays @bctechdays.com · 14/03/2025
What are you waiting for? Registrations for #BCTechDays are open. Reserve your seat today!
086
Arend-Jan Kauffmann @aj.kauffmann.nl · 15/03/2025
The Rest Client is my favorite. 😊
050
Arend-Jan Kauffmann @aj.kauffmann.nl · 10/03/2025
I have solved this in the past with a local web service and Azure Relay Hybrid Connection. Works like a charm.
120
Arend-Jan Kauffmann @aj.kauffmann.nl · 05/03/2025
Thanks, and yes, alguidelines.dev is part of my source to pick ideas from. I may mention LinterCop. But the focus is on real knowledge. Tools are most useful when you understand what they do and why they do it.
120
Arend-Jan Kauffmann @aj.kauffmann.nl · 05/03/2025
I'm preparing a session about AL fundamentals you should know, even in a world of AI and Copilots. Think of properties, patterns, code that could be replaced by setting a few properties, etc. Looking for input, what should I definitely not forget to cover? #msdyn365bc
280
Reposted by Arend-Jan Kauffmann
Jesper Schulz-Wedde (MSFT) @jespersw.bsky.social · 27/02/2025
@aj.kauffmann.nl's work on the REST Client module is a perfect example of #TogetherWeWin. Bit by bit, AJ is adding improvements, to the benefit of us all. Now, making REST calls with #MSDyn365BC is as easy as 1,2,3 🚀 Thanks AJ 🙏 Here the latest #WhatsCooking 🎞️: www.youtube.com/watch?v=qNHU...
youtube.com
What's Cooking in Business Central: Cookies and collectible errors in the REST Client
YouTube video by Microsoft Dynamics 365 Business Central
0131
Arend-Jan Kauffmann @aj.kauffmann.nl · 26/02/2025
The typical use case is transferring data from a buffer table without code in the triggers to the target table. For example a buffer table filled by an API call.
030
Arend-Jan Kauffmann @aj.kauffmann.nl · 24/02/2025
HttpContent.ReadAsStream (in .Net) copies content into a memorystream (buffered in memory). That's why you can still read the stream while the original HttpContent is already out of scope. In my opinion this is a hack. I'd rather have a solution that works with properly scoping the variables.
030
Arend-Jan Kauffmann @aj.kauffmann.nl · 19/02/2025
Codeunit 2351 "Rest Client Impl." implements a few Create() and Initialize() functions to assign default implementations to interfaces in case none were provided. All public functions call CheckInitialized() to enforce the codeunit is initialized. A real constructor like C# classes would be welcome!
070
Arend-Jan Kauffmann @aj.kauffmann.nl · 15/02/2025
No, that's my point. Of course it makes sense placing triggers in the correct order. But with nested dataitems the triggers of the outer dataitem come after the inner dataitem. Which makes it less readable.
040
Arend-Jan Kauffmann @aj.kauffmann.nl · 15/02/2025
Creating some logs today...
080
Arend-Jan Kauffmann @aj.kauffmann.nl · 14/02/2025
Now do the same with nested dataitems so that the order of triggers in outer and inner dataitems make sense. 🫣🙃
140
Arend-Jan Kauffmann @aj.kauffmann.nl · 11/02/2025
Interesting session from Rob Oud at Dutch Dynamics Community about the new Word add-in for reports In Business Central. With a valentine's day theme. 😊 #msdyn365bc
030
Arend-Jan Kauffmann @aj.kauffmann.nl · 11/02/2025
You should look at the Rest Client module. Much easier to work with!
020
Arend-Jan Kauffmann @aj.kauffmann.nl · 11/02/2025
Yup, Copilot can be wrong. You are still the captain. 😊 And next edit is really a new feature and not just suggesting the next few (new!) lines. For example, change purchase to sales on one line and then it suggests similar changes on other (existing!) lines in the same procedure.
100
Arend-Jan Kauffmann @aj.kauffmann.nl · 11/02/2025
That is called auto completion. But this new feature suggests modifications to other existing lines, based on what you changed. See the video.
000
Arend-Jan Kauffmann @aj.kauffmann.nl · 11/02/2025
This is not about the usual auto completion, but the next edit suggestion. After modifying something it automatically suggests modifications on other lines than the current. That's really powerful and a good addition to auto completion.
110
Arend-Jan Kauffmann @aj.kauffmann.nl · 11/02/2025
That's another option indeed. But generally I don't need absolute line numbers. If I'm looking for a line number it's always relative to the function. So I chose to not waste the space. 😊
010
Arend-Jan Kauffmann @aj.kauffmann.nl · 11/02/2025
How many times did you count lines in an AL code function to get to the line reported by the debugger? Change the way how line numbers are displayed to relative, place the cursor on the procedure line and you'll easily find the line number you are looking for! #msdyn365bc
2142
Arend-Jan Kauffmann @aj.kauffmann.nl · 11/02/2025
I've just enabled Copilot Next Edit Suggestions in VS Code. That's a significant improvement!
240
Arend-Jan Kauffmann @aj.kauffmann.nl · 07/02/2025
And then a codeunit gets close to a class in C#. Now we are talking, go for it!
050
Arend-Jan Kauffmann @aj.kauffmann.nl · 07/02/2025
Good article, @yzhums.bsky.social. Just two comments: Unbound functions may have multiple parameters (simple type obviously). Then you can use real JSON instead of stringified JSON. BC connector in Power Automate fully supports unbound actions.
110
Arend-Jan Kauffmann @aj.kauffmann.nl · 07/02/2025
And what would these new opportunities be? 🤔
120
Arend-Jan Kauffmann @aj.kauffmann.nl · 07/01/2025
Great post! It reminds me of this blog post I wrote almost 7 years ago. 😊 www.kauffmann.nl/2018/03/24/t... Tip: you may want to add the actual database operation to the diagram.
kauffmann.nl
Table trigger events in Dynamics 365 Business Central
With this blog post, Microsoft announced the March update of the Developer Preview. The usual Docker images will be publicly available on April 2nd and will contain the Microsoft Dynamics 365 Busin…
130
Arend-Jan Kauffmann @aj.kauffmann.nl · 23/12/2024
First time speaking at @colorcloudrocks.bsky.social. I'm really looking forward to it!
081
Arend-Jan Kauffmann @aj.kauffmann.nl · 20/12/2024
Don't worry, I'll manage. Good reason to work on my German skills.
020
Arend-Jan Kauffmann @aj.kauffmann.nl · 20/12/2024
It's not only about cookies. The support for collectible errors makes usage of the Rest Client even more versatile!
040
Arend-Jan Kauffmann @aj.kauffmann.nl · 20/12/2024
This is an interesting topic! I'll definitely join this one!
110
Arend-Jan Kauffmann @aj.kauffmann.nl · 20/12/2024
And no comments on eating cookies... 🤭
150
Arend-Jan Kauffmann @aj.kauffmann.nl · 20/12/2024
It's not 'my' module but rather ours. And with ours I don't mean you and I, but the whole BC community! 🤗
140
Arend-Jan Kauffmann @aj.kauffmann.nl · 07/12/2024
Adding error collection behavior to the Rest Client module. This means you can catch errors outside the module and implement your own exception handling. #msdyn365bc
070
Arend-Jan Kauffmann @aj.kauffmann.nl · 07/12/2024
Doing some nice Saturday work... #msdyn365bc
2120
Arend-Jan Kauffmann @aj.kauffmann.nl · 02/12/2024
HttpClient and certificate validation in Business Central v25 www.kauffmann.nl/2024/12/02/h... #msdyn365bc
kauffmann.nl
HttpClient and certificate validation in Business Central v25
You may have heard about a change in Business Central v25 regarding validating remote certificates when calling an external web service. If this is new to you, then please read this blog post from …
0165
Reposted by Arend-Jan Kauffmann
waldo @waldo1001.bsky.social · 29/11/2024
📢 New Blog Did you upgrade to v25 already? Then you're the proud owner of the new "Subscription Billing" functionality. Don't need it? Then here's how to clean up: www.waldo.be/2024/11/29/u... #msdyn365bc
waldo.be
Business Central Fall Cleanup
Lots of customers are in the process to move to that latest and greatest.  Me personally, I’m looking forward to have all our customers on v25, not in the least for the new “Modern…
3174
Arend-Jan Kauffmann @aj.kauffmann.nl · 21/11/2024
Yes, that was the reason
000
Arend-Jan Kauffmann @aj.kauffmann.nl · 21/11/2024
Lesson learned: browser add-ins like Grammarly, that inject code into a text field for showing options like spelling corrections, cause Copilot in BC to fail. #msdyn36bc
3103
Arend-Jan Kauffmann @aj.kauffmann.nl · 20/11/2024
With an interface extension and casting it should be possible.
120