Dynamics NAV / Business Central Developer Digest - Vol 375
ArcherPoint’s Developer Digest focuses on Microsoft Dynamics 365 Business Central development and Dynamics NAV development. In Developer Digest Volume 375, we cover the D365 Business Central Universal Code Initiative, problems with Option fields when writing BC code, the shortage of programming talent, and more.
The Dynamics NAV and Business Central community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of sharing helpful information with one another to help customers be more successful.
As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media…so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there?
So, the ArcherPoint Microsoft Dynamics NAV/BC Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV/BC experts and devotees around the world. We hope these insights will benefit you, too.
The D365 Business Central Universal Code Initiative
Waldo talks us through the goal of and access to all things regarding the Business Central Universal Code Initiative, including what you need to consider when developing anything for BC. The bottom line is that all BC developments need to adhere to a certain standard and need to be able to live in the cloud. If you’re not already on board, now is the time.
A College Degree Doesn’t Necessarily Mean They’re Qualified
Staffing shortages have impacted nearly every sector in the past two years, and those of us in high tech aren’t strangers to finding qualified candidates to grow our resource pools. In Coding Horror’s Why Can’t Programmers…Program?, we learn that their experience has been that most computer science graduates can’t code at all. Horrific indeed.
Do Not Use Option Fields When Writing AL Code
Kyle offers an important Developer Tip of the Day: “If you are writing new AL code, do not use Option fields. Always make those Enums.”
Matt T adds on: “And if you don’t want other extensions changing the value, set the Extensible property to false. Then it will work just like an Option would.”
Which Object IDs Are Being Used by Another Application?
Shirley is getting up to speed on AL development and poses this to the group: “Newbie AL dev process question: How do you know which Object IDs have already been used by another app—specifically, Page Extension IDs? Scenario: You write a customization using Page Extension 50000 in a local Docker dev environment. You go to deploy it in the client’s test environment and get an error that Page Extension 50000 has already been defined in another app (e.g., the client’s own customizations app). Solution: Email the customer and ask them which Page Extension IDs are free? That doesn’t seem right. I did look at the Effective Permissions page, but it doesn’t seem to show extension objects, so it wasn’t any help in this case.”
Kyle shares some code titled AllObjWithList with Shirley, to which she replies: “Thanks, Kyle. I guess you’re saying create a kind of ‘temporary tools’ app that includes a custom page with AllObjWithCaption as the source table. It’s interesting, as we have begun to create an AP Retail Support Tools app to allow our support team to do things in BC that they used to be able to do natively in older NAV versions.”
Tom H offers: “There is an extension for VS Code called ‘AL Object Designer’ that you can install that lets you see the objects in a project/container much like the old C/AL Object Designer. I generally use it rather than creating a temporary object…If you’re dealing with a client with their own extensions, you can use page 696 on their server to see all the objects and then filter appropriately.
(Actually, you can use page 696 on a local container as well. You just need to enter it into the URL for the page. I can show you if necessary; just let me know.)”
Kyle notes: “My version shows which App has published the object.”
Tom replies: “Your version is probably superior since it’s the custom-built one. I’m just happy to see that there’s something for it out of the box since we had to roll our own in BC 14.”
Shirley wraps it up: “Thanks – all good points. For now, the native page meets my needs, but I could see needing to know which app published the object as well.”
Interested in Dynamics NAV and/or Business Central development? Be sure to see our collection of NAV/BC Development Blogs.
Read “How To” blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV and Dynamics 365 Business Central.