Javascript 在MS Dynamics CRM 2013中查找电子邮件中的联系人而不是帐户

Javascript 在MS Dynamics CRM 2013中查找电子邮件中的联系人而不是帐户,javascript,dynamics-crm,dynamics-crm-2013,Javascript,Dynamics Crm,Dynamics Crm 2013,我计划将的默认视图更改为电子邮件实体上的属性,因此建议用户在联系人中选择收件人,而不是帐户实体 然而,MS Dynamics CRM中的此功能似乎已被破坏。还是我错过了什么 代码如下: (function () { var ctrl = Xrm.Page.getControl("to"); if (ctrl) { ctrl.setDefaultView('{13C1A58B-9AEF-4164-80E5-1D946D5BC8B3}'); cons

我计划将
的默认视图更改为
电子邮件
实体上的
属性,因此建议用户在
联系人
中选择收件人,而不是
帐户
实体

然而,MS Dynamics CRM中的此功能似乎已被破坏。还是我错过了什么

代码如下:

(function () {
    var ctrl = Xrm.Page.getControl("to");

    if (ctrl) {
        ctrl.setDefaultView('{13C1A58B-9AEF-4164-80E5-1D946D5BC8B3}');
        console.log("Default view is set!");
    }
}())
Guid指向
联系人
实体上的有效视图。代码已执行,控制台已设置调试消息默认视图!,在使用
进行查找时,系统默认情况下仍使用
帐户


有人找到解决这个问题的方法了吗?当然是以支持的方式

我很幸运地找到了受支持的、但仍然有点棘手的方法,如何在不攻击CRM核心的情况下实现所需的结果

基本思想是将任何自定义视图添加到所选控件中,然后将
设置默认视图
添加到对实体有效的任何所需视图

因此,问题中的代码可以重写为:

(function () {
    var ctrl = Xrm.Page.getControl("to");

    if (ctrl) {
        // Add custom view based 
        ctrl.addCustomView('{71C254C1-1F55-43B7-94DE-C461DB617A77}', 'contact', 'View Name', '<xml> valid FetchXML statement </xml>', '<xml> valid LayoutXML statement </xml>', true);
        ctrl.setDefaultView('{13C1A58B-9AEF-4164-80E5-1D946D5BC8B3}');
        console.log("Default view is set!");
    }
}())
(函数(){
var ctrl=Xrm.Page.getControl(“to”);
如果(ctrl){
//添加基于视图的自定义视图
ctrl.addCustomView(“{71C254C1-1F55-43B7-94DE-C461DB617A77}”,“联系人”,“视图名称”,“有效的FetchXML语句”,“有效的LayoutXML语句”,true);
ctrl.setDefaultView({13C1A58B-9AEF-4164-80E5-1D946D5BC8B3});
log(“设置了默认视图!”);
}
}())

实际上,在设置了新的自定义视图之后,任何有效的视图都可以设置为默认视图。这可以是自定义视图,也可以是系统视图。

我认为这与字段是activityparty这一事实有关,如果我记得正确的话,setDefaultView仅在标准查找中受支持。请确认相同的代码也适用于客户类型字段。谢谢