Microsoft Dynamics CRM 2011 Web Resource简介

Microsoft Dynamics CRM 2011引入了Web Resource的概念,Web Resource可以理解为在solution中创建的“虚拟文件”,它是存储在数据库中,每个Web Resource被创建后,都会生成一个唯一的URL。用户可以使用Web Resource对CRM进行扩展。  在Microsoft Dynamics CRM 2011中,可使用这些类型的Web Resource:   类型 文件 应用举例          文本       Web Page (HTML) 加到Form中作为Iframe Style Sheet (CSS) 为Web Page (HTML)Web Resource提供层叠样式 Style Sheet (XSL) 将XML数据转换成你的solution所使用的数据 Script (JScript) 可被Form event(OnLoad, OnSave, OnChange), Ribbon或其他Jscript调用 Data (XML) 用来缓存数据     图像     PNG…


如何为Microsoft Dynamics CRM List Component for Microsoft SharePoint Server 2010配置tracing

Microsoft Dynamics CRM 2011中的Microsoft SharePoint Server 2010List组件允许SharePoint site collection管理员在UI上来设置tracing(开启/关闭tracing,设置trace级别和查看trace)。   这篇博客中,我将介绍完成上述操作的步骤并分享关于Microsoft Dynamics CRM 的Microsoft SharePoint Server 2010 List组件的一些知识,希望能够帮助你理解并更方便地配置它。   为Microsoft Dynamics CRM List组件配置tracing的步骤 1.      打开配置UI 在浏览器中打开http(s)://<sitecollection>/crmgrid/configuretracing.aspx <sitecollection>是已经开启过Microsoft Dynamics CRM 的Microsoft SharePoint Server 2010 List组件的站点。 例如,你的站点URL是http://myspserver/sites/mysitecollection, 那么tracing配置页面的地址为 http://myspserver/sites/mysitecollection/crmgrid/configuretracing.aspx 打开上述URL后,你会看到如下图的UI界面。    2.      开启或关闭tracing 勾选Enable tracing,选择Trace Level并点击Save,这样便开启了tracing。下表为Trace Level的可能值和意义。    3.      查看Trace logs 当你点击Save按钮后,在你site collection的根站点下创建一个trace列表。列表名字如CRMListComponentTraceLogs_4FB367FB-A16E-481e-B56F-5788EEB27E5C。所有的trace会存储在这个自定义列表中。  Tracing UI刷新后会显示所创建的trace列表的链接,如下图所示    你可以通过下属方法之一来查看/访问trace:…


如何使用Microsoft Dynamics CRM 2011 BIDS Fetch Extension创建自定义报表

Microsoft Dynamics CRM 2011的结构让报表开发者能够比以前更好地创建、定制报表。之前的版本,报表通常在CRM应用中的报表向导中创建。新版本比其更加灵活。下面为在Microsoft Dynamics CRM 2011中使用Microsoft SQL Server Business Intelligence Development Studio (BIDS) Fetch Extension来创建自定义报表的步骤:   前提需要: 安装了Microsoft SQL Server 2008 或者 2008 R2 Business Intelligence Development Studio (BIDS) 安装了Microsoft Dynamics CRM 2011 BIDS Fetch Extension 拥有Microsoft Dynamics CRM 2011 Online 账户   第一部分-搭建Microsoft CRM 2011 FetchXML自定义报表的开发环境 1.       安装Windows 7 32bit或64bit的PC。其他支持的OS: Vista, Windows Server…


在Microsoft Dynamics CRM 2011中美化Chart

上一篇博客中,我们谈到如何来自定义chart以满足更多的商业需求,在这篇博客中,我们将继续讨论chart,给出一个实例,介绍如何让chart变得更美观。   导出Chart 所有的Chart都是基于实体的。打开你的chart所基于的实体。在销售流程中,我们选择Opportunities实体。接下来,确保目前显示的是你想要修改的chart。选择好chart后,点击View页,然后点击Export Chart。这样,就可以将XML文件存到本机,从而进行编辑。   编辑XML 以下是完整的chart文件。注意高亮的部分-我们将着重讨论。 <visualization> <visualizationid>{87293554-2482-DE11-9FF3-00155DA3B012}</visualizationid> <name>Sales Pipeline Chet 2</name> <description>Shows the sum of estimated revenue in each stage of the sales pipeline.</description> <primaryentitytypecode>opportunity</primaryentitytypecode> <datadescription> <datadefinition> <fetchcollection> <fetch mapping=”logical” count=”10″ aggregate=”true”> <entity name=”opportunity”> <attribute name=”estimatedvalue” aggregate=”sum” alias=”sum_estimatedvalue” /> <attribute name=”stepname” groupby=”true” alias=”stepname” /> <order alias=”stepname” descending=”false” /> </entity> </fetch> </fetchcollection> <categorycollection>…


