[ERP-системы] Зачем в ABAP нужен оператор SET UPDATE TASK LOCAL
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
И что делать, если после вызова стандартного BAPI оператор COMMIT WORK AND WAIT не дожидается выполнения всех V1-модулей обновления.
Проблема синхронизации модулей обновления
В системе SAP R/3 для транзакционного сохранения дополнительных данных, связанных с основными, используются модули обновления. Более подробно об этом можно почитать, например, здесь.
Для консистентности данных после сохранения необходимо дождаться выполнения модулей типа V1. В общем случае это достигается выполнением команды COMMIT WORK AND WAIT.
В тексте некоторых стандартных функциональных модулей BAPI вызывается COMMIT WORK. После выполнения такого ФМ-а вы не сможете убедиться в завершенности процесса сохранения никакими простыми командами. Некоторые программисты для решения этой проблемы пишут какие-то сложные запросы к таблице VB или ждут ничем не обоснованные n секунд. Все намного проще.
SET UPDATE TASK LOCAL приходит на помощь
Если кратко — он запускает локальный режим выполнения для V1-модулей обновления. Режим активируется для V1-модулей обновления, зарегистрированных с момента вызова оператора и до момента завершения текущего DB LUW-а. При этом V1-модули:
- сохраняются в ABAP-memory, а не в таблицу обновлений VB;
- выполняются в текущем процессе, а не в параллельном;
- синхронизируются оператором COMMIT WORK.
То есть при вызове COMMIT WORK программа будет ждать, пока выполнятся модули обновления типа V1, зарегистрированные локально. Разница показана на рисунке:
Итого SET UPDATE TASK LOCAL пригодится, если вы не можете управлять оператором COMMIT WORK и хотите дождаться выполнения всех V1-модулей для какого-то процесса.
===========
Источник:
habr.com
===========
Похожие новости:
- [IT-инфраструктура, API, ERP-системы, Софт] Интеграция в системах контроля доступа
- [ERP-системы, Финансы в IT] Автоматизация бюджетирования: что это, с какими проблемами связано и какие программные продукты использует?
- [ERP-системы, Управление проектами] Управление требованиями и сроками в методологии Oracle AIM BF
- [ERP-системы, Машинное обучение, Финансы в IT] Новое в SAP PaPM: интерфейс, построение прогнозов с помощью ML и scale out
- [CRM-системы, ERP-системы, Open source, PHP, Развитие стартапа] Totum — open source конструктор CRM/ERP и произвольных учетных систем (PHP + PgSQL)
- [ERP-системы, Дизайн, Дизайн мобильных приложений, Прототипирование] Как мы решаем проблему отсутствия UI\UX дизайна в 1С с помощью Java Script и React.js
- [Анализ и проектирование систем, Инженерные системы, Проектирование и рефакторинг] От забоя до перегрузочного пункта. Пример интеграции GEOVIA Surpac и автоматизированной системы диспетчеризации ГТК
- [CRM-системы, ERP-системы, Облачные сервисы, Повышение конверсии, Управление продажами] Как без программиста настроить автоматическое создание заявок в CRM из входящих писем?
- [CRM-системы, ERP-системы] Замена CRM системы на CRM систему
- [PostgreSQL, Анализ и проектирование систем, Алгоритмы, ERP-системы] Как мы в СБИС автоматический расчет себестоимости делали
Теги для поиска: #_erpsistemy (ERP-системы), #_abap, #_abap_sap, #_erpsistemy (
ERP-системы
)
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 23-Ноя 01:25
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
И что делать, если после вызова стандартного BAPI оператор COMMIT WORK AND WAIT не дожидается выполнения всех V1-модулей обновления. Проблема синхронизации модулей обновления В системе SAP R/3 для транзакционного сохранения дополнительных данных, связанных с основными, используются модули обновления. Более подробно об этом можно почитать, например, здесь. Для консистентности данных после сохранения необходимо дождаться выполнения модулей типа V1. В общем случае это достигается выполнением команды COMMIT WORK AND WAIT. В тексте некоторых стандартных функциональных модулей BAPI вызывается COMMIT WORK. После выполнения такого ФМ-а вы не сможете убедиться в завершенности процесса сохранения никакими простыми командами. Некоторые программисты для решения этой проблемы пишут какие-то сложные запросы к таблице VB или ждут ничем не обоснованные n секунд. Все намного проще. SET UPDATE TASK LOCAL приходит на помощь Если кратко — он запускает локальный режим выполнения для V1-модулей обновления. Режим активируется для V1-модулей обновления, зарегистрированных с момента вызова оператора и до момента завершения текущего DB LUW-а. При этом V1-модули:
То есть при вызове COMMIT WORK программа будет ждать, пока выполнятся модули обновления типа V1, зарегистрированные локально. Разница показана на рисунке: Итого SET UPDATE TASK LOCAL пригодится, если вы не можете управлять оператором COMMIT WORK и хотите дождаться выполнения всех V1-модулей для какого-то процесса. =========== Источник: habr.com =========== Похожие новости:
ERP-системы ) |
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 23-Ноя 01:25
Часовой пояс: UTC + 5