One of the things that can be really annoying in Dynamics NAV or Business Central is the dependent apps.
What are dependent apps?
Some partners have made a base app that will contain all the basic functionality, that they use with all customers. Then they create apps that can be added to the solution but basing the solution on some data or functionality from the base app. Lastly, it is possible for the users in an on-remise or sandbox environment to add extensions through the Design function in the client.
In the following that is exactly what happened:
- Partner has made their own base application with functionality that should be available for all their other apps.
Then the customer has opted two other partner applications:
- The Partner Manufacturing app
- The Partner Maintenance app
- Lastly, a user has made an extension, but hasn’t named it. This will create a Designer app. The advantage with not naming the extension, is that any design changes made later in the client will be added to the Designer app, right until the extension is named.
Closing the design without name, don’t click save. Just close the page.
This is all fine, but when you need to upgrade the partner base app, it is necessary to do the following:
- Uninstall the designer app
- Uninstall the Partner Manufacturing app
- Uninstall the Partner Maintenance app
- Upgrade the Partner base app
- Install the Partner Maintenance app
- Install the Partner Manufacturing app
- Install the designer app
This is why many consultants are not very happy with the dependencies and especially not the Design function.
Using PowerShell, it is possible to do the deploy automatically. All it takes is that the names of the dependent apps are known, but anyway here is an example of a PowerShell that could cover the above situation.
You can download it from here.
Remember to visit my bookstore: