一种经典的客户关系管理系统(CRM)订单模型的设计与实现(一)

简介: 一种经典的客户关系管理系统(CRM)订单模型的设计与实现

笔者在 SAP 领域工作多年,对 SAP 应用的理解就是:模型以及基于模型的增删改查。


只是同我们大学专业课学习时完成的家庭作业相比,SAP 模型的复杂程度增加了好几个数量级。


和传统的增删改查相比,以订单编排领域为例,SAP订单模型的"增",还需要考虑实际业务流程中各种类型的前置和后序订单,即 SAP 使用的术语文档流(Document Flow)。

image.png

而"改", 除了订单自身状态的迁移外,还包括订单模型提供的各种可执行逻辑。这些逻辑既包括订单模型本身字段的更改,也可以包括订单与第三方系统的交互。在很多上下文里,我们称这些逻辑为 Action。

如下图右下角所示:

image.png

既然订单模型复杂度如此之高,那么引入一种精良的能支持企业级订单编排应用的高质量建模方式,就显得至关重要。

随便看些例子,SAP CRM 总共支持多少种标准的订单类型?下图中 BUS2000 开头的就是不同的订单类型,我没有具体数过,但是几十种总是有的。

image.png

而SAP Cloud for Customer,虽然位于 CRM 命名空间下面的 Business Object 的数量比 SAP CRM 要少一些,但是基本的用于实现销售自动化流程的订单模型仍然一应俱全。

image.png

我们先来看 SAP CRM 的订单模型。有没有可能用一套模型来描述SAP CRM支持的几十种订单类型呢?有,那就是SAP CRM One Order模型,其自描述的名称就体现了该模型的特色。

下面是 SAP CRM 应用的架构图:

image.png

其中 One Order框架从架构上讲,位于上图红色区域内,包括数据库表,ABAP结构体以及操作它们的API代码。


笔者刚刚接触 One Order 模型的时候,吃惊地发现,竟然没有一个比较直观的图形化界面,能够显示出这个模型的全貌。不过瑕不掩瑜,对于一个诞生于 20 年前的框架来说,我们不应该用20年后的标准来苛求它。


我们想象一下,不同类型的订单,有什么共同点?无非每种订单都有抬头结构,行项目。有的结构,从业务上说可以同时出现在订单的抬头和行项目,比如参与订单的业务伙伴明细(Involved parties), 组织架构(Organization Unit)等等。有的字段只有行项目才能出现,比如卖出的产品信息(Product, Scheduled Line)。


SAP One Order建模的原理,类似我们小时候玩的积木。

31.png

组成One Order模型最小粒度的单元,就是一个个扮演积木作用的结构体,在事务码CRMC_OBJECTS里查看。

下图是这些结构体的列表,如果 SAP 标准的结构体不能满足需要,客户仍然可以自行创建新的结构体。

32.png

然后我们用搭积木的方式,将业务上具有关联关系的若干结构体组合起来,共同分配给某个订单类型,比如描述服务流程的订单类型 BUS2000116,就由下列这些结构体组成:

image.png

有了模型之后,剩下的就是实现基于这些模型的增删改查操作,即 ABAP 编程。





31.png



目录
相关文章
|
6月前
|
数据可视化 前端开发 数据库
基于Servlet的CRM客户关系管理系统
基于Servlet的CRM客户关系管理系统
|
7月前
使用 ABAP 代码删除指定 SAP CRM 系统里 Opportunity 订单的文本
使用 ABAP 代码删除指定 SAP CRM 系统里 Opportunity 订单的文本
47 0
|
4月前
|
安全 数据挖掘 数据安全/隐私保护
CRM软件定制开发公司 CRM管理系统开发
随着企业对于客户关系管理(CRM)系统的需求日益增长,市场上涌现出了众多CRM系统。然而,由于每个企业的业务需求和流程都存在差异,因此定制化的CRM系统成为了企业更好的选择。那么,在众多的CRM定制开发公司中,哪家更好呢?以白码CRM为例,我们将探讨其优势和特点。
|
15天前
CRM客户关系管理系统,企业销售管理好助手
CRM的核心价值在于以「客户/顾客」为中心,将相关资料与数据整合,分析客户/顾客的行为,帮助品牌与企业了解市场与客户的需求,从而制定适合的营运方针。企业需要CRM平台汇整与管理客户/顾客信息,让企业以数据驱动营运,通过完善、成熟的工具记录、分析客户信息,有效提升营收效益。
21 2
|
5月前
|
人工智能 安全 数据挖掘
CRM客户管理系统排名 国内CRM软件排名前十
也正因如此,市场上CRM软件种类繁多,各有特色,有主打行业解决方案的,有通用型,有本地部署的也有SAAS模式的,大家在选型时也会遇到很多困惑。 进行盘点前10名CRM软件分别是:1、白码CRM;2、纷享销客;3、Salesforce;4、销售易CRM;5、神州云动CRM;6、红圈CRM;7、ZohoCRM;8、SAP;9、用友CRM;10、销帮帮CRM。
|
5月前
|
Java 关系型数据库 MySQL
招生CRM系统|基于Springboot实现培训机构招生CRM管理系统
招生CRM系统|基于Springboot实现培训机构招生CRM管理系统
|
5月前
|
BI
销售必备的管理系统——CRM系统
销售管理是现代企业不可或缺的重要部分。它涵盖了企业销售过程中的所有活动,包括市场营销、销售策略、销售渠道、销售业绩等。有效的销售管理可以帮助企业更好地了解市场需求和竞争对手,制定更准确的销售策略,提高销售业绩,从而实现企业的持续发展和增长。因此,对于任何一家企业而言,建立有效的销售管理体系是非常重要的。
91 0
|
1月前
|
搜索推荐 数据挖掘 BI
CRM管理系统哪家好 十大CRM客户管理软件排名
随着企业业务的快速发展,客户数量的不断增加,如何更好地管理客户信息和业务数据成为了企业关注的焦点。而选择一款好的CRM客户管理软件,能够帮助企业实现更高效、精准的客户管理和服务,进而提升企业的市场竞争力。市场CRM系统品牌众多,下面给大家推荐目前比较好用的十款CRM客户管理系统并附排名。
CRM管理系统哪家好 十大CRM客户管理软件排名
|
6月前
|
搜索推荐 UED
国内好用的CRM系统哪家好 如何选择合适的CRM管理系统
如何为企业挑选CRM系统,随着市场经济的发展,越来越多的CRM系统出现,功能也是越来越强大,但是,其实很多人对CRM系统了解的并不多,不知道应该如何选择CRM系统,今天白码小编就来介绍一下CRM系统选型需要注意的一些因素。
|
7月前
|
SQL 存储 API
SAP CRM 系统使用 API 和 open sql 读取订单长文本的两种方式比较
SAP CRM 系统使用 API 和 open sql 读取订单长文本的两种方式比较
43 0