Skip to main content

Notifications

Announcements

No record found.

Microsoft Dynamics CRM (Archived)

Getting 400 Bad Request "CRM do not support direct update of Entity Reference properties, Use Navigation properties instead" while try to create Product and Sales Order Creation using Web api in Dynamics CRM 2016 Online

Posted on by Microsoft Employee

Hi Friends,

I am getting 400 bad request while try to create product and salesorders. The following json format i am sending to create product and salesorders.

For Product:

Url is: insyncdev.api.crm8.dynamics.com/.../products

Content Type : application/json

Authorization: Bearer {Token}

Body: 

{
"statecode": 0,
"productid": "69bdc695-9b05-e811-a958-000d3af28edd",
"iskit": false,
"description": "Soft and sweet",
"productnumber": "I02",
"msdyn_taxable": true,
"producttypecode": 1,
"name": "BMW",
"isstockitem": false,
"msdyn_converttocustomerasset": false,
"productstructure": 1,
"_defaultuomscheduleid_value": "5ef8c035-52fd-4ba5-897c-9780c16c8f39",
"versionnumber": 1363537,
"exchangerate": 1,
"statuscode": 1,
"quantitydecimal": 0,
"msdyn_purchasename": "BMW",
"_modifiedonbehalfby_value": null,
"producturl": null,
"vendorname": null,
"vendorid": null,
"validfromdate": null,
"traversedpath": null,
"price_base": null,
"standardcost": null,
"_createdonbehalfby_value": null,
"entityimage_timestamp": null,
"_msdyn_defaultvendor_value": null,
"vendorpartnumber": null,
"currentcost": null,
"_modifiedbyexternalparty_value": null,
"price": null,
"hierarchypath": null,
"suppliername": null,
"entityimage_url": null,
"msdyn_upccode": null,
"overriddencreatedon": null,
"utcconversiontimezonecode": null,
"stageid": null,
"_msdyn_transactioncategory_value": null,
"dmtimportstate": null,
"_createdbyexternalparty_value": null,
"standardcost_base": null,
"stockvolume": null,
"_parentproductid_value": null,
"entityimage": null,
"processid": null,
"msdyn_fieldserviceproducttype": null,
"timezoneruleversionnumber": null,
"importsequencenumber": null,
"currentcost_base": null,
"validtodate": null,
"stockweight": null,
"entityimageid": null,
"quantityonhand": null,
"size": null
}

Response:

{
"error": {
"code": "0x0",
"message": "CRM do not support direct update of Entity Reference properties, Use Navigation properties instead.",
"innererror": {
"message": "CRM do not support direct update of Entity Reference properties, Use Navigation properties instead.",
"type": "Microsoft.Crm.CrmHttpException",
"stacktrace": " at Microsoft.Crm.Extensibility.OData.TypeConverters.EntityReferenceAttributeTypeConverter.ConvertToCrmTypeInternal(Guid edmTypeValue)\r\n at Microsoft.Crm.Extensibility.OData.TypeConverters.EdmTypeConverterBase`2.ConvertToCrmType(Object edmTypeValue)\r\n at Microsoft.Crm.Extensibility.OData.TypeConverters.EdmEntityTypeConverter.SetStructuralPropertyToXrmEntity(Entity entity, EntityMetadata entityMetadata, String crmAttributeName, IEdmProperty edmProperty, Object propertyValue)\r\n at Microsoft.Crm.Extensibility.OData.TypeConverters.EdmEntityTypeConverter.ConvertToCrmTypeInternal(EdmEntityObject edmTypeValue)\r\n at Microsoft.Crm.Extensibility.OData.TypeConverters.EdmTypeConverterBase`2.ConvertToCrmType(Object edmTypeValue)\r\n at Microsoft.Crm.Extensibility.OData.EdmTypeConverter.ConvertToCrmEntity(EdmEntityObject edmEntity, EntityReference entityReference)\r\n at Microsoft.Crm.Extensibility.OData.CrmODataServiceDataProvider.CreateEdmEntity(CrmODataExecutionContext context, String edmEntityName, EdmEntityObject entityObject, Boolean isUpsert)\r\n at Microsoft.Crm.Extensibility.OData.EntityController.PostEntitySetInternal(CrmODataExecutionContext context, String edmEntityName, EdmEntityObject entityObject, Boolean isUpsert)\r\n at Microsoft.Crm.Extensibility.OData.EntityController.PostEntitySet(String entitySetName, EdmEntityObject entityObject)\r\n at lambda_method(Closure , Object , Object[] )\r\n at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass10.<GetExecutor>b__9(Object instance, Object[] methodParameters)\r\n at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken)\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()\r\n at System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__0.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()\r\n at System.Web.Http.Controllers.ActionFilterResult.<ExecuteAsync>d__2.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()\r\n at System.Web.Http.Dispatcher.HttpControllerDispatcher.<SendAsync>d__1.MoveNext()"
}
}
}

* What does it mean by navigation property and how to do it?

For SalesOrders:

Url is: insyncdev.api.crm8.dynamics.com/.../salesorders

Content Type : application/json

Authorization: Bearer {Token}

Body:

{

"statecode": 0,
"msdyn_totalchargeablecostrollup_base": 0,
"statuscode": 1,
"msdyn_ordertype": 192350000,
"msdyn_totalnonchargeablecostrollup_state": 1,
"msdyn_psastate": 192350000,
"ordernumber": "ORD-01000-W7K1Q6",
"pricingerrorcode": 0,
"msdyn_totalnonchargeablecostrollup_base": 0,
"msdyn_totalchargeablecostrollup": 0,
"_ownerid_value": "dfa1495d-9f01-e811-a958-000d3af289b8",
"shipto_freighttermscode": 1,
"name": "Laptop",
"discountpercentage": 25,
"versionnumber": 1364305,
"totalamountlessfreight": 187.5,
"freightamount": 30,
"prioritycode": 1,
"ispricelocked": false,
"_transactioncurrencyid_value": "dd0230a0-16ec-e711-a97b-000d3af26964",
"exchangerate": 1,
"totaldiscountamount": 62.5,
"totallineitemamount_base": 250,
"totalamount": 217.5,
"totallineitemamount": 250,
"msdyn_totalchargeablecostrollup_state": 1,
"totaltax": 0,
"totaldiscountamount_base": 62.5,
"msdyn_psastatusreason": 192350000,
"totallineitemdiscountamount": 0,
"totallineitemdiscountamount_base": 0,
"msdyn_totalnonchargeablecostrollup": 0,
"totalamount_base": 217.5,
"_customerid_value": "2e593c87-3107-e811-a956-000d3af28a0d",
"willcall": false,
"freightamount_base": 30,
"totaltax_base": 0,
"totalamountlessfreight_base": 187.5,
"_campaignid_value": null,
"shipto_line3": null,
"shipto_name": null,
"importsequencenumber": null,
"discountamount": null,
"shipto_stateorprovince": null,
"_slaid_value": null,
"_quoteid_value": null,
"billto_composite": null,
"onholdtime": null,
"processid": null,
"shipto_postalcode": null,
"billto_line3": null,
"billto_stateorprovince": null,
"stageid": null,
"billto_telephone": null,
"shipto_line2": null,
"shipto_contactname": null,
"shipto_fax": null,
"entityimage_url": null,
"description": null,
"overriddencreatedon": null,
"paymenttermscode": null,
"shipto_telephone": null,
"_msdyn_accountmanagerid_value": null,
"_opportunityid_value": null,
"timezoneruleversionnumber": null,
"billto_name": null,
"shipto_country": null,
"_contactid_value": null,
"shippingmethodcode": null,
"billto_addressid": null,
"lastonholdtime": null,
"_modifiedonbehalfby_value": null,
"_accountid_value": null,
"traversedpath": null,
"_slainvokedid_value": null,
"shipto_composite": null,
"billto_line2": null,
"discountamount_base": null,
"shipto_addressid": null,
"billto_postalcode": null,
"billto_fax": null,
"_msdyn_contractorganizationalunitid_value": null,
"billto_city": null,
"lastbackofficesubmit": null,
"freighttermscode": null,
"emailaddress": null,
"_owningteam_value": null,
"datefulfilled": null,
"_msdyn_account_value": null,
"billto_country": null,
"_createdonbehalfby_value": null,
"billto_contactname": null,
"utcconversiontimezonecode": null,
"submitstatus": null,
"submitstatusdescription": null,
"shipto_city": null,
"shipto_line1": null,
"submitdate": null,
"entityimage_timestamp": null,
"requestdeliveryby": null,
"entityimage": null,
"billto_line1": null,
"entityimageid": null
}

Response:

