简述
ABAP 代表高级业务应用程序编程,是一种 4GL(第四代)语言。目前,它与 Java 一起被定位为 SAP 应用服务器编程的主要语言。
我们先从SAP系统的高层架构开始。典型 SAP 系统的 3 层客户端/服务器架构如下所示。
这Presentation layer包含任何可用于控制 SAP 系统的输入设备。这可以是网络浏览器、移动设备等。所有的中央处理都发生在Application server。应用程序服务器本身不仅仅是一个系统,而且可以是处理系统的多个实例。服务器与Database layer通常保存在单独的服务器上,主要是出于性能原因和安全性考虑。通信发生在系统的每一层之间,从表示层到数据库,然后备份链。
注意− ABAP 程序在应用程序服务器级别运行。软件的技术分发与其物理位置无关。这意味着基本上所有三个级别都可以安装在一台计算机上,或者每个级别都可以安装在不同的计算机或服务器上。
ABAP 程序驻留在 SAP 数据库内。它们在运行时系统的控制下执行,该运行时系统是 SAP 内核的一部分。运行时系统处理所有ABAP语句,控制流程逻辑并响应用户事件。
因此,与 C++ 和 Java 不同,ABAP 程序不存储在单独的外部文件中。在数据库内部,ABAP 代码以两种形式存在 -
运行时系统可以被认为是一个虚拟机,类似于Java虚拟机。ABAP 运行时系统的一个关键组件是数据库接口,它将独立于数据库的语句 (Open SQL) 转换为底层数据库可以理解的语句 (Native SQL)。SAP 可以与多种数据库配合使用,并且同一个 ABAP 程序可以在所有这些数据库上运行。