SAP Gateway在S4/HANA时代的ABAP开发模型中有着重要的地位。SAP Gateway是什么?它对ABAP开发有怎样的影响?可以为我们提供哪些方便?这篇译文将浅要地讨论这些话题。
SAP NetWeaver Gateway是一项基于市场标准的技术,它提供了简单的方式以连接SAP软件与设备、环境和平台。这个框架允许实现创新的、以人为本的解决方案,为SAP的商务软件带来了新体验:比如社交与协作环境、手机和笔记本设备以及富internet应用。
简而言之,NetWeaver Gateway是一个ABAP组件集,它附加在你已有的SAP ERP系统上,并提供了简单的、以人为本的工具来访问你的业务信息,并且降低了消费数据所需要的知识门槛,使得使用者不需要了解SAP系统内部的工作机制。Gateway提供了易用的、定义良好的API,提供了入口以访问SAP系统中富有价值的业务数据和功能。
本文链接:http://www.cnblogs.com/hhelibeb/p/7600998.html
原文链接:A simple overview on SAP Netweaver Gateway
1.1 兼容性
- OPEN - 任何设备,任何体验,任何平台
- PEOPLE - 优化用户交互场景
- TIMELESS - 不分裂,任何SAP Business Suite版本
- DEVELOPERS - 简单的API,不需要SAP知识,任何工具(都可以)
- STANDARDS - 基于REST,ATOM/OData
SAP NetWeaver Gateway提供SAP应用与任何语言或模型的连接能力,借助REST services和OData/ATOM协议,实现这种连接不需要SAP方面的知识。
1.2 REST & OData
REST: 表现层状态转化(Representational State Transfer)是分布式系统的软件架构风格,例如万维网。凭借其更为简单的风格,REST已经逐渐代替了其它设计模型如SOAP。REST使用标准的GET, PUT, POST & DELETE方法和HTTP协议已有的特性。REST的主要目标包含组件交互的可测量性、接口的通用性、组件部署的独立性、中间组件减小延迟、增强安全性和封装遗留系统(legacy systems)等。
OData: 开放数据协议(Open Data Protocol)是一个用于查询和更新数据的开放的互联网协议。该协议允许消费者经由HTTP协议向数据源查询,并以Atom、JSON或者plain XML等格式返回数据,可以对数据编码、排序或者过滤。
1.3 关键优势
- REST允许你的系统由此降低消费数据的门槛,因为借助它,无需SAP系统的专业知识也能消费其中的业务数据和功能。
- 通过一个简单易用、非专有的接口,隐藏SAP系统背后的技术复杂性。
- 让你的SAP业务数据和功能可以从符合以下特性的任何设备访问:
- 通过HTTP(S)协议通信。
- 理解OData消息
- 提供服务生成工具(Service Provisioning tools),允许为已存在的ABAP功能快速生成REST实现。
- 为主流IDE提供插件,比如Eclipse,Visual Studio和Xcode.
2.0 使用开源工具访问SAP业务数据
通过SAP NetWeaver Gateway消费数据只需要用HTTP(S)请求即可。这不需要使用任何SAP先前的软件或协议。应用开发者通过SAP NetWeaver Gateway接口消费数据也不需要有ABAP编程经验,甚至完全不需要懂得SAP内部的工作原理。
使用通常的开发工具,比如微软的.NET和苹果的XCode,或者开源语言,比如Ruby和PHP,我们可以轻松地通过消费SAP服务器提供的OData消息为SAP业务数据和功能创建用户界面。为了让OData的消费处理变得更加简单,SAP发布了多个版本的Gateway Consumption Tool。这个工具现在可以在Visual Studio和Xcode中使用,它可以生成OData代理对象。另外,它也可以将已生成的代理对象包装并生成基本应用。
微软的OData协议基于Atom发布协议(Atom Publishing Protocol),相应地,该协议基于Atom 联合格式(Atom Syndication Format)。SAP利用了OData内建的标准扩展特性来提供自己的注解(Annotations)。OData数据格式和SAP注解的结合使得SAP业务信息同时实现了自描述和高可读性。这两个特性各自地降低了SAP业务信息和功能的获取门槛,使它们更易于为其它外部设备上的业务应用所利用。
3.0 聚焦SAP NetWeaver Gateway
SAP NetWeaver Gateway接口的焦点在于它的REST能力允许非SAP系统应用轻松地消费SAP的数据与功能。它们包括:
- 任何外部应用,比如微软Office应用可以通过.NET(甚至VBA)进行消费。
- 桌面机器可以通过由PHP、Java或Ruby等后台支持的Web应用进行消费。
- 移动端原生应用,比如iPad/iPhone或者安卓设备或者黑莓设备。
- 嵌入式设备,比如制造业机器人或者卫星导航系统中的路线规划软件。
- 任何你可以想到的可编程的、支持HTTP(S)协议的业务场景。
SAP NetWeaver Gateway接口可以用于任何支持HTTP(S)的可编程设备。为提供这一兼容性,它通过以下手段隐藏了系统内存在的复杂性:
协议适配:OData成为了向/从SAP系统供应/消费业务数据的唯一协议。
服务适配:不同类型和版本的SAP系统现在表现为单一的、集成的业务信息库。
4.0 开发过程
SAP NetWeaver Gateway软件由多种服务生成工具提供,它可以生成必要的源代码,以启动你的外部应用的开发。这些工具可以用于连接多种常用IDE,比如Eclipse,Visual Studio和Xcode。对这三个IDE,存在可用的扩展,所以开发者无需具备SAP知识。
SAP NetWeaver Gateway可以根据已有的BAPI、RFC和ABAP Dynpro屏幕创建新的Gateway对象。在生成Gateway对象时,生成工具使用起来和RFC生成器、BOR生成器和屏幕生成器一样。我们也可以通过Gateway附加组件来构建自定义Gateway对象,它会提供OData通道。这是一系列ABAP类和接口,可以用于在SAP系统中开发你自己的Gateway模型对象。需要在SAP NetWeaver Gateway中注册它们,这样就可以通过RESTful服务在外部访问。
可以通过以下图表轻松理解这些开发过程中的步骤:
5.0 总结
SAP NetWeaver Gateway不是用于由标准用户使用的事务型应用的通道,也不会替代现有的中间件如SAP NetWeaver PI。此外,SAP NetWeaver Gateway的目标也不是A2A或B2B场景。相反,SAP NetWeaver Gateway是一扇通往SAP业务数据和功能的门。它的目标受众是被称为临时平台用户(Occasional Platform Users ,OPU)的群体。这些人需要通过易于消费的方式实现特定的(ad hoc)SAP数据和功能访问。