0

我正在为 CRM 创建一个插件,它将页面的标题设置为帐户实体的名字。

通过在 CRM 中的 formload Event 上编写一个 javascript 函数,我达到了预期的结果。

以下是代码

var titlename = Xrm.Page.data.entity.attributes.get("firstname").getValue();  
    var titleSpan = document.getElementById('form_title_div');  
     if(titleSpan) {  
        for(var i = 0;i < titleSpan.children.length;i++) {  
               if(titleSpan.children[i].className == 'ms-crm-Form-Title-Data autoellipsis') {  
                titleSpan.children[i].innerText = titlename;  
                 }  
          }  
     }

但是我的客户不想要任何 javascript 代码,而是通过Plugin想要它。

我写了一个插件,但不知道如何获取和设置页面的标题。

插件项目是一个 C# 类库

插件代码如下

基本上我想要 C# 代码注释(Javascipt)行

using (var crm = new XrmServiceContext(service))  
{  
                var account = crm.ContactSet.Where(c => c.AccountId == id).First();  
                var titlename = contact.Crmp_Firstname.ToString();  
                //var titleSpan = document.getElementById('form_title_div');  
                //if(titleSpan) {  
                    //for(var i = 0;i < titleSpan.children.length;i++) {  
                        //if(titleSpan.children[i].className == 'ms-crm-Form-Title-Data autoellipsis') {  
                            //titleSpan.children[i].innerText = titlename;  
               //}  
          //}  
     //}  
}

提前感谢您的帮助

4

1 回答 1

4

无法通过插件修改帐户表单的标题。这是因为插件充当服务器端,而不是 JavaScript(和您的帐户表单)在客户端执行。CRM 不存储帐户的标题,而是在运行时生成它。

于 2014-01-09T12:52:36.603 回答