I ran into something the other day, which I think is related to the difference between standard and enhanced data models, but, also, it’s related to some hidden stuff we don’t even know about when it comes to Power Platform.
Basically, we have a solution that was developed on the environment that also had a Power Pages site created on the standard data model. We were not using the site, it was just a “test” created long ago, and, then, it came about to bite us.
We created a new environment to test clean deployment, there was no Power Pages site there, so we tried to import out solution, and we ran into the error below:
Apparently it’s referring to the adx, so it’s a power pages-related dependency, but, hey, we are not using Power Pages in the solution yet, and we have nothing on that System Form that would be referencing anything Power Pages related.
Or, at least, we thought so…
I did rant about this on Linkedin actually, thanks everyone for the moral support and suggestions (no, I don’t think it would be a good question for the community forum, though. This one falls into “strange stuff” category, not into “how can I don X or Y”… Parvez came closest to the answer there, this seems to be a borderline support ticket, but, after all, it can still be resolved without involving support, and that just means without having to go through those loops).
You can see the problem in the exported solution customization file below – what’s that bpf_contact_adx… relationship in the navbar? It’s not even showing up in the navigation, but it’s exactly that relationship that’s blocking the import:
So I suspect it somehow exists in one of the forms that come with the Power Pages/Portal solutions, we might have used one of those to create a copy and customize for our needs, so that relationship got stuck in our own form, too.
Now I don’t know how it ended up there originally, but, as it turned out, that relationship is not added to a completely new form created from scratch.
The way to fix it for our form was:
- Create a new solution
- Add contact table with that particular form only
- Export as unmanaged, unpackage, go to the customizations.xml, remove those lines for bpf_contact_adx…, then package into a solution file again, and reimport
- Publish all, and there you go, the form as good as new
That brings up a question of how come importing an unmanaged solution actually deletes something, I thought it’s a privilege reserved for managed solutions. Although, this is similar to how forms themselves can easily be updated, so I guess as long as that “something” is not part of the data model, it can be deleted through unmanaged. But, hey, that’s just another grey area behavior – it’s a bit too much unusual stuff for the last 5-6 hours of work, but where one of those created the problem, the other one helped to resolve it, so… I do finally have my peace – just in time for the weekend.