SAPGUI 里 ABAP 代码导出成 PDF 格式的隐藏小技巧

简介: SAPGUI 里 ABAP 代码导出成 PDF 格式的隐藏小技巧

在 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的一些主要特点和用法。


1.导出和导入ABAP对象:

通过SAPlink,开发人员可以将ABAP对象(比如程序、函数模块、数据字典对象等)导出为XML文件的格式。这些XML文件包含了ABAP对象的定义和相关信息。然后,其他开发人员可以通过SAPlink将这些XML文件导入到他们的系统中,从而重用这些对象。


举例来说,假设有一个开发团队在开发一个新的报表程序,并且已经编写了一些相关的函数模块和数据字典对象。现在另一个开发团队需要在另一个项目中使用类似的功能。这时,第一个团队可以使用SAPlink将他们开发的对象导出为XML文件,然后将这些文件提供给第二个团队。第二个团队可以通过SAPlink将这些XML文件导入到他们的系统中,从而避免重复开发。


2.版本控制和历史记录:

SAPlink还提供了版本控制和历史记录的功能,可以跟踪ABAP对象的修改历史。这样,开发人员可以轻松地查看一个对象的变更历史,并且在需要时回滚到之前的版本。


例如,一个开发团队在某个程序中进行了一些修改,但是后来发现这些修改引入了一些问题。通过SAPlink,他们可以轻松地查看这些修改的历史记录,并且回滚到之前的一个稳定版本,从而解决问题。


3.社区支持和扩展性:

SAPlink是一个开源项目,有一个活跃的社区在维护和支持它。这意味着开发人员可以从社区中获取支持和帮助,并且可以参与到项目的开发和改进中来。此外,SAPlink还提供了丰富的插件和扩展,可以根据具体需求进行定制和扩展。


例如,有些开发团队可能需要额外的功能来集成SAPlink与他们的持续集成/持续交付(CI/CD)工作流程。他们可以开发自己的插件来实现这些功能,或者从社区中获取现成的插件。


4.与其他工具的集成:

SAPlink还可以与其他开发工具和平台进行集成,比如Git、Jenkins等。这样,开发人员可以更轻松地将ABAP开发集成到他们的工作流程中,提高开发效率和质量。


例如,一个团队可能使用Git作为版本控制系统,并且希望将ABAP开发纳入到他们的Git工作流程中。通过与SAPlink的集成,他们可以将ABAP对象导出为XML文件,然后提交到Git仓库中进行版本控制和管理。


5.支持各种ABAP对象:

SAPlink支持导出和导入各种类型的ABAP对象,包括但不限于:程序、函数模块、数据字典对象、表格、视图、类型、类等。这使得开发人员可以轻松地分享和重用他们的各种ABAP开发资源。


例如,一个团队可能开发了一组通用的函数模块,用于处理日期和时间相关的操作。通过SAPlink,他们可以将这些函数模块导出为XML文件,并且共享给其他团队使用。


6.简化团队协作:

最后,SAPlink还可以帮助简化团队协作,提高开发团队之间的沟通和协作效率。通过将ABAP对象导出为XML文件,开发人员可以轻松地共享他们的代码和对象,并且更容易地进行代码审查、调试和合并。


例如,一个团队可能希望将他们的ABAP代码提交到代码审查工具进行审查。通过SAPlink,他们可以将ABAP对象导出为XML文件,然后将这些文件提交到审查工具中进行审查,从而提高代码质量和可维护性。


相关文章
|
2月前
|
存储
使用 ABAP 代码打印出 SAP CRM 系统里所有维护了 Sales Area 的 business partner id
使用 ABAP 代码打印出 SAP CRM 系统里所有维护了 Sales Area 的 business partner id
|
13天前
|
Unix Linux Shell
Sphinx是一个Python文档生成工具,它可以解析reStructuredText或Markdown格式的源代码注释,并生成多种输出格式,如HTML、LaTeX、PDF、ePub等。
Sphinx是一个Python文档生成工具,它可以解析reStructuredText或Markdown格式的源代码注释,并生成多种输出格式,如HTML、LaTeX、PDF、ePub等。
|
1月前
|
JSON API 开发工具
|
1月前
|
机器学习/深度学习 自然语言处理 PyTorch
|
2月前
|
文字识别 安全 算法
一键将PDF转换为AutoCAD格式
在线云库工具,能一键将PDF高效转换为AutoCAD(DWG)格式,支持OCR识别扫描版PDF,保证转换精度。工具匿名、安全,且免费无文件大小限制。适用于建筑、工程设计、图纸管理和教育场景,提升工作效率。
83 0
一键将PDF转换为AutoCAD格式
|
2月前
|
JSON 应用服务中间件 API
使用 ABAP 代码消费 SAP 系统的 OData 服务
使用 ABAP 代码消费 SAP 系统的 OData 服务
|
2月前
|
存储 API
如何在 SAPGUI 的 ABAP 报表里显示图片试读版
如何在 SAPGUI 的 ABAP 报表里显示图片试读版
|
1月前
|
IDE Java 编译器
使用Java分割PDF文件
使用Java分割PDF文件
29 1
|
9天前
|
JavaScript Java
Java 将Markdown文件转换为Word和PDF文档
【7月更文挑战第5天】Java中使用`Spire.Doc for Java`库可方便地将Markdown转换为Word或PDF。基本步骤包括导入模块,创建`Document`对象,加载Markdown文件,然后保存为目标格式(`.docx`或`.pdf`)。若遇到`Invalid UTF-8 stream`错误,需确保Markdown文件是UTF-8无BOM编码。页面设置可通过`PageSetup`类调整。注意,实际应用会依据具体需求和环境有所调整。
|
1月前
|
XML Java 数据格式
Java用xpdf库获取pdf文件的指定范围文本内容
Java用xpdf库获取pdf文件的指定范围文本内容
30 1

热门文章

最新文章