这是 Jerry 2021 年的第 35 篇文章,也是汪子熙公众号总共第 311 篇原创文章。

Jerry 曾经辞别 ABAP 开发很长一段时间了,最近有敌人问我一个对于 ABAP Development Tool 里代码模板的应用问题。我感觉这个代码模板性能,对 ABAP 开发者来说算是一个比拟实用的性能,所以独自写一篇文章,把我给这位敌人的解答分享进去。

先介绍下问题的上下文:在 SAPGUI 里,咱们能够应用工具栏这个 Pattern 按钮,输出一个函数的名称比方 READ_TEXT:

而后,ABAP 编辑器会帮忙咱们,主动生成调用这个函数的代码模板,如下图所示。当一个 ABAP 函数具备较多的输入输出参数时,这个性能很有用,省去了咱们手动敲入代码的工夫。

这位敌人的困扰是,到了 ABAP Development Tool 环境上面,找不到 Pattern 按钮了,因而不晓得如何持续应用 ABAP 代码模板性能。

实际上,在 ABAP Development Tool (以前咱们称为 ABAP in Eclipse) 里,ABAP 代码模板依然可能持续应用。和 SAPGUI 不同之处在于,其触发形式有所变动,不再是通过点击 IDE 里某按钮触发。

首先,在 Windows -> Preferences 里,批改 ABAP Development Tool 里触发代码主动补全的快捷键。

抉择 Keys -> Content Assist,默认的快捷键是 Ctrl + Space. 这个按键组合,在 Windows 零碎里会触发输入法切换,因而咱们须要将其更改成其余的按键组合。

我将其批改成了 Shift + L:

在 ABAP 编辑器里,输出 CALL FUNCTION 'READ 之后,敲 Shift + L :

就会看到所有以 READ 结尾的 ABAP 函数列表。从列表里抉择 read_text 函数之后,在弹出框能看到该函数的输入输出参数,即所谓的 signature 明细。

键入 Shift + Enter,就能够像在 SAPGUI 里点击 Pattern 一样,主动将该函数的调用代码,插入到以后 ABAP 代码中了。

此外,在 ABAP Editor 的 ABAP Templates 里,咱们能够批改 ABAP Development Tool 自带的规范 ABAP 模板,也能够自定义新的 ABAP 代码模板。

新建一个 ABAP 模板,应用按钮 Insert Variable, 能够在模板代码里插入相似 ABAP 编程语言 sy-uname 等零碎变量。

比方来一段 Jerry 文章 你的ABAP程序给佛祖开过光么?来试试Jerry这个小技巧 里提到的正文。

最初编辑好的 ABAP 代码模板如下图所示,另存为 JerryCustomTemplate:

在 ABAP 编辑器中,输出 je,而后敲 Shift + L,从下拉列表里抉择 JerryCustomTemplate 即可:

能够看到代码模板里插入的变量,曾经主动被替换成其理论值了。

对于 SAP ABAP Development Tool 的更多介绍,能够浏览 Jerry 之前的文章:

  • 不喜爱SAP GUI?那试试用Eclipse进行ABAP开发吧
  • 给你的ABAP对象打上标签(Tag)
  • ABAP开发环境终于反对以驼峰命名法主动格式化ABAP变量名了

比方在 ABAP Development Tool 里设置 ABAP Formatter,让其反对驼峰命名法:

以及此处导入 ABAP 关键字的色彩配置,让你的 ABAP 编辑器具备五彩缤纷的视觉效果:

https://github.com/FreHu/ecli...

感激浏览。

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服务
  • 应用abapGit在ABAP On-Premises零碎和SAP云平台ABAP环境之间进行代码传输
  • 30分钟用Restful ABAP Programming模型开发一个反对增删改查的Fiori利用
  • Jerry带您理解Restful ABAP Programming模型系列之二:Action和Validation的实现
  • Jerry带您理解Restful ABAP Programming模型系列之三:云端ABAP利用调试
  • SAP云平台上的ABAP编程环境里如何生产第三方服务
  • ABAP开发者上云的时候到了 - 当初大家能够收费应用SAP云平台ABAP环境的试用版了
  • 学而不思则罔 - SAP云平台ABAP编程环境的由来和实用场景
  • SAP云平台里的三叉戟利用
  • 如何基于Restful ABAP Programming模型开发并部署一个反对增删改查的Fiori利用
  • SAP 2019 TechEd Key Note解读:云时代下SAP从业人员如何做二次开发?
  • 有哪些ABAP关键字和语法,到了ABAP云环境上就没方法用了?
  • ABAP开发环境终于反对以驼峰命名法主动格式化ABAP变量名了
  • 利用ABAP 740的新关键字REDUCE实现一个理论工作工作
  • 一段让人瑟瑟发抖的ABAP代码
  • 昨日万圣节ABAP怪兽级代码谜团,颁布答案啦
  • 介绍一种在ABAP内核态进行内表高效拷贝的办法
  • 应用SAP Cloud Application Programming模型开发OData的一个理论例子
  • 当ABAP遇见普罗米修斯
  • 应用ABAP绘制可伸缩矢量图
  • ABAP开发环境语法高亮的那些事儿
  • SAP谬误音讯调试之七种武器:让所有的谬误音讯都能被定位
  • 应用ABAP操作Excel的几种办法
  • SAP GUI里的收藏夹事务码管理工具
  • SAP GUI和Windows注册表
  • 有了Debug权限就能干坏事?小心了,你的一举一动尽在系统监控中
  • ABAP CCDEF, CCIMP, CCMAC, CCAU, CMXXX这些东东是什么鬼
  • 实现ABAP条件断点的三种形式
  • 应用SAT跟踪监控从浏览器关上的SAP利用的性能和调用栈
  • 一个13年ABAP老兵的倡议:理解这些基础知识,对ABAP开发有百利而无一害
  • SAP ABAP Netweaver容器化, 不可能实现的工作吗?
  • SAP产品加强技术回顾
  • SAP API开发方法大全
  • 浅谈Java和SAP ABAP的动态代理和动静代理,以及ABAP面向切面编程的尝试
  • SAP ABAP应用服务器的HTTP响应状态码(Status Code)
  • SAP ABAP里存在Java List这种汇合工具类么?CL_OBJECT_COLLECTION理解一下
  • ABAP面试题系列:写一组会呈现死锁(Deadlock)的ABAP程序
  • SAP ABAP Netweaver服务器的规范登录形式解说
  • SAP ABAP关键字语法图和ABAP代码主动生成工具Code Composer
  • SAP ABAP SM50的另类用处 - ABAP工作过程对数据库表读取操作的检测
  • 对于SAP ABAP字符变量和字符串变量字符个数的一个知识点,和一个血案
  • SAP ABAP一组关键字 IS BOUND, IS NOT INITIAL和IS ASSIGNED的用法辨析
  • SAP ABAP和Java里的弱援用(WeakReference)和软援用(SoftReference)
  • SAP AMDP介绍 - ABAP托管的HANA数据库过程
  • 给你的ABAP对象打上标签(Tag)
  • 历史上的明天:编程语言中null援用的十亿美元谬误

更多Jerry的原创文章,尽在:"汪子熙":