Прошу добавить поддержку меток
Снова испытал нехватку меток и оператора "Перейти". Есть большой метод с несколькими выходами. В начале захватываю ресурс ОС. Надо освободить его при любом выходе. Пришлось в каждом выходе звать специальный метод с передачей всех нужных параметров. А хотелось бы в конце метода разместить метку и к ней везде прыгать.
Переходы допустимы только в рамках текущих операторных скобок (Если, Попытка, Цикл) или их родителей, т.е. прыгать внутрь неоткрытых в текущем месте скобок запрещено.
наружу можно? Можно выпрыгнуть из тела цикла? Из попытки?
Да. Да. Да.
Как продвигается?
Классический случай освобождения захватов ресурсов при любом выходе из метода сделать красиво не могу до сих пор
Процедура ПроверитьПереходКонцаДокумента(КлючСостоянияФоновогоМетода) Экспорт
ПодключениеИР = ПодключениеИР(, Ложь);
Если ПодключениеИР = Неопределено Тогда
Перейти ~Конец;
КонецЕсли;
Попытка
//Много кода
Исключение
Сообщить(ОписаниеОшибки(), СтатусСообщения.Внимание);
КонецПопытки;
~Конец:
СохранитьЗначениеСеансаКонфигуратора(КлючСостоянияФоновогоМетода, Неопределено);
КонецПроцедуры
Приходится делать нагромождения "Если тогда" с избыточным заглублением вложенности конструкций.
Сергей, к сожалению, у меня нет ресурса на реализацию меток. Я буду признателен помощи в этом вопросе.