Имя: Пароль:
1C
1С v8
Как снять объектную блокировку
0 Admin_Net_1C
 
18.11.20
09:11
Добрый день, народ.
Платформа 1С 8.3.12.1412, конфигурация перепиленная, на базе УНФ 1.4 (режим совместимости 8.3.7, режим управления блокировкой данных Управляемый).
Суть проблемы: есть команда документа ЗаказПоставщику, которая вызывается из формы документа и из формы списка. При вызове команды устанавливаю объектную блокировку ЗаблокироватьДанныеДляРедактирования(СсылкаНаДокумент).
Суть проблемы: если в форме объекта сначала выполнить интерактивную запись объекта (кнопка Записать), а потом вызов моей команды, то получаю ошибку:
Ошибка блокировки объекта. Объект уже заблокирован: <ДанныеМоегоСеанса>.

Попробовал в момент вызова команды выполнять проверку наличия блокировки и если она есть, то обновление данных объекта:


&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
...
   Если ЕстьБлокировкаДокумента(ПараметрКоманды) Тогда
      ПараметрыВыполненияКоманды.Источник.Прочитать();
      ПараметрыВыполненияКоманды.Источник.ОбновитьОтображениеДанных();
   КонецЕсли;
...
КонецПроцедуры

&НаСервере
Функция ЕстьБлокировкаДокумента(пЗаказ)
    
    Попытка
        ЗаблокироватьДанныеДляРедактирования(пЗаказ);
    Исключение
        Возврат Истина;
    КонецПопытки;
    
    РазблокироватьДанныеДляРедактирования(пЗаказ);
    Возврат Ложь;
КонецФункции


не помогло, все равно получаю ошибку. Подскажите, что делаю не так?
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.