{
"error": {
"code": "0x0",
"message": "CRM do not support direct update of Entity Reference properties, Use Navigation properties instead.",
"innererror": {
"message": "CRM do not support direct update of Entity Reference properties, Use Navigation properties instead.",
"type": "Microsoft.Crm.CrmHttpException",
"stacktrace": " at Microsoft.Crm.Extensibility.OData.TypeConverters.EntityReferenceAttributeTypeConverter.ConvertToCrmTypeInternal(Guid edmTypeValue)\r\n at Microsoft.Crm.Extensibility.OData.TypeConverters.EdmTypeConverterBase`2.ConvertToCrmType(Object edmTypeValue)\r\n at Microsoft.Crm.Extensibility.OData.TypeConverters.EdmEntityTypeConverter.SetStructuralPropertyToXrmEntity(Entity entity, EntityMetadata entityMetadata, String crmAttributeName, IEdmProperty edmProperty, Object propertyValue)\r\n at Microsoft.Crm.Extensibility.OData.TypeConverters.EdmEntityTypeConverter.ConvertToCrmTypeInternal(EdmEntityObject edmTypeValue)\r\n at Microsoft.Crm.Extensibility.OData.TypeConverters.EdmTypeConverterBase`2.ConvertToCrmType(Object edmTypeValue)\r\n at Microsoft.Crm.Extensibility.OData.EdmTypeConverter.ConvertToCrmEntity(EdmEntityObject edmEntity, EntityReference entityReference)\r\n at Microsoft.Crm.Extensibility.OData.CrmODataServiceDataProvider.CreateEdmEntity(CrmODataExecutionContext context, String edmEntityName, EdmEntityObject entityObject, Boolean isUpsert)\r\n at Microsoft.Crm.Extensibility.OData.EntityController.PostEntitySetInternal(CrmODataExecutionContext context, String edmEntityName, EdmEntityObject entityObject, Boolean isUpsert)\r\n at Microsoft.Crm.Extensibility.OData.EntityController.PostEntitySet(String entitySetName, EdmEntityObject entityObject)\r\n at lambda_method(Closure , Object , Object[] )\r\n at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass10.<GetExecutor>b__9(Object instance, Object[] methodParameters)\r\n at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken)\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()\r\n at System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__0.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()\r\n at System.Web.Http.Controllers.ActionFilterResult.<ExecuteAsync>d__2.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()\r\n at System.Web.Http.Dispatcher.HttpControllerDispatcher.<SendAsync>d__1.MoveNext()"
}
}
}

 

I am middle of my project and it is urgent to get the solution for it. Please send the body part to create the product or the procedure to create the product using Web Api.

