Итак, есть проблема:
Для проводок надо открывать и закрывать год. Делать это надо только на момент проводки, чтобы пользователи не могли вопсользоваться случаем и в закрытом периоде проводок не сделать.
Реализовано так:
Начало цикла по позициям проводки
1. Вызывается ФМ открытия года. а - блокируется запись б - меняется запись в - в фоне запускается ФМ, проверяющий, закрылся ли наш год
2. запускается проводка
3. Вызывается ФМ закрытия года. а) изменяется запись б) деблокируется запись
Конец цикла
Если где-то между пунктами 1в и 3б программа "вылетит" - проверяющий ФМ закроет год.
Так вот, если выбираем несколько записей для проводки, то где-то после 4-5 циклов в пункте 1а вываливается ошибка, что объект ещё блокирован пользователем. По одной записи всё отлично отрабатывает.
Вопрос: Как убедиться, что запись уже деблокирована, кроме как WHILE sy-subrc <> 0. деблокировать ENDWHILE.
и WAIT UP TO 1000 SECONDS.
????
|