Как стать автором
Обновить

Зачем в ABAP нужен оператор SET UPDATE TASK LOCAL

Время на прочтение1 мин
Количество просмотров8.3K
И что делать, если после вызова стандартного 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-модулей для какого-то процесса.
Теги:
Хабы:
Всего голосов 4: ↑2 и ↓20
Комментарии1

Публикации

Истории

Работа

ABAP разработчик
3 вакансии

Ближайшие события

7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
22 – 24 ноября
Хакатон «AgroCode Hack Genetics'24»
Онлайн
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань