返回顶部
首页 > 资讯 > 精选 >SAP API开发方法有哪些
  • 246
分享到

SAP API开发方法有哪些

2023-06-03 20:06:19 246人浏览 独家记忆
摘要

本篇内容主要讲解“SAP api开发方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SAP API开发方法有哪些”吧!(1) ABAP function module + SOAMANA

本篇内容主要讲解“SAP api开发方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SAP API开发方法有哪些”吧!

(1) ABAP function module + SOAMANAGER

最古老的技术,把ABAP系统里的函数通过SOAMANAGER发布成WEB Service. 虽然古老,但至今S/4HANA里的Service模块的新功能开发还在使用。

SAP API开发方法有哪些

(2) 基于事务码SEGW的SAP CRM OData服务手动实现

这是我最熟悉的SAP OData服务实现方式,因为我就是SAP CRM OData服务的开发者之一。SAP成都研究院CRM开发团队在2014和2015年开发这些OData服务时,SAP Fiori Elements的前身,当时的名称是Smart Template,还处于发展初期,所以那时候我们没有选择这项基于元数据驱动的开发方式。

SAP API开发方法有哪些

(3) 基于CDS view的OData服务自动生成

再后来,随着CDS view和Fiori Elements的成熟,我们可以基于加上了@OData.publish注解的CDS view,直接生成OData服务了

在S/4HANA里,除了在ABAP Development Tool里手动给CDS view加上@OData.publish注解之外,还可以采取另一种方式,纯粹在浏览器里完成操作。

使用S/4HANA里的Custom CDS Views这个应用,

SAP API开发方法有哪些

可以选择S/4HANA里多个标准的CDS view来创建新的复合视图,

SAP API开发方法有哪些

并能根据自己的需求,来挑选哪些标准视图的字段需要包含到新的复合视图里:

SAP API开发方法有哪些

最后也是一键实现复合视图的OData服务发布。

SAP API开发方法有哪些

到了SAP云平台ABAP环境上,基于CDS view创建的Service Definition和Service Binding,把OData服务和Fiori UI界面的创建全部包办了。

SAP API开发方法有哪些

(4) SAP Cloud for Customer里基于Business Object的自定义OData API创建

前面在SAP S/4HANA Fiori Launchpad里看到的Custom CDS View这个应用,即使不太懂技术的Key User,也能在浏览器里完成字段的搭配和OData服务的发布。

SAP Cloud for Customer也有类似的设计,只不过供Key User选择的不是CDS view,而是C4C里标准的Business Object.

SAP API开发方法有哪些SAP API开发方法有哪些

Key User在浏览器的Custom OData Service应用里能选择将Business Object节点里的哪些字段发布到OData服务里,此操作同SAP S/4HANA里选择标准CDS view字段的思路是一样的。

SAP API开发方法有哪些

在C4C的Cloud Application Studio里,还能基于标准Business Object创建Web Service.

SAP API开发方法有哪些

总结:基于ABAP技术栈的SAP产品,运行于其上的OData或者Web Service这些API,本质都是通过ABAP Netweaver的ICF(Internet Communication Framework)被外界消费的。我们观察其调用Url路径,就能找到SICF事务码里的对应的处理节点。

以SAP CRM OData服务Url末尾的CRM_OPPORTUnity为例:

SAP API开发方法有哪些

在SICF事务码里能找到对应的同名节点。我们只需要在SICF里给这个节点绑定一个ABAP类,该节点对应的Url通过浏览器或者Postman,或者其他编程语言访问时,ABAP ICF框架就会自动调用绑定的ABAP类。

SAP API开发方法有哪些

也就是说,应用开发人员只需要在ABAP类里实现业务逻辑,至于这个类运行时的实例如何被ICF调用,如何初始化和销毁等生命周期管理,ABAP开发人员完全不用操心。

(5) 基于Java SpringBootnode Express等Web应用框架的API开发

采用此类开发方式的生态圈是全球最庞大最活跃的群体,技术成熟稳定,相关文档和教材非常丰富。更新更先进的开发框架也在不断演化。开发人员通常在本地完成开发,再将应用部署到服务器上运行。也可以将应用打包成容器镜像,再以容器的方法运行在物理服务器或者SAP云平台,AWS,Google Cloud PlatfORMAzure等各种云上。容器数量到达一定规模之后,可以采用kubernetes进行编排管理。

