Programming Microsoft Dynamics 365 Business Central – Sixth Edition

It’s a wrap. After 9 months of work the latest edition of the programming book is finished.

This is the sixth edition but the first to be AL only. A very specific choice that I made when I started on the project. And a bit of a gamble since I was unsure how long C/Side would last when we started.

When you buy the book you will recognise the script and programming examples. This is unchanged and based on the creativity of Chris Studebaker.

Also the wisdom of half a century worth of programming is untouched. The legacy of Dave Studebaker.

However, the book is probably 100 pages thinner than the previous (and last) C/Side version. Yet it contains just as much information.

The reason is relatively simple. “We” (as a community) moved to a standardised Code Editor.

Because C/Side is very specific the book spent a lot of time explaining it’s quirks which is necessary to get a newbie up to speed. With Visual Studio Code this is no longer required and there are plenty of getting started video’s and blogs.

Another thing that changed is the rapid changes that happen in both Visual Studio Code and the AL programming language. One example is a piece of code about changing the dropdown that was removed from the book at first because it was no longer possible. A few months later this was added to AL by Microsoft.

For this reason I tried to keep the book as specific to AL as possible.

Two other major changes are the move to Word as report editor and the removal of DotNET client add-ins.

The previous edition had a special chapter around specifics for RDLC. Since this is unrelated to AL it was removed. This edition covers how to create the Report’s DataSet and how to access that from Microsoft Word.

Another element that is removed is DotNET. This was replaced by JavaScript add-ins which is a specific technology for which a lot of information is already available. The basic interface is described on Microsoft Doc’s.

The result of the rewrite is a book which is more affordable and focusses on the essence of AL development. (The price went down together with the page count).

My hope is that we get more books around specific topics like Luc van Vugt did with Automated Testing.

Since we anticipated on the retirement of C/Side the book is future proof. We do not cover how to add your own events to Microsoft’s code. If you want to cover this I recommend the Quick Start Guide from Stefano and Duilio.

My next challenges would be to see how much work is involved in upgrading the Application Design book and the Design Patterns. The latter would probably be relatively doable. The Application Design book is a lot more difficult since it is based on doing core code modifications rather than teaching a programming language.

I’ve been involved in this book from day one. First as a reviewer, then co-author. The last two editions where updated completely by me while leaving the great work of the Studebakers in tact.

Enjoy the book and let’s make AL, in all it’s awkwardness, shine for a new generation of programmers.

https://www.packtpub.com/application-development/programming-microsoft-dynamics-365-business-central-sixth-edition

I wanted to thank Microsoft for making the AL-Only preview available just when I needed it for the examples in my book. The work would have been a lot harder without that.

Also thanks to Michael Nielsen for the AL Converter which was used to convert most of the example code in the book which can be found on GitHub. If you find any errors please do a pull request. https://github.com/markbrummel/Programming-Microsoft-Dynamics-365-Business-Central

1 Comment

  1. Ben says:

    All the links to your book on Packt return a 404.

    Like

Leave a Comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.