Попытка: обработать учебную ошибку и продолжить программу

Учебные задачи

При исключении оставшаяся часть попытки пропускается. Управление переходит в Исключение, затем к коду после КонецПопытки.

Где и как запускать

Полный серверный общий модуль учебной базы. Собственные значения в памяти, без чтения или записи рабочих данных.

Подготовка

  1. Используйте отдельную учебную базу без рабочих данных. Создайте серверный общий модуль УчебныйЯзык с флагом Сервер, без Привилегированный.

  2. Вставьте весь модуль выбранного примера, а не одну процедуру внутрь другой. Из своей серверной команды учебной обработки вызовите УчебныйЯзык.ВыполнитьПример().

  3. Все числа, строки и коллекции созданы в самом примере. Документы, регистры, файловая система и сеть не используются; никаких зависимостей от КА2/УНФ/УТ/БП нет.

  4. Браузер показывает код, но не исполняет BSL. Проверки результата нужно выполнить вручную на платформе 8.5.1.1343 в учебной базе.

Процедура ВыполнитьПример() Экспорт
    ОшибкаОбработана = Ложь;
    Делитель = 0;
    Попытка
        Результат = 10 / Делитель;
        Сообщить(Результат);
    Исключение
        ОшибкаОбработана = Истина;
        Сообщить("Учебное деление на ноль обработано");
    КонецПопытки;
    Сообщить(ОшибкаОбработана);
    Сообщить("Программа дошла до следующей строки");
КонецПроцедуры

Разбор по шагам

  1. Намеренно задать собственный делитель 0, не исполнять опасных внешних операций.

  2. Деление вызывает ошибку; вывод Результат в попытке не выполняется.

  3. Обработчик ставит флаг и сообщает понятное учебное сообщение.

  4. После КонецПопытки выводится флаг и следующая строка.

Как проверить результат

  1. Сообщение об обработанной ошибке, Истина, затем Программа дошла до следующей строки.

  2. Поставьте делитель 2: будет 5, флаг Ложь и сообщение о продолжении.

Ожидаемый результат

Ошибка не скрыта пустым обработчиком, а последовательность выполнения видна в сообщениях.

На что обратить внимание

  1. Попытка не делает неправильные данные правильными.

  2. В производственном коде нужны диагностика и решение, можно ли продолжать.

  3. Не гасите ошибки записи данных пустым Исключение.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.