标签(Tag)简直是信息管理软件的一个必备性能,目标是帮忙用户更迅速地检索出本人须要的数据,以及对海量数据进行更无效的治理。

现在在 ABAP Development Tool 里也反对标签性能了,能够像应用各种云笔记一样,给罕用类型的ABAP对象增加自定义的标签。这个标签调配的性能并未给 ABAP 对象削减任何新的性能,而是帮忙使用者可能依照本人的理论需要,迅速将须要的 ABAP 资源检索进去。

如果您相熟 C++ 和 Java,您应该晓得它们的程序存储在独自的内部文件中。 但在 ABAP 中,程序驻留在 SAP 数据库中。 它们在作为 SAP 内核一部分的运行时零碎的管制下执行。 运行时零碎解决所有 ABAP 语句,控制流逻辑并响应用户事件。

本文先展现给ABAP对象加标签的操作形式,再介绍如何给ABAP Development Tool增加标签性能。

SAP 零碎以 3 层客户端-服务器架构形容。 三层别离是表示层、应用层和数据库层。 下图将帮忙您理解 SAP 零碎的简略构造。

表示层蕴含可用于管制 SAP 零碎的任何输出设施。 简略地说,它能够是挪动设施、台式计算机或网络浏览器。

应用层表演中央处理服务器的角色。 表示层发动的所有用户操作都在此解决。 应用层不仅仅是一个零碎自身,它也能够是解决零碎的多个实例。 应用服务器过程通过工作过程(Work Process,简称 WP)执行。 WP 是可能执行应用程序的组件。 在 SAP 零碎的整个运行时,每个 WP 都在数据库系统中注册为用户。

数据库层是存储所有数据的中央。 这里说的数据不光蕴含业务数据,也包含所有客户记录、程序和任何须要存储的货色,是狭义上的数据概念。

简而言之,用户在表示层上执行的任何操作都将传递给应用程序层进行解决,该解决将从数据库层检索任何相干数据,应用程序层解决数据并通过表示层将其出现给最终用户。

在数据库外部,ABAP 代码以两种模式存在。

  • 源代码 — 能够应用 ABAP 工作台工具查看和编辑。
  • 生成的代码 - 二进制示意。 (在 Java 中,这个生成的代码有点相似于 Java 字节码)

运行时零碎能够被认为是一个虚拟机,就像Java虚拟机一样。

SAP 能够与各种各样的数据库一起工作,并且雷同的 ABAP 程序能够在所有这些数据库上运行。

在ABAP Development Tool里增加标签的形式十分间接,右键菜单里抉择 Assign Tags 即可。但凡应用过云笔记里标签增加和治理性能的敌人们,对此应该十分相熟。

通过 Add Tag 和 Add User Tag按钮治理标签构造,每个ABAP零碎都有一个全局的标签零碎(Global Tag), 这些标签在同一ABAP零碎里所有登录用户均可见。也能够创立只有本人可见的User Tag:

和云笔记的标签零碎一样,ABAP Development Tool里的标签治理也反对树状的层级构造。

在快捷键为Ctrl+H的全局搜寻页面里,削减了一项依据标签搜寻ABAP对象的选项:

ABAP Development Tool的标签治理性能来自开源社区的奉献,因而须要使用者自行装置。

笔者之前的一篇博客已经介绍了用户在ABAP Development Tool里操作时前后台交互的原理:
An example to help you understand how does ADT work

为了探索咱们在 Eclipse 中进行操作时前后台到底产生了什么,咱们须要关上 ABAP 通信日志。

单击 Windows-> 显示视图。 显示 ABAP 通信日志视图。

点击 Start Logging 按钮:

创立一个新的 report:

而后就能够看到一系列 log 被记录下来了:

当初咱们能够晓得用户在 Eclipse 中的操作,是通过 HTTP Get 和 HTTP Post 发送到 ABAP 后端系统的,并在 ABAP 后端进行解决。 双击每一行以取得具体视图。

在报告创立场景中,发送到 ABAP 后端的申请与您在 SAP GUI 中创立一份报告的失常操作雷同:

因而这个标签治理性能咱们须要别离装置ABAP Development Tool前后台对应的加强。

首先是前台加强,即ABAP Development Tool里的标签增加,标签树形构造治理和依据标签进行全局搜寻的UI实现。

前台加强间接通过Eclipse的Help菜单里的Install New Software选项在线装置即可,装置网址如下.


后盾加强的ABAP实现源代码,位于 Github 这个仓库。

该仓库的源代码须要应用abapGit装置到ABAP后盾零碎上。

如果你的ABAP零碎没有abapGit这个客户端,须要先进行装置,其实就是新建一个报表,再将这个 Github仓库里的abapGit源代码拷贝到报表里,激活即可。

将下图高亮的zabapgit.abap蕴含的源代码下载到本地,用任意一个文本编辑器关上,Ctrl C再Ctrl V到ABAP零碎的报表里,激活:

激活之后运行报表,看到的首页如下。点击右上角的New Online:

将ADT标签治理的后盾实现应用abapGit pull到以后的ABAP零碎,点击Clone online repo:

而后在以后的abapGit客户端内,曾经能够看到abap-tags-backend这个Github仓库了:

执行pull操作,在以后ABAP零碎里主动生成Github仓库里蕴含的ABAP对象:

逐个激活主动生成的对象:

后盾加强装置结束。

总结

本文首先简要介绍了 ABAP Development Tool 工具里用户发动的操作,是如何映射到 ABAP 后盾零碎,接着介绍了如何通过前台更新和后盾 ABAPGit 装置加强的形式,给 ABAP 零碎削减标签治理的新性能。

心愿本文介绍的这个技巧,能帮忙大家更高效地治理本人 ABAP 零碎里的开发对象,感激浏览。