ms crm 2011用javascript检索报价详情

Tho*_*mas 2 javascript dynamics-crm-2011

如何通过javascript检索报价的所有产品(=报价详情)?

我尝试过以下代码,但这不起作用:

id = quoteid
var options = "$select=ProductId&$filter=QuoteId eq (guid'"+ id + "'";
SDK.REST.retrieveMultipleRecords("QuoteDetail", options, ebcont.crm.quote._successQuoteDetailMultiRetrieve, function(error) {alert(error.message);}, ebcont.crm.quote._multiRetrieveQuoteComplete);
Run Code Online (Sandbox Code Playgroud)

我总是得到以下信息:

 Error: 400: Bad Request: operator 'eq' is no compatible with operatortyp 'Microsoft.Crm.Metadata.ComplexTypeInstance'1 ... and 'System.Guid'
Run Code Online (Sandbox Code Playgroud)

有人知道出了什么问题吗?

提前致谢!

Dar*_*ryl 5

尝试将ID添加到QuoteId:

id = quoteid
var options = "$select=ProductId&$filter=QuoteId/Id eq (guid'"+ id + "'";
SDK.REST.retrieveMultipleRecords("QuoteDetail", options, ebcont.crm.quote._successQuoteDetailMultiRetrieve, function(error) {alert(error.message);}, ebcont.crm.quote._multiRetrieveQuoteComplete);
Run Code Online (Sandbox Code Playgroud)

它区分大小写,所以要小心.我建议首先使用XrmToolBox的FetchXmlBuilder插件来测试REST oData调用.它可以选择查看其余网址.只要你的javascript生成确切的网址,你应该是好的.

更新1

使用新的(2016年)CRM WebAPI端点,我还推荐Jason Lattimer的CRM Rest Builder:https://github.com/jlattimer/CRMRESTBuilder/releases