Migrating Control Add-ins from C/SIDE to AL
Thanks to everyone who watched my live stream today! The audience wasn't big, but it's a very narrow topic, not of broad interest. Still, I am glad I got a…
Thanks to everyone who watched my live stream today! The audience wasn't big, but it's a very narrow topic, not of broad interest. Still, I am glad I got a…
Thanks to everyone who attended my live blog yesterday, and to everyone who subscribed. It was so encouraging to see that you like this idea. As announced yesterday, my live…
It's time to turn a new page. You've noticed that I've been absent for a long time. No posts, no activity. Well, blogging takes time, and I am a sort…
The community often criticizes Microsoft for adding new platform features only when Microsoft needed them. Well, it has been a bit too harsh – Microsoft did add improvements in other situations, too. But still, if you compare it to other Microsoft’s languages like TypeScript or C#, the AL language isn’t really advancing.
Looking back at C/AL, the AL language has really brought a lot of improvements. We have native JSON types, HTTP API, interfaces, overloads, and a lot more. But still, the overall change of the AL language was minor improvement, rather than a real evolution that transition to VS Code could have allowed.
Here’s the list of top five things I’d absolutely love to see in AL. And I have strong reasons to believe that all of them would be fairly easy to implement for Microsoft. Let’s get started.
(more…)
I’ve never truly understood why we could explicitly commit a transaction, but we could only implicitly roll one back. There is a universe of difference between throwing an error (and ending the call stack), and rolling back (and continuing execution).
There was always a way to roll back and go on, sure. Wrap the entire thing in a if Codeunit.Run()
block, throw an error as the last thing inside that codeunit, and there you go. Problem solved. Well, not quite.