查询实体类型为activityparty
的记录时遇到问题。
我将请求用于GET /api/data/v.../activityparties?$select=activitypartyid,partyidname
但失败并显示错误:
{“错误”:{ “ code”:“ 0x0”, “”消息“:”在类型'Microsoft.Dynamics.CRM.activityparty'上找不到名为'partyidname'的属性。 }
我从请求到activitypartyid
的那两个partyidname
和EntityDefinitions('activityparty')
字段名。
...“ PrimaryIdAttribute ”:“ activitypartyid ”,“ PrimaryImageAttribute”: null,“ PrimaryNameAttribute ”:“ partyidname ”,...
然后我查询EntityDefinitions('activityparty')/Attributes
以了解是否存在partyidname
属性。我在这里找到了一个有趣的字段'IsValidODataAttribute'= false 。这是否意味着该字段可以是JSON格式,也可以不是?那到底是什么意思?我想问题出在这种情况下,否则我不知道自己在做什么错:)
一个activityparty
实体记录的完整表示形式:
{
"@odata.etag":"W/\"2392630\"",
"_ownerid_value":"68682bd9-701b-460a-a383-c6d38a8d25ae",
"activitypartyid":"b0f76c9b-49b9-45ca-b15c-0179a421f680",
"participationtypemask":9,
"_activityid_value":"7418ab6b-fbd2-e911-a993-000d3a3a1688",
"ispartydeleted":false,
"versionnumber":2392630,
"scheduledend":"2019-09-08T12:00:00Z",
"_partyid_value":"68682bd9-701b-460a-a383-c6d38a8d25ae",
"scheduledstart":"2019-09-08T12:00:00Z",
"instancetypecode":0,
"addressusedemailcolumnnumber":null,
"donotemail":null,
"donotfax":null,
"addressused":null,
"_resourcespecid_value":null,
"exchangeentryid":null,
"donotphone":null,
"donotpostalmail":null,
"effort":null
}
答案 0 :(得分:0)
我想您正在下面的Web api调用中寻找它。
您应该使用_partyid_value@OData.Community.Display.V1.FormattedValue
以获得预期的结果。
Xrm.WebApi.online.retrieveMultipleRecords("activityparty", "?$select=activitypartyid,_partyid_value").then(
function success(results) {
for (var i = 0; i < results.entities.length; i++) {
var activitypartyid = results.entities[i]["activitypartyid"];
var _partyid_value = results.entities[i]["_partyid_value"];
var _partyid_value_formatted = results.entities[i]["_partyid_value@OData.Community.Display.V1.FormattedValue"];
var _partyid_value_lookuplogicalname = results.entities[i]["_partyid_value@Microsoft.Dynamics.CRM.lookuplogicalname"];
}
},
function(error) {
Xrm.Utility.alertDialog(error.message);
}
);
建议将CRM REST Builder用于无错误的Web api语法和有效载荷。