модально не устраивает, Блокировка не отрабатывает
Док = СоздатьОбъект("Документ");
Док.НайтиДокумент(Форма.Параметр.ТекущийДокумент());
Сообщить(Док.Блокировка());
Если Док.Блокировка(1)<>1 Тогда
Сообщить("Документ " + Форма.Параметр + " уже открыт");
Возврат;
Форма.Закрыть();
Иначе
ДокументВтаблицуПодбора(Форма.Параметр);
КонецЕсли;
+ (8) На просмотр и встроенная блокировка не работает. Только пилить свой механизм оповещения. Например через константу. И в каждом ПриОткрытии() проверять и либо не открывать форму, либо открывать в режиме ТолькоПросмотр(1). Но второй вариант и блокировка обеспечит.
(10) Блокировка(1) если заблокировала документ, то не даёт его открыть для редактирования - в режиме просмотра можно открыть документ даже если он открыт для редактирования в другой сессии.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший