ABAP Development Tool 代码模板和其他一些实用技巧汇总

简介: ABAP Development Tool 代码模板和其他一些实用技巧汇总

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


Jerry 已经告别 ABAP 开发很长一段时间了,最近有朋友问我一个关于 ABAP Development Tool 里代码模板的使用问题。我觉得这个代码模板功能,对 ABAP 开发者来说算是一个比较实用的功能,所以单独写一篇文章,把我给这位朋友的解答分享出来。


image.png


先介绍下问题的上下文:在 SAPGUI 里,我们可以使用工具栏这个 Pattern 按钮,输入一个函数的名称比如 READ_TEXT:


image.png


然后,ABAP 编辑器会帮助我们,自动生成调用这个函数的代码模板,如下图所示。当一个 ABAP 函数具有较多的输入输出参数时,这个功能很有用,省去了我们手动敲入代码的时间。


image.png


这位朋友的困扰是,到了 ABAP Development Tool 环境下面,找不到 Pattern 按钮了,因此不知道如何继续使用 ABAP 代码模板功能。


image.png


实际上,在 ABAP Development Tool (以前我们称为 ABAP in Eclipse) 里,ABAP 代码模板仍然能够继续使用。和 SAPGUI 不同之处在于,其触发方式有所变化,不再是通过点击 IDE 里某按钮触发。


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


选择 Keys -> Content Assist,默认的快捷键是 Ctrl + Space. 这个按键组合,在 Windows 系统里会触发输入法切换,因此我们需要将其更改成其他的按键组合。


image.png


我将其修改成了 Shift + L:


image.png


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


image.png


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


image.png


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


image.png


此外,在 ABAP Editor 的 ABAP Templates 里,我们可以修改 ABAP Development Tool 自带的标准 ABAP 模板,也可以自定义新的 ABAP 代码模板。


image.png


新建一个 ABAP 模板,使用按钮 Insert Variable, 可以在模板代码里插入类似 ABAP 编程语言 sy-uname 等系统变量。

image.png



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


image.png


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


image.png


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


image.png


可以看到代码模板里插入的变量,已经自动被替换成其实际值了。


image.png


关于 SAP ABAP Development Tool 的更多介绍,可以阅读 Jerry 之前的文章:


不喜欢SAP GUI?那试试用Eclipse进行ABAP开发吧


给你的ABAP对象打上标签(Tag)


ABAP开发环境终于支持以驼峰命名法自动格式化ABAP变量名了


比如在 ABAP Development Tool 里设置 ABAP Formatter,让其支持驼峰命名法:


image.png


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


https://github.com/FreHu/eclipse-abap-keywordcolors


image.png


image.png


image.png


感谢阅读。


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引用的十亿美元错误


相关文章
|
1月前
|
前端开发 开发工具 Android开发
小技巧分享 - 使用 Visual Studio Code 查看和修改 ABAP 代码试读版
小技巧分享 - 使用 Visual Studio Code 查看和修改 ABAP 代码试读版
15 0
小技巧分享 - 使用 Visual Studio Code 查看和修改 ABAP 代码试读版
|
1月前
|
开发者 供应链 BI
SAP ABAP CALL SUBSCREEN 代码解析
SAP ABAP CALL SUBSCREEN 代码解析
57 0
|
1月前
|
BI
工具分享 - 将一个 ABAP Function Group 内所有 Function Module 按照代码行数从高到低排序并显示
工具分享 - 将一个 ABAP Function Group 内所有 Function Module 按照代码行数从高到低排序并显示
20 0
工具分享 - 将一个 ABAP Function Group 内所有 Function Module 按照代码行数从高到低排序并显示
|
2月前
|
存储 数据处理 开发者
ABAP 如何把 unicode 代码点转换成字符
ABAP 如何把 unicode 代码点转换成字符
21 0
|
1月前
|
存储
使用 ABAP 代码打印出 SAP CRM 系统里所有维护了 Sales Area 的 business partner id
使用 ABAP 代码打印出 SAP CRM 系统里所有维护了 Sales Area 的 business partner id
21 0
|
1月前
|
开发工具 Web App开发 IDE
如何对 SAPGUI 里的 ABAP 代码语法检查功能进行自定义增强配套代码
如何对 SAPGUI 里的 ABAP 代码语法检查功能进行自定义增强配套代码
9 2
如何对 SAPGUI 里的 ABAP 代码语法检查功能进行自定义增强配套代码
|
1月前
|
开发者 数据库
使用 SAP ABAP 代码下载一个 note 到本地 ABAP 系统
使用 SAP ABAP 代码下载一个 note 到本地 ABAP 系统
12 0
|
2月前
|
BI
工具分享 - 将一个 ABAP Function Group 内所有 Function Module 按照代码行数从高到低排序并显示试读版
工具分享 - 将一个 ABAP Function Group 内所有 Function Module 按照代码行数从高到低排序并显示试读版
16 0
|
2月前
|
存储
ABAP 代码从十进制转二进制的方法
ABAP 代码从十进制转二进制的方法
27 0
|
3月前
|
XML 持续交付 开发工具
SAPGUI 里 ABAP 代码导出成 PDF 格式的隐藏小技巧
SAPGUI 里 ABAP 代码导出成 PDF 格式的隐藏小技巧
30 0

热门文章

最新文章