Перем НайдОбъект;
Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
Спр=Справочники.ВнешниеОбработки.НайтиПоНаименованию(ЭтотОбъект.Метаданные().Представление());
НайдОбъект=Спр.ПолучитьОбъект();
Попытка
НайдОбъект.Заблокировать();
Исключение
Предупреждение("Обработка "+НайдОбъект+"уже открыта ранее");// + "!"+ ОписаниеОшибки());
Отказ=Истина;
КонецПопытки;
КонецПроцедуры
Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)
Попытка
НайдОбъект.Разблокировать();
Исключение
//Предупреждение("Не удалось разблокировать объект "
//+НайдОбъект + "!"+ ОписаниеОшибки());
КонецПопытки;
КонецПроцедуры
Этот код добавил в форму открытия подключаемой обработки, которую можно открыть только один раз в базе.
В моём случае данный алгоритм пригодился в ситуации, когда два менеджера, отвечающие за интерактивное скачивание заказов с сайта с предварительным просмотром данных в табличной части, создавали дубли документов, забывая закрывать свёрнутые формы. Не часто бывало, но создавало неприятности.