ABAP/4

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
ABAP/4
Класс языка объектно-ориентированный, императивный, структурный
Появился в 1983
Автор SAP AG
Система типов строгая, статическая, безопасная, именованная[en]
Основные реализации SAP R/2, SAP R/3
Испытал влияние Objective-C, COBOL
Сайт sdn.sap.com/irj/sdn/abap

ABAP/4 (англ. Advanced Business Application Programming, нем. Allgemeiner Berichts-Aufbereitungs-Prozessor[1]) — проприетарный внутренний язык программирования высокого уровня с коболоподобным синтаксисом, используемый в приложениях корпорации SAP.

Цифра «4», по всей видимости, символизирует отношение к четвёртому поколению языков программирования. Язык был создан в 1980 году для работы с системой SAP R/2, позднее унаследован в SAP R/3. Сохранён и в последующих версиях приложений SAP, наряду с Java стал языком создания приложений для SAP NetWeaver Application Server.

Реализует работу с внутренними структурами данных, интерфейсом пользователя SAP R/3, транзакциями, отчётами, интерфейсами загрузки и выгрузки данных. Используется исключительно для бизнес-приложений и промежуточного программного обеспечения компании SAP. Имеет возможности для объектно-ориентированного программирования. Имеет сборщик мусора. Исходный текст ABAP компилируется («генерируется») в ABAP-байт-код («report load»), запускаемый в специализированной среде исполнения[2].

Пример программы на ABAP/4 (печатает номер используемой версии клиентской программы SAPGUI):

  REPORT zguiver.                  "zguiver - имя программы (отчёта)
  
  DATA: BEGIN OF gs_sysnfo.        "объявление переменной-структуры для хранения данных, структуры можно объявлять через TYPES
          INCLUDE STRUCTURE rfcsi. "включаем в структуру компоненты другой структуры, объявленной в словаре данных
  DATA: END OF gs_sysnfo.
  
  CALL FUNCTION 'RFC_SYSTEM_INFO'  "вызов функционального модуля
    DESTINATION 'SAPGUI' 
    IMPORTING
      rfcsi_export = gs_sysnfo.    "получение результата работы модуля
  
  WRITE: / 'SAPGUI version:', gs_sysnfo-rfcsaprl.   "вывод версии клиента SAP R/3 на экран с новой строки

Примечания

  1. «ABAP History». SAP-technical.com. [1] Архивная копия от 15 ноября 2017 на Wayback Machine
  2. Maurice Sens. ABAP // Upgrading SAP. — Jones & Bartlett Learning, 2010-08-30. — С. 18. — 347 с. — ISBN 9781449631581. Архивная копия от 30 мая 2016 на Wayback Machine

Литература

  • Кале Вивек. Внедрение SAP R/3: Руководство для менеджеров и инженеров.

Ссылки