使用新 Web API 和 JavaScript POST 在 Dynamics CRM 2016 中创建 QuoteProduct
Create QuoteProduct in Dynamics CRM 2016 using new Web API and JavaScript POST
我 运行 在使用新 Web API.
的 Microsoft Dynamics CRM 2016 本地部署新报价产品记录上设置现有产品字段时遇到问题
我正在按照 2016 SDK 文档进行操作,在大多数情况下,我的所有 POST 和 GET 请求都有效。我知道使用 @odata.bind 语法来设置查找,但是,虽然我可以创建一个 Quote Product 实体,使用 GUID 设置父 QuoteId,但无论出于何种原因,POST 都不会在我完成时完成尝试以与 quoteid 相同的方式设置 productid 值。
还有其他人成功过吗?我查看了 CRM 数据库中 QuoteDetail table 的所有值,并尝试将它们设置为与现有记录相同,但一直挂在 productid 上。
感谢您的帮助!
-詹姆斯
这是创建报价产品所需的最小 post 正文:
{
"productid@odata.bind": "/products(11c0dbad-91df-e311-b8e5-6c3be5a8b200)",
"quoteid@odata.bind" : "/quotes(69b5e1ae-037f-e611-80ed-fc15b428dcdc)",
"uomid@odata.bind" : "uoms(73a5daea-6ddc-e311-a678-6c3be5a8c0e8)"
}
这是我正在使用的url:
https://tenantname.api.crm.dynamics.com/api/data/v8.1/quotedetails
请注意,如果您仅使用此 post 邮件正文,您将收到关于缺少数量的错误消息。
正如@Martijin Eikelenboom 在他的回答中指出的那样,当您指定实体类型时,您需要确保在语法中添加复数形式的度量单位; IE: {
"uomid@odata.bind" : "/uoms(GUID)"
}
我 运行 在使用新 Web API.
的 Microsoft Dynamics CRM 2016 本地部署新报价产品记录上设置现有产品字段时遇到问题我正在按照 2016 SDK 文档进行操作,在大多数情况下,我的所有 POST 和 GET 请求都有效。我知道使用 @odata.bind 语法来设置查找,但是,虽然我可以创建一个 Quote Product 实体,使用 GUID 设置父 QuoteId,但无论出于何种原因,POST 都不会在我完成时完成尝试以与 quoteid 相同的方式设置 productid 值。
还有其他人成功过吗?我查看了 CRM 数据库中 QuoteDetail table 的所有值,并尝试将它们设置为与现有记录相同,但一直挂在 productid 上。
感谢您的帮助!
-詹姆斯
这是创建报价产品所需的最小 post 正文:
{
"productid@odata.bind": "/products(11c0dbad-91df-e311-b8e5-6c3be5a8b200)",
"quoteid@odata.bind" : "/quotes(69b5e1ae-037f-e611-80ed-fc15b428dcdc)",
"uomid@odata.bind" : "uoms(73a5daea-6ddc-e311-a678-6c3be5a8c0e8)"
}
这是我正在使用的url:
https://tenantname.api.crm.dynamics.com/api/data/v8.1/quotedetails
请注意,如果您仅使用此 post 邮件正文,您将收到关于缺少数量的错误消息。
正如@Martijin Eikelenboom 在他的回答中指出的那样,当您指定实体类型时,您需要确保在语法中添加复数形式的度量单位; IE: { "uomid@odata.bind" : "/uoms(GUID)" }