猪年春节后的第一篇,Jerry祝各位猪年大吉!
2019年的六分之一马上就快过完了,不知道大家在新的一年是否给自己定了新的小目标呢?这里Jerry先预祝大家到2019年年底的时候,在年初制定的小目标都能实现。
2018年4月之前,Jerry一半时间为SAP S4CRM团队工作,剩下的一半时间为SAP C4C团队工作,所以那段时间大家能发现,Jerry公众号的文章主要是围绕着这两个SAP产品来写的。
4月之后,Jerry换组,到了新的部门,工作内容也发生了变化,不再专注于某个特定的SAP产品,而是项目需要我熟悉什么产品,我就得熟悉什么产品,所以之后我的公众号文章,主题也逐渐多种多样起来。
言归正传,Jerry之前的文章 那些年我用过的SAP IDE 曾经介绍过除了SAPGUI之外的其他ABAP开发工具和ABAP代码浏览工具。
得益于Netweaver职责清晰的三层架构,提供了ABAP开发环境和运行环境的应用服务器层(下图中间的Application server layer)作为ABAP应用的核心, 其上可以灵活适配不同的展现层(Presentation layer), 比如WebIDE, Eclipse,和今天要介绍的Visual Studio Code。
上图中应用服务器层的底层是数据库服务器层,Netweaver也支持多种主流数据库提供商的服务。例如下图是Jerry使用的一个Netweaver系统,支持包括SAP HANA在内的十种数据库管理系统(DBMS)。
我们简单回顾下之前Jerry介绍过的不同的ABAP开发工具。
首先是ABAP Development Tool(简称ADT), 对ABAP程序提供增删查改和激活操作的函数,通过位于路径sap/bc/下面的SICF服务节点adt暴露给外部消费者。
ABAP Development Tool的Java端实现就是Eclipse的一个扩展,使用JCO(Java Connector)连接ABAP后台的adt服务,实现对ABAP程序的操作。
关于ABAP Development Tool的细节,Jerry以前已经做过详细介绍,这里不再赘述,可以参考我这些文章:
-
Jerry在SAP Community上写给老外看的文章:https://blogs.sap.com/2014/08/12/an-example-to-help-you-understand-how-does-adt-work/
而在浏览器里编写ABAP,即通常意义上的ABAP WebIDE,实现方式有两种。一种是通过传统的ITS****(Internet Trasaction Server),通过这种方式在浏览器里显示的ABAP代码缺乏语法高亮:
Jerry写过的相关博客:
-
Open your SAP GUI transaction in Fiori launchpad
https://blogs.sap.com/2016/12/21/open-your-sap-gui-transaction-in-fiori-launchpad/
-
How is old SAP GUI transaction embedded into Fiori launchpad
https://blogs.sap.com/2016/12/21/how-is-old-sap-gui-transaction-embedded-into-fiori-launchpad/
另一种技术就是S/4HANA某些应用,比如Custom Logic采用的,支持语法高亮。
当然这个语法高亮的支持不是天上掉下来的,详细实现参考我的博客:
How ABAP syntax highlight is implemented in WebIDE launched via browser
再回到今天聊的Visual Studio Code。SAP成都研究院很多前端开发的同事都向我推荐过这个IDE。Jerry试用过之后,印象最深的就是它那超快的启动速度,一流的扩展性和繁荣的生态圈。其扩展应用的丰富程度不亚于Sublime Text和Eclipse这些老牌开发工具。
和SAP自研的ABAP Development Tool思路一样,本文介绍的Visual Studio Code扩展应用,ABAP Remote File System,也是通过另一种编程语言TypeScript去远程消费ABAP后台程序的增删查改服务。
该扩展应用的作者叫Marcello,一位居住在伦敦的程序猿(Jerry想起了西甲皇家马德里足球队昔日的队宠)。
这个Visual Studio Code的扩展是开源的,github仓库地址:
https://github.com/marcellourbani/vscode_abap_remote_fs
安装和配置的步骤在仓库的readme里有详细说明,最简单的方式就是在Visual Studio Code里直接用abap作为关键字搜索Market place,然后点Install安装。
这个扩展的配置文件settings.json的内容可以参考下图:
配置完成后,在Visual Studio Code的命令栏里能看到连接ABAP系统的指令和settings.json里配置的两条记录,任选一个后登入系统,显示该系统下的ABAP程序资源。操作它们的方式和基于Eclipse的ABAP Development Tool大同小异。
当然也有一些Visual Studio Code提供的特色功能,比如下图这种类Google的即时搜索。
这个扩展本身是不提供ABAP代码语法高亮的,需要安装另一个来自Lars Hvam贡献的语法高亮扩展。
安装完毕后,ABAP的语法高亮也能顺利在Visual Studio Code里工作了。
下面这张动图来自Marcello,演示了通过Visual Studio Code的这个扩展实现ABAP代码的基本编辑。
作者在他的readme也明确注明,这个扩展还处于Beta测试阶段,使用者需自己承担风险。
在Jerry看来,Visual Studio Code的这个扩展,如果用来做ABAP开发的话,功能还相对局限,但是如果对SAPGUI或者ABAP Development Tool产生了审美疲劳,想换一种工具来阅读ABAP源代码,那么它和下图的Sublime Text一样,都是不错的选择。
将来如果Jerry有空,会在这篇文章的下半部分简单介绍下这个扩展的TypeScript实现细节。
另外,今年Jerry也会争取能分享一些SAP云平台上ABAP编程环境的相关内容,敬请期待。
感谢阅读。
更多阅读
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
相关推荐
SAP ABAP 代码备份下载到本地程序代码
为了提高ABAP程序的执行效率,确保系统响应时间和资源利用率达到最佳状态,制定一套有效的ABAP代码性能指导原则显得尤为重要。 #### 二、代码性能优化关键点 ##### 1. 使用FORALL ENTRIES与表驱动 - **确保驱动表...
该程序使用了ABAP语言的基本语法和数据类型,实现了下载ABAP程序源代码的功能。该程序包括以下几个部分: 第一部分是声明数据库表,使用TABLES语句声明了rs38m和trdir两个数据库表。 第二部分是内表结构类型的定义...
ABAP 代码下载备份 1.5.1
标题中的“HANA STUDIO ABAP DEVELOPMENT TOOL”是指SAP HANA Studio中的一个特定模块,专门...通过安装和使用这个插件,开发者可以享受到便捷的代码编辑、调试、测试以及版本控制等开发功能,提高ABAP应用的开发效率。
在本文中,我们将详细介绍 ABAP OLE 颜色代码的使用方法和应用场景。 ABAP OLE 颜色代码的应用场景非常广泛,例如: * 设置控件的背景颜色和文字颜色 * 创建自定义的颜色主题 * 实现视觉效果,如阴影、渐变等 * ...
在实际应用中,SAP ABAP的开发者可能会使用SE80交易码来访问和编辑代码,或者通过ABAP Development Tools(ADT),这是一个基于Eclipse的现代开发环境,提供了更直观的界面和更强大的代码编辑、调试功能。...
>| 此代码可以实现ABAP代码的批量下载。 >| 将TXT中的代码复制到开发环境中,按照选择画面的逻辑可以直接将代码全部download成本地文件。 >| Author: Copyright (C) 1998 E.G.Mellodew
本资源“abap绝对Code合集”显然是一个包含大量SAP ABAP相关的T-CODE(Transaction Code)集合,这对于SAP系统的管理员、开发者和学习者来说是极其宝贵的资料。 T-CODEs是SAP中的事务代码,是用户与SAP系统交互的...
ABAP代码规范二例 内容节选: ******************************** 变量命名规则 Type Name:T_ Internal tables (global): gt_ Internal Tables (Local):it 工作区(structure): wa_ 全局变量: g_ 局部变量: l_ Ranges ...
它提供了丰富的功能,使得开发人员可以构建复杂的数据查询,而无需编写大量的 ABAP 代码。在本文中,我们将深入探讨 SAP ABAP Query 的高级特性。 首先,ABAP Query 允许用户添加自定义字段和计算字段。这些字段的...
abap代码规范,高效abap、modern abap
- **主要内容概述**:本手册旨在提供一套全面且实用的ABAP编程规范,以确保开发人员能够编写出高质量、可维护性强的ABAP代码。手册覆盖了从基本的编码规则到复杂的业务逻辑处理等方面的知识点。 #### 二、描述:...
6. **示例和教程**:aisdkforsapabap-main可能是包含SDK的示例代码或教程的目录,它可能提供了如何在实际项目中使用AI SDK for ABAP的步骤和示例。 通过这个项目,开发人员可以学习如何在SAP ABAP环境中利用AI技术...
本资源集合“ABAP源代码参考”是针对初学者的理想学习材料,包含了112份源代码实例,涵盖了多个关键概念和技术。 首先,让我们深入了解一下标签所涉及的关键知识点: 1. **SAP**:SAP是一个全球领先的业务软件解决...
本文将对批量下载BOM到EXCEL的ABAP代码进行详细的解释和分析,以便于读者更好地理解该代码的功能和实现机制。 标题分析 标题“批量下载BOM到EXCEL-ABAP代码”表明该代码的主要功能是使用ABAP语言将物料清单(BOM)...
SAP+ ABAP开发实用教程:顾问培训资料,含实例代码和教程,详细描述ABAP开发过程:数据表读法、程序规范、代码实例、调试方法以及ABAP开发环境和总体介绍、 ABAP语法示例 、ALV控件的使用、 实战Form设计 ,分基础、...
* 编辑器:提供了一个图形化的编辑界面,开发者可以使用它来编写 ABAP 代码。 * 调试器:提供了一个调试工具,开发者可以使用它来调试 ABAP 程序。 * 编译器:提供了一个编译工具,开发者可以使用它来编译 ABAP 代码...
ABAP调优是提高ABAP程序执行效率的关键技术,它涉及到代码优化的多个方面。以下是一些关于ABAP代码优化的重要知识点: 1. **优化Open SQL**:在编写Open SQL时,应尽量利用索引来提升查询性能。对于标准内表,可以...
ABAP 代码共享 这些程序为报表程序,希望对大家有用 部门领用单.txt