Как в Dynamics 365 API указать правильную сущность собственности для получения подробной информации, когда владельцем может быть системный пользователь или группа?

Используя версию 9.

Я могу использовать SDK для службы организации, чтобы RetrieveEntityChanges для сущностей, в этом примере можно сказать обо всех изменениях в сущности возможности.

Это даст мне набор записей, которые изменились с момента последней версии dataVersion.

В записи возможности есть внешний ключ под названием «ownerid», который может указывать на первичный атрибут ЛИБО сущности / таблицы системного пользователя ИЛИ сущности / таблицы группы. Если мне нужны подробности о владельце, я не знаю, как определить в контексте моего кода, к какому из этих двух он присоединяется.

RetrieveEntityChanges не ответит атрибутом owneridtype, и в этом отношении запрос не будет создан и передан в RetrieveMultiple.

Я не пробовал RetrieveEntity, но, похоже, было бы довольно много разговоров, если бы мне пришлось вызывать RetriveEntity для каждой записи, которую я получил от RetrieveEntityChanges только для этой цели.

Должен быть способ лучше и эффективнее?

Будем очень признательны за любые технические идеи.


person Stephan G    schedule 04.04.2019    source источник


Ответы (1)


Когда вы создаете свой RetrieveEntityChangesRequest, установите owningteam и owninguser в своем ColumnSet вместо ownerid. Таким образом, при изменении владельца записи ваш NewOrUpdateEntity AttributeSet будет содержать только одно из этих двух полей, и его значение будет EntityReference для команды или пользователя.

person André Cavaca    schedule 04.04.2019
comment
@StephanG Это было у меня плохо, это исправлено; ) - person André Cavaca; 08.04.2019