Home
> CRM, Uncategorized > Solution Import Failures / Publish Customizations Failures – Dynamics 365
Solution Import Failures / Publish Customizations Failures – Dynamics 365
Recently we upgraded our organizations to Dynamics 365 and we were getting solution import failure while moving solutions between organizations.
Below are different kind of error messages popped up.
- Getting Dependency Calculation There was an error calculating dependencies for this component. Missing component id {0}
- Failure trying to associate it with CustomControlDefaultConfig
- Can’t insert duplicate key for an entity
Reason:
- In our case the root cause for all these import failures was “customcontroldefaultconfig” component with Custom entities.
- If there is any orphan record exists in “CustomControlDefaultConfigBase” table it would cause solution import failure or ‘Publish Customizations’ error.
- The issue seems a product issue and got fixed in Service Update 5 of CRM 8.1.0 but resurfacing again in Dynamics 365.
Prevention Tip:
- If you are adding an entity to your solution, always add ‘Primary key’ field
- In the source environment open the Solution being imported
- Open each Entity and expand Fields
- Make sure that every entity has its “Primary Key” added to the solution.
Fix:
CRM On-Premise
- Check if any orphan records in CustomControlDefaultConfigBase tabel. (Use below queries)
- SELECT * FROM CustomControlDefaultConfigBase WHERE PrimaryEntityTypeCode NOT IN (SELECT ObjectTypeCode FROM Entity)
- Note: before continuing, a backup database is recommended.
- Delete from the Target environment the CustomControlDefaultConfig records with orphaned Object Type Codes:
- DELETE FROM CustomControlDefaultConfigBase WHERE PrimaryEntityTypeCode NOT IN (SELECT ObjectTypeCode FROM Entity)
CRM On-line
- Create console application to delete the orphan record in CustomControlDefaultConfigBase using CRM SDK
- Refer this URL for code.
🙂
Categories: CRM, Uncategorized
Dynamics 365, solution import error
Perfect Answer. It works like a charm.
Thanks a lot.
Good share..Facing the same issue in my target environment…is it enough if we just follow the prevention tip..to avoid this error…
The mentioned prevention tip always worked in my case.