Thursday, January 16, 2014

CRM 2011/2013 Reset Sitemap problem

As you might have seen from previous posts on my blog, I am a big fan of the XrmToolBox by Tanguy, especially the Sitemap editor is excellent in its simplicity and capabilities.

image
However, I recently ran into a problem after using the function:
Reset CRM 2013 SiteMap to default.

 

Scenario

  • New installation of CRM2013 organization.
  • Import managed Solution A, with some entities then added to sitemap.
  • Add some custom entities in unmanaged Solution B.
  • Work with sitemap for Solution B entities, either directly in the solution xml or by using XrmToolBox.
  • I’m not pleased with my manual sitemap changes, so I use the XrmToolBox function to reset the sitemap to default.
  • Now the entities from Solution A are of course not in the sitemap.
  • Re-import Solution A to get its entities back into the sitemap.
  • Solution A entities are still not showing anywhere.
  • Export Solution B unmanaged to investigate the current sitemap.
  • No traces at all of Solution A entities in sitemap.
  • Export Solution B as managed to investigate diff in sitemap.
  • Sitemap elements from Solution A appear with solutionaction="Removed".

 

Conclusion

After removing the Solution A sitemap elements, which is the result of the reset action, the system “remembers” that I do not want to see them, even after new import of the managed solution.

 

Solution

The only way I have found to solve this is to manually edit the sitemap and reintroduce the sitemap elements from Solution A into the system. After that, the Solution A entities appear as expected. Managed export of Solution B now shows nothing at all, which is correct. I can then get back to adding my own new entities.

 

Additional Problem

The solution above is possible if I have access to an unmanaged version of Solution A, but if this is something from a third party it might not be that easy to generate corresponding sitemap xml from the managed solution file.