在Dynamics 365 API中,如果所有者可以是systemuser或team,如何引用正确的所有权实体以获取详细信息?

问题描述 投票:0回答:1

使用版本9。

我能够在组织服务上使用SDK就可以对实体进行RetrieveEntityChanges,在本例中我们可以说明机会实体的所有更改。

这将给我一组自上次dataVersion以来已更改的记录。

机会记录上有一个名为“ownerid”的外键,它可以指向系统用户实体/表上的主要属性,或者指向团队实体/表上的主要属性。如果我需要有关所有者的详细信息,我不知道如何在我的代码的上下文中找出它加入的这两个中的哪一个。

RetrieveEntityChanges不会使用owneridtype属性进行响应,因此,查询不会构造并传递给RetrieveMultiple。

我没有尝试过RetrieveEntity,但是如果我不得不在我从RetrieveEntityChanges返回的每条记录上调用RetriveEntity,那就好了。

必须有更好,更有效的方式吗?

任何技术见解将不胜感激。

dynamics-crm dynamics-365 dynamics-crm-365
1个回答
1
投票

在创建RetrieveEntityChangesRequest时,在ColumnSet中设置owningteam和owninguser而不是ownerid。这样,当记录所有权更改时,NewOrUpdateEntity AttributeSet将仅包含这两个字段中的一个,其值将是团队或用户的EntityReference。

© www.soinside.com 2019 - 2024. All rights reserved.