В API Dynamics 365, как ссылаться на правильную сущность владения для деталей, когда владелец может быть системным пользователем или командой? - PullRequest
0 голосов
/ 04 апреля 2019

Использование версии 9.

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

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

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

RetrieveEntityChanges не будет отвечать с атрибутом owneridtype, и дляне имеет значения, что запрос не будет сконструирован и передан RetrieveMultiple.

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

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

Любые технические идеи будут высоко оценены.

1 Ответ

1 голос
/ 04 апреля 2019

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

...