由于业务逻辑需要,需要从某个 Entity 的 Record 中弹出其他 Entity 的创建窗口,并将当前 Entity 中的某些值传递到新打开的窗口中,具体的 JS 代码如下:
//定义一个参数对象 var parameters = {}; //如果传递的变量是 lookup 类型的字段,需要分别存储 id 和 name var lookupValue =Xrm.Page.getAttribute("sFieldName").getValue();
parameters["LookupFiledName"] = lookupValue.Id; //假设 lookup field 的字段名是 new_test,则 LookupFieldName = new_test
parameters["LookupFieldName+name"] = lookupValue.Name; //同上,这里引号内容应该是 new_testname
//如果要传递的不是 lookup 类型的字段,则直接赋值即可 var generalValue = Xrm.Page.getAttribute("sFieldName").getValue(); parameters["sFieldName"] = generalValue;
//设置为true则会在新窗口打开,false是在当前标签打开 var options = { openInNewWindow: true }; //打开新建 entity record 窗口,这里的entityName指相对应需要打开的 entity 的 name Xrm.Utility.openEntityForm("entityName", null, parameters, options);