1.2. ABAP структуры (типы данных, таблица, структура, домен, экран) (продолжение)

1.2.3. Структура
По своей сути, структура это слепок одной записи таблицы. То есть, таблица физически хранит какие-то дан-ные в базе данных и таких данных может быть много. Структура хранится только в памяти программы и все-гда содержит только одну запись данных. Структуры удобны, когда нужно в разных местах программы заполнить ее данными, а потом целиком сохранить в таблице. Либо структуры делают для экранов программ. С точки зрения программиста так проще обрабатывать данные.

1.2.4. Домен. Элемент данных
Домен это набор возможных значений. Например, в такую-то переменную можно вводить только цифры от 1 до 9. Это указывается в домене. Или можно вводить только определенные символы или значения из определенной таблицы. Это позволяет уйти от многих ошибок пользовательского ввода. Система сама проверит значение и выдаст ошибку. Использование домена позволяет унифицировать систему, так как создается один домен для каких-то общих понятий и используется во всей системе. Появилось новое значение с развитием системы – нужно изменить только один домен, а не всю систему.
Элемент данных это своего рода пользовательский тип данных. Например, CHAR100 – элемент данных типа символ с размерностью 100 символов. Либо элемент данных GVALA «Идентификационный вид оплаты», который состоит из домена LGART «Вид оплаты труда». Он используется в таблицах как унифицированный способ указания вида оплаты. Стоит указать этот элемент данных в таблице, как система будет с помощью домена проверять введенное значение на корректность с таблицей видов оплаты T512W. Для элемента данных характерны такие свойства, как «ИдПараметра» (закладка «ДополнитСвойства», позволяет устанавливать значение по умолчанию из параметров пользователя, транзакция SU3), метка поля (закладка «Метка поля», определяет название элемента, которое будет видно в столбцах отчетов, программах).
1.2.5. Экран
Экран, это то, что вы видите на экране монитора, когда запускаете отчет, транзакцию, программу. Именно то, куда вводятся различные буквы и цифры, нажимается кнопка «Сохранить» или «Выполнить». Это и есть экран с точки зрения системы. У отчетов первый экран, который появляется после запуска, называется «Селекционный экран», от слова «select» – выбирать. Мы выбираем значения (задаем параметры отчета) и нажимаем «Выполнить». Каждый экран имеет свой четырехзначный номер. Этот номер уникален в пределах одной программы. Получается такая связь, что экран отображает и позволяет вводить информацию, а программа управляет экраном: сохраняет, обрабатывает, записывает в экран информацию. Для селекционных экранов САП зарезервировал номер 1000. Для HR основные экраны в транзакциях PA30/PA20 это:
• 2000 – экран инфо-типа в режиме просмотра/редактирования/удаления.
• 3000 – экран обзора инфо-типов (при просмотре списком инфо-типов одного типа, например, все ИТ0014).
• 5000 – экран быстрого ввода инфо-типа для транзакции PA70.
Основное, что нужно знать консультантам об экранах это способ их обработки – событийную модель. У каж-дого экрана есть основные события:
• Вывод (PBO – Process Before Output – обработать перед выводом). В этот момент времени программа подготавливает информацию, записывает ее в переменные, которые отражаются на экране.
• Ввод (PAI – Process After Input – обработать после ввода). Событие вызывается, когда вы нажимаете на любую управляющую кнопку на экране (Enter, Esc, любую иконку, кнопку). В этот момент программа проверяет все поля экрана и в зависимости от нажатой кнопки выполняет отдельные действия.
• Запрос значений (POV – Process On Value – обработать при запросе значения). Событие вызывается, когда вы нажимаете кнопку выбора значения или F4 на поле. Программа формирует справку по воз-можным значениям или вызывается средство поиска значений.
• Справка (POH – Process On Help – обработать при запросе справки). Вызывается при нажатии на кнопку F1 на поле.
Следовательно, когда вы открываете какую-то транзакцию, инфо-тип или что-то еще и у вас ошибка на экране, то ее корни надо искать в модулях PBO. Если вы нажали сохранение или Enter и появилась ошибка, то надо искать в PAI.

Добавить комментарий