类型查找字段赋值

作者: 手机游戏网站  发布:2019-10-17

本身微信和易信公众号: 微软动态CRM行家罗勇 ,回复264大概20170924可惠及获取本文,同期能够在率先间取得自身宣布的新式的博文消息,follow me!作者的网址是 www.luoyong.me 。

SDK中有个章节 Set field values using parameters passed to a form ,能够经过U奥迪Q3L展开新建记录的窗体,并给相关的字段赋值,但是将内部二种独特的寻觅字段,分别是参加方列表查找字段(partylist lookup,该体系型的查究字段允许引用到多个实体的多条记下) 和 关于项目查找字段(regarding lookup,该种类型查找字段允许引用八个实体的一条记下) 列为特别,不能直接通过U揽胜极光L参数对齐进行赋值。在项目中若有此类需要怎么做?Follow Me!

此情此景:展开一条记下(小编那边以展开一条罗勇测验记录为例),点击命令栏的三个按键(我那边以点击提交开关为例),张开新窗口,新窗口是一个职责的新记录,将任务的有关字段设置为开发的那条记下。

手机游戏网站,尊重知识产权,本文的艺术毫无自个儿首创,是正规方法,来自帖子 Passing regardingobjectidtype to Xrm.Utility.openEntityForm 中CRM Nerd 提供的答案。

自身那边大致表明下思路:

  • 固然将安装查找字段供给的值通过UCRUISERL中的参数字传送递给展开的表单
  • 安装指标实体的表单必要允许收取那个传递过来的参数
  • 在表单的OnLoad事件中作文代码,获取参数的值,并将其赋值给有关项目查找字段(当然加入方列表查找字段也能够)就能够。

下边是具体做法。罗勇测量试验实体表单上的交由开关推行的按键如下:

 

    var parms = {};
    parms["parm_regardingid"] = Xrm.Page.data.entity.getId();
    parms["parm_regardingname"] = Xrm.Page.data.entity.getPrimaryAttributeValue();
    parms["parm_regardingtype"] = Xrm.Page.data.entity.getEntityName();
    Xrm.Utility.openEntityForm("task", null, parms, { openInNewWindow: true });

 

若是那时点击按键展开新窗口,你会开采错误如下:

手机游戏网站 1

那是因为您的窗体未有同意抽出那个非字段相关的参数,所以大家要开荒实体(这里是职责实体)的主要窗体,点击【窗体属性】,张开【参数】页签,扩充多少个参数如下图:

手机游戏网站 2

那多个参数的名字与前方代码中的参数名字有关,第三个Guid类型的参数作者动用UniqueId作为其体系,其他八个使用SafeString作为项目,将实体保存并揭发,你会发现近来的交付代码打开新建职务记录窗口不会报错了。上边是万里长征的末尾一步了。

为任务实体主窗体的OnLoad事件注册实践如下的代码:

function TaskOnLoadHandler() {
    if (Xrm.Page.ui.getFormType() == 1) {//只有新建记录才执行如下逻辑
        var parms = Xrm.Page.context.getQueryStringParameters();
        var regardingId = parms["parm_regardingid"];
        var regardingName = parms["parm_regardingname"];
        var regardingType = parms["parm_regardingtype"];
        if (regardingId != undefined) {
            Xrm.Page.getAttribute("regardingobjectid").setValue([{ id: regardingId, name: regardingName, entityType: regardingType }]);
        }
    }
}

 

今日能够观看效能了,张开新建职分窗体后,关于字段已经赋值为科学的值了:

手机游戏网站 3

本文由银河网站登录发布于手机游戏网站,转载请注明出处:类型查找字段赋值

关键词:

上一篇:没有了
下一篇:2017工作总结