前段时间微软发布了Dynamics 365,这是Dynamics产品的又一次大的变动,期待新的版本能够更好的满足客户的需求,同时提供更多的可定制化的内容. 近期做Dynamics CRM项目遇到很多审批的业务,用户A提交审批给用户B,这时如果审批记录没有做分派即审批记录的负责人没有发生改变,通常情况下都会把审批记录对申请人不可编辑. 常见的做法是:依据记录的审批状态,在记录页面加载时使用JS方法,遍历停用页面上的所有控件. 但会遇到一个问题,子网格是无法停用的,子网格右上角的"+"仍然…
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复222或者20160501可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong.me. 以前我就注意到命令栏按钮调用的JScript类型的Web资源似乎无法在浏览器中进行调试,伤不起.后来看到这篇文章 CRM JS webresource best practice for ribbon Commands / Forms,知道这个命令栏使用的JScript类型的Web资源是动态…
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复221或者20160430可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong.me. 我们首先来看看窗体中的子网格默认的 添加 按钮的行为,我这里点击了一下子网格旁边的 加号 图标,在子网格的第一行记录出现了搜索框,是可以进行搜索的,用 * 作为通配符可以进行搜索,当然也可以点击搜索框最后的放大镜图标查看和增加记录,如下所示:   也有有人会问,如果我要点击 加号 图标弹出新…
前言 虽然Dynamics CRM自带的审计很好,但是对于缺乏使用CRM经验的用户来说,自带的UCI界面实在是太隐藏了: 于是乎就出现了需求:想通过在表单上直接看到看审计历史记录: 在网上搜索了很多中方案,但是花费的时间很长,有兴趣的可以去看一看: 显示报告中的审计历史记录 Dynamics CRM 2011 Audit Report in SSRS 记录实体的更改 Livefeed of your CRM actions ! 我阅读这两个方案后,觉得它们看起来都很"重",我正在寻找更…
Dynamics 365的online版本已经在11月1号发布了,on-premises版也在没几天后发布,今天略看了一眼 what's new 一眼就看到了 editable grids,这个不用我说大伙也知道是什么东西,也是大伙一直在等待的东西,下面咱们来简单的了解下这个东西. 首先这个功能是需要一个配置的,咱们简单称之为开启吧,开启的方式有两种 第一种,随用随开.这里以客户实体为例,新建一条叫test的客户记录,编辑窗体-选取已有的最近的商机子网格-切换到控件tab-添加控件-选择可编辑网…
背景 经常有某个汇总子表的数量到主表的总数量,或者汇总子表的总价到主表的总价这种需求. 传统的做法: 1.就是为每个子表实体单独写成一个插件,但是这样不好复用. 2.主表的汇总字段是汇总货币类型,但是不能实时计算,得手动在页面上重新计算,如下图,点刷新才会触发计算 这里有幸阅读了网上一位前辈[疯吻IT]4年前写的文章,继承了他的思路实现了增删改重新触发汇总子表的某个字段到主表某个字段上. 效果图: 话不多说,上代码. #region << 版 本 注 释 >> /*--------…
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复162或者20151016可方便获取本文,同时可以在第一时间得到我发布的最新的博文信息,follow me! 注释在CRM中的显示是比较特别,我们可以自定义一个页面来显示注释吗?如果可以,可以做成通用的吗?这篇博文将会带你制作一个通用的注释显示页面,并为每条注释生成了超级链接,点击可以在弹出页面中查看或者编辑注释. 首先要新建一个类型为 HTML Page 类型的Web资源,操作步骤如下.我这里使用了Developer Toolkit进行…
1: 安装windows server 2008 R2 中文版 (过程略) 安装完成后设置机器名和IP地址, 本过程机器名 crm5dev,192.168.0.110 dns: 192.168.0.110(本机) Administrator/neu@crm123 2: 通过服务器管理器添加域服务,配置域服务器域名为crm5.lab. 注意:使用高级模式安装. 说明:服务器是windows server 2003 那么就选windows server 2003 服务器是windows server…
我们经常遇到下面这种问题:没有足够的权限 - 您没有访问这些记录的权限.请联系 Microsoft Dynamics CRM 管理员.  下面将详细介绍下如何解决这种问题:进不了CRM系统:进了CRM系统,但操作实体时报错:并试验自定义实体需要哪些基本的权限: . 一.进不了CRM系统 1. 查看url http://crmserver/webus/_common/error/errorhandler.aspx?BackUri=http%3a%2f%2fwebus.cloudapp.net%2f…
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复157或者20151005可方便获取本文,同时可以在第一时间得到我发布的最新的博文信息,follow me! 前面的 插件系列博客教程 讲述了新增记录(Create).删除记录(Delete) .更新记录(Update)和更改记录状态(SetState)插件的实例,也提到了系统标准实体会有一些特殊的消息,本博文以案例实体为例讲解一些特殊的消息.为了便于讲述,我这里模拟一个场景,就是解决案例的时候记载下解决案例的人和解决案例的时间,如果案例…
应公司需求,最近在学微软的Dynamics CRM.在搭建环境的过程中也遇到了一些雷坑,在这里分享一下安装部署过程当中所遇到的一些问题, 安装Microsoft Dynamics CRM 2016的几个必要条件: ①.系统版本:Windows Server 2012 r2   (安装教程及安装包:点我 ) ②.SQL版本:SQLServer2014   链接:https://pan.baidu.com/s/1M747Evrb49DtRzHSDViATA    提取码:6vu2 ③Dynamics…
Dynamics CRM 365 不用按钮工具,直接用js脚本控制按钮的显示隐藏: try { // 转备案按钮 let transferSpecialRequestButton = parent.parent.document.getElementById("new_srv_update|NoRelationship|Form|vivo.Form.new_srv_update.MainTab.Save.btnTransferSpecialRequest"); if (!transfe…
当在操作CRM时,做不论什么的写操作包含创建数据.更新数据.都会提示以下截图中的错误:"您无法登陆系统.原因可能是您的用户记录或所属的业务部门在Microoft Dynamics CRM中已被禁用",依据错误提示第一反应就是当前操作用户的业务部门被禁用了,但检查后发现并没有禁用,权限一切正常.你再往深了查就会发现,你的CRM组织的部署管理员账号在CRM系统中被禁用了,仅仅要把该账户启用,问题就会解决,这样的一般非常少见,除非是在批量禁用用户的时候不小心把部署管理员账号给禁了.…
症状 当您在 Microsoft Dynamics CRM 2011 年大型数据集上执行 RetrieveMultiple 查询时,您会比较慢. 原因 发生此问题是因为大型数据集缓存 RetrieveMultiple 查询 Microsoft SQL 查询计划.RetrieveMultiple 优化的基本的深度,则需要读取权限"本地的深度"和"深层防御"读取权限. 解决方案 重要:此部分. 方法或任务包含一些介绍如何修改注册表的步骤.但是,如果不正确地修改了注册表,…
使用情景:因为我父页面上有用art.dialog,而子页面上有项目中的框架弹出方法跟art.dialog冲突,不能使用art.dialog自带的方法传值, 所以只好用一种简单粗暴的方法来设置. var dom = top.window.document.getElementById('父页面iframe的id').contentWindow.$('#父页面元素id') dom.attr("value", id);  //子窗口给父窗口元素赋值 情况比较特殊,仅供参考.…
背景: 去年以前可以按照目录WebResourceUtility批量上传web资源,昨天发现用不了了,拿到WebResourceUtility源码改了一下都不是很方便,感觉官方写的太冗余,太长了,跟我喜欢的简单粗暴思想不太符合,刚好无意阅览了一个上传资源的代码,干脆自己手写一个根据目录去上传web资源的工具. 工具: LinqPad 5 Microsoft Dynamics SDK 9.0 XrmToolBox 老规矩先上效果图: 目录包含的文件 批量创建web资源后,发布 解决方案添加现有资源…
Dynamics CRM的权限配置有许多的问题,其中分享功能也是未来解决标准功能分配的权限不满足需求而设计的.但是这个功能使用的时候也要注意,否则会出现其他记录被共享的问题导致数据泄露可能会对项目的安全性产生毁灭性打击.言归正传 我们分享记录的时候要确定一个事情就是我们分享的实体记录对应的1:N关系的实体的记录需不需要一起分享.说白了就是比如我们分享了客户实体的数据,需不需要同时让被分享人查看关联了被分享的客户的实体记录.这里面涉及到一个字段级联的问题.如果我们需要被分享人即可以查看分享的记录也…
在我们平时客制化开发的时候会经常遇到要制作自定义按钮的情况,而这个自定义按钮的功能又经常会有一些隐藏逻辑需要实现,所以每次通过获取控件查找这个按钮再隐藏比较麻烦,而且偶尔会出现代码没起作用的效果.下面的方法可以很轻松的将字段隐藏. 场景:点击下载模板按钮后马上隐藏按钮,防止点击多次下载多次的问题 1.打开我们要隐藏按钮的表单界面 2.F12打开页面的开发模式,按照上图步骤,找到对应按钮的位置,复制出来<li>表签上的ID,再键入如下代码 var submitButtonID="gs_…
部署服务有些时候有用,改动一些参数不需要重启IIS,也不需要去数据库中更改.比如,系统默认设置一个仪表盘(Dashboard)最多6个组件,不能超过这个数量,通过部署服务是可以更改的.部署服务既可以通过通过C#代码调用,也可以用PowerShell调用. 但是Dynamics CRM Online可以使用部署服务吗? 答案是不能! 参考文档是 Introduction to the deployment web service ,原文网址是: https://msdn.microsoft.com…
问题发生在CRM 4.0 上 1 用户所在办事处及办事处上级被禁用. 2 如果已经重新启用了,还是报这个错误. 可以把停用的办事处及相关下级再重新--停用--启用一次试试. 3 如果还是报错,查看是否CRM组织的部署管理员账号在CRM系统中被禁用了. 如果禁用了,重新启用.…
我们在做一些自定义查询的时候会去查询选项集字段的值,但是实体的选项集字段是一个整型字段,直接查询并不能找到对应的选项集的显示内容.所以我们需要找到存放选项集键值对的表来做关联查询找到我们想要的值. Dynamics CRM存放选项集内容的表为stringmap表,继承自stringmapbase 以下以商机为例进行一个简单的查询 SELECT * FROM StringMap A,EntityView B WHERE A.ObjectTypeCode = B.ObjectTypeCode AND…
背景 最近接触到Microsoft Dynamics CRM的开发.前端js是必不可少的部分,奈何没有一个语法提示,点不出来后续的语句. 在vscode上面搜索插件的时候发现,有一个大神写的插件https://github.com/jlattimer/CRMVSCodeJSSnippets,但是vs2017不能通用 于是写代码转换了一下,下面是效果图. VS2017代码片段下载 https://download.csdn.net/download/wc513500/10573710 用法 PS:…
本节开始讲Dynamics CRM的窗体排版和设计,窗体也就是我们实际可以看到的表单界面.Dynamics CRM提供了一套独立的表单模板设计引擎,可以很方便的为开发者提供无代码开发,只需要简单的拖动和配置就可以完成一个表单的创作. 首先我们定位到实体对于的窗体功能下 上图就是窗体的操作页,首先是窗体的创建.我们新创建一个实体后系统会默认给我们创建四个窗体.根据窗体类型的不同大致可以分为四种,分别是主窗体.快速视图窗体.快速创建窗体.卡窗体. 主窗体:是为实体进行数据交互的主要窗体,多个主窗体可…
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复169或者20151105可方便获取本文,同时可以在第一时间得到我发布的最新的博文信息,follow me! CRM中的地址以前不是很了解,定制我家 素格格新疆特产店 的CRM系统的时候发现在联系人界面录入的地址,在订单界面使用 查找地址 功能的时候找不到,难道要手工再次录入发货的地址,收货人和电话等信息吗?当时没有深究,但是今天我打算仔细研究下,与大家分享,也好完善我家素格格新疆特产店的CRM.   首先我们通过 MetadataBro…
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复166或者20151028可方便获取本文,同时可以在第一时间得到我发布的最新的博文信息,follow me! 前面的博文:Dynamics CRM 客户端程序开发:在实体的列表界面添加按钮 和 Dynamics CRM 客户端程序开发:自定义系统标准按钮的可用性 ,都是使用的工具Ribbon Workbench.其实SDK中介绍的方法是直接更改文件 customization.xml 的方法,算是比较原始的方法,利用工具来定制的话其实也是…
Word Template 是Dynamics CRM 2016 中的其中一个新的功能.Word Template 就是文档模板,用于在Dynamics CRM中定义文档模板,从而对实体记录按照文档模板的格式进行导出数据.这个功能使用起来非常方便,快捷.极大减少扩展开发的工作量. 下载实体对应的文档模板 定义文档模板的格式和导出的字段 文档模板的上传 下载实体对应的文档模板 在菜单栏中选择:销售->设置->模板 在模板页面中选择文档模板(Document Templates) 点击"…
关注本人微信和易信公众号: 微软动态CRM专家罗勇,回复139或者20150106可方便获取本文,同时可以在第一时间得到我发布的最新的博文信息,follow me!       今天的博客主要是关于Dynamics CRM 2015对产品目录方面的改进的.        在进行演示之前,我先把预计2015年1月10日将要到抵达深圳的上好新疆特产加入到CRM中,登录CRM后导航到 设置 > 产品目录 > 系列和产品,点击 添加产品 新增产品如下:有个地方得吐糟一下,就是新增产品保存后,命令栏还是…
常用JS(一) Xrm.Page.context.getUserId():       //获取当前用户id Xrm.Page.context.getUserName():       //获取当前用户的用户名 Xrm.Page.data.entity.getId();        //获取当前记录id Xrm.Page.context.getUserRoles();       //获取当用户的安全角色 Xrm.Page.context.getUser();        //获取当前用户…
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复190或者20160216可方便获取本文,同时可以在第一时间得到我发布的最新的博文信息,follow me! 从CRM 2015 UR1开始,在 设置 > 模板 那里新增了 文档模板.   系统默认提供了4个Microsoft Excel模板和5个Microsoft Word模板,这些模板是公共模板,还有私有模板,若不做设置的话,就是所有的人都可以用.   我这里打开 客户摘要 这个模板去看看如下:   还是来看看怎么用,打开一个客户,在…
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复114或者20140312可方便获取本文,同时可以在第一时间得到我发布的最新的博文信息,follow me! 如果没有安装Ribbon Workbench,请参考博文 Dynamics CRM 客户端程序开发:常用工具介绍之Ribbon Workbench 下载安装,本博文主要使用这个工具. 一般是专门用一个解决方案用来处理命令栏Ribbon区的定制,我这里新增了一个名称为RibbonEditor的解决方案如下.还要值得注意的是一般用一个…