How To: Create Dynamics 365 Entity Relationship Diagram

What is the MetaDiagram Utility?

When applying customisations to an existing Dynamics CRM environment, an understanding of the existing customisations is crucial.

Unfortunately manually mapping out complex relationships between custom entities can be a painful and time consuming exercise.

Dynamics 365 logo

Microsoft do not provide any out-of-the-box tools in Dynamics 365 to achieve this…. However they have included a nifty little tool in the CRM SDK called MetaDiagramConsole.exe which allows you to generate Visio diagrams of entity relationship mappings.


How does it work?

  1. Download and extract the Microsoft CRM SDK 
  2. Open and build the Visual Studio Solution. You can find it in SDK\SampleCode\CS\Metadata\Diagram. You’ll need to add the missing references to the CRM SDK DLL’s so that it compiles successfully.
  3. Run the compiled MetadataDiagram.exe application from the command prompt – “MetadataDiagramConsole.exe <ENTITY_NAME>”. E.g. “MetadataDiagramConsole.exe new_bankaccount
  4. The tool will connect to your specified Dynamics CRM environment, extract the metadata and generate a Visio (*.VSD) entity relationship diagram in your local directory.

Dynamics CRM Developer Resources

Dynamics CRM Metadata Diagram utility Screenshot

Dynamics CRM Entity Relationship Diagram


Final Thoughts

This tool has been super valuable for me, especially on occasions when I enter a new client environment with little existing documentation (geez … thanks guys!).

You can find more information about it here
https://docs.microsoft.com/en-au/dynamics365/customer-engagement/developer/use-metadata-generate-entity-diagrams

Hope you find it as useful as I have!

Shane Bartholomeusz

G’day, I’m a technical solutions consultant based in Perth, Australia that specialises in the Microsoft technology stack, including .NET, Dynamics 365, Azure and general web development etc.

This blog is my place to share my thoughts, helpful solutions and just random nerdy stuff.
Shane Bartholomeusz

Latest posts by Shane Bartholomeusz (see all)

Leave a Reply