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

微软MVP罗勇的博客

微软MVP罗勇,www.luoyong.me

 
 
 

日志

 
 

微软Dynamics CRM 2013介绍系列之三十:筛选查找控件,so easy。  

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

  下载LOFTER 我的照片书  |

        查找控件增加了preSearch事件。它发生在查找控件显示对话框供用户查找记录之前,与其他事件不同的是,不能使用界面来设定这个事件发生时执行的代码。只有通过Xrm.Page.getControl(arg).addPreSearch(handler) 和 Xrm.Page.getControl(arg).removePreSearch(handler) 来为该事件增加或者清除执行的代码。这个方法大大简化筛选查找字段的步骤,在Dynamics CRM 2011中要做到这样需要很多步骤。下面的演示主要参考 http://www.magnetismsolutions.com/blog/nathaneccles/2013/09/30/crm-2013-javascript-lookup-filtering-using-addcustomfilter

      本演示的作用是根据 单行文本 字段的值来筛选 客户 这个查找字段的可选择值(可以供选择的客户要以 单行文本 字段的值开头),使用的代码如下:

     

function OnLoadHandler() {
Xrm.Page.getControl("new_account").addPreSearch(function () {
addLookupFilter();
});
}

function OnSingleLineTextChangeHandler() {
Xrm.Page.getAttribute("new_account").setValue(null);
Xrm.Page.getControl("new_account").addPreSearch(function () {
addLookupFilter();
});
}

function addLookupFilter() {
var singleLineText = Xrm.Page.getAttribute("new_singlelinetext").getValue();
var fetchXml = "";
if (singleLineText != null) {
fetchXml = "<filter type='and'><condition attribute='name' operator='like' value='" + singleLineText + "%' /></filter>";
}
else {
fetchXml = "<filter type='and'><condition attribute='name' operator='null' /></filter>";
}
Xrm.Page.getControl("new_account").addCustomFilter(fetchXml);
}

 

将上面的代码作为web resource上传以后,窗体属性的OnLoad事件执行OnLoadHandler函数。

微软Dynamics CRM 2013介绍系列之三十:筛选查找控件,so easy。 - 罗勇 - 罗勇的博客

 

字段 单行文本 的OnChange 事件执行函数 OnSingleLineTextChangeHandler 。

微软Dynamics CRM 2013介绍系列之三十:筛选查找控件,so easy。 - 罗勇 - 罗勇的博客
 
新建一条记录,在我不输入 单行文本 字段的值时 客户字段没有值可以选择。

 微软Dynamics CRM 2013介绍系列之三十:筛选查找控件,so easy。 - 罗勇 - 罗勇的博客

 

就算我点击 查找更多记录 ,弹出窗口中也是没有值可以选择。

微软Dynamics CRM 2013介绍系列之三十:筛选查找控件,so easy。 - 罗勇 - 罗勇的博客

 

那我切换视图呢,查找记录窗口查看的视图我从 客户查找视图 切换到 可用客户,可以看到还是没有值可以选择,所以这个 addPreSearch 会作用于所有可用的视图,不错!

微软Dynamics CRM 2013介绍系列之三十:筛选查找控件,so easy。 - 罗勇 - 罗勇的博客
 
然后我在 单行文本 字段中输入了 测试,这时候 客户 这个查找字段自动做了筛选了。

 微软Dynamics CRM 2013介绍系列之三十:筛选查找控件,so easy。 - 罗勇 - 罗勇的博客

 

     如果我点击 查找更多记录 这个链接,在出来的 查找记录 DIV层中切换试图也只有符合条件的记录能出来,可见筛选还是比较全面的。

微软Dynamics CRM 2013介绍系列之三十:筛选查找控件,so easy。 - 罗勇 - 罗勇的博客
 
如果我把 单行文本 字段的值更改成A,再输入 客户 字段,可见也自动做了合适的筛选。
 
微软Dynamics CRM 2013介绍系列之三十:筛选查找控件,so easy。 - 罗勇 - 罗勇的博客

素格格新疆特产店--做最好新疆特产的搬运工。
本店由博主的新疆老婆开设,搬运各种最好的新疆特产,是自用,送礼,年货,孝敬长辈特别是(岳)父母的首选!
微软Dynamics CRM 2013介绍系列之三十:筛选查找控件,so easy。 - 罗勇 - 罗勇的博客
 
  评论这张
 
阅读(1010)| 评论(5)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

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

页脚

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