Я установил CRM Rest Builder
на моем CRM 2011 SDK
(в помещении), и он работает хорошо.Но сейчас ведет себя странно.У меня есть сущность с именем new_device
.Имеет отношение N:1
с salesorder
(заказ);new_device
и вторичная сущность и salesorder
как первичная сущность.Я создаю запрос OData, который возвращает new_device
s, код статуса продавца которых завершен.Строитель остальных дает мне этот URL-адрес:
$.ajax({
type: "GET",
contentType: "application/json; charset=utf-8",
datatype: "json",
url: Xrm.Page.context.getClientUrl() +
"/XRMServices/2011/OrganizationData.svc/new_deviceSet?$select=new_ProductPrimaryCategoryId,new_RelatedOrderId&$expand=new_salesorder_new_device&$filter=new_salesorder_new_device/StatusCode/Value eq 100001",
beforeSend: function(XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("Accept", "application/json");
},
async: true,
success: function(data, textStatus, xhr) {
var results = data.d.results;
for (var i = 0; i < results.length; i++) {
var new_ProductPrimaryCategoryId = results[i].new_ProductPrimaryCategoryId;
var new_RelatedOrderId = results[i].new_RelatedOrderId;
}
},
error: function(xhr, textStatus, errorThrown) {
alert(textStatus + " " + errorThrown);
}
});
Он дает мне 500 internal server error
, даже когда я запускаю его в Rest Builder, нажимая Выполнить код.Но когда я заменяю фильтр на равный, он хорошо работает!Когда я пытаюсь получить new_devices, это означает, что их код состояния продавца содержит данные, как показано ниже:
$.ajax({
type: "GET",
contentType: "application/json; charset=utf-8",
datatype: "json",
url: Xrm.Page.context.getClientUrl() + "/XRMServices/2011/OrganizationData.svc/new_deviceSet?$select=new_ProductPrimaryCategoryId,new_RelatedOrderId&$expand=new_salesorder_new_device&$filter=new_salesorder_new_device/ StatusCode ne null",
beforeSend: function(XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("Accept", "application/json");
},
async: true,
success: function(data, textStatus, xhr) {
var results = data.d.results;
for (var i = 0; i < results.length; i++) {
var new_ProductPrimaryCategoryId = results[i].new_ProductPrimaryCategoryId;
var new_RelatedOrderId = results[i].new_RelatedOrderId;
}
},
error: function(xhr, textStatus, errorThrown) {
alert(textStatus + " " + errorThrown);
}
});
В чем проблема?
Редактировать: Когда я пытаюсь позвонить через SDK.RESTили SDK.JQUERY или XrmSvsToolkit это дает мне:
Error : 500: Internal Server Error: attributeName