SAP API开发方法有哪些

Jerry之前的项目里也消费过SAP Commerce的Web Service:如何使用API的方式消费SAP Commerce Cloud的订单服务。

(6) serverless 架构

云计算行业里的一个热门词汇,Serverless架构,并不意味着采用这个架构后就再也不需要服务器了,而是指应用开发人员不用关心开发好的应用如何部署到服务器,不需要考虑服务器的运行状态等运营和维护问题。传统Web应用的开发思路,如之前介绍的那样,通常在本地完成开发和单元测试,然后需要考虑采用何种方式,部署到何种服务器或者云上。

SAP API开发方法有哪些

而基于Serverless架构的API/服务开发,根本就没有API部署的这个步骤。以Jerry之前介绍过的SAP Kyma上的Lambda Function为例,API函数本身的代码编写就是在云上完成。一旦保存,只要API维护的触发条件满足(事件触发或者Url触发),该API立即被调用。

下图是我在SAP Kyma里使用nodejs编写的一个Lambda Function:

SAP API开发方法有哪些

我设置其通过https的方式被调用:

SAP API开发方法有哪些

在浏览器里访问这个HttpS-endpoint,Lambda Function立即执行。

SAP API开发方法有哪些

从这个角度讲,Jerry觉得ABAP开发人员,在开发API的时候,一直就在享受着Serverless架构带来的便利。因为ABAP领域的开发,无论是通过SAPGUI,ABAP Development Tool,还是通过各种Key User工具,本质上都是连接到ABAP Netweaver这个集应用开发和运行为一体的服务器上进行的,因而根本没有传统Java/nodejs开发里的应用部署这一环节。

关于更多如何使用Lambda Function实现API的介绍,请参考Jerry的文章:

  • 从ABAP Netweaver的SICF到SAP Kyma的Lambda Function

  • 周伯通的空明拳,米诺斯的星尘傀儡线,SAP Kyma的Serverless

(7) SAP Data Intelligence Graph

这种方式严格来讲也算基于Serverless,使用者通过浏览器登录SAP Data Intelligence控制台,进行Graph建模。完成后启动,Graph就直接运行在SAP Cloud Platform的Kubernetes基础设施上了。

SAP API开发方法有哪些

之所以把这种方式单独拿出来介绍,是因为其又具有Low Code Development(低代码开发)的特质。

看一个具体的例子。

假设我想实现一个支持CRUD的API,消费者通过HTTP GET, POST和DELETE请求,能够在数据库里分别读取,插入和删除一条记录。

低代码开发平台,通常都提供了图形化的用户界面,给使用者提供了通过拖拽组件和模型驱动开发的方式, 结合少量的编码来快速创建应用或者API.

访问SAP Data Intelligence Launchpad,进入Modeler:

SAP API开发方法有哪些

我们像小朋友搭积木一样,从左边的工具箱里,拖拽HTTP Server和若干个javascript Handler到编辑页面里。

SAP API开发方法有哪些SAP API开发方法有哪些

到此,相信大家对“SAP API开发方法有哪些”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: SAP API开发方法有哪些

