开发基础 报表教程 数据字典 对话编程 表单打印 增强出口 SAP接口 S/4 HANA
实战案例 实战笔记 资料下载 CRM
问答互助 会员分享 俱乐部 广告区
论坛指南、建议和投诉
Twilight发表于 2015-09-02 10:36zhongguomao 最后回复于 2017-08-23 09:26 [复制链接] 6571 1
使用道具 举报
Twilight
管理员
发表回复 回帖后跳转到最后一页
如果要成为CRM的开发者,首先要理解SAP CRM的一些技术概念:
CRM是一种主要是基于对象和面向对象的SAP ABAP类型的系统,基于对象,并不是完全的面向对象,而是在SAP ABAP引擎上,用模拟面向对象的方法来实现的。
GUID就是全球唯一标识,在CRM引入了这一概念。他们是16位,22位或32位RAW字符格式,比如ORDER_GUID是32位,交货点(POD)GUID 是22位。使用GUID作为主键,就是为了避免编号范围的冲突。比如一种类型的ORDER类型是1000000000-1999999999,当这些编号用完以后,那系统是不是就不可以用了?也许ECC是的,但是CRM不会的,CRM系统当中,编号范围不是唯一的KEY,你可以修改号码范围的当前值,重置到100000000,产生相关编号的订单,但是系统不会出错,因为GUID是不一样的。
CRM存储数据和ECC是不一样的,它有一个以段为基础的数据模型,非常类似HR的信息类型。一个业务对象的所有数据不是存放在一个大表中,而是分散存储到各个基本表里。(不过ECC现在一些模块已经应用这种思想了)。比如订单,分订单管理抬头、合作伙伴、文本、状态、机会抬头、线索抬头、时间管理、组织信息等等存放在不同的地方。所以读取数据的时侯,不需要使用SQL语句去表里获取数据,因为他们基本都是通过GUID来进行关联的。CRM提供了丰富的API函数。所以为什么做CRM开发,不需要记得有什么表,只要记得主要的几个表就好了。
在CRM中一般不使用BDC作为批量数据导入方式,因为CRM提供了很多丰富的接口,比如XIF 适配器,用来导入和导出数据。
另外一个原因,CRM的一些主数据的屏幕都是可以配置和可调整的,一旦调整或者增强,BDC就无法使用了。
CRM没有非常固化的流程,很多流程都是变化的,在不同的场景,你可以组合各种流程。但是你必须先理解一些基本的业务流程,以便你可以提出正确的技术方案。
CRM的使用者包括企业内部和外部客户,外部客户包括一切的合作伙伴,甚至消费者.基于SAP产品的法律限制,不可能开放SAP系统给没有获得SAP授权的人使用,所以开发一些WEB应用是必须的。CRM的WEB应用包括标准的电子商务套件,如E-SALES,E-MARKETING,E-SERVICES。这些主要使用的SAP CRM JAVA引擎;也包括自己定制开发的一些WEB应用,这些可以使用CRM J2EE,也可以使用CRM ABAP引擎上的BSP和WEB DYNPRO。
CRM作为单独的实例,可以实现销售、服务、市场等相关的业务场景。如果涉及到财务过帐,就必须和ECC集成起来。当然除了财务,主数据(如客户、物料、设备)和业务数据(如销售订单、市场活动)等都可以和ECC集成。SAP CRM和ECC集成,是通过SAP提供的标准的中间件技术来实现的,底层是基于QRFC来实现的。并且SAP已经内置了很多标准的对象,中间件是免费的。SAP CRM也内置了很多BW的QUERY,可以很方便的把CRM的数据抽取到BW中,并且也是通过中间件的技术。
以上摘自:SAP砍刀博客