cancel
Showing results for 
Search instead for 
Did you mean: 

Allow Setting null value to the lookup field in Common Data Service (current environment) connector

One of the feature gaps between Common Data Service connector and Common Data Service (current environment) connector is the ability to set the null value to the lookup field.

 

When we set the null value to the lookup field in Common Data Service (current environment) connector, the flow fails with the following error.

 

 

An error occurred while validating input parameters: Microsoft.OData.ODataException: The 'odata.bind' instance or property annotation has a null value. In OData, the 'odata.bind' instance or property annotation must have a non-null string value.

 

 

 

It is important when we want to clear multiple lookup fields in one API call (without multiple Unrelate records actions), or the most common issue for me is passing the GUID from another step which is an optional lookup field (so that the value may/may not be null)

If the lookup field is polymorphic for both source and target records, it will be good if we can check the entity type in the expression and fill null/the target record OData ID accordingly into the right field.

 

One of the examples is Setting the Primary Contact in the screenshot below with the GUID value of "Primary Contact (Value)" which can be empty from the source data. Common Data Service (current environment) connector cannot handle this kind of scenario and it will be great if we can use a null check expression for that case.

 

 

if(empty(triggerOutputs()?['body/_primarycontactid_value']), null, triggerOutputs()?['body/_primarycontactid_value'])

 

 

Flow Value Set.png

 

CC: @Audrie-MSFT 

Status: New