xml地图|网站地图|网站标签 [设为首页] [加入收藏]

设计原则和部署

2019-10-01 12:18栏目:编程
TAG:

SAP Gateway在S4/HANA时代的ABAP开发模型中有着重要的地位。SAP Gateway是什么?它对ABAP开发有怎样的影响?可以为我们提供哪些方便?这篇译文将浅要地讨论这些话题。

图片 1

SAP NetWeaver Gateway是一项基于市场标准的技术,它提供了简单的方式以连接SAP软件与设备、环境和平台。这个框架允许实现创新的、以人为本的解决方案,为SAP的商务软件带来了新体验:比如社交与协作环境、手机和笔记本设备以及富internet应用。

image.png

简而言之,NetWeaver Gateway是一个ABAP组件集,它附加在你已有的SAP ERP系统上,并提供了简单的、以人为本的工具来访问你的业务信息,并且降低了消费数据所需要的知识门槛,使得使用者不需要了解SAP系统内部的工作机制。Gateway提供了易用的、定义良好的API,提供了入口以访问SAP系统中富有价值的业务数据和功能。

OData介绍

OData是一种非常简单的接口协议,它有着简单的结构以及简单的操作方式。当我们提及接口的方式,目前首推的是RESTful,REST是Representational State Transfer的缩写,它是一种轻量的接口方式(和传统的SOAP的接口方式相比)。注意,REST不是协议,只是开发接口中的术语,这种接口方式有以下一些特点:

  • 无状态交互(Statelessness)

    请求不会在服务端存储,任何的请求包含了所有服务所需要的信息。

  • 可缓存(Cacheability)

    请求的返回信息可以定义是否需要缓存。

  • 层级系统(Layered System)

    客户端不清楚访问的最终系统,有可能是直接连接,也可能是中间系统。

  • 统一接口(Uniform Interface)

    统一的接口方式可以将客户端和服务端解耦。

  • 按需编程(Code on demand)

    服务可以根据客户端传输的请求内容定制化。

REST请求的通用操作:

  • GET

    客户端从服务端获取数据。

  • POST

    客户端传送信息给服务端进行创建的操作或者修改的操作。

  • PUT

    客户端传送信息给服务端进行创建的操作或者修改的操作。

  • DELETE

    删除服务端的数据操作

  • PATCH

    更新某一条数据中的某个属性。

本文链接:

OData的定义

OData是Open Data Protocol的缩写,是一种基于REST的数据访问方式。目前这种协议有微软进行维护和发布。

详细的OData的介绍请参考:www.odata.org

原文连接:A simple overview on SAP Netweaver Gateway

OData 协议遵循以下五种设计原则
  • 数据多样性存储

    在一个服务里面可以定义多种数据的存储。

  • 向下兼容

    客户端和服务端可以使用不同版本的OData服务,每个服务都可以向下兼容。

  • REST原则

    遵循上文中提到的REST原则。

  • 容易扩展

    如果需要额外的服务,应该能够进行简单的扩展。

  • 简单

1.1 兼容性

  • OPEN - 任何设备,任何体验,任何平台
  • PEOPLE - 优化用户交互场景
  • TIMELESS - 不分裂,任何SAP Business Suite版本
  • DEVELOPERS - 简单的API,不需要SAP知识,任何工具(都可以)
  • STANDARDS - 基于REST,ATOM/OData

SAP NetWeaver Gateway提供SAP应用与任何语言或模型的连接能力,借助REST services和OData/ATOM协议,实现这种连接不需要SAP方面的知识。

实施OData

如果需要实施OData服务,需要完成以下四个部分:

  • OData模型

    定义数据结构,一般发生在后端系统。

  • OData协议

    支持CRUDQ(创建,读取,修改,删除,查询)功能,数据的传输可以使用XML或者JSON。

  • OData客户端库

    保证了客户端能够使用库函数方便的访问OData服务。注意,客户端库并不是必须的,但是尽量有,这样可以节省大量的编码工作。

  • OData服务

    可以最终被客户端访问的服务。

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等格式返回数据,可以对数据编码、排序或者过滤。

OData服务的结构
  • 服务文档(Service Document)
  • 服务元结构文档(Service Metadata Document)

以上两种文档包含了:

  • 实体(Entity)
  • 实体类型(Entity Type)
  • 实体集合(Entity Set)
  • 属性(Property)
  • 导航属性(Navigation Property)
  • 关联(Association)

1.3 关键优势

  • REST允许你的系统由此降低消费数据的门槛,因为借助它,无需SAP系统的专业知识也能消费其中的业务数据和功能。
  • 通过一个简单易用、非专有的接口,隐藏SAP系统背后的技术复杂性。
  • 让你的SAP业务数据和功能可以从符合以下特性的任何设备访问:
    • 通过HTTP(S)协议通信。
    • 理解OData消息
  • 提供服务生成工具(Service Provisioning tools),允许为已存在的ABAP功能快速生成REST实现。
  • 为主流IDE提供插件,比如Eclipse,Visual Studio和Xcode.
OData的操作
  • 创建

    HTTP请求类型: POST

    成功返回:201

  • 读取(包括单条读取-read_entity,多条读取read_entityset)

    HTTP请求类型:GET

    成功返回:200

  • 更新

    HTTP请求类型:PUT

    成功返回:204

  • 删除

    HTTP请求类型:DELETE

    成功返回:204

  • 查询

    HTTP请求类型:GET/POST

    成功返回:200/201

    查询操作清单:

    操作 查询方式
    筛选 $filter
    排序 $orderby
    客户端换页 $top,skip,inlinecount
    数据量 $count
    嵌入内容 $expand
    格式化 $format

版权声明:本文由必发88手机在线官网发布于编程,转载请注明出处:设计原则和部署