0379-60181060 / 60181061 / 60181062

联系我们

服务热线

0379-60181060

电话:0379-60181060/61/62

手机:13027630356(节假日)

网址:http://www.xzrj.net

邮箱:service@xzrj.net

地址:河南洛阳市经开区863创智广场

基于sap接口技术的移动终端解决方案

2018/10/7 15:09:01

0引言

随着sapr/3(systemapplicationandproductsindataprocessing这款主流的erp企业管理软件平台)成为国内越来越多大企业erp应用的首选,很多企业都面临着同样一个问题,即如何让新的erp平台和一些老的,或是新增加的子系统/子平台默契配合。在保证既有功能的前提下,提高系统和系统间信息传递的效率。从而保证和提高企业的生产竞争力。在这样的背景之下,erp系统接口的应用、开发、甚至规范,会起到积极的作用。好的接口会使得系统之间能真正做到“无缝”连接,有效的整合各系统间的数据,以达到资源共享和协同工作的目的。本文的目的在于通过对sap接口技术的介绍和实例的验证,普及和推广以规范这一接口技术为核心的一体化信息集成架构。

1sap接口技术

sap组建数量庞大,各系统(ecc,bw和portal)之间需要即时通信。对于用户来说,最佳的感受就是在同一系统中进行。为此,sap从诞生之日开始,就提供了众多的api应用编程接口和接口工具,以方便sap二次开发和爱好者进行研究。rfc,alepidocs是sap公司早期为sapr/3r4.6c版本所提供的接口机制,目前应用最为广泛。在r4.0以后的版本中,又添加了技术上先进的bapi,dcom以及webservice技术。下面对这些接口方式以及其它可用的整合方式进行介绍。

1.1saprfc技术

rfc(remotefunctioncall,远程功能调用)是sap系统和其他(sap或非sap)系统问的一个重要而常用的双向接口技术,也被视为sap与外部通信的基本协议。其他更高级的sap接口和通信技术,如后续的bapi和ale等都是基于rfc实现的。简单地说,rfc过程就是系统调用当前系统外的程序模块,从而实现某个功能,而且调用系统和被调用系统中,至少有一个必须是sapabap系统。这种远程功能调用,也可在同一系统内部进行(如本地sap系统内的远程调用):但通常情况下,调用程序和被调用程序处于不同系统。sap系统rfc应用的原理很简单,有一些类似于三层构架的c/s系统,第三方的客户程序通过接口调用sap内部的标准或自定义函数,获得函数返回的数据进行处理后显示或打印。根据通信方向和通信类型,共有3种rfc通信:

1)两个独立的sap系统之间:

2)sap系统作为调用系统,与外部远程系统(非sapabap系统)通信;

3)外部系统作为调用系统,与sap系统通信。

优点:sap的rfc调用是其接口技术中最简单和易用的一种方式,该方式开发比较简便,特别适合于外部报表开发。缺点:但对于大数据量的查询效率相对较低。如果有大数据量开发需要很多使用idoc和bapi接口开发技术,rfc接口方案开发量小,实施简单,很快就能满足客户需求,如在外部系统打印报表,或外部系统获取sap简单的数据信息进行加工处理等。但这种方案只能满足客户简单的需求。

1.2ale/idoc技术

ale是applicationlinkandenabling的缩写,是sap专门为sap与sap之间所设计的整合中间件。idocs是中介文本(intermediatedocument)的缩写,是sap提供的系统整合专用的数据/消息格式,可用于edi、ale或导出导入(xml,ascii)文件等。当然也可ale在sap3.0版本开始就作为sap整个应用体系的一部分,为分布式数据交换提供了可靠安全的通讯机制。ale的设计,原本作为两个sap流程之间的一种消息传递服务(messagingservice),使sap与sap的业务流程之间企业数据能够有效的交换.为两个独立的sap之问提供了的系统整合服务。不过,随着应用的发展,ale/idocs接口机制也已成为与其它非sap系统的标准的整合方式。ale的设计结构可以分为3层,即应用层、数据/消息分配层和通讯层。通讯层是sap整合机制的基础,它利用远程功能呼叫rfc(remotefunctioncall)凋用sap系统的功能模块。

数据/消息分配层,主要提供3个关键服务:按数据分配模型决定数据接收者、消息的过滤和转换、数据/消息的压缩,以提高传递效率。应用层直接与sap系统接口,生成或从其它系统接收含有路由信息的消息文本idocs,包括消息接收者的姓名、要求发送的类型以及对消息进行处理的规则。