Microsoft Dynamics CRM Dashboards for Techies

在上一篇博客中,我们介绍了销售经理Kevin能够使用chart和dashboard从Microsoft Dynamics CRM数据中快速获得信息。在这篇博客中,我们将利用Microsoft Dynamics CRM 2011的自定义化功能来从更深层的角度来做这种分析。   第一步-理解什么情况下需要自定义chart和dashboard 之前,我们介绍了Kevin怎样使用chart和dashboard编辑器来快速地显示Accounts, Contacts, Leads, Opportunities, Orders 和Invoices的数据实时状态。我们在上篇博客中创建的所有chart都只有一层分组。对于简单的分析,这已经足够了。但是,chart可以做更多!想象一下,一个account的chart不仅能够显示该account何时被修改,而且还能显示account目前的status,并对chart如何显示有更多的控制。   另外,我们之前创建的chart在dashboard上呈现,因此显示的是相应视图中所有记录的统计信息。但是,在一些情况中,客户经理希望看到与某一个特定的account相关的信息。   在这篇博客中,我们将介绍如何自定义这些复杂的chart,并将其嵌入在form中。   第二步-决定哪些view,chart,form和dashboard需要客户化 这里会讨论的两种自定义:第一种是chart会按照2个条件对记录进行分组:修改日期和当前状态。第二种是自定义account form,显示跟某个特定account相关的chart。(注:CRM中的任何form都可被自定义来显示chart) 下表总结了Kevin想要用dashboard来追踪的信息。   第三步-创建solution和其中的组件 注:这篇博客中介绍的chart自定义适用于系统chart和用户chart。但是,form只能被administrators/customizers来自定义。 如果自定义需要共享给组织中的所有用户,那么最好将其加到solution中并发布这个solution。这样,这个solution能够在不同的CRM组织中复用。   在Microsoft Dynamics CRM 2011中创建solution十分简单; 我创建了一个名为CRMTrackingDashboard的solution来作为这篇博客的展示。首先,我们使用“Add Existing”来添加实体到solution中。   第四步-创建解决你问题所需的view 我们需要为上述每一个实体创建视图。创建这些视图很直接。我已经为每个实体使用“Modified On Equals This Month”筛选条件,创建了新的视图。所有的视图都可以创建在CRMTrackingDashboard solution中,成为该solution的组件。   第五步-创建解决你问题所需要的chart 自定义包含额外的分组条件和显示属性的chart,需要修改这些Chart的XML定义。为了让创建和编辑简单一些,可以用chart编辑器创建一个基本的chart定义,导出为XML,手动修改并将其导入系统中。   我们将使用chart编辑器作为出发点,创建一个account chart定义的草稿。请根据以下步骤操作: 1.       在solution左侧面板中,点击Account实体 2.       点击Charts 3.       点击New Chart…


使用Microsoft Dynamics CRM Dashboards来追踪你的数据

商业用户经常需要掌握他们客户数据的实时状态,这包括什么数据更改了,什么时候被更改的,是否有需要进一步研究的热点问题。使用Microsoft Dynamics CRM 2011的Dashboards(仪表板),能够让你更容易地获取数据的状态。   这篇博客中,将展示Microsoft Dynamics CRM 2011中的charts(图表)和dashboard用来追踪用户数据的功能。我将使用简单的商业场景来展示这些功能—一位销售经理Kevin想知道他的部门所处理的各种销售条目是何时被修改的,这些条目现在处于什么状态。Kevin和他的部门最关心的实体是:Accounts(客户), Contacts(联系人), Leads(线索), Opportunities(商机), Orders(订单), 和 Quotes(报价)。   使用Microsoft Dynamics CRM 2011中chart和dashboard强大的功能,商业用户能够非常容易地创建这些dashboard。这篇博客剩下的部分我将讲述创建这样一个dashboard的步骤。这篇博客中的步骤适用于Microsoft Dynamics CRM 2011 Beta版本。  第一步—明确你希望解决的商业问题 销售经理Kevin将使用dashboard来回答简单的商业问题,例如: 1.       我所感兴趣的实体何时被修改?(When entities I am interested in were modified?) 2.       我的线索和商机流水线看上去如何?(What does my lead and opportunity pipeline look like?) 3.       是否有一些客户已经失效了?(Are there any accounts that have been deactivated?) 4.      …


Microsoft Dynamics CRM 与 Microsoft SharePoint 集成简介

Microsoft CRM 2011 Beta已经发布,它拥有一个令人期待的功能: 与Microsoft SharePoint集成。Microsoft SharePoint在文档方面具有丰富的管理和协作功能。版本控制、同步编辑、签入/签出等功能使SharePoint变得十分强大。   在CRM中,由于在销售环节中,文档的使用十分常见并且通常与商机和报价相关联,因此,拥有强大的文档管理功能是CRM中一直以来的需求。客户也会将文档和产品或很多其他实体相关联。在CRM 4.0中,将文档和记录相关联是通过附件来实现的,这样有一些局限性。附件是一种很被动的存储方式,不能应用在协同合作的场景。用户真正需要的是访问与CRM 记录相关的文档,添加更多文档,编辑并共享它们。   CRM 2011解决了这个问题。我们提供了关联SharePoint Document locations和CRM记录的功能,因此我们可以访问与CRM记录相关的存储在SharePoint中的文档。用户能够: a)      创建一个新的SharePoint locations(文件夹)开始存储他们的文档。 b)      使用已有的SharePoint locations,已有文档存储在其中。 CRM 2011支持SharePoint 2010 和 2007,支持MOSS和WSS。   自动创建SharePoint文件夹  为了实现这个功能,你需要安装过CRM list component for SharePoint的SharePoint 2010。一旦安装成功并配置好list solution(按照readme操作),可按照以下步骤操作。 Settings 区域  CRM admin或System customizer需要做以下操作:  1)      进入Settings,在左侧面板中点击“Document Management “。 2)      点击“Document Management Settings“链接。 3)      选择你希望开启与SharePoint集成功能的实体。(这样做会使“documents”链接出现在所选实体页面的左侧面板中) 4)      输入你安装过CRM List组件的SharePoint 2010…


Microsoft Dynamics CRM 2011:一个部署,多种基础语言

CRM 4.0能够支持多至41种语言,如果你对这一点很满意,那么你肯定会喜欢CRM 2011的这个功能。    Microsoft Dynamics CRM 2011 Beta已经具有这个不是很明显的功能,它支持在同一个部署中来放置使用不同基础语言的组织。   在Dynamics CRM 4.0中,服务器的安装语言决定了你能够创建在这个部署上所有组织的基础语言。现在,在Microsoft Dynamics CRM 2011中,只有第一个组织的语言是与服务器安装语言绑定的,随后在同一个部署中创建的所有其他组织,都能够使用这个部署中所安装的相应的语言包,来为这些组织设置不同的基础语言。   例如,虽然Microsoft Dynamics CRM 2011 Beta版本只提供英文的服务器组件,但你能够用下列基础语言来创建组织:英语,法语,德语,希伯来语,意大利语,日语,西班牙语和简体中文。这也意味着,当产品最终发布,不管服务器是哪种安装语言,你都能够使用41种语言中的任何一种来创建组织。     它操作起来十分简单。作为创建组织的一部分,你会被要求选择一种基础语言。下拉菜单中你所看见的基础语言来自你的部署中可用的语言包。     尽管上述功能是针对On-premise版本的产品,在Microsoft Dynamics CRM Online 2011中也是可行的,你能在注册的过程中选择你的组织的基础语言。     谢谢!   原文地址: http://blogs.msdn.com/b/crm/archive/2010/09/24/microsoft-dynamics-crm-2011-many-base-languages-one-deployment.aspx   Jackie Chen(陈攀)    


简介CRM 2011 Solution

