ArcherPoint Dynamics NAV / Business Central Developer Digest - Vol 298
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 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.
Run Any Business Central Object by Typing a URL
Jon shares: “Using the BC16 Web Client, Waldo shows us we can run any object by simply typing a URL in Getting Not-Out-of-the-Box Information with the Out-of-the-Box Web Client. Here's the Fields table—for instance, a system table:
And look at that wealth of information:
- Data types
- Field names
- Field captions, depending on the language you’re working in
- Obsolete information
- Data Classification information
Trouble Generating Symbols to Publish an AL Extension in BC13 On Premises
Matt T is perplexed: “I am having all kinds of problems deploying an AL extension to a BC13 on-premises database. Even though I have regenerated symbols successfully multiple times, I am still getting errors about missing tables when I try to publish. Does anyone have time to look at this?”
Suresh suggests: “Please make sure you have VSCode open in the SRC or AL folder. If you are in the wrong root folder, you may experience that error.”
Bill W offers: “Since the symbols are generated on the service tier, perhaps there is an issue with it grabbing refreshed objects? Specify the service tier in the command and maybe restart one of them beforehand.”
Matt T expands: “I am publishing an already built app file using PowerShell, not via VS Code. All service tiers have been restarted and told to generate symbols on startup. I've manually regenerated the symbols. We're actually refreshing the test database for a different request, so I will see if that does anything.”
Kyle follows up: “Matt, did you get your problem fixed? If not, I might be able to help today, although I haven't had to dirty my hands with C/AL in a several months. But Suresh is headed the right direction; I think you do not have the correct symbols loaded on the destination NST. You can see what is installed using get-navappinfo with some parameters and switches.”
Matt T replies with an update: “So the first extension published. I'm now on to publishing the one on top of that. Basically, the same thing is happening. It’s saying the Item Attributes page is missing. I can very plainly see it in Object Designer. It compiles. When I generate symbols, everything generates without error.”
Saurav chimes in: “This error is good sign. The previous error was not related to symbol generation. The first one is about system app, and this second one now is for application app, and it's about symbol generation. Is Boolean on the development tab is set to true about generation symbol at service startup?”
Matt acknowledges: “It is, on both service tiers that are connected to that database.”
Saurav resolves: “Ah, that's the problem. Please only keep one service on. Map that service in the development environment and then generate symbols. Then restart that service and try to publish app.”
Matt T responds: “Ok, here's the, I think, comprehensive, final answer. If you have avoided learning the PowerShell cmdlets, now is the time.
Turn off all but one service tier for the database.
[Optional] Import the ArcherPoint or Suite Engine license and restart the one remaining service tier (Import-NavServerLicense, Restart-NavServerInstance)
- Run the following command as an admin to regenerate symbols:
finsql.exe Command=generatesymbolreference, Database="Demo Database NAV (11-0)", ServerName=.\NAVDEMO
- Publish the System App with the following PowerShell command:
Publish-NAVApp -ServerInstance BC130TEST -Path "C:\Program Files (x86)\Microsoft Dynamics 365 Business Central\130\AL Development Environment\System.app" -PackageType SymbolsOnly
- Publish your app(s): (Publish-NavApp)
- Install your app(s): (Install-NavApp)
- Put the customer’s license back and restart all the services: (Import-NavServerLicense, Restart-NavServerInstance)
Even if you know what to do, this will take you 30 minutes or so. Make everyone go SaaS so we can just click a button to do this.”
Saurav responds: “Matt, one correction: You don't have to publish system app every time. You did it because it was removed by someone (I hope). The rest about services is true. You should only one service mapped to database.”
If you are interested in Dynamics NAV and Business Central development, be sure to see our collection of NAV/BC Development Blogs.
Read the "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV and Dynamics 365 Business Central.