ABAP/4. Оглавление   ООП   ОСП   СУБД   ОКМ   ДМ   экономическая информатика   4GL   ТПОИ

Компьютерный язык ABAP/4

Программирование на языке ABAP/4 системы SAP

  1. Обзор системы SAP R/3
  2. Архитектура системы SAP R/3
  3. Навигация в системе SAP R/3
  4. Системный ландшафт, обзор ABAP инструментальных средств
  5. Cловарь данных системы R/3
  6. Таблицы словаря данных
  7. Ракурсы данных
  8. Средства поиска
  9. Обзор языка ABAP/4 системы SAP R/3
  10. Основные возможности языка ABAP/4
  11. Структура и виды программ, среда разработки
  12. Концепция синтаксиса языка ABAP/4
  13. Определение данных в языке ABAP/4
  14. Элементарные типы данных
  15. Сложные типы
  16. Операторы языка ABAP/4
  17. РАБОТА С ВНУТРЕННИМИ ТАБЛИЦАМИ
  18. Создание подпрограмм и функциональных модулей
  19. ПОДПРОГРАММЫ И ФУНКЦИИ
  20. Выборка данных в системе R/3 с использованием Open SQL, Native SQL
  21. ЧТЕНИЕ ТАБЛИЦ БАЗЫ ДАННЫХ
  22. Техники программирования отчетов на языке ABAP/4 системы R/3
  23. Создание интерактивных отчетов
  24. ПОДДЕРЖКА НЕСКОЛЬКИХ ЯЗЫКОВ В ABAP
  25. ЗАГОЛОВКИ И НИЖНИЕ КОЛОНТИТУЛЫ СТРАНИЦ
  26. ФРЕЙМЫ
  27. СОЗДАНИЕ ИНТЕРАКТИВНЫХ СПИСКОВ
  28. ДВОЙНОЙ ЩЕЛЧОК МЫШЬЮ: СОБЫТИЕ AT LINE-SELECTION
  29. ПОЛОЖЕНИЕ КУРСОРА И СКРЫТАЯ ИНФОРМАЦИЯ
  30. Создание отчетов с помощью элементов управления ALV
  31. SAP Control Framework
  32. ALV Grid Control
  33. Создание отчетов с использованием генератора отчетов SAP SmartForms
  34. Создание диалоговых программ в системе SAP R/3
  35. Экраны SAP R/3
  36. ЭКРАНЫ ВЫБОРА
  37. Логика ДинПро (Dynamic Programs)
  38. Технологии расширений функциональности системы SAP R/3
  39. SAP-расширения (User Exits, Customer Exits)
  40. Загрузка данных в систему R/3
  41. Работа с файлами
  42. РАБОТА С ФАЙЛАМИ, НАХОДЯЩИМИСЯ НА СЕРВЕРЕ ПРИЛОЖЕНИЙ
  43. ИСПОЛЬЗОВАНИЕ ФАЙЛОВОЙ СИСТЕМЫ РАБОЧЕЙ СТАНЦИИ
  44. Технология пакетного ввода (Batch Input, Call Transaction)
  45. Технология BAPI
  46. Синтаксис и ключевые слова Abap/4
  47. Полезные ссылки по SAP ERP и ABAP/4

Обзор системы SAP R/3

Архитектура системы SAP R/3

Система R/3 представляет собой набор приложений, написанных исключительно на языке ABAP/4 и поэтому не зависящих от конкретной платформы. Язык ABAP/4 занимает центральное место в программном обеспечении связного уровня, что позволяет сделать программу независимой от аппаратуры, операционной системы и СУБД.
Система R/3, разработанная на базе трехуровневой архитектуры, предназначена для реализации распределенных вычислений в среде клиент/сервер. R/3 содержит 3 логических уровня:

