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

时间:2015-03-25 13:12:18

标签: javascript dynamics-crm dynamics-crm-2013

我计划在to实体上更改email属性的默认视图,因此它会建议用户在account中选择收件人,而不是contacts

然而,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指向contact实体的有效观点。执行代码,控制台有调试消息设置默认视图!,并且在使用to时,查找系统默认仍然使用account

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

1 个答案:

答案 0 :(得分:3)

我很幸运能够找到支持,但仍然有点棘手的方法如何在不破坏CRM核心的情况下实现所需的结果。

基本思路是将任意自定义视图添加到所选控件,而不是setDefaultView添加到对实体有效的任何所需视图

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

(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!");
    }
}())

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