Dynamics 365 Online-多选域

时间:2022-09-22 13:57:34

 参与过Dynamics CRM相关工作的朋友们都知道,Dynamics 365之前并没有多选域字段,想要实现多选域,需要自己添加WebResource定制,而这也带来了一系列需要考虑的情况,比如额外的字段消耗,逻辑上复杂的转换规则等,更有甚者,会去改变涉及多选域情况的业务逻辑。但随着Dynamics 365 V9版本的发布,多选域的问题将不再复杂(针对简单的需求),因为MS终于把多选域字段添加了进来。

  1. 添加多选域字段

  与新建OptionSet的方式没有区别,选择字段类型“MultiSelect Option Set”,也可以创建一个Global Multiple Select Option Set

  Dynamics 365 Online-多选域

  在创建完之后,我们把它Publish到Form上,来看看具体的选择效果是什么样的

  Dynamics 365 Online-多选域

  1. 支持全选/反全选
  2. 支持搜索,是包含的查询结果
  3. “4 items”显示的是查询的结果数目,默认是所有
  4. 可以通过点击“x”来去掉选项

  2. Advanced Find

  既然这是一个字段,那么当然可以通过Advanced Find查询,对比以前的规则条件,多选域多了两个规则:“Contains Values”,"Does Not Contains Values"

  Dynamics 365 Online-多选域

  那么FetchXml也相应的有所改变

 <fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false">
<entity name="account">
<attribute name="name" />
<attribute name="primarycontactid" />
<attribute name="telephone1" />
<attribute name="accountid" />
<order attribute="name" descending="false" />
<filter type="and">
<condition attribute="new_multiselect" operator="contain-values">
<value>100000000</value>
</condition>
<condition attribute="new_multiselect" operator="not-contain-values">
<value>100000001</value>
</condition>
<condition attribute="new_multiselect" operator="in">
<value>100000000</value>
<value>100000002</value>
</condition>
</filter>
</entity>
</fetch>

  3. API调用

  如果想执行多选域相关的操作,比如查询结果,这里需要引用最新版本的dll。在V9版本之后,MS将不再像以前那样提供SDK的下载包,Assembly直接通过Nuget添加,具体的名字:Microsoft.CrmSdk.CoreAssemblies。里面包含了需要用到的Microsoft.Xrm.Sdk.dll和Microsoft.Crm.Sdk.Proxy.dll

  Dynamics 365 Online-多选域

  接着我们看看多选域字段值到底是什么样的。

  Dynamics 365 Online-多选域

  多选域字段的值是一个集合:OptionSetValueCollection,每一个被选中的选项是一个OptionSetValue对象。

  Dynamics 365 Online-多选域

  并且像OptionSet一样,FormattedValues里可以得到所有被选中选项的Label值,但是这里需要注意一点,Label值是用“;”分号隔开,而且除了第一个值之外,后续的值的前面都会有个空格,在进行数据操作前,需要把空格去掉。

  再提醒一下,这里需要用到V9版本及以后的dll,不然多选域字段的Value都是空。

  之前说到Operation有更新,那么对应于Advanced Find里面的情况,API中的Operator值分别是ConditionOperator.ContainValues和ConditionOperator.DoesNotContainValues。

  

  

  

  

Dynamics 365 Online-多选域的更多相关文章

  1. Dynamics 365新引入了多选选项集类型字段

    本人微信和易信公众号:微软动态CRM专家罗勇 ,回复276或者20180630可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong.me ...

  2. 利用Azure虚拟机安装Dynamics 365 Customer Engagement之三:安装Windows活动目录域服务

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

  3. 利用Azure虚拟机安装Dynamics 365 Customer Engagement之二:创建域控虚拟机

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

  4. Dynamics 365 Document Management

    Dynamics CRM中的Document Management功能需要Dynamics CRM与SharePoint进行集成,也就是实现在CRM中上传Document,实际上Document最终存 ...

  5. 利用Azure虚拟机安装Dynamics 365 Customer Engagement之十二:新增SQL Server可用性副本

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

  6. Dynamics 365 Customer Engagement安装FAQ

    微软动态CRM专家罗勇 ,回复310或者20190308可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me!我的网站是 www.luoyong.me . 本文参考了包括但不限 ...

  7. Dynamics 365中自定义工作流活动获取的上下文分析及注意事项

    关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复244或者20170306可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong. ...

  8. Dynamics 365中的应用程序介绍

    本人微信和易信公众号:微软动态CRM专家罗勇 ,回复275或者20180630可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong.me ...

  9. Dynamics 365中配置和使用文件夹级别的跟踪&lpar;folder-level tracking&rpar;

    本人微信和易信公众号:微软动态CRM专家罗勇 ,回复274或者20180630可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong.me ...

随机推荐

  1. elasticsearch api

    count curl -XGET http://21.3.5.121:9200/ipv4geo/service/_count -d '{"query":{"match&q ...

  2. 如何利用OpenCV自带的级联分类器训练程序训练分类器

    介绍 使用级联分类器工作包括两个阶段:训练和检测. 检测部分在OpenCVobjdetect 模块的文档中有介绍,在那个文档中给出了一些级联分类器的基本介绍.当前的指南描述了如何训练分类器:准备训练数 ...

  3. 到底怎么样才叫看书?——Tony Zhao&&num;39&semi;s

    到底怎么样才叫看书?——上篇 目录: 一.引入 二.经历了就能理解 三.读书要分级 四.只读经典 五.别吝惜你动笔的那点时间 一.引入 看到这个题目的时候你可能会感到有点好笑:“这还用问,看书就是把书 ...

  4. centos redis安装

    对redis不是很了解,先写一个简单的安装过程 系统版本:centos 6.5 redis版本:2.8.23 一.安装依赖 sudo yum install tcl gcc gcc-c++ -y 二. ...

  5. CentOS(Linux) - SVN使用笔记(二) - 创建SVN仓库及下载仓库到本地

    1.安装: 参考文章 CentOS(Linux) - SVN使用笔记(一) -  安装SVN过程及开启和关闭svn服务指令 2.创建仓库 #创建项目目录 mkdir /usr/svn#进入目录cd / ...

  6. Linux搭建SVN服务器(服务端)

    Linux搭建SVN服务器(服务端) 1 安装SVN SVN客户端:TortoiseSVN,官网下载:https://tortoisesvn.net/downloads.html(客户端) # yum ...

  7. Django Forms 表单

    环境 python 3.7 服务端  views.py from django import forms # 引入 froms 模块 from django.forms import widgets ...

  8. 转载-浅谈Ddos攻击攻击与防御

    EMail: jianxin#80sec.comSite: http://www.80sec.comDate: 2011-2-10From: http://www.80sec.com/ [ 目录 ]一 ...

  9. 转载:字符串hash总结(hash是一门优雅的暴力!)

    转载自:远航休息栈 字符串Hash总结 Hash是什么意思呢?某度翻译告诉我们: hash 英[hæʃ] 美[hæʃ]n. 剁碎的食物; #号; 蔬菜肉丁;vt. 把…弄乱; 切碎; 反复推敲; 搞糟 ...

  10. openssl 编程

    背景: 生成私钥.公钥 --> 生成AES-key seed[32], iv[16] --> 公钥加密ASE-key, IV,传给Server --> Server用私钥解密,得到A ...