Dynamics Crm 365 弹出快速创建窗体、获取当前活动窗体的信息

// 获取当前活动窗体的信息
function load() {
// 取得form选择器
    var item = Xrm.Page.ui.formSelector;
    // 取得当前form信息
    var currentitem = item.getCurrentItem();

    // 取得当前记录中部门区分的值
    // 如果部门与form吻合,则return
    // 如果部门与form不吻合,则切换form

    // 下面是个切换的示例,上面的内容很容易改造
    if (confirm("change?")) {
       var forms = item.items.get();
       for (var i = 0; i < forms.length; i++) {
           if (forms[i].getLabel() != currentitem.getLabel()) {
              forms[i].navigate();
              return;
           }
       }
    }
}

 

弹出快速创建窗体:

--下面的代码是基于窗体内嵌的web资源,如果是窗体js触发的话,把下面的parent.去掉

var entityLogicalName = "phonecall"; // 替换为您要创建的实体的逻辑名称
                var createFromEntityId = null; // 如果从现有记录创建,请提供实体记录的ID
                var subject = "";
                var contactname = "";
                var contactid = null;
                var parameters = {}; // 用于传递给快速创建窗体的参数
                parameters["scheduledend"] = new Date(); //结束时间


                var entityName = parent.Xrm.Page.data.entity.getEntityName();
                if (entityName == "lead") {
                    subject = parent.Xrm.Page.getAttribute("subject").getValue();
                    if (parent.Xrm.Page.getAttribute("parentcontactid").getValue()) {
                        contactid = parent.Xrm.Page.getAttribute("parentcontactid").getValue()[0].id;
                        contactname = parent.Xrm.Page.getAttribute("parentcontactid").getValue()[0].name;
                    }
                } else if (entityName == "opportunity") {
                    subject = parent.Xrm.Page.getAttribute("name").getValue();
                    if (parent.Xrm.Page.getAttribute("parentcontactid").getValue()) {
                        contactid = parent.Xrm.Page.getAttribute("parentcontactid").getValue()[0].id;
                        contactname = parent.Xrm.Page.getAttribute("parentcontactid").getValue()[0].name;
                    }
                } else if (entityName == "contact") {
                    var firstname = parent.Xrm.Page.getAttribute("firstname").getValue();
                    var lastname = parent.Xrm.Page.getAttribute("lastname").getValue();
                    contactid = parent.Xrm.Page.data.entity.getId(); 
                    subject = (firstname == null ? "" : firstname) + (lastname == null ? "" : lastname);
                    contactname = (firstname == null ? "" : firstname) + (lastname == null ? "" : lastname);
                }


                //被呼叫方
                var lookupValue = new Array();
                lookupValue[0] = new Object();
                lookupValue[0].id = contactid; // 联系人记录的ID
                lookupValue[0].name = contactname; // 联系人记录的名称
                lookupValue[0].entityType = "contact"; // 联系人实体类型
                parameters["to"] = lookupValue;


                //关于
                var regardingobjectid = new Array();
                regardingobjectid[0] = new Object();
                regardingobjectid[0].id = parent.Xrm.Page.data.entity.getId(); // 联系人记录的ID
                regardingobjectid[0].name = subject; // 联系人记录的名称
                regardingobjectid[0].entityType = entityName; // 联系人实体类型
                parameters["regardingobjectid"] = regardingobjectid;

                parameters["phonenumber"] = phonValue; //电话号码

                parent.Xrm.Utility.openQuickCreate(entityLogicalName, createFromEntityId, parameters);

 

posted @ 2022-03-25 11:11  溜溜球_小钢wan  阅读(215)  评论(0编辑  收藏  举报