*This post is locked for comments

  • katy17 Profile Picture
    katy17 on at
    RE: Getting 400 Bad Request "CRM do not support direct update of Entity Reference properties, Use Navigation properties instead" while try to create Product and Sales Order Creation using Web api in Dynamics CRM 2016 Online

    Hello @Avijit, @Nithya,

    I am having an issue while creating a product entity in CRM.

    My Request is a below

    {

     "defaultuomid@odata.bind": "/uoms(b75a3c9c-6fc3-e711-a94c-000d3af3e840)",

     "defaultuomscheduleid@odata.bind": "/uoms(b65a3c9c-6fc3-e711-a94c-000d3af3e840)",

     "pricelevelid@odata.bind": "/pricelevels(6af703ef-66c3-e711-a94c-000d3af3e1d1)",

     "cai_category": "DHON Prem",

     "currentcost": 0,

     "name": "TNS Test Item 0001",

     "price": 0,

     "productnumber": "TNS_ITEM_0001",

     "producttypecode": 1,

     "quantitydecimal": 5,

     "quantityonhand": 0,

     "standardcost": 0,

     "statecode": 0,

     "statuscode": 1

    }

    It does create the product but the pricelevel is not getting set and also the Status goes as Draft and not Active.

    Could you provide some pointers on what exactly i might be doing wrong?

    Thanks in advance

  • Community Member Profile Picture
    Community Member Microsoft Employee on at
    RE: Getting 400 Bad Request "CRM do not support direct update of Entity Reference properties, Use Navigation properties instead" while try to create Product and Sales Order Creation using Web api in Dynamics CRM 2016 Online

    Hi Nithya,

    It's fine. Your reply is helping me a lot. As, i am using NewtonSoft for parsing Json data. There is no json function in NewtonSoft to convert the value to its respective data type. So, I was thinking to send it in XML.

    I need one more help from you. I am using the following data to post salesorder:

    {
    "statecode": 0,"msdyn_totalchargeablecostrollup_base": 0,"statuscode": 1,"msdyn_ordertype": 192350000,"msdyn_totalnonchargeablecostrollup_state": 1,
    "msdyn_psastate": 192350000,"ordernumber": "ORD-01000-W7K1Q6","pricingerrorcode": 0,"msdyn_totalnonchargeablecostrollup_base": 0,"msdyn_totalchargeablecostrollup": 0,
    "ownerid@odata.bind": "/systemusers(dfa1495d-9f01-e811-a958-000d3af289b8)","shipto_freighttermscode": 1,"name": "Redmi 5A","discountpercentage": 25,
    "versionnumber": 1364305,"totalamountlessfreight": 187.5,"freightamount": 30,"prioritycode": 1,"ispricelocked": false,
    "transactioncurrencyid@odata.bind": "/transactioncurrencies(dd0230a0-16ec-e711-a97b-000d3af26964)","exchangerate": 1,"totaldiscountamount": 62.5,
    "totallineitemamount_base": 250,"totalamount": 217.5,"totallineitemamount": 250,"msdyn_totalchargeablecostrollup_state": 1,"totaltax": 0,
    "totaldiscountamount_base": 62.5,"msdyn_psastatusreason": 192350000,"totallineitemdiscountamount": 0,"totallineitemdiscountamount_base": 0,
    "msdyn_totalnonchargeablecostrollup": 0,"totalamount_base": 217.5,"customerid_contact@odata.bind": "contacts/db61dece-7b06-e811-a955-000d3af28587",
    "productid_product@odata.bind": "products/a819bb80-b37d-4278-b00c-fea898cf7d7c","willcall": false,
    "freightamount_base": 30,"totaltax_base": 0,"totalamountlessfreight_base": 187.5
    }

    But, How to send the product id?

    Thanks

  • Verified answer
    Nithya Gopinath Profile Picture
    Nithya Gopinath 17,074 on at
    RE: Getting 400 Bad Request "CRM do not support direct update of Entity Reference properties, Use Navigation properties instead" while try to create Product and Sales Order Creation using Web api in Dynamics CRM 2016 Online

    Hi Avijit,

    By default, a product record is in the Draft state when you create it, and isn’t available for your sales agents. The record becomes available to your sales agents only when you publish it, which changes the state of the record to Active.

    See: msdn.microsoft.com/.../dn817887.aspx

    Hope this helps.

  • Nithya Gopinath Profile Picture
    Nithya Gopinath 17,074 on at
    RE: Getting 400 Bad Request "CRM do not support direct update of Entity Reference properties, Use Navigation properties instead" while try to create Product and Sales Order Creation using Web api in Dynamics CRM 2016 Online

    Hi Avijit,

    Sorry for late reply.

    Usually we post data in JSON format. What is the need to post it using XML format?

  • Community Member Profile Picture
    Community Member Microsoft Employee on at
    RE: Getting 400 Bad Request "CRM do not support direct update of Entity Reference properties, Use Navigation properties instead" while try to create Product and Sales Order Creation using Web api in Dynamics CRM 2016 Online

    Hi Nithya,

    I am sending "statecode": 0 i.e. "Active" and "statuscode": 1 i.e. "Active" while creating the product through postman. But, It is taking "statecode": 2 i.e. "Draft". But, I want it "statecode": 0. Can you please help me?

    Thanks

    Avijit

  • Community Member Profile Picture
    Community Member Microsoft Employee on at
    RE: Getting 400 Bad Request "CRM do not support direct update of Entity Reference properties, Use Navigation properties instead" while try to create Product and Sales Order Creation using Web api in Dynamics CRM 2016 Online

    Hi Nithya,

    Is it possible to post the data in XML format?

    Thanks

    Avijit

  • Verified answer
    Community Member Profile Picture
    Community Member Microsoft Employee on at
    RE: Getting 400 Bad Request "CRM do not support direct update of Entity Reference properties, Use Navigation properties instead" while try to create Product and Sales Order Creation using Web api in Dynamics CRM 2016 Online

    Sales order is posting successfully after getting the exact body of yours(Nithya). Thanks a lot again. The body part is for sales order:

    {

    "statecode": 0,

    "msdyn_totalchargeablecostrollup_base": 0,

    "statuscode": 1,

    "msdyn_ordertype": 192350000,

    "msdyn_totalnonchargeablecostrollup_state": 1,

    "msdyn_psastate": 192350000,

    "ordernumber": "ORD-01000-W7K1Q6",

    "pricingerrorcode": 0,

    "msdyn_totalnonchargeablecostrollup_base": 0,

    "msdyn_totalchargeablecostrollup": 0,

    "ownerid@odata.bind": "/systemusers(dfa1495d-9f01-e811-a958-000d3af289b8)",

    "shipto_freighttermscode": 1,

    "name": "Laptop",

    "discountpercentage": 25,

    "versionnumber": 1364305,

    "totalamountlessfreight": 187.5,

    "freightamount": 30,

    "prioritycode": 1,

    "ispricelocked": false,

    "transactioncurrencyid@odata.bind": "/transactioncurrencies(dd0230a0-16ec-e711-a97b-000d3af26964)",

    "exchangerate": 1,

    "totaldiscountamount": 62.5,

    "totallineitemamount_base": 250,

    "totalamount": 217.5,

    "totallineitemamount": 250,

    "msdyn_totalchargeablecostrollup_state": 1,

    "totaltax": 0,

    "totaldiscountamount_base": 62.5,

    "msdyn_psastatusreason": 192350000,

    "totallineitemdiscountamount": 0,

    "totallineitemdiscountamount_base": 0,

    "msdyn_totalnonchargeablecostrollup": 0,

    "totalamount_base": 217.5,

    "customerid_contact@odata.bind": "contacts/db61dece-7b06-e811-a955-000d3af28587",

    "willcall": false,

    "freightamount_base": 30,

    "totaltax_base": 0,

    "totalamountlessfreight_base": 187.5

    }

    Thanks

    Avijit

  • Nithya Gopinath Profile Picture
    Nithya Gopinath 17,074 on at
    RE: Getting 400 Bad Request "CRM do not support direct update of Entity Reference properties, Use Navigation properties instead" while try to create Product and Sales Order Creation using Web api in Dynamics CRM 2016 Online

    Hi,

    Glad to hear you were able to solve the issue. Please close the thread as verified so that it can be useful for others who face this issue.

  • Verified answer
    Community Member Profile Picture
    Community Member Microsoft Employee on at
    RE: Getting 400 Bad Request "CRM do not support direct update of Entity Reference properties, Use Navigation properties instead" while try to create Product and Sales Order Creation using Web api in Dynamics CRM 2016 Online

    Thanks a lot Nithya. Product has been uploaded successfully. With that body part.

    {

    "statecode": 0,

    "iskit": false,

    "description": "Soft and sweet",

    "productnumber": "I001",

    "msdyn_taxable": true,

    "producttypecode": 1,

    "name": "Audi",

    "isstockitem": false,

    "msdyn_converttocustomerasset": false,

    "productstructure": 1,

    "defaultuomscheduleid@odata.bind": "/uoms(046f8e2c-9005-e811-a958-000d3af28edd)",

    "defaultuomid@odata.bind": "/uoms(056f8e2c-9005-e811-a958-000d3af28edd)",

    "versionnumber": 1363537,

    "exchangerate": 1,

    "statuscode": 1,

    "quantitydecimal": 0,

    "msdyn_purchasename": "Audi"

    }

  • Suggested answer
    Nithya Gopinath Profile Picture
    Nithya Gopinath 17,074 on at
    RE: Getting 400 Bad Request "CRM do not support direct update of Entity Reference properties, Use Navigation properties instead" while try to create Product and Sales Order Creation using Web api in Dynamics CRM 2016 Online

    Try to add the following attribute in the body.

    "defaultuomid@odata.bind": "/uoms(14c94cc2-5a0a-e811-a958-000d3af28edd)",

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

December Spotlight Star - Muhammad Affan

Congratulations to a top community star!

Top 10 leaders for November!

Congratulations to our November super stars!

Tips for Writing Effective Suggested Answers

Best practices for providing successful forum answers ✍️

Leaderboard

#1
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 291,280 Super User 2024 Season 2

#2
Martin Dráb Profile Picture

Martin Dráb 230,214 Most Valuable Professional

#3
nmaenpaa Profile Picture

nmaenpaa 101,156

Leaderboard

Featured topics

Product updates

Dynamics 365 release plans