Dynamic CRM 2013學習筆記(二十三)CRM JS智能提示(CRM 相關的方法、屬性以及頁面字段),及發布前調試


我們知道在CRM的js文件里引用XrmPageTemplate.js后,就可以實現智能提示,但每個js文件都引用太麻煩了,其實可以利用vs的功能讓每個js文件自動實現智能提示CRM的js;

另外,我們調試js,發布js文件也是比較繁瑣的事情,最好的辦法是全部調好,再發布上去,本文介紹用firefox + firebug + frame可以很方便地調試CRM js,全部調好后,再上傳js,明顯可以加快開發的速度。

 

1. 智能提示

  • CRM相關的方法屬性的vs 里加上XrmPageTemplate.js:

http://yunpan.cn/cyy2BDaXnhQcC  提取碼 e7f7

image

這樣我們就不用在每個js里添加這個引用,直接就可以打點出提示了:

image

 

  • 頁面字段的智能提示 

首先獲取頁面上所有的字段信息:

var page = {};
var pageAttr = {};

var
cArrs = Xrm.Page.getControl();
    for (var i = 0; i < cArrs.length; i++) {
        var col = cArrs[i];
        var name = col.getName().replace("new_", "");
        page[name] = col;
        if (col.getControlType() != 'subgrid')
            pageAttr[name] = col.getAttribute();
    }
 
    //發布前注釋下面5行
    var txt = '';
    for (var c in page) {
        txt += (c + ":{},");
    }
    console.log(txt);

image

 

然后,copy左邊的所有字段信息,放入到變量里,方便開發,真正發布時,要在頁面加載時調用init方法來動態初始化:

var page = {};
var pageAttr = {};
 
//發布前注釋下面2行
var page = { date: {}, accountid: {}, currencyid: {}, goods_return: {}, amount: {}, approval_status: {}, name: {}, createdby: {}, ownerid: {}, footer_statecode: {}, CreditNoteItem: {}, ai: {}, expense_item: {} };
var pageAttr = { date: {}, accountid: {}, currencyid: {}, goods_return: {}, amount: {}, approval_status: {}, name: {}, createdby: {}, ownerid: {}, footer_statecode: {}, CreditNoteItem: {}, ai: {}, expense_item: {} };
 
function init() {
    var cArrs = Xrm.Page.getControl();
    for (var i = 0; i < cArrs.length; i++) {
        var col = cArrs[i];
        var name = col.getName().replace("new_", "");
        page[name] = col;
        if (col.getControlType() != 'subgrid')
            pageAttr[name] = col.getAttribute();
    }
 
    //發布前注釋下面5行
    var txt = '';
    for (var c in page) {
        txt += (c + ":{},");
    }
    console.log(txt);
}

 

然后就可以點出字段來了:

image

 

2. 調試

  • Firefox + Firebug + FireFrame

image

先點一下Attach to Frame, 然后在頁面上點一下以定位到具體的frame

 

  • 另外,也可以用下面的插件,直接在下拉框里選frame:

http://www.cnblogs.com/ziyunfei/archive/2012/12/13/2815543.html

image

這樣我們就可以在不同的frame里調試CRM 的js了。

 

Dynamic CRM 2013學習筆記 系列匯總


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM