2. Какая внешняя программа используется для инициации событий в системе R/3?
a. sapevt
b. sapxpg
c. sapstart
d. spmon
3. Что означает состояние фонового задания
a. Планирование задания завершено и сохранено
b. Задание выполнено, и можно распечатать журнал
c. Задание может быть запущено и ожидает системных ресурсов
ГЛАВА 10
СЛУЖБА ОБНОВЛЕНИЯ
Модуль обновления является в системе R/3 центральным компонентом. Однако он не является независимым компонентом. Обновление работает в тесном взаимодействии с другими службами R/3, такими как служба диалога и фонового выполнения, и особенно обработки очередей.
Бизнес-процесс в системе SAP отображается в логическую единицу работы SAP (LUW, см. главу 1), которая может состоять из нескольких изменений экрана. Эта диалоговая или фоновая обработка приводит к изменению данных, которое можно записать в базу данных только полностью (т. е. со всеми изменениями из LUW) или нельзя записать вообще. Система обновления SAP гарантирует, что изменения не записываются в базу данных, пока не будет завершен SAP LUW, и что никакие данные не изменяются, если транзакция SAP прерывается. В большинстве случаев обновление выполняется асинхронно в конце LUW (см. раздел 1.4). Это приводит к значительному повышению производительности для диалоговых пользователей, которые могут продолжать свою работу в следующей LUW, пока система обновления все еще записывает изменения в базу данных.
Пока обновление не выполнено, измененные объекты остаются заблокированными; другие пользователи не могут получить доступ к этим объектам, или, по крайней мере, они не могут их изменять в зависимости от типа используемой блокировки. Поскольку проблемы обновления могут разрушить всю систему, их разрешение всегда имеет наивысший приоритет.
В среде R/3 термин
Например, если пользователь вводит данные, то они сначала передаются процессу диалога. Самим процессом диалога изменения в БД не вносятся; для этого используются специальные процессы обновления, записывающие изменения асинхронно (см. рис. 10.1).
Рис. 10.1.
Когда SAP LUW обрабатывается в диалоге, сделанные изменения сохраняются как модули (определенные как функциональные модули и соответствующие данные) в запросе обновления. В заключение диалоговой части транзакции SAP запрос обновления закрывается, записывается заголовок обновления (см. рис. 10.2), и вызывается сама задача обновления, которая выполняет изменения в базе данных, как определено в запросе обновления. Заблокированные записи от диалоговой или фоновой обработки наследуются задачей обновления, которая разблокирует объекты, когда завершается обновление.
Пользователи могут заметить, что асинхронные изменения по сравнению с синхронными дают более высокую производительность системы. Пользователь может быстро модифицировать, ввести или удалить данные — ему не нужно ждать, пока будут выполнены эти запросы, а изменения асинхронно поступят в БД. Подобные запросы обрабатываются в фоновом режиме специальными процессами. Асинхронное обновление особенно выгодно при внесении в данные обширных изменений, например при крупной модификации корпоративных данных или создании заказов. Оно улучшает масштабируемость системы R/3. Обычно пользователи никак не могут повлиять на то, как именно вносятся изменения в БД — асинхронно или синхронно. Это зависит от применяемой программы АВАР.
Рис. 10.2.
Данные, которые будут изменены SAP LUV, сохраняются в
Информация о запросах обновления сохраняется в таблицах обновления:
► VBHDR — Заголовки обновления
► VBMOD — Модули обновления
► VBDATA — Данные, перенесенные в модули
► VBERROR — Информация об ошибках, которая порождается, если обновление прерывается.
Так как эти таблицы постоянно изменяются, то для них не нужно генерировать какие-либо статистики базы данных (см. главу 15). Программы обработки созданы для работы с относительно небольшими таблицами обновления. Это другая причина, почему валено контролировать задачу обновления и очищать отмененные обновления.
Программы ABAP поддерживают три типа обновлений:
► Локальные обновления
► Асинхронные обновления
► Синхронные обновления
Программа ABAP определяет используемый режим, который не могут изменить ни администратор, ни пользователь.
Во время