【问题标题】:Lookup Dynamics 365 entity with alternate key that is a lookup property with the API使用备用键查找 Dynamics 365 实体,该键是 API 的查找属性
【发布时间】:2020-10-29 16:21:22
【问题描述】:

我正在尝试使用 URI 中的备用键语法在 Dynamics 365 中查找实体,但备用键包含一个作为查找类型值的属性。所以我希望我也可以根据它的备用键查找该值 - 全部在一个 URI 中:

例如这有效:

/contacts(_agent_lookup=00000000-0000-0000-0000-0000000000001)

但我希望做这样的事情:

/contacts(_agent_lookup=agents(bk_agent_key=1234))

这可能吗?

【问题讨论】:

    标签: dynamics-crm odata


    【解决方案1】:

    据我所知,这是不可能的。当您填写查找可能来自 JavaScript# 或使用 webapi 时,它需要实体类型并且它是 Guid。

    我了解您的要求,您可能希望根据备用键查找记录。

    在这种情况下,这将是两步过程。首先根据备用键获取记录,一旦有记录的 guid 可用,就使用它来填充查找。

    /contacts(_agent_lookup=00000000-0000-0000-0000-0000000000001)
    

    【讨论】:

      【解决方案2】:

      如果代理是您的联系人实体上的查找字段,那么您始终可以根据以下任何查找实体字段查询您的联系人数据-

      https://orgnamxyz.crm4.dynamics.com/api/data/v9.0/contacts?$filter={yourlookupfieldnameInContactEntity}/{anyFieldNameInYourLookupEntity}eq'{Value}'

      所以您的查询应该类似于 - contacts?$filter=msdyn_agent/bk_agent_key eq 'D342C9D14DFF02E23D72E138555985A5'

      希望您尝试一次,如果有效,请告诉我

      【讨论】:

      • 自行查询代理很好,并且您的查询字符串有效。然而,这不是我想要做的。我希望使用单个查询字符串来识别特定实体。您的方法返回一个列表。我实际上是在更新有效负载中使用它 - 因此需要一个实体。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-04
      • 2019-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多