Views:

There is a long standing Microsoft bug where PowerBI does not properly recognize self-referencing entities during data imports.

This can manifest itself as an error message like this:  north52_schedule has conflicting definitions for the property north52_schedule_children

In order to resolve this you will need to carry out the following steps:

  1. Download and install WebApi Launcher for XrmToolBox (https://www.xrmtoolbox.com/plugins/AshV.WebApiTester.XTB/)
  2. Open WebApi Launcher and connect to the relevant system
  3. Copy in the URL below into the main window and click the send button
    1. https://XXXXXX.crm4.dynamics.com/api/data/v9.1/RelationshipDefinitions(SchemaName='north52_schedule_children')
    2. Replace XXXXX with the system you are working on and make sure to use the correct crm.dynamics.com
  4. This will bring back JSON information
  5. We are looking for the following values:
    1. "ReferencedEntityNavigationPropertyName":null,
    2. "ReferencingEntityNavigationPropertyName":null, 
  6. Copy the JSON into your clipboard from the Response Body tab
  7. Next click the Request tab and paste the JSON from the clipboard into the Request Body tab
  8. Change the two null values above to these values:
    • "ReferencedEntityNavigationPropertyName": "north52_schedule_children",
    •  "ReferencingEntityNavigationPropertyName": "north52_ScheduleParentId"
  9. Change the ‘GET’ command to a ‘PUT’ command
  10. Click Send
  11. Now test to see if you can connect to PowerBI