Solved: Navigation property naming issue when working with Lookup fields using the WebAPI endpoint in CDS/CRM Connection Manager

In one of my previous post, I explained about the navigation property naming issue when working with Lookup fields using the WebAPI endpoint in “CDS/CRM Connection Manager”. Recently, I got a mail from Kingsway Soft support team with a Hotfix to resolve this issue. I installed this Hotfix in my machine and ran a simple package successfully to update custom lookup (account) on Contact entity.

This Hotfix is part of the most recent official release (20.1.0.1564). You can download this from the below link.

https://www.kingswaysoft.com/products/ssis-integration-toolkit-for-microsoft-dynamics-365/download

So, I would recommend everyone to use WebAPI endpoint instead of SOAP in “CDS/CRM Connection Manager” due to the fact that SOAP endpoint is deprecated and no longer supported by Microsoft.

You can find all enhancements of the recent official release (20.1.0.1564) in the below link

https://www.kingswaysoft.com/products/ssis-integration-toolkit-for-microsoft-dynamics-365/change-log

Happy migration….

Undeclared Property error while migrating lookup data using KingswaySoft adapter

I am using KingswaySoft adapter to migrate the data between MS CRM instances. I am using WebAPI endpoint in the connection string due to the fact that SOAP endpoint is deprecated. But I encountered an issue while writing the data into custom lookup fields and the package is failing with the below error.

An undeclared property ‘aw_accountid’ which only has property annotations in the payload but no property value was found in the payload. In OData, only declared navigation properties and declared named streams can be represented as properties without values.

Reason:

KingswaySoft adapter making WebAPI calls to create records in MS CRM since I selected WepAPI endpoint in my connection string. But with WebAPI calls, we have to pass entity schema name also to migrate the lookup data and KingswaySoft adapter has no option to pass this data.

Solution:

Unfortunately, there is no solution at the moment. I contacted KingswaySoft support team and this is the response I got it from them.

As you have already seen, the issue that you have experienced is a limitation on WebAPI, and from the cases we have seen it mainly happens to custom fields. This limitation is documented in our software. We recognize this is a blocking issue, so we recommend to not use WebAPI for the time being until the issue is addressed by Microsoft – we did highlight a number of other issues with WebAPI in our software tooltip in the connection manager. As of now, SOAP is still available and is highly reliable than WebAPI.

So, I solved this issue by changing the endpoint to SOAP in the connection string. Hope Microsoft is working on this issue and will solve asap.