写个自己看的常用JavaScript


1.获取表单的状态

    var formType = Xrm.Page.ui.getFormType();
    // CREATE = 1;
    // UPDATE = 2;
    // READ_ONLY = 3;
    // DISABLED = 4;
    // QUICK_CREATE = 5;
    // BULK_EDIT = 6;

2.获取安全角色名称

var role = false;
function ShowRole() {

    var RoleId = Xrm.Page.context.getUserRoles();//获取当前的用户安全角色id  

    for (var i = 0; i < RoleId.length; i++) {
        var req = new XMLHttpRequest();
        req.open("GET", Xrm.Page.context.getClientUrl() + "/api/data/v9.0/roles(" + RoleId[i] + ")?$select=name", false);//true是异步,false是同步  
        req.setRequestHeader("OData-MaxVersion", "4.0");
        req.setRequestHeader("OData-Version", "4.0");
        req.setRequestHeader("Accept", "application/json");
        req.setRequestHeader("Content-Type", "application/json; charset=utf-8");
        req.setRequestHeader("Prefer", "odata.include-annotations=\"*\"");
        req.onreadystatechange = function () {

            if (this.readyState === 4) {
                req.onreadystatechange = null;
                if (this.status === 200) {//200执行成功且有返回值  
                    var result = JSON.parse(this.response);
                    var name = result["name"];
                    if (name == "这里填写安全角色名称") {
                        // 逻辑
                        role = true;
                    }
                } else {
                    var error = JSON.parse(this.response).error;
                    Xrm.Utility.alertDialog(this.statusText + error.message + "错误");
                }
            }
        };
        req.send();
    }
    return role;
}