使用abapGit在ABAP On-Premises系统和SAP云平台ABAP环境之间进行代码传输

SAP ABAP顾问朋友们,应该都使用过SAPLink这个工具。若是两个ABAP Netweaver系统没有创建起传输路径时,咱们没法使用标准的SE10事务码建立传输请求的方式进行这两个系统间的代码传输。此时,SAPLink就有了用武之地。git

SAPLink简单地说就是一个报表和一系列插件的集合。若是咱们指望在系统A和B之间传输代码,步骤为:github

(1) 在系统A和B上都安装SAPLink,其实也就是手动建立报表,而后从SAPLink的github上把源代码拷贝过来,激活便可: https://github.com/sapmentors/SAPlink算法

(2) 在系统A上执行SAPLink,把想传输的代码导出成一个本地文件。编程

(3) 在系统B上执行SAPLink,将前一步生成的本地文件导入。网络

SAPLink的介绍文章,网络上太多了,本文再也不赘述。eclipse

到了云时代以后,SAP云平台ABAP编程环境的代码版本管理,选择了基于abapGit这个开源项目的GIT来进行。编程语言

下面跟着Jerry一块儿,经过一个简单的例子来了解怎么作吧。函数

Jerry这个例子的场景是,我在ABAP On-Premises系统AG3里,开发了一些ABAP代码。我想经过abapGit,把这些On-Premises系统上的ABAP代码导入到SAP Cloud Platform ABAP环境里。工具

(1) 首先到这个Github仓库里找到abapGit的源代码,拷贝到On-Premises系统里。区块链

激活以后运行报表,界面以下:

(2) On-Premises系统上的ABAP代码是没法直接推送到SAP云平台 ABAP环境的,须要一个中转站,即github.com上的代码仓库。为此,Jerry新建一个代码仓库:test-sap-abap-cloud.

(3) 回到On-Premises系统的abapGit报表,点击工具栏的Online超连接,同第二步建立的Github仓库创建关联。

上图的意思是我在On-Premises系统里新建立的开发包,$ZJERRYPACKAGE里面的代码,会和github.com的test-sap-abap-cloud这个仓库创建关联。

由于个人开发包里还没有建立任何代码,因此此时abapGit里除了包描述XML文件外,没有显示任何和ABAP代码相关的资源文件。

(4) 如今我在On-Premises系统里随便建立一个Hello World的报表:

回到On-Premises系统的abapGit,刷新,此时就能看见我刚刚建立的ABAP报表了。

和你们使用Mac或者Windows版本的Git客户端同样,我首先用abapGit把On-Premises系统建立的这个Hello World报表推送到github.com:

随便维护一个推送注释,好比the first commit from Jerry's abapgit:

成功推送完毕,如今github上的仓库已经能看到刚刚推送的来自On-Premises系统的报表代码和推送注释了:the first commit from Jerry's abapgit https://github.com/i042416/test-sap-abap-cloud

(5) 如今咱们能够把github.com仓库里的代码导入到SAP云平台ABAP环境了。给ABAP Development Tools安装abapGit插件,地址为:eclipse.abapgit.org/updatesite

安装完毕后,打开abapGit视图:

登陆SAP Cloud Platform ABAP编程环境,点击Link按钮:

输入github.com的仓库地址:https://github.com/i042416/test-sap-abap-cloud

指定SAP云平台ABAP环境里ZJERRY这个包存放来自github.com的ABAP代码:

clipboard18,18

当咱们在abapGit视图里看到标记为Imported状态的条目时,说明导入成功。然而,在SAP云平台ABAP环境的开发包ZJERRY里,我并无看到On-Premises系统里的Hello World报表,这是怎么回事呢?

原来,在SAP Cloud Platform ABAP环境里,能容许开发人员编写ABAP代码的载体就只有下列五种,不支持On-Premises环境里经过SE38建立的ABAP报表。若是咱们在On-Premises系统里建立一个ABAP类,经过本文介绍的步骤,是可以顺利导入SAP云平台ABAP环境并能够继续在其上开发的。

在SAP云平台ABAP编程环境里,咱们若是想模拟On-Premises环境SE38里建立的报表,能够经过建立实现了接口IF_OO_ADT_CLASSRUN的ABAP类来完成。

右键单击这种类,选择Run As ABAP Application(Console)便可。

但愿本文能加深你们对下图中经过GIT来进行SAP Cloud Platform ABAP环境中代码管理这一律念的理解,感谢阅读。

更多阅读

  • Jerry的ABAP, Java和JavaScript乱炖
  • ABAP开发人员将来应该学些什么
  • Jerry 2017年的五一小长假:8种经典排序算法的ABAP实现
  • Jerry的ABAP原创技术文章合集
  • 300行ABAP代码实现一个最简单的区块链原型
  • 使用Java+SAP云平台+SAP Cloud Connector调用ABAP On-Premise系统里的函数
  • 在SAP云平台的CloudFoundry环境下消费ABAP On-Premise OData服务
  • ABAP vs Java, 蛙泳 vs 自由泳
  • 聊聊C语言和ABAP
  • 动手使用ABAP Channel开发一些小工具,提高平常工做效率
  • 我用ABAP作过的那些无聊的事情
  • 不喜欢SAP GUI?那试试用Eclipse进行ABAP开发吧
  • 使用Visual Studio Code编写和激活ABAP代码
  • 你的ABAP程序给大神开过光么?来试试Jerry这个小技巧
  • 在SAP云平台ABAP编程环境上编写第一段ABAP程序
  • SAP官方发布的ABAP编程规范
  • ABAP Code Inspector那些隐藏的功能,您都知道吗?
  • 还在用ABAP进行SAP产品的二次开发?来了解下这种全新的二次开发理念吧
  • ABAP Netweaver体内的那些寄生式编程语言
  • 从SAP社区上的一篇博客开始,聊聊SAP产品命名背后的那份情怀
  • 云端的ABAP Restful服务开发
  • 如何在SAP云平台ABAP编程环境里把CDS view暴露成OData服务

要获取更多Jerry的原创文章,请关注公众号"汪子熙": 公众号截图

相关文章
相关标签/搜索