0

我有一个包含多条记录的实体。该实体包含 3 个字段Parameter NameParameter ValueContact ID联系人 ID是一个查找字段。我的 CRM 实体中有多个相同联系人 ID的记录。

现在我想根据Contact ID从 CRM 实体中获取所有参数名称参数值

我正在使用以下代码,

var Query = "$select=vrp_parametername&$filter= vrp_contactid eq '" + contactid + "'";
 XrmSvcToolkit.retrieveMultiple({
    entityName: entity ,  
    odataQuery: Query,
    async: false,
    successCallback: successCallback,
    errorCallback: errorCallback
});

但我收到以下错误,

检索响应时出错 - 错误:400:错误请求:位置 1 的类型“Microsoft.Xrm.Sdk.Entity”中不存在属性“vrp_contactid”

4

3 回答 3

0

你应该使用_vrp_contactid_value

var Query = "$select=vrp_parametername&$filter=_vrp_contactid_value eq '" + contactid + "'";

更新

您可以使用单值导航属性来使用过滤器,请参阅我关于同一主题的博客。下面还有这个查询的另一个版本:

var Query = "$select=vrp_parametername&$filter=vrp_contactid/contactid eq '" + contactid + "'";

阅读更多

于 2019-04-05T16:20:29.720 回答
0

在这种情况下,我在 CRM 中将模式名称与逻辑名称混合在一起。我在 CRM 中使用架构名称,这就是出现此错误的原因。

在这种情况下,我所做的只是简单地使用了逻辑名称,并且能够达到预期的结果。

谢谢大家的帮助

于 2019-04-09T06:01:56.000 回答
0

错误明确指出,对于该特定实体,它找不到 vrp_contactid 字段。你为什么不检查字段是否可用。尝试使用 Crm restbuilder 并查看可用的条件属性。

于 2019-04-05T14:04:58.760 回答