Monthly Archives: July 2019

Opinion – What will happen in fall with Business Central

As far as I remember, social media around Business Central/NAV(ision) has never been as quiet as in the last months.

There is nothing from the MVP’s anymore and it seems the majority of partners are in the dark about that’s going on at Microsoft.

While this is true, Microsoft is updating the GitHub with the new AL foundation periodically with new code but without explaining the strategy. (https://github.com/microsoft/ALAppExtensions)

In fall, Microsoft will release the first Business Central without C/Side and refactored AL and because of that the shipping of daily insider builds has been blocked for a few months.

In the “old days” Microsoft would have code freeze before summer vacation and partners would get a build (DVD) which was very close to what Microsoft would ship at Directions.

Now there is nothing, except the GitHub without any guidelines on how to use it.

I’ve seen speculation that foundation will be dozens of small extensions, but I think this is a false rumour. My expectation is that each BC install will have three extensions.

Foundation

This is what you see on GitHub today. Most of which is stuff that should probably be part of the AL programming language such as TempBlob and Excel Buffer. Things NUGET offers for DotNET.

Application

This is what we have today as General Ledger, Inventory, Sales & Purchase, Jobs, Manufacturing etc.

This will be based on Foundation, but not broken up into smaller extensions even though that would be my preferred choice. Microsoft should have started that years ago and now they simply lack the time and skills. They fired most of the functional folks years ago in favor of a large platform and UI team.

This will lead to much rewrite of code, but not as much as most think.

After this I hope and expect that the design of the Application will be frozen since Microsoft cannot expect their partners to continuously refactor their code. We simply don’t have the resources to do that. Most partners don’t even have automated testing in place and refactoring is too expensive.

Large partners can write their own Application on top of Foundation allowing them to be on AppSource without Microsoft having to add half a million events for each business case.

Localizations

This is probably the coolest part if Microsoft can pull it off. Each localization will be an extension on top of Foundation and Application

Speculation & Opinion

I’m writing this in order to start a discussion and get some feedback what others expect. The information in this blog post is in no way confirmed by Microsoft.

Advertisements

Meta UI Control Add-Ins for Business Central, how and why…

Today we’ve successfully completed a workshop at Vos Transport with Global Mediator where we did a demo/prototype of a new user interface defined on metadata embedded in Microsoft Dynamics NAV using client add-ins.

We’ve been working on preparing this workshop for over 12 months and I am very happy and proud of the result.

Client Add-Ins

Within Microsoft Dynamics NAV, client add-ins have been possible for a long time, yet not a lot of partners have picked up the technology except for edge cases such as Point of Sale and Rich Text Editors.

The problem we are trying to solve for Vos Transport is giving insight in the data to the users of the planning system. This is a customized part of their NAV system but you could compare it to Manufaturing or Service order scheduling challenges.

For many years we’ve struggled with the limitations of the NAV user interface such as lack of drag and drop, resizable rowheigts, conditional coloring, concattenating columns and double/right mouseclick events.

On top of that we wanted visual insights in the planning using either time lines and/or visual components in maps with modern options like heatmaps.

I’ve seen other partners build external components for this, mostly using Web Services but I’ve never felt comfortable with these since they make navigating back and forth to NAV very hard.

Flexible & Low-Code

Even though I am proud of our internal IT department at Vos, we cannot take the responsibilty of creating our own UI for something like this, and even if we could, we lack the in-house skills for such a level of front end development.

This is why we started to talk with Global Mediator to build a brand new Page Designer that allows a new level of UI flexibilty in NAV/Business Central.

The goal is that any NAV Admin person can configure these pages without any knowledge of complex frameworks. Just a little knowledge about the NAV datamodel, basic HTML and JavaScript will sufice. The later only for conditional formatting to create simple boolean expressions.

The Result

In essence the Meta UI tool allows you to convert any list page in NAV to a new format where any formatting rule can be applied, rows can be concattenated, pyjama printing can be applied and if you want, one column can be rendered as a representation of a time line.

The tool allows expandable subpages where multiple rows can be expanded at the same time allowing us to drag and drop for example a sales line from one sales order to another sales order.

Microsoft Graph API & JavaScript Add-Ins

The technology used behind the scenes are the new Microsoft Graph API and JavaScript Add-Ins. Both introduced in NAV2018 making that the “oldest” version to support the Meta UI.

If you want to build a Meta UI page on a cusomised table you need to generate the API definition which will automatically be added to the endpoint by the NAV framework.

Next Steps

The Meta UI will be taken into production this weekend and roled out for a few pilot users to give feedback, especially about the performance.

In September we will evaluate the experience and define if the tool will be implemented accross the whole company in all our offices across Europe.

Roadmap

We’ve already started the scope for the next project using the Meta UI tool which will include an HTML editor and a PDF viewer which is going to help us convert orders we receive in PDF format more automatically.

Are you interested?

Now that we’ve proven the technology and moved the first customer into production we want to talk to other NAV/Business Central partners who have the same need for a more advanced grid component, map controls, PDF viewers or HTML editors. Maybe you will challenge us to add more components to the toolbox.

It requires a minimal learning curve to get started and shows great results very quickly.

I will share some screen shots very soon as we will do some clean up first based on the workshops feedback.

Extending Role Centers

There should be a simple rule that applies to all members of our community. If you struggle with something and find out the answer, then share it. If everyone starts doing that I’m sure it will improve our community and bring back some joy in the world were even most MVP’s just blog so sell their marketing messages.

Again, today I wasted much valuable time of my life chasing weird behaviour in our ForNAV AppSource solution.

As most partners we struggle to find a good balance in simplicity and I had this great idea (or at least I thought it was a great idea) to personalise the role center.

I’ve added a menu item for our AppSource solution that contains the shortcuts that most people need and I wanted to hide those unimportant.

When working with page extensions I always try to work with AddLast to have the smallest change of breaking during upgrades.

You can see that the visibility of one of the items is toggled. Here is my code

Simple right? Only show the Replace Reports to an admin or anyone who can manage their own data.

But then the trouble came. This compiles, builds and publishes just fine but the visibility is not toggled.

Then I remembered something from C/Side. IT IS NOT ALLOWED TO CODE IN ROLE CENTERS!!! And I am extending a Role Center.

So I guess you can call this a bug. When extending a rolecenter it should not be possible to write code.

For me this is back to the drawing board and I will try to come up with a better solution.