У меня есть три объекта - 1. «Регистрация» 2. «Событие» 3. «Категория события»Динамика crm с использованием odata для извлечения указателя из «type: Microsoft.Crm.Sdk.Data.Services.EntityReference»
При сохранении регистрационной записи я хотел бы использовать указатель «события», выбранный для извлечения указателя соответствующей «категории событий». Я считаю, что проблема с поиском «категории событий» - это потому, что поиск категории событий - это EntityReference. Я не уверен, как построить мой запрос odata, чтобы получить только руководство по категории событий.
Мой код для создания OData URL выглядит следующим образом:
function getAssociatedEventId() {
var eventId = getEventId();
retrieveMultiple("new_eventclassSet", "?$select=new_EventCategoryId&$expand=new_new_eventcategory_new_eventclass/new_eventcategoryId&$filter=new_eventclassId eq (guid'" + eventId + "')", findEventQuestions, null, null);
}
function retrieveMultiple(odataSetName, filter, successCallback, errorCallback, _executionObj) {
var serverUrl = Xrm.Page.context.getClientUrl();
var ODATA_ENDPOINT = "/XRMServices/2011/OrganizationData.svc";
var odataUri = serverUrl + ODATA_ENDPOINT + "/" + odataSetName;
if (filter) {
odataUri += filter;
}
Сначала я получить идентификатор события через яваскрипта функции в веб-ресурсе, а затем я надеюсь использовать, чтобы получить идентификатор от категории события, связанной с событием. Когда мой код работает, он вызывает функцию successCallback, но данные возвращаются «undefined». Я считаю, что это связано с тем, что ответ данных, который я получаю с использованием построенного мной URL-адреса, возвращает ссылку на сущность. Я не уверен, как создать URL-адрес, чтобы указать идентификатор. Я включил изображение вкладки «ответ» с консоли разработчика. Надеюсь, это поможет. Большое спасибо за любой вклад.
Data Response from Developer's Console
Ответ просто сериализуется, тип возврата совпадает с отношением (1: N), которое относится к типу EntityReference, почему бы вам не разобрать JSON и не прочитать значение «Id»? – dynamicallyCRM