在 abapGit 普及之前,SAP 生态圈里交流 ABAP 代码的渠道是 SAPLink. 这个工具支持把主流的 ABAP 开发对象从系统 A 导出成本地文件,然后导入到系统 B 去。
目前 abapGit 和 SAPLink 已经能够满足几乎所有场景下的 ABAP 代码交换需求了。也有的朋友使用场景比较简单,只需要将系统里的 ABAP 代码导出到本地离线阅读。
虽然 SAPGUI ABAP 编辑器里的 Utilities 菜单,支持将源代码下载到本地,但只支持 text 格式下载。这些下载的本地文件,打开之后语法高亮也没了。
其实 SAPGUI 的 ABAP 编辑器本身就支持将源代码以 PDF 格式下载到本地,并仍旧保留语法高亮。
我们在 ABAP 编辑器的右下角,找到这个 Option 图标,点击,选择 Keyboard,然后给 File.ExportPDF 分配一个快捷键,比如 Ctrl+W.
之后在 ABAP 编辑器里敲这个快捷键,就能弹出 PDF 文件的保存对话框了。
导出的 PDF 文件里,仍然保留着 ABAP 编辑器里的语法高亮显示。
有意思的是,比如函数 TRINT_TADIR_POPUP,导出成 PDF 时,文件名自动填充的是 LSTRDU18,这是为何?
实际上,我在之前的文章 ABAP CCDEF, CCIMP, CCMAC, CCAU, CMXXX这些东东是什么鬼 曾经介绍过,像 ABAP 类的方法,以及本文聊到的 Function Module,其源代码存储,都是以 SE38 可以打开的 ABAP 报表实现的。本例 Function Module TRINT_TADIR_POPUP,其源代码存储在 ABAP Include LSTRDU18,所以导出到本地时,系统默认使用该 Include 的名称,作为导出的 PDF 文件名。
附录:什么是 saplink?
SAPlink
是一个由社区开发的工具,用于简化SAP ABAP开发中的一些常见任务。它允许开发人员在ABAP环境中共享代码、对象和其他开发资源。这个工具的主要功能是将ABAP对象导出为XML格式,然后可以通过SAPlink导入到其他系统中。
在理解SAPlink的作用之前,让我们先来了解一下ABAP开发中的一些常见场景。在大型企业中,通常会有多个开发团队同时进行ABAP开发工作。这些团队可能在不同的项目中工作,或者在同一个项目的不同模块中工作。在这种情况下,开发团队可能会需要共享代码或对象,以避免重复开发,提高效率。此外,有时候还需要将开发好的对象从一个系统迁移到另一个系统,比如从开发系统迁移到测试系统或生产系统。
SAPlink
就是为了解决这些问题而开发的。它提供了一种简单而强大的方法,让开发人员可以轻松地分享和重用他们的ABAP代码和对象。下面我们来看一下SAPlink
的一些主要特点和用法。
导出和导入ABAP对象:
通过SAPlink
,开发人员可以将ABAP对象(比如程序、函数模块、数据字典对象等)导出为XML文件的格式。这些XML文件包含了ABAP对象的定义和相关信息。然后,其他开发人员可以通过SAPlink
将这些XML文件导入到他们的系统中,从而重用这些对象。举例来说,假设有一个开发团队在开发一个新的报表程序,并且已经编写了一些相关的函数模块和数据字典对象。现在另一个开发团队需要在另一个项目中使用类似的功能。这时,第一个团队可以使用
SAPlink
将他们开发的对象导出为XML文件,然后将这些文件提供给第二个团队。第二个团队可以通过SAPlink
将这些XML文件导入到他们的系统中,从而避免重复开发。版本控制和历史记录:
SAPlink
还提供了版本控制和历史记录的功能,可以跟踪ABAP对象的修改历史。这样,开发人员可以轻松地查看一个对象的变更历史,并且在需要时回滚到之前的版本。例如,一个开发团队在某个程序中进行了一些修改,但是后来发现这些修改引入了一些问题。通过
SAPlink
,他们可以轻松地查看这些修改的历史记录,并且回滚到之前的一个稳定版本,从而解决问题。社区支持和扩展性:
SAPlink
是一个开源项目,有一个活跃的社区在维护和支持它。这意味着开发人员可以从社区中获取支持和帮助,并且可以参与到项目的开发和改进中来。此外,SAPlink
还提供了丰富的插件和扩展,可以根据具体需求进行定制和扩展。例如,有些开发团队可能需要额外的功能来集成
SAPlink
与他们的持续集成/持续交付(CI/CD)工作流程。他们可以开发自己的插件来实现这些功能,或者从社区中获取现成的插件。与其他工具的集成:
SAPlink
还可以与其他开发工具和平台进行集成,比如Git、Jenkins等。这样,开发人员可以更轻松地将ABAP开发集成到他们的工作流程中,提高开发效率和质量。例如,一个团队可能使用Git作为版本控制系统,并且希望将ABAP开发纳入到他们的Git工作流程中。通过与
SAPlink
的集成,他们可以将ABAP对象导出为XML文件,然后提交到Git仓库中进行版本控制和管理。支持各种ABAP对象:
SAPlink
支持导出和导入各种类型的ABAP对象,包括但不限于:程序、函数模块、数据字典对象、表格、视图、类型、类等。这使得开发人员可以轻松地分享和重用他们的各种ABAP开发资源。例如,一个团队可能开发了一组通用的函数模块,用于处理日期和时间相关的操作。通过
SAPlink
,他们可以将这些函数模块导出为XML文件,并且共享给其他团队使用。简化团队协作:
最后,SAPlink
还可以帮助简化团队协作,提高开发团队之间的沟通和协作效率。通过将ABAP对象导出为XML文件,开发人员可以轻松地共享他们的代码和对象,并且更容易地进行代码审查、调试和合并。例如,一个团队可能希望将他们的ABAP代码提交到代码审查工具进行审查。通过
SAPlink
,他们可以将ABAP对象导出为XML文件,然后将这些文件提交到审查工具中进行审查,从而提高代码质量和可维护性。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。