如何增强 ABAP 系统,允许开发人员给 ABAP 对象设置标签,方便快速检索

简介: 如何增强 ABAP 系统,允许开发人员给 ABAP 对象设置标签,方便快速检索

标签(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 系统里的开发对象,感谢阅读。



相关文章
|
2月前
|
存储
使用 ABAP 代码打印出 SAP CRM 系统里所有维护了 Sales Area 的 business partner id
使用 ABAP 代码打印出 SAP CRM 系统里所有维护了 Sales Area 的 business partner id
|
2月前
|
JSON 应用服务中间件 API
使用 ABAP 代码消费 SAP 系统的 OData 服务
使用 ABAP 代码消费 SAP 系统的 OData 服务
|
2月前
|
SQL 监控 Oracle
SAP ABAP 系统错误 Return value of the database layer SQL dbsl rc 99
SAP ABAP 系统错误 Return value of the database layer SQL dbsl rc 99
|
2月前
|
存储 前端开发 Linux
在 SAP ABAP 系统里访问 FTP 服务器
在 SAP ABAP 系统里访问 FTP 服务器
|
2月前
|
监控 Java 网络安全
在 ABAP 系统启用 Git-Enabled Change and Transport System 的先决条件
在 ABAP 系统启用 Git-Enabled Change and Transport System 的先决条件
|
2月前
|
存储 安全 网络安全
SAP ABAP 系统 STRUST 事务码里 System PSE 的概念介绍
SAP ABAP 系统 STRUST 事务码里 System PSE 的概念介绍
|
2月前
|
监控 安全 测试技术
SAP ABAP 系统 STRUST 事务码里 Distribute 功能介绍
SAP ABAP 系统 STRUST 事务码里 Distribute 功能介绍
|
2月前
|
存储
ABAP 系统中一个字符到底占据几个字节存储空间
ABAP 系统中一个字符到底占据几个字节存储空间
|
2月前
|
数据库
如何查询 SAP ABAP 系统里消耗存储空间排名前几位的数据库表试读版
如何查询 SAP ABAP 系统里消耗存储空间排名前几位的数据库表试读版
如何查询 SAP ABAP 系统里消耗存储空间排名前几位的数据库表试读版
|
2月前
|
开发者 数据库
使用 SAP ABAP 代码下载一个 note 到本地 ABAP 系统
使用 SAP ABAP 代码下载一个 note 到本地 ABAP 系统

热门文章

最新文章