注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

微软MVP罗勇的博客

微软MVP罗勇,www.luoyong.me

 
 
 

日志

 
 

微软Dynamics CRM 2013介绍系列之二十九:新增的表单编程API  

2013-11-14 08:29:28|  分类: CRM2013介绍 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

       1. Xrm.Page.context.client.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()); 获取到的输出如下,正是当前用户的姓名。

微软Dynamics CRM 2013介绍系列之二十九:新增的表单编程API - 罗勇 - 罗勇的博客

 

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

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

微软Dynamics CRM 2013介绍系列之二十九:新增的表单编程API - 罗勇 - 罗勇的博客

 

       6.  Xrm.Page.ui.setFormNotification()

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

微软Dynamics CRM 2013介绍系列之二十九:新增的表单编程API - 罗勇 - 罗勇的博客
 
        到Dynamics CRM 2013时明确方便的支持了,示例代码是 Xrm.Page.ui.setFormNotification('窗体通知消息一错误', 'ERROR', 'D1ADCA8C-D70D-4A2E-A759-BA08FE8A221B'); ,效果如下图所示:

 微软Dynamics CRM 2013介绍系列之二十九:新增的表单编程API - 罗勇 - 罗勇的博客

 

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

微软Dynamics CRM 2013介绍系列之二十九:新增的表单编程API - 罗勇 - 罗勇的博客

  

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

微软Dynamics CRM 2013介绍系列之二十九:新增的表单编程API - 罗勇 - 罗勇的博客

 

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

微软Dynamics CRM 2013介绍系列之二十九:新增的表单编程API - 罗勇 - 罗勇的博客

 

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

微软Dynamics CRM 2013介绍系列之二十九:新增的表单编程API - 罗勇 - 罗勇的博客

 

微软Dynamics CRM 2013介绍系列之二十九:新增的表单编程API - 罗勇 - 罗勇的博客

  

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 () { });

    });

}

素格格新疆特产店--做新疆特产的搬运工。
本店由博主的新疆老婆开设,搬运各种最好的新疆特产,是自用,送礼,年货,孝敬长辈特别是(岳)父母的首选!
微软Dynamics CRM 2013介绍系列之二十九:新增的表单编程API - 罗勇 - 罗勇的博客
 
  评论这张
 
阅读(922)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018