如何从contactId检索CRM动态帐户记录

时间:2019-06-16 16:32:58

标签: c# dynamics-crm crm xrm

我正在构建一个动态表单,用户可以在其中选择任何实体及其字段。如果字段是查找字段,则用户可以从外观中选择字段,到目前为止,该字段可以正常工作,但联系人/帐户除外。

当我获取联系人的联系人实体元数据时,它具有帐户查找功能,但是当我尝试使用所有帐户列属性进行检索时,不会返回。

下面是我得到的代码和属性结果。

enter image description here

谢谢

2 个答案:

答案 0 :(得分:1)

这里令人困惑的是,accountid和parentcontactid实际上不是联系表上的字段。它们是CRM应用程序提供的“虚拟”字段,用于简化诸如工作流操作之类的操作,在这些操作中您需要定位特定类型的父客户记录。

您需要改为使用parentcustomerid字段,该字段是对父帐户或父联系人的查找。 parentcustomeridtype字段告诉您所引用的类型(帐户= 1,联系人= 2)。幸运的是,这通常由EntityReference对象处理,您可以将其与代码中的任何其他查询大致相同。

答案 1 :(得分:1)

Microsoft已经实现了“检索多个”不返回值为null的属性的功能。这就是为什么您没有获得所有属性的原因。

参考: https://community.dynamics.com/crm/f/117/t/289412

https://docs.microsoft.com/en-us/dynamics365/customer-engagement/developer/retrieve-detect-changes-metadata