我需要从MS CRM数据库中获取一个电话呼叫实体记录列表。
对于那个purpise,我正在使用ODATA查询,
当我使用下面写的ODATA查询时,
// hyd1303d / CR8CLTNew / xrmservices / 2011 / OrganizationData.svc / PhoneCallSet?
它工作正常并给我结果....
但是当我尝试访问记录的发件人/收件人时,它给了我错误:
// hyd1303d / CR8CLTNew / xrmservices / 2011 / OrganizationData.svc / PhoneCallSet?$选择=从,到
收到错误:
" [HttpWebRequest_WebException_RemoteServer] 参数:NotFound 调试资源字符串不可用。通常,密钥和参数提供了足够的信息来诊断问题。请参阅http://go.microsoft.com/fwlink/?linkid=106663&Version=5.1.10411.0&File=System.Windows.dll&Key=HttpWebRequest_WebException_RemoteServer"
请为此提供任何解决方案。
提前致谢。
答案 0 :(得分:0)
您必须为发件人/收件人等查询ActivityPartySet。(完整列表:http://msdn.microsoft.com/en-us/library/gg328549.aspx)
即。从电子邮件/电话/电话等的(发件人)检索并在表格上设置相关字段,您应该:
result = RetrieveSynchronously("ActivityPartySet?$filter=ActivityId/Id eq guid'" + GuidOfEmailEtc + "' and ParticipationTypeMask/Value eq 1");
if (result != null && result.length > 0) {
var party = result[0].PartyId;
var value = [{ id: party.Id, name: party.Name, entityType: party.LogicalName }]
switch (party.LogicalName) {
case "account":
Xrm.Page.getAttribute("new_accountid").setValue(value);
break;
case "contact":
Xrm.Page.getAttribute("new_contactid).setValue(value);
break;
default:
break;
}
}