Dynamics 365-Full Text Index on Stopwords
之前写了一篇关于Online Relevance Search的博文,然后又看到罗勇大神关于Full Text Index的博文:Dynamics CRM中一个查找字段引发的【血案】,于是准备写点关于Full Text Index Stopwords相关的介绍,也算是对Dynamics 365 Search方式相关的一个知识点记录。
关于如何开启Dynamics 365 Full Text Index,这个就不多加赘述了,基础功能在网上还是很容易找到的,在Enable Full Text Index的时候,CRM会有提示,大致意思是要等24小时才能生效。Maintenance Job如何修改执行时间,可以参考罗勇大神的文章:
update MSCRM_CONFIG.dbo.ScaleGroupOrganizationMaintenanceJobs
set NextRunTime = 'UTC时间'
where OperationType = 15
注意RunTIme是UTC时间,可以大大减少Maintenance Job的等待时间,要不默认是会24小时执行一次。
当Full Text Index功能完全启用之后,我们当然会迫不及待地想要去尝试下新功能的效果,一般的搜索问题不大,但是有时候,你会发现,一些作为过滤条件的词语,就是搜索不到结果。例如,现在有一个account “Mr. To”

当用to作为查询条件的时候,是搜索不出这个account的

而导致这个问题的原因就是Stopwords in Stoplist。
当Full Text Index功能开启的时候,会有一个系统Stoplist作用于CRM Organization DB,作用于Full Text Index涉及到的Entity,也就是DB的Tables。

这个系统Stoplist来自于系统数据库Resource Database,一个在Management Studio上不可见的Database,但是在SQL安装目录下,可以找到它的数据库文件

这个数据库暴露出来的内容是ReadOnly的。
既然我们知道有Stoplist这个功能的存在,那么我们当然会想到,是不是可以创建自己的过滤词组来满足特定的业务需求呢?答案是肯定的。
1. 创建Stoplist
CRM Database -> Storage -> Full Text Stoplist -> New Full-Text Stoplist

在弹出界面,填上Stoplist的名字,然后选择Stoplist如何创建

这里的建议是“Create from the system Stoplist”,出于两方面的考虑:首先并不是所有的stopwords,业务逻辑上都不需要;其次是有些words是公共的,在使用的时候是有优化的。
创建完成之后,我们先来确认下word

2. Remove Stopword
右键Stoplist “demo”,点击Properties

选择“Delete stop word”,然后填写要去掉的word,以及语言

之后再执行下查询

3. 设置Stoplist作用于Account表
ALTER FULLTEXT INDEX ON dbo.Accountbase SET STOPLIST = demo;
4. Rebuild CRMFullTextCatalog

这里有可能遇到的问题是Rebuild是灰掉的,但是可以选择上一层“Full Text Catalogs”,右键Rebuild
5. 效果
IIS reset之后,查询效果

Stoplist 官方资料:Configure and Manage Stopwords and Stoplists for Full-Text Search
Dynamics 365-Full Text Index on Stopwords的更多相关文章
- Dynamics 365创建电子邮箱字段包含值的联系人同时更改负责人的方法。
摘要: 本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复267或者20171129可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyon ...
- Dynamics 365 CE命令栏按钮点击后刷新表单页面方法
微软动态CRM专家罗勇 ,回复326或者20190428可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me! Dynamics 365 Customer Engagement ...
- Dynamics 365 CE中AsyncOperationBase表记录太多,影响系统性能怎么办?
微软动态CRM专家罗勇 ,回复311或者20190311可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me!我的网站是 www.luoyong.me . 本文主要是根据微软官 ...
- 安装完成Dynamics 365 CE后别忘了更改维护作业的运行时间
摘要: 微软动态CRM专家罗勇 ,回复309或者20190308可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me!我的网站是 www.luoyong.me . 安装完毕Dy ...
- Dynamics 365新功能:可编辑的网格(行内编辑)
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复238或者20161127可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong. ...
- 将Dynamics 365中的用户及其角色、角色导出到Excel中
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复240或者20161204可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong. ...
- Dynamics 365中自定义工作流活动获取的上下文分析及注意事项
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复244或者20170306可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong. ...
- Dynamics 365设置错误通知首选项的方法
本人微信公众号:微软动态CRM专家罗勇 ,回复288或者20181205可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me!我的网站是 www.luoyong.me . 使用 ...
- 无依赖简单易用的Dynamics 365公共视图克隆工具
本人微信公众号:微软动态CRM专家罗勇 ,回复279或者20180818可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me!我的网站是 www.luoyong.me . Dy ...
随机推荐
- kali linux 网络渗透测试学习笔记(一)Nmap工具进行端口扫描
一.利用Nmap扫描网站服务器的端口开放情况 首先打开我们的kali linux才做系统,再打开其命令行模式,输入:nmap www.csdn.net 如下图所示: 因此,通过这个结果可以表明csdn ...
- app性能测试,你需要关注哪些指标?
app性能测试,你需要关注哪些指标? 一.Android客户端性能测试常见指标: 1.内存 2.CPU 3.流量 4.电量 5.启动速度 6.滑动速度.界面切换速度 7.与服务器交互的网络速度 二.预 ...
- [Swift]LeetCode553. 最优除法 | Optimal Division
Given a list of positive integers, the adjacent integers will perform the float division. For exampl ...
- [Swift]LeetCode949. 给定数字能组成的最大时间 | Largest Time for Given Digits
Given an array of 4 digits, return the largest 24 hour time that can be made. The smallest 24 hour t ...
- Linux 工程向 Windows 平台迁移的一些小小 tips
Linux 工程向 Windows 平台迁移的一些小小 tips VS2013 C++11 Visual Studio 2013 没有做到对 C++11 所有的支持,其中存在的一个特性就是 In-cl ...
- Java基础--Eclipse使用
Eclipse是JavaWeb开发最常用的工具,下面详细介绍一下如何下载安装最新版Eclipse.本文eclipse的使用是在JDK安装配置完成的基础上进行的,否则Eclipse安装后可能无法运行程序 ...
- war包部署到腾讯云中报404的排错经历
项目完成了部分功能,需要把项目放到公网上,方便演示讨论.本来以为挺简单的,直接将war包放到腾讯云服务器tomcat中,结果报错404,第一次碰到这种情况,于是想办法解决,花了一天的时间,终于解决了问 ...
- .Net WebApi 初探
实现服务层与api层共用,也就表明Service层就是api层. 关键类和接口 System.Web.Http.Dispatcher.DefaultHttpControllerSelector web ...
- android 垃圾回收机制
1.垃圾收集算法的核心思想 java语言提供了自动的GC机制,系统会经常检查内存,采用对象引用计数的方式,将引用次数为0的对象回收.这样可以防止两个危险:(1)防止无用对象占用内存资源 (2)防止有用 ...
- Lucene 06 - 使用Lucene的Query API查询数据
目录 1 Query对象的创建(方式一): 使用子类对象 1.1 常用的Query子类对象 1.2 常用的Query子类对象使用 1.2.1 使用TermQuery 1.2.2 使用NumericRa ...