ale的机制代替了原来的sap所提供的批数据通讯bdc(batchdatacommunication)方式。顾名思义,bdc为系统之间提供了简单的数据批处理服务,还不能作为一种中间件技术,它没有提供系统之间进行无缝整合所要求的纠错功能、系统管理和其它安全措施。总的说来,应用sap的ale机制进行sap与sap或非sap系统整合有以下几个好处:ale技术不受sap版本升级的影响,它提供了版本向后兼容性。ale定义于sap应用层,与sap的逻辑层相对独立,整个ale中间件独立于发送和接收系统。ale消息设计逻辑保证消息的“一次且只有一次”的消息传递。ale采用“存储.发送”技术确保消息即使系统发生故障或接收方没有准备接收时,也可以达到目的地。这样就保证接收方不至于收到重复消息。ale也提供了idocs管理功能。主要有文本缩减、文本版本控制以及文本数据过滤。3种控制机制使得sap开发人员可以根据实际需要,对idocs文本在运行中进行动态处理。ale提供了系统管理功能,允许对ale系统进行启动/复位/恢复等系统操作,为开发人员提供了进一步的管理控制。idoc几乎可以传带任何sap应用的数据,是。种“外围”定义格式,与sap的应用数据定义不直接相关。idocs已经广泛应用于早期的sap.edi的数据交换,因而它的设计有点类似于edi的标准,即edifact标准。idocs是以字符基础的,因而是可读的。它有3种纪录类型,即:

1)控制纪录.含文本信息,如idoc类型,发送/接收方信息以及文本标识。

2)数据纪录.含管理和实际数据部分。

3)状态纪录一用来追踪文本传递各点的状态,如状态码、系统时间、错误标识等。

1.3bapi技术

bapi是businessapplicationprogramminginterface的缩写,是sap为3.0版本以上提供的基_r企业目标(businessobject)技术的接u应用界面。sap在3.0版本以上采用了object.oriented技术,逻辑定义了sapr/3系统的所有功能目标,并且将所有的目标(objects)和bapis存储于企业目标库bor(businessobjectsrepository)。sapr/3企业目标的目标类型(objecttype)相当于目标设计语言中类(class)的概念。利用bapi,开发人员可以实现对bor进行实时访问,从而实现应用系统(sap.sap)之间在数据/逻辑层上的有效整合。sapr/3的企业目标库bor(businessobjectsre.pository)中封装了r/3的功能对象。通过bapi(businessapplicationprogramminginterface)可以访问bor。bapi是r/3平台专用的开发接口,但是从系统整合的角度看,bapi主要是支持sap应用.sap应用之间的整合,sap应用.非sap应用之间的整合需要其他的技术,其中r/3dcom接口应用比较广泛。

1.4sap.dcom

sap于1998首次提供sap.dcom接el,以满足各种桌面应用开发的要求。利用dcom连接端口,开发人员可以利用vb,c++,以dcom目标方式访问sap数据。在web应用上,可以用vbscript,javascript以dhtml方式页面访问,也可以用asp访问数据。另外,利用dcom也可以间接访问sap的企业目标库bor。上面提到的bapi是sap系统上专用的,在实际应用上不如dcom来得广泛。dcom端口主要有两个技术模块组成,一个是管理模块,另一个模块生成sapbo的dcom代理组件(proxycomponents),生成的dcom组件存放于c++。

r/3的dcom接口主要用于windows平台的应用程序访问r/3。r3dcom可以除了可以访问bapi外,还可以远程调用r/3上的abap程序(需要dcomconnector4.6d以后的版本支持)。r/3dcom更适合于小型的r/3外挂程序,或者与基于windows的小型应用集成。对于大型r/3eai,必然要考虑中间件产品了。

1.5webservice接口技术

webservice是独立的,模块化的,自描述的应用功能模块或服务。它基于xml标准格式,通过使用标准的因特网协议,这些应用功能模块可以被描述、查找、使用或调用。因此每一个webservice部封装了一序列可以使用的功能集。例如,供应商的价格查询、核查库存系统的特定的物料、查找特定的电话号码、或者核对信用卡、转帐、付款等。从表面上看,webservice就是一个应用程序,它向外界暴露出一个能够通过web调用的api。从深层次上看,webservice是一种新的web应用程序分支,它是自包含、自描述、模块化的应用,可以在网络中被描述、发布、查找以及通过网络来调用。webservice是一种基于web的中间件技术。用户通过把应用程序的一部分包装成web服务的形式,将自己的应用程序功能提供给别人,实现应用程序之间的接口。

星烛软件@2018  豫ICP备14002967号  软著登字第1030956号,登记号2015SR143870    Keywords:客户管理系统 CRM客户管理系统 crm系统 crm软件 crm客户管理系统 客户关系管理软件

服务热线

0379-60181060

0379-60181061

0379-60181062

130-276-30356

加微信咨询