ABAP Development Tool 代码模板和其他一些实用技巧汇总
这是 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 之前的文章:
比如在 ABAP Development Tool 里设置 ABAP Formatter,让其支持驼峰命名法:
以及此处导入 ABAP 关键字的颜色配置,让你的 ABAP 编辑器具有五彩缤纷的视觉效果:
https://github.com/FreHu/eclipse-abap-keywordcolors
感谢阅读。
ABAP专题