Оператор безусловного перехода Перейти в 1С это аналог goto в других языках программирования. Данный оператор позволяет безусловно передать управление на другой оператор.
Оператор Перейти не может передать управление за пределы программного модуля, процедуры или функции. А также не может передать управление на оператор, который находится внутри конструкций Если - КонецЕсли, Для - КонецЦикла, Пока - КонецЦикла, ДляКаждого - КонецЦикла, Попытка - КонецПопытки.
После ключевого слова Перейти нужно указать имя метки. Имя метки всегда начинается со знака «~». В строке, куда будет осуществлен переход, после имени метки ставится двоеточие «:». Например:
а = 1;
б = 1;
а = а + 1;
Перейти ~Метка;
б = б + 1;
~Метка:
//вывод на экран
Сообщить(а);
Сообщить(б);
После выполнения данного кода переменная «а» будет равна 2, а переменная «б» равна 1. Так произошло, потому что мы «перепрыгнули» через строку кода «б = б + 1;», когда дошли до оператора Перейти.
Имя метки может быть произвольным, но должно удовлетворять правилам названия переменных.
Если попытаться сделать так:
а = 1;
б = 1;
а = а + 1;
Перейти ~Метка;
б = б + 1;
Для ё = 1 По 5 Цикл
~Метка:
КонецЦикла;
//вывод на экран
Сообщить(а);
Сообщить(б);
То при компиляции будет ошибка «На метку с указанным именем имеется недопустимый переход (~Метка)», потому что нельзя переходить внутрь конструкции Для - КонецЦикла.
Не рекомендуется использовать оператор безусловного перехода в программном коде. Как правило задачу можно решить и без него.
Смотрите также:
Электронный учебник по по программированию в 1С Рекомендации по изучению программирования 1С с нуля Программное решение для сдачи и подготовки к экзаменам Программирование в 1С 8.3 с нуля - краткий самоучитель Комплексная подготовка программистов 1С:Предприятие 8.2 Сайты с уроками программирования и со справочниками Youtube-каналы с уроками программирования Сайты для обучения программированию Лекции и уроки