Книга: «1С:Предприятие.Элемент». Возможности встроенного языка
Назад: Структура
Дальше: Инструкция «попытка»

Исключения

В языке «1С:Предприятия» нельзя было создать и обработать собственное исключение – событие, которое возникает во время ошибки при исполнении кода программы.

Теперь в языке «Элемента» вы можете создать свой собственный тип исключения на основе стандартного типа Исключение и затем использовать его в коде приложения:

Например:

@Сервер

исключение ИсключениеНеверныйФорматФайла

пер ИмяФайла: Строка

;

@Сервер

статический метод МойМетод()

попытка

// безопасный код

ПрочитатьФайл("path\\file.txt")

поймать Искл1: ИсключениеНеверныйФорматФайла

// обработка исключения типа ИсключениеНеверныйФорматФайла

ОбработатьИсключение(Искл1)

;

;

@Сервер

статический метод ПрочитатьФайл(Путь: Строка)

...

// Здесь выясняется, что формат файла неправильный

// Создать экземпляр исключения и выбросить его

выбросить новый ИсключениеНеверныйФорматФайла("Неверный формат файла", "path\\file.txt")

;

@Сервер

статический метод ОбработатьИсключение(Искл: ИсключениеНеверныйФорматФайла)

//…

;

Чтобы объявить исключение, нужно с помощью инструкции исключение объявить тип своего исключения в теле модуля вне методов. Например:

исключение ИсключениеЧтенияФайла

пер ИмяФайла: Строка

;

В некотором смысле описание типа исключения подобно описанию структуры: каждый тип исключения может содержать поля, которые будут содержать информацию, специфическую для этого типа исключения. Следует помнить, что при описании исключения не допускаются значения инициализации.

Теперь для того, чтобы создать экземпляр этого исключения, следует написать следующий код:

пер Искл = новый ИсключениеЧтенияФайла("Ошибка чтения файла", "path\file.txt")

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

И затем это исключение можно выбросить с помощью инструкции выбросить:

выбросить Искл

Назад: Структура
Дальше: Инструкция «попытка»