本文链接: https://lsjlt.com/news/235643.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • SAP API开发方法有哪些
    本篇内容主要讲解“SAP API开发方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SAP API开发方法有哪些”吧!(1) ABAP function module + SOAMANA...
    99+
    2023-06-03
  • python api接口开发的方法有哪些
    在Python中,有多种方法可以开发API接口。以下是一些常见的方法:1. 使用Flask: Flask是一个轻量级的Web框架,可...
    99+
    2023-09-05
    python
  • API开发的方法
    这篇文章主要介绍“API开发的方法”,在日常操作中,相信很多人在API开发的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”API开发的方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!一、API介绍A...
    99+
    2023-06-27
  • SAP EWM字段使用方法有哪些
    今天小编给大家分享一下SAP EWM字段使用方法有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。具体字段用法如下:&nb...
    99+
    2023-06-05
  • SAP SD实际应用的方法有哪些
    本篇内容介绍了“SAP SD实际应用的方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1.SD-如何读取文本订单的抬头文本在最近一次...
    99+
    2023-06-05
  • 常用的java api方法有哪些
    Java API是Java提供的一组类库和接口,用于实现常见的编程任务。以下是常用的Java API方法:1. String类的方法...
    99+
    2023-06-14
    java api java api
  • php的api调用方法有哪些
    PHP的API调用方法有以下几种:1. cURL:cURL是一个强大的开源库,用于在PHP中进行HTTP请求,包括GET、POST、...
    99+
    2023-08-18
    php
  • Git API在PHP开发中的作用有哪些?
    Git是一款非常流行的分布式版本控制系统,它可以跟踪文件的更改并记录这些更改,同时还可以支持多人协同开发。在PHP开发中,我们可以使用Git API来实现代码管理和版本控制。本文将介绍Git API在PHP开发中的作用,并且提供一些相关的...
    99+
    2023-08-14
    开发技术 git api
  • 怎么使用类似搭积木的开发方式进行SAP API开发
    本篇内容主要讲解“怎么使用类似搭积木的开发方式进行SAP API开发”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用类似搭积木的开发方式进行SAP API开发”吧!打开Modeler的Op...
    99+
    2023-06-03
  • javascrip高级前端开发常用的API有哪些
    这篇文章主要介绍“javascrip高级前端开发常用的API有哪些”,在日常操作中,相信很多人在javascrip高级前端开发常用的API有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”javascrip...
    99+
    2023-06-21
  • IDE开发中经常用到的PHP API有哪些?
    PHP是一种流行的服务器端脚本语言,常用于Web开发。IDE是一种集成开发环境,可以帮助程序员更高效地开发软件。在IDE开发中,经常会用到PHP API,这些API提供了许多功能,可以帮助程序员更轻松地开发和调试PHP应用程序。本文将介绍一...
    99+
    2023-09-09
    api npm ide
  • PHP开发者必备的Git API技能有哪些?
    在当今的软件开发行业中,Git已经成为了一个不可或缺的版本控制系统。而对于PHP开发者来说,掌握Git API技能也是十分必要的。本文将会介绍PHP开发者必备的Git API技能,帮助读者更好地了解Git API的使用。 Git基础知识...
    99+
    2023-08-14
    开发技术 git api
  • 开发用到的js封装方法有哪些
    小编给大家分享一下开发用到的js封装方法有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、判断是否是一个数组functio...
    99+
    2024-04-02
  • android开发性能优化的方法有哪些
    Android开发性能优化的方法有以下几种:1.减少内存使用:通过使用轻量级数据结构、避免创建不必要的对象、及时释放无用的资源等方式...
    99+
    2023-09-13
    android
  • Android开发中解析xml的方法有哪些
    这篇文章给大家介绍Android开发中解析xml的方法有哪些,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。第一步:新建一个Android工程,命名为XmlDemo第二步:修改main.xml布局文件,代码如下:<...
    99+
    2023-05-31
    android xml roi
  • Web开发中盒子居中方法有哪些
    本篇内容介绍了“Web开发中盒子居中方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、记录下几种盒子居中的方法: 1.0...
    99+
    2023-06-08
  • vue3组件化开发常用API知识点有哪些
    当前前端比较流行的 Vue React 等框架,都会通过编写组件来完成业务需求,也就是组件化开发。包括小程序开发也会用到组件化开发的思想。分析组件化思想开发应用程序:将一个完整页面拆分成很多个小组件每个组件用于完成页面的一个功能模块每一个组...
    99+
    2023-05-17
    API Vue3
  • api认证方式有哪些
    API认证方式有以下几种:1. 基本认证(Basic Authentication):使用用户名和密码进行认证。2. OAuth认证...
    99+
    2023-06-14
    api认证
  • VB API函数的使用方法有哪些
    本篇内容介绍了“VB API函数的使用方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、在VB函数使用中声明API函数有两种方法如...
    99+
    2023-06-17
  • VSCode加快React开发流程的方法有哪些
    这篇文章主要介绍“VSCode加快React开发流程的方法有哪些”,在日常操作中,相信很多人在VSCode加快React开发流程的方法有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作