什么是 SAP ABAP?全称及类型

⚡ 智能摘要

SAP ABAP,全称为高级业务应用程序编程(Advanced Business Application Programming),是一种高级语言。 SAP 其创建目的是为了方便大型组织扩展和定制 SAP 在不改变标准产品的情况下实现ERP。

  • 📘 核心定义: ABAP 可自定义财务、物料、资产管理以及其他所有领域的工作流程。 SAP 模块。
  • 🕰️ 产地: 第四代编程语言,诞生于 20 世纪 80 年代,并于 1999 年通过 ABAP 对象进行了扩展。
  • 🗄️ 存储模型: ABAP 程序存在于……内部 SAP 数据库,绝不会作为外部文件。
  • 🧱 程序类型: 报表和模块池是可执行的;包含文件、函数组和类是可重用的库。
  • 🧰 工具集: ABAP 工作台包含编辑器、字典和屏幕。 Painter函数构建器和调试器。
  • 与 Java: ABAP 堆栈运行核心 ERP 模块,而 Java stack 适用于门户和集成场景。

什么是 SAP ABAP

什么是ABAP?

ABAP 是一种由...创建的高级编程语言 SAP 帮助大公司定制 SAP ERP。ABAP 可以帮助定制财务会计、物料管理、资产管理以及所有其他模块的工作流程 SAP。 该 SAP NetWeaver平台同时支持ABAP和 JavaABAP 仍然是核心语言。 SAP S/4HANA。ABAP 的全称是 SAP is 高级商业应用编程.

SAP ABAP?

以下是使用的原因 SAP ABAP:

  • SAP ABAP 被开发人员用来开发 SAP R/3平台。
  • 它是一种简单的语言,编程时很容易学习。
  • 它允许您从过程式编程和面向对象编程中进行选择。
  • 这也有帮助 SAP 顾客改善他们的 SAP基于应用程序。
  • 它允许您创建自定义报告和界面。
  • ABAP语言对程序员来说相当容易上手。然而,它并不适合非程序员使用。

历史回顾 SAP ABAP

以下是ABAP发展史上的一些重要里程碑:

  • ABAP 是一种 20 世纪 80 年代开发的第四代编程语言 (4GL)。
  • ABAP 成为了一种用于开发的语言ping 客户端-服务器程序,最早于 1992 年发布。
  • 在1999年中, SAP 引入了一个名为 ABAP 对象的面向对象扩展。
  • 2006 年,发布了 7.0 版本,该版本提供了交换机框架功能。
  • 2012年,发布了带有表格表达式功能的版本。
  • 2015年,7.5版本开始支持Open SQL表达式。
  • 2017 年的 7.52 版本引入了内部表的虚拟排序功能。
  • 自 2019 年起,ABAP RESTful 应用程序编程模型成为构建应用程序的标准方法。 SAP Fiori 应用。

ABAP 运行时环境

运行时环境描述了 ABAP 程序实际的执行方式。

所有 ABAP 程序都存储在 SAP 数据库。与此不同的是,它们绝不会存储在外部文件中。 C++ 和 Java 程式。

在数据库中,所有用 ABAP 编写的代码都以两种不同的形式存在:

  • 源代码借助 ABAP Workbench 工具,可以查看和编辑这些内容。
  • 生成的代码,一种与此非常相似的二进制表示 Java 字节码。

ABAP 程序允许您控制运行时系统,它是 SAP 内核。运行时系统还处理 ABAP 语句。它控制屏幕逻辑并响应用户事件,例如点击或鼠标悬停。

ABAP 程序的类型

An SAP ABAP 程序要么是可执行单元,要么是库(可重用代码)。但是,库本身不能单独执行。

ABAP可执行程序分为两种类型:

  • 报告
  • 模块池

不可执行程序类型包括:

  • 包括模块
  • 子程序池
  • 功能组
  • 对象类
  • 接口和类型池

SAP ABAP 工作台

以上所有程序类型均在 ABAP 工作台中编写和测试。

ABAP 工作台是 ABAP 系统的重要组成部分,可通过以下方式访问 SAP GUI。它包含用于编辑程序的各种工具。

SAP ABAP 工作台

ABAP 工作台

它被广泛使用 SAP 用于开发标准和自定义应用程序。ABAP 工作台还用于创建字典对象。

如上图所示 SAP ABAP Workbench 包含以下组件:

  • ABAP 编辑器: 它主要用于维护程序。
  • ABAP字典: 它用于维护字典对象。
  • 存储库浏览器: 它用于显示软件包中组件的层次结构。
  • 目录 Painter: 它用于开发图形用户界面,包括菜单栏和工具栏。
  • 屏风 Painter: 它用于维护在线程序的屏幕组件。
  • 存储库信息系统: 它存储有关开发和运行时对象的信息,例如数据模型、表结构、程序和函数。
  • 函数构建器: 该组件可帮助您创建和维护功能组和功能模块。
  • 测试和分析工具: 其中包括语法检查和调试器。
  • 数据建模器: 该工具支持图形建模。
  • 工作台整理器: 它可以帮助您维护由开发人员管理的多个用于分发的开发项目。

SAP Java 与 SAP ABAP

现代 SAP Landscape 可以运行两个堆栈。

SAP JAVA SAP ABAP
Java 在IT界得到广泛应用,并在许多开源项目中发挥着重要作用。 ABAP 是 SAP的默认 编程语言 适用于按需和内部部署的业务应用程序。
Java 主要用于运行 Java的应用程序或服务。 ABAP 用于运行基于 ABAP 的应用程序或服务。
SAP 使用 Java 有关集成主题、门户和集成解决方案、协作场景和产品。 ABAP 为大型企业的 IT 环境提供高度可扩展且可靠的生命周期管理。
Java 堆栈用于 SAP 门户网站,可以托管用 JSP/EJB 编写的互联网或基于 Web 的应用程序。 Java 堆栈用途 Java 用于运行应用程序的多线程。 Java 堆栈包含 IR、SLD、ID、RWB 和 AE。 ABAP 堆栈可帮助您运行 ERP 应用程序,主要包括 MM、SD、FICO 等模块。ABAP 堆栈包括 IE 和 BPE。

常见问题

有编程经验的开发人员通常需要两到三个月才能高效工作。学习周围环境 SAP 业务模块的编写时间比 ABAP 语法本身还要长。

是的。S/4HANA 仍然是用 ABAP 编写的。ABAP 云模型将开发限制在已发布的 API 范围内,因此扩展程序可以安全地升级,但 ABAP 语言本身仍然是核心。

SAP GUI 可打开经典的 Workbench 事务,例如 SE38 和 SE80。ABAP 开发工具是…… Eclipse对于 CDS 视图等较新的对象,需要基于 - 的替代方案。

是的。AI 助手可以根据描述生成报告、单元测试和 CDS 视图。生成的代码必须对照 ABAP Cloud 已发布的 API 列表进行检查,否则升级将会失败。

短期内不太可能。人工智能可以加快日常编码速度,但设计尊重人工智能的扩展程序却并非易事。 SAP 业务逻辑和升级规则仍然需要经验丰富的开发人员。

总结一下这篇文章: