time 
设为首页】【收藏本站
当前位置: 主页 > ERP > CRM > 【MS Dynamics CRM 2013介绍】29、新增的表单编程API

【MS Dynamics CRM 2013介绍】29、新增的表单编程API

时间:2014-10-17 15:19 点击:1648次 字体:[ ]




       1. Xrm.Page.context.getClient()

它是用来替代之前的 context.isOutlookClient() 接口的,返回值可能是 Browser 、Outlook或者Mobile之一。

2.  Xrm.Page.data.refresh(save).then(successCallback, errorCallback)

用来异步刷新界面,可以保存当前修改且不需要重新载入页面。我们知道Dynamics CRM 2011 记录详情界面保存后后悔重新载入页面,现在Dynamics CRM 2013提供了新选择。

3.  Xrm.Page.data.save().then(successCallback, errorCallback)

异步的保存对记录的更改,并在保存成功后调用回掉函数successCallback。

4.  Xrm.Page.getAttribute(arg).getIsPartyList()

返回查找字段是不是参与方列表,比如活动的必须方字段就是,我们新建的客制化实体目前是的查找字段是不能查找多个实体的,就不是参与方列表。

5.  Xrm.Page.context.getUserName()

        以前有getUserId(),要给查找实体是系统用户(SystemUser)的查找类型字段赋值为当前用户还真是有点麻烦,需要用ODATA查询下用户的主属性(姓名)的值才能赋值。当时我就在想,为啥没有getUserName()呢?哈哈,这不,想啥来啥,赞一个。我用代码 alert(Xrm.Page.context.getUserName()); 获取到的输出如下,正是当前用户的姓名。

【MS Dynamics CRM 2013介绍】29、新增的表单编程API_www.fengfly.com

 

       5.Xrm.Page.data.entity.getPrimaryAttributeValue()

这个用来获取实体的主属性的值,主属性默认情况下就是解决方案前缀加上_name,比如new_name,示例代码是 alert(Xrm.Page.data.entity.getPrimaryAttributeValue());,结果如下:

【MS Dynamics CRM 2013介绍】29、新增的表单编程API_www.fengfly.com

 

       6.  Xrm.Page.ui.setFormNotification()

      在Dynamics CRM 2011中,只有少部分地方系统有窗体通知,比如商机界面如果没有选择价目表会出现窗体提示,但是SDK中并没有提供自定义开发的时候如何设置窗体消息的方法,虽然网上有人说可以做到,毕竟官方没有公开支持嘛。一些用户也有这需求,因为总是弹出窗口来提示有时候挺烦人的。

【MS Dynamics CRM 2013介绍】29、新增的表单编程API_www.fengfly.com
 
        到Dynamics CRM 2013时明确方便的支持了,示例代码是 Xrm.Page.ui.setFormNotification('窗体通知消息一错误', 'ERROR', 'D1ADCA8C-D70D-4A2E-A759-BA08FE8A221B'); ,效果如下图所示:

 【MS Dynamics CRM 2013介绍】29、新增的表单编程API_www.fengfly.com

 

使用代码 Xrm.Page.ui.setFormNotification('窗体通知消息一警告', 'WARNING', 'D1ADCA8C-D70D-4A2E-A759-BA08FE8A221B'); 的效果如下图所示:

【MS Dynamics CRM 2013介绍】29、新增的表单编程API_www.fengfly.com

  

    使用代码 Xrm.Page.ui.setFormNotification('窗体通知消息一信息', 'INFO', 'D1ADCA8C-D70D-4A2E-A759-BA08FE8A221B'); 的效果如下图所示:

【MS Dynamics CRM 2013介绍】29、新增的表单编程API_www.fengfly.com

 

当然,一次添加多个消息也是可以的,如下图所示。

【MS Dynamics CRM 2013介绍】29、新增的表单编程API_www.fengfly.com

 

这里会用到一个GUID的值,我一般使用Visual Studio自带的创建GUID工具即可。

【MS Dynamics CRM 2013介绍】29、新增的表单编程API_www.fengfly.com

 

【MS Dynamics CRM 2013介绍】29、新增的表单编程API_www.fengfly.com

  

7.  Xrm.Page.ui.clearFormNotification(uniqueId)

  清除参数指定的表单级别的消息。

       8.  Xrm.Page.getControl(arg).setNotification(message)

       为指定的控件设置一个消息,能阻止窗体保存,是代替以前用alert方法弹出对话框提示错误信息的绝好替代方法。

       9.  Xrm.Page.getControl(arg).clearNotification()

清除为指定控件设置的消息。

10. Xrm.Utility.isActivityType(entityName)

传入实体的逻辑名称,判断boolean值告知是否是活动实体

11.  Xrm.Utility.alertDialog(message,onCloseCallback)

显示一个消息,并在用户点击确定按钮后调用回调函数 onCloseCallback,请以后使用该函数代替window.alert。

12.  Xrm.Utility.confirmDialog(message,yesCloseCallback,noCloseCallback)

显示一个确认对话框,当用户点击确定时调用函数yesCloseCallback,点击取消时调用函数noCloseCallback。

     下面这个例子涵盖了前面几个函数:

  function BtnOnClick() {

    Xrm.Utility.confirmDialog('确定要继续操作吗?', function () {

        Xrm.Page.getControl('new_name').setNotification('你点击了确定按钮!');

        Xrm.Page.ui.clearFormNotification('D1ADCA8C-D70D-4A2E-A759-BA08FE8A221B');

    }, function () {

        Xrm.Utility.alertDialog('你点击了取消按钮', function () { });

    });

}



本文地址 : http://www.fengfly.com/plus/view-215397-1.html
标签: Dynamics CRM 2013 表单编程API
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码: