Dynamics 365是行业内首个成功将客户关系管理(CRM)和企业资源规划(ERP)功能完美结合的SaaS级商业应用软件。它将CRM和ERP两大关键领域的功能和业务流程紧密融合,借助统一的数据模型为企业提供了完整、集成的一体化商业管理解决方案。
在现代企业的日常运营中,客户关系管理的重要性毋庸置疑。在实际的客户管理过程中,企业常常面临几个关键问题。的积累往往依赖于一线销售人员的个人努力,缺乏系统化的企业资源整合。一旦销售人员发生变动,的流失就成了无法避免的问题,进而影响企业的盈利能力。与客户沟通的技巧和经验大多是个人积累的,难以在企业内部形成有效的知识管理体系。客户与企业的全流程互动,从接触、采购到售后服务和客户关怀,企业亟需一套标准化、规范化的流程管理,才能有效挖掘潜在商机,提升业务效益。
Dynamics 365的架构支持
下图展示了Dynamics 365的整体设计框架。
WebResources:这些是存储在Dynamics 365 CRM数据库中的虚拟文件,包括图片、网页、XML文件等,可通过URL进行访问。
FormsScripts:在Dynamics 365 CRM中,Javascript脚本经常用于自定义表单操作,例如对表单输入进行校验或进行其他自动化处理。
WorkFlow:工作流功能使得用户可以创建和管理自动化业务流程,同时也支持定制和扩展标准流程。
Plug-ins:这些事件处理插件允许开发者修改或扩展标准的业务流程,以便更好地满足企业需求。
OrganizationService:这是一种客户端连接服务器的方式,类似于开发中的数据上下文,通常用于.Net客户端。
WebAPI:这是另一种客户端与服务器交互的方式,具备出色的跨平台兼容性,适用于多种客户端环境。
ServiceContracts:在Dynamics 365中,ServiceContracts是特定类型的单据。
要访问Dynamics 365 CRM中的数据,客户端可以选择两种方式:
WebAPI
OrganizationService
WebAPI自2016年11月的系统更新以来开始引入,它提供了跨编程语言、跨平台、跨设备的开发体验。WebAPI实现了OData(Open Data Protocol)V4标准,这是一种用于构建和消费RESTful API的开放标准。开发者可以选择使用支持OData V4标准的社区库,也可以直接通过HTTP进行编程。
对于.NET开发者来说,除了WebAPI外,还可以选择使用OrganizationService。通过OrganizationService,开发者可以利用组件和工具生成强类型类,包含在Dynamics 365 CRM实例中已经定义的自定义实体和属性。
在代码需要处理动态生成的实体或属性时,开发者可以采用"晚绑定"(Late Binding)方式来指定实体和属性的类型。晚绑定提供了更大的灵活性,但同时也意味着在编译阶段无法进行类型检查,因此开发者需要显式指定实体类型,以避免潜在的隐式类型转换问题。