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

Jerry 曾经有很长一阵子没有关上工作电脑上的 SAP ABAP Development Tool 了。在用 Visual Studio Code 进行 Angular 开发马上快满一年的工夫点上,为了做到喜新不厌旧,本文把 SAP ABAP Development Tool 一些进步工作效率的应用小技巧列举进去。欢送大家在留言区补充。

对于 Jerry 之前分享过的 SAP ABAP Development Tool 应用技巧,请查阅这些文章:

  • ABAP Development Tool 代码模板和其余一些实用技巧汇总
  • 给你的ABAP对象打上标签(Tag)
  • ABAP开发环境终于反对以驼峰命名法主动格式化ABAP变量名了
  • SAP官网公布的ABAP编程标准
  • ABAP开发环境语法高亮的那些事儿
  • 不喜爱SAP GUI?那试试用Eclipse进行ABAP开发吧

1. 疾速关上 ABAP Development Tool 任意设置

假如我想关上 ABAP Development Tool 和色彩 (color) 相干的设置,然而我记不住具体的设置门路了,没有关系,应用快捷键 Ctrl + 3:

在输入框内输出 color,而后就能看到所有和 color 相干的设置。

抉择本人想设置的条目,单击,即可迅速进入设置页面:

2. CDS view 数据的本地保留

CDS view 数据预览之后,能够通过 Add filter 左边这个小图标,以不同的格局另存到本地以便进一步剖析。

3. 疾速关上任意一个 ABAP 开发对象

快捷键 Ctrl + Shift + A,在关上的弹出窗口里输出搜寻条件,即可疾速搜寻并关上找到的对象。

反对罕用的搜寻通配符。

4. 在嵌入的弹出对话框查看对象明细

例如咱们想查看规范视图 /DMO/I_Travel_U 的明细,无需关上其视图自身。


间接鼠标选中该视图,按 F2 即可在弹出窗口里查看,清晰精确,高深莫测。


如果嫌这个弹出窗口尺寸太小,还能够将其以 ABAP Development Tool 属性视图的形式显示,点击这个小图标即可:

成果如下:

5. 在 ABAP 类办法实现的任意地位查看其参数定义

SAPGUI 里能在编写 ABAP 类办法源代码实现时,随时查看其办法参数定义,这一点我很喜爱。

在 ABAP Development Tool 里就无奈随时看到办法参数定义了。


不过只须要按一下 Alt + F2, 办法参数定义又回来了:

后续行将介绍的小技巧里,咱们还能对 Alt + F2 显示的内容进行加强。

6. 相似 Visual Studio Code 的 Quick Fix 性能

我用了快一年的 Visual Studio Code 进行 Angular 开发了,真心喜爱其 Quick Fix 性能, 编译器能通过上下文,主动给出一些编译谬误的解决方案。

ABAP Development Tool 里也有相似性能。比方上面的例子,代码第25行,变量 lo_request 没有定义就间接应用,引起了一个编译谬误。


选中 lo_request, 快捷键 Ctrl + 1,即可看到 ABAP 编译器给出修复该语法错误的几种倡议,这称之为 ADT Quick Assistant.


这里抉择第一条倡议即 Declare local variable lo_request, 双击,定义局部变量 lo_request 的代码就主动插入到指定的地位了:

依据不同的选中上下文,Ctrl + 1 的行为也不同。比方同时选中 ABAP 办法内的若干行代码,再按 Ctrl + 1,弹出的则是代码重构的一些倡议,比方将这些选中的代码,抽取到一个新的公有办法去。这种代码重构形式称之为 Method Extraction.

选中一个硬编码的字符串,Ctrl + 1 后编译器会提醒咱们,是否思考将其转换成一个部分常量,类常量,局部变量,或是应用 ABAP Text Pool 来防止硬编码。

对本人编写的代码常常应用 ADT Quick Assistant, 多思考其提出的重构倡议,有助于晋升咱们的代码品质。

7. 增加代码正文

想让你的办法可能像 Visual Studio Code 里显示的正文一样业余吗?在 SAP ABAP Development Tool 里当然也能做到。

选中下图第28行的办法调用 get_destination, 按 F2 之后,显示的是 SAP ABAP Development Tool 里默认的办法参数阐明。

当初咱们在该办法的定义代码的前一行,手动保护下列正文。

激活之后再次选中办法调用而后按 F2,咱们之前手动保护的正文,就会渲染成如下红色高亮区域的文本,是不是看起来业余多了?通过语法{@link XXXX}, 咱们能够在正文里插入指向 ABAP 规范开发对象的超链接,提供正文的可读性。

8. 让 ABAP 代码格式化工具反对驼峰格调(Camel Case)

在 ABAP Formatter 设置里,将 Keep Camel Case Identifiers 前的勾打上即可。

之后,代码中这些采纳驼峰格调定义的变量名,就不会被 ABAP Formatter 转换成纯小写了。当然,代码中应用下划线格调还是驼峰格调来对变量进行命令,还得遵循我的项目自身的编程标准。

9. 更改 ABAP 关键字的色彩

SAPGUI 里所有的 ABAP 关键字都只能设置为同一种色彩。而 ABAP Development Tool 里,可能为不同的关键字别离设置不同的色彩:

如果嫌麻烦不违心逐个设置,能够间接导入 Github 上这个设置:

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

Visual Studio Code 须要装置额定的扩大能力实现这个色彩更改需要,而 ADT 自身的设置就足以工作了,相当赞。如果须要终日面对 ABAP 代码,那么将其外观设置得五彩缤纷一点,或者也能让本人编程时,情绪更加愉悦一些。

10. ABAP Occurances

以 Visual Studio Code 为例,假如我想查看名为 config 的属性在 Component 里所有的呈现场景(Occurances), 须要 Ctrl + F 关上搜寻框,输出 .config. 这样,代码中所有呈现 .config 的地位,会被高亮显示。

在 ABAP Development Tool 里就不便多了。

假如我想查看代码中所有呈现 zbooking 的地位。间接点击其即可。

单击后,代码中所有呈现 zbooking 的地位,会主动被高亮显示。

按 "Ctrl + ," 的快捷键,能够在这些地位之间进行切换。

在应用该性能时,确保编辑器里的 "ABAP Occurances" 处于开启状态。

Occurances 显示的色彩和外观也可能定制化:

比方下图是我将高亮显示更改为红色下划线的成果:

心愿这些小技巧可能帮忙进步大家应用 SAP ABAP Development Tool 的开发效率。

Jerry 的 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援用的十亿美元谬误
  • ABAP Development Tool 代码模板和其余一些实用技巧汇总

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