在刚发布的Microsoft Dynamics CRM 2011 beta中,在自定义扩展方面有许多有特点的功能,其中一个比较重要的就是“Solutions Management”(Solution可译为解决方案,下文中将使用原文表述)。   还记得在以前的CRM 版本中是怎么进行功能扩展的吗?让我们将之提到一个新的高度。使用CRM 2011,我们能够在几天内(一些核心组件甚至可以在几小时内完成)定义,转移,部署,维护并使用架构在CRM框架上的整个商业应用,而不像以前需要几个月的时间。仅仅点击几下鼠标,你就能够定义你的数据模型,工作流程,用户界面和分析工具。一些高级扩展,例如.Net plug-ins 和 SRS 报表,都能够包含在CRM Solution中。所有内容都能够以一个统一的模型进行转移和部署。   这绝对是一个了不起的功能。CRM 2011 允许我们将组件打包并将其视为一个“Solution”。为何说这个功能了不起呢?下面才是关键点。不仅仅因为它允许将组件打包,而是因为系统平台现在能够知道solution的边界,并执行相应的智能操作。请继续往下阅读。   开发和发布Solutions来控制客户化(unmanaged和managed) 对于大多数以前为CRM4开发人员的“新人”来说,第一件事情就是我们引入了unmanaged和managed solutions的概念。可以把unmanaged solution理解为你的系统的源代码,而把managed solutions理解为编译后的版本。当然,你不必在这点上咬文嚼字,因为CRM中的一些组件只是“定义”,不需要被编译;但尽管如此,这种类比还是十分有用的。所以,当你最初创建一个solution的时候,它总是被创建为unmanaged,你能够创建新的组件并修改其他组件。你甚至能够定义一些限制来使solution的管理更方便,例如将一些组件设置成不可自定义化。   当solution已经完成并准备最终发布使用,你可以将其导出为managed。当客户安装了一个managed solution,我们强制执行你所设定的任何限制(例如:设定某些组件为“不可客户化”来阻止对其进行客户化)。尽管solution自身不能被修改,可客户化的组件仍然可被客户化,但系统会将这些客户化视为在managed solution的“上层”所作的修改。因此,你拥有更灵活的选择,你能够限制一些组件不可被客户化,而对其他组件仍然具有内嵌的扩展功能,并且不需要写一句代码。   智能更新 如果你允许客户修改你的solution(创建在上层),将会给你将来的维护工作带来噩梦般的困难。其实并非如此,我们会帮你解决。每当你对一个managed solution进行更新时,系统架构会自动保存创建在上层的客户化。我们有2种基本的冲突解决方案(merge and preserve),这点我将在随后的帖子讲解。总之,这两种冲突解决方案的结果是让客户能够维护他们的客户化,并且你仍然能够进行更新。   自动记录依赖关系 你怎么能够记录什么组件在哪里被用到,并且没有被意外删除而影响其他组件呢?如果你允许客户进一步客户化你的solution,那么这个问题会更加严重。不需要担心,因为solutions的架构会自动地记录系统中所有的依赖关系,相当了不起的功能!   一处创建,多处部署 在CRM框架上创建的solution能够在所有的CRM部署类型(Online, Partner Hosted, On-Premises)和所有的CRM客户端(Web, Outlook, Mobile)传送。它真的越来越接近开发者所崇尚的神圣目标“code once, deploy/use everywhere”。哦,对了,我有提起过我们还可以在Outlook client上将你的solution变成“离线状态”吗?有多少构架能够提供这种功能?   Solution共存 目前为止,一切都不错,但如果一个用户安装了多个由不同的合作伙伴创建的solution,那么它们会相互影响吗?事实上并不会,solution框架自动处理让2个或多个managed solution能够共存。但是,不同的solution必须要有一定关联才能共存(在功能上,要有意义)。尽管从技术上说,在同一个组织(organization/tenant)中安装两个完全不相关的solution(例如医院管理和教育管理)是可行的,但最终结果或许对终端用户来说没有任何意义,特别是如果两个solution需要修改共同的组件(例如一个希望把客户(Account)当做医院,而另一个希望把客户(Account)当做学校)。  …


使用Microsoft Dynamics CRM 来做简单的运算

CRM工作流能够用来做简单的运算。我碰到过很多用户不了解这个功能,所以将这个话题写成博客应该比较有意义。下面将提出一个例子,使用工作流做一些简单的运算。   在建立这个工作流之前,在[商机]的页面上添加一个属性叫做[加权收益],类型为money。    下面来创建一个工作流,由[预计收入]和[可能性]来计算得到[加权收益]。在CRM中,[可能性]是整数形式,因此[加权收益]= [预计收入]* ([可能性]*0.01).   将[可能性]赋值给[加权收益]:   将[加权收益]的值乘以0.01。这是使用运算符“乘”来实现的:  现在用[加权收益]中的值乘以[预计收入]:   这是一个非常简单而且很棒的计算[加权收益]的方法。我相当喜欢这种方法。事实上,我们花了仅仅4分钟就实现了这个功能。   谢谢!   原文地址:http://blogs.msdn.com/b/crm/archive/2010/09/14/using-microsoft-dynamics-crm-to-do-simple-calculations.aspx   Jackie Chen(陈攀)