Каждая из этих служб может быть распределена и исполняться на различных аппаратных устройствах.
Интерфейс презентации SAPGUI (GUI - графический интерфейс пользователя) осуществляет выполнение специфичных для платформы функций ввода и вывода в системе R/3. SAPGUI главным образом ориентирован на Windows Style Guide и доступен для нескольких платформ с предоставлением аналогичных функций для них.
В настоящее время администрирование больших объемов данных обычно осуществляется посредством систем управления реляционными базами данных (СУРБД). Эти системы сохраняют данные и связь между ними в двумерных таблицах, которые известны своей логической простотой. Определения данных, таблиц и отношений между таблицами хранятся в словаре данных реляционной СУРБД.
Сервер приложений обеспечивает поддержку следующих типов рабочих процессов: (диалоговая обработка (D), обновление (V: от немецкого в??Verbuchungв??), управление блокировками (E), фоновая обработка (B), спул (S)) исполняющаяся система R/3 предоставляет два дополнительных сервиса для внутренней и внешней связи (ниже приведены ограничения по количеству рабочих процессов).
Система обеспечивает разные варианты масштабирования R/3 - от самых малых систем (одноуровневой для небольшого числа пользователей) до крупномасштабных вычислительных сред (трехуровневых систем для многих тысяч пользователей).
Инстанция это административная единица, объединяющая компоненты системы Базис R/3 предоставляющая один или несколько сервисов. Сервисы, предоставляемые инстанцией, запускаются и останавливаются одновременно. Для установки параметров всех компонентов инстанции необходимо использовать общий профиль инстанции.
Существует 3 вида конфигурации базисной системы R/3:

Базисная система (R/3 Basis) системы состоит из следующих компонентов:

Функции базисной системы SAP R/3:

Архитектура базисной SAP-системы наилучшим образом подходит для конфигурации по принципу клиент-сервер.

Навигация в системе SAP R/3

Система R/3 является системой, поддерживающей концепцию мандантов. Концепция мандантов позволяет нескольким разным, не зависящим друг от друга предприятиям выполнять совместные операции в одной системе. При каждом пользовательском сеансе возможен доступ только к данным манданта, выбранного при регистрации в системе.
Мандант - это организационно независимая часть в системе R/3. Каждый мандант имеет собственную среду данных, т.е. собственные основные и переменные данные, присвоенные основные записи пользователей, планы счетов и специфические параметры настройки.
Для обеспечения возможности регистрации пользователя в системе, в ней должна быть создана основная запись пользователя, связанная с соответствующим мандантом.
SAP-системы доступны на целом ряде языков. Поле ввода Язык используется при начале каждого сеанса работы для выбора языка регистрации.
SAP Easy Access - это стандартный первый экран, появляющийся после выполнения регистрации в системе.
Навигация по системе может осуществляться с помощью компактной древовидной структуры, которую можно настроить в соответствии с индивидуальными пожеланиями пользователя.
Роль описывает набор логически взаимосвязанных транзакций. Эти транзакции представляют собой набор типичных функций, используемых тем или иным пользователем с его рабочей станции.
Группы операций (роли пользователей) должны быть настроены через генератор профилей для того, чтобы пользователи системы SAP могли работать с меню, соответствующими роду их деятельности. Полномочия на операции из меню также присваиваются пользователям через группы операций. С версии 4.6 стандартная система содержит предварительно определенные группы операций (роли пользователей) для каждой прикладной сферы.
Для получения справки по полям, меню, функциям и сообщениям используется F1.
Для получения информации по допустимым значениям ввода используется справка F4. К справке F4 можно также обратиться, нажав кнопку у правой границы выбранного поля.
Если в определенном поле ввода стоит маленькая галочка, то переход к следующему экрану приложения возможен только после ввода в это поле разрешенного значения.

Системный ландшафт, обзор ABAP инструментальных средств

Данные в системе R/3 подразделяются на:

В дополнение к различным типам данных в системе R/3 существуют также разные виды изменений и адаптаций.
Так как система R/3 представляет собой стандартное программное обеспечение, ее необходимо адаптировать к индивидуальным требованиям каждой компании, в которой используется эта система. Такая процедура адаптации называется пользовательской настройкой, которая включает в себя как зависимые, так и независимые от манданта данные, представленные на слайде. После смены версии может также понадобиться выполнить небольшой объем работ, связанный с пользовательской настройкой.
Разработка и тестирование данных пользовательской настройки осуществляется в манданте, отличном от того, который будет использован в продуктивной эксплуатации. Это означает, что при внедрении R/3 потребуется использовать несколько мандантов. Данные пользовательской настройки обрабатываются и тестируются в одном манданте. При больших инсталляциях может оказаться целесообразным объединение и тестирование подпроектов настройки в дополнительном манданте. Продуктивная эксплуатация осуществляется с использованием своего собственного манданта.
В отличие от пользовательской настройки репозитарий не нуждается в каких-либо изменениях или расширениях при внедрении системы R/3.
Клиенты могут добавлять в репозитарий свои собственные разработки.

Модификации клиента или расширения (объекты клиента, включенные в стандартную поставку SAP-системы) вносят изменения в репозитарий. В стандартной поставке системы SAP предоставляет интерфейсы для этих расширений.
Модификации изменяют такие объекты SAP, как отчеты и определители таблиц. Репозитарий поставляемый SAP не только расширен, но и изменен. Именно поэтому модификации должны быть откорректированы в соответствии с новым репозитарием, инсталлированным в ходе последней смены версии R/3. Процедура корректировки может занять некоторое время.
Для обеспечения согласованности и непротиворечивости системы SAP рекомендует установить системную среду, состоящую из трех систем. Эти три системы включают в себя "продуктивные" манданты (для разработки, настройки и производственной эксплуатации) и любые другие необходимые манданты (для обучения, тестовый мандант и др.
Системы внутри системной среды должны иметь уникальные трехзначные имена.
Объекты репозитария создаются и редактируются посредством ABAP-инструментальных средств.
При редактировании объектов репозитария можно непосредственно вызвать ABAP-инструментальные средства, а затем выбрать соответствующий объект репозитария, либо при просмотре объектов репозитария напрямую перейти к инструментальным средствам.
Браузер репозитария предоставляет доступ к объектам репозитария.
ABAP-инструментальные средства содержат все инструменты для поддержки полного цикла разработки ПО.
С помощью ABAP-инструментальных средств разработчики могут без каких-либо проблем создавать приложения клиент/сервер при этом нет необходимости рассматривать вопросы связи и дистрибуции.
ABAP-словарь предназначен для создания и управления определениями данных. Он позволяет описать все данные, используемые в системе, взаимоотношения между ними, а также обеспечивает централизованное и упорядоченное хранение этих данных. Механизм активации гарантирует, что любые изменения выполненные в ABAP-словаре, будут немедленно задействованы во всех релевантных системных компонентах.
Наиболее важными инструментами разработок являются:

Cловарь данных системы R/3

ABAP-словарь предназначен для создания и управления определениями данных. Он позволяет описать все данные, используемые в системе, взаимоотношения между ними, а также обеспечивает централизованное и упорядоченное хранение этих данных. Механизм активации гарантирует, что любые изменения выполненные в ABAP-словаре, будут немедленно задействованы во всех релевантных системных компонентах.
ABAP-словарь является интегрированным и активным словарем, т.е. он полностью интегрирован в среду разработок SAP. Любое определение в словаре создается только один раз и затем автоматически становится доступным в любом месте системы. Любая информация, созданная или измененная в активном ABAP-словаре, доступна автоматически, что обеспечивает актуализацию динамических объектов, непротиворечивость и защиту данных.
Интеграция ABAP-словаря с процессом выполнения программы основывается на интерпретирующей среде выполнения R/3. ABAP-процессор не использует исходные ABAP-программы. Он интерпретирует динамические объекты, созданные из текстов программ, перед тем, как программа выполняется впервые. Если процедура сравнения метки времени определила разницу между программой и ABAP-словарем, осуществляется автоматическая регенерация динамического объекта перед его выполнением.
Вся информация, критичная для производительности системы, хранится в динамических объектах (программах, масках и т.п.). Система гарантирует, что в момент выполнения эта информация всегда будет актуальной.
Наиболее важными объектами ABAP Словаря являются:

Таблицы словаря данных

Таблица представляет собой двумерную матрицу. Она имеет имя и атрибуты, такие как тип таблицы. Каждая таблица-образец имеет первичный ключ, состоящий из комбинации столбцов, которые однозначно идентифицируют запись таблицы. Это означает, что в таблице не может находится две записи с одинаковым первичным ключем.
Поле имеет имя и атрибуты. Например, оно может быть полем первичного ключа. Поле зависит от таблицы и поэтому не является самостоятельным объектом и его ведение осуществляется только внутри таблицы. Поле таблицы определяется доменами и элементами данных.
Домен используется для определения технических атрибутов поля таблицы и содержит технические свойства поля таблицы, такие, как длина поля, тип поля, атрибуты вывода и все ограничения на основании значений по умолчанию.
Элемент данных представляет собой семантическое определение поля таблицы и может содержать краткое описание поля, например, при нажатии функциональной клавиши F1. Начиная с версии 4.6 технические атрибуты поля могут быть определены в элементе данных и нет неободимости использовать домен.
Ведение таблиц, элементов данных и доменов осуществляется централизованно в ABAP-словаре. При активации поля оно сохраняется в базе данных под тем же самым именем.
Двухуровневая концепция доменов позволяет определять и вести технические атрибуты полей на уровне домена. Домен может описывать технические атрибуты любого количества полей, вследствие чего при изменении технических атрибутов полей необходимо выполнить изменения только в домене, а не в отдельных полях. Такой механизм гарантирует также то, что если домены идентичны, значения полей можно сравнивать без каких-либо преобразований.
Существует несколько видов таблиц в ABAP словаре:

На рисунке 1отображены основные характеристики различных видов таблиц.

Рисунок SEQ Рисунок \* ARABIC 1. Основные характеристики различных видов таблиц
Прозрачные таблицы в основном используются для хранения данных прикладных приложений, а также основных данных бизнес-объектов.
Таблицы пула состоят из большого количества небольших таблиц и служат для хранения истории и статистических данных.
Кластерные таблицы служат для хранения данных с пересекающимися по данным первичными ключами. Это позволяет увеличить скорость считывания данных.
В большинстве случаев при разработке используются прозрачные таблицы.
При создании прозрачных таблиц необходимо указывать следующие характеристики:

При создании любого объекта в словаре данных для него создается комбинированная структура версия, оптимизированная для доступа ABAP процессора.
Для добавления полей в таблицы SAP не модифицируя их, можно использовать APPEND структуры. Основные характеристики APPEND структур то, что для одной и той же таблицы можно использовать более чем одну APPEND структуру.

Ракурсы данных

Несмотря на тесную логическую связь между моделью данных SAP и ABAP-словарем, может понадобиться распределение типов сущностей по нескольким таблицам ABAP-словаря или объединение нескольких типов сущностей в одной таблице. Для этого в ABAP-словаре определены ракурсы. Эти ракурсы организуют связь между типами сущностей в модели данных и в таблицах АВАР-словаря.
Ракурс является логическим отображением одной или нескольких таблиц. Данные для ракурсов не хранятся физически, они извлекаются из одной или нескольких таблиц, при осуществлении доступа к ракурсу. Если в таблице содержится слишком большое количество полей, но необходимо обращаться только к нескольким полям, можно определить ракурс в котором будут отображаться только те поля таблицы, в которых заинтересован пользователь. Ракурсы позволяют организовать быстрый доступ к определенным данным.
Ракурсы определяются в ABAP-словаре. Можно использовать следующие операторы сравнения: оператор соединения (JOIN), оператор проекции (PROJECTION) и оператор ограничения (SELECTION). Оператор JOIN определяет связь между базисными таблицами, используемыми в ракурсе. Оператор PROJECTION определяет, какие столбцы базисных таблиц необходимо отобразить в ракурсе. Оператор SELECTION определяет, какие записи таблиц необходимо отобразить в ракурсе.
ABAP-словарь содержит несколько видов ракурсов, отличающихся по своим задачам и объему выводимых данных. Начиная с версии 4.0, можно также буферизировать данные ракурсов на уровне SAP-приложения.
Основные виды ракурсов ABAP словаре следующие:

Средства поиска

Cправка по допустимым значениям ввода (F4) является стандартной функцией в системе R/3. Она дает возможность пользователю просмотреть список допустимых значений для поля экрана. Значение можно скопировать непосредственно в поле ввода, выбрав его из списка.
Справа от поля, которое имеют справку по вводу, отображается поле со списком. Это поле со списком появляется при установке курсора в соответствующем поле экрана. Справку можно вызвать выполнив щелчок на этом поле, либо при помощи функциональной клавиши F4.

Если количество допустимых значений определенного поля очень велико, пользователь может сократить количество предоставляемых значений посредством задания дополнительных ограничений. Справка по допустимым значениям ввода предоставляет на экране дополнительную информацию для полей, где введены значения, которые не предлагаются в списке допустимых значений.
Справку по допустимым значениям ввода можно программировать в ABAP или определить в АВАР-словаре. Начиная с версии 4.0, справка по допустимым значениям ввода, определенная в АВАР-словаре, рассматривается как средство поиска. Средство поиска определяется в ABAP-словаре и присваивается различным типам полей таблицы. Поля экрана с такими типами определения полей таблицы автоматически предоставляют справку F4.
Начиная с версии 4.6, пользователи могут добавлять к средству поиска SAP свои собственные пути поиска при этом нет необходимости модифицировать систему.
ABAP/4. Оглавление   ООП   ОСП   СУБД   ОКМ   ДМ   экономическая информатика   4GL   ТПОИ

Знаете ли Вы, что форма представления систем - это класс символьных представлений знаний о системе, выделяемый по признаку применимости для решения определённого круга исследовательских или прикладных задач. Например, форма кибернетической системы ориентирована на исследование информационных процессов, посредующих управление данной системой.

Bourabai Research Institution home page

Боровское исследовательское учреждение - Bourabai Research Bourabai Research Institution