Skip to Content

Try-Catch

Элемент Try-Catch используется для обработки исключений, которые могут возникать при выполнении сценария. Try-Catch содержит стандартные блоки: Try, Catch и Finally.

1. Классическая версия (WFTryCatch)

Классический Try-Catch

Стандартная реализация с блоками Try, Catch и Finally. Перенесена в раздел Поколение 1.

2. Расширенная версия (WFTryMultiCatch) Доступно с версии 1.25.3

Мульти-Catch с версии 1.25.3

Новые возможности:

  • Добавлена возможность выбора типа ошибки в блоке Catch.
  • Добавлена кнопка “Добавить Catch” для создания нескольких обработчиков ошибок.

1. Блок Try

Try — контейнер для одного или нескольких элементов, которые потенциально могут вызвать исключение. Блок Try выполняется в первую очередь.

Если в Try произошло исключение, то:

  • данные об исключении запишутся в переменную, которую вы указали в свойстве Исключение;
  • остальные элементы в блоке Try, идущие после исключения, выполняться не будут;
  • робот перейдет к выполнению блока Catch для перехвата и обработки исключения в соответствии с вашим сценарием автоматизации.

2. Блок Catch

Catch — контейнер для одного или нескольких элементов, которые выполняются только в случае возникновения исключения в блоке Try. Если в блоке Try не было исключения, то блок Catch выполняться не будет.

Если в Catch тоже возникло исключение, то оно не будет считаться обработанным — это означает, что выполнение процесса после элемента Try-Catch прекратится.

В расширенной версии (WFTryMultiCatch) Доступно с версии 1.25.3:

  • Можно создать несколько обработчиков через кнопку “Добавить Catch”
  • Для каждого обработчика можно указать конкретный тип исключения.

3. Блок Finally

Finally — контейнер для одного или нескольких элементов, которые выполняются в последнюю очередь. Finally идет после блоков Try и Catch и выполняется в обязательном порядке.

Это означает, что Finally будет выполнен:

  • если в блоке Try не возникло никаких исключений;
  • если в Try возникло исключение, которое было перехвачено в блоке Catch;
  • если в Catch тоже возникло исключение.

Если в Finally в свою очередь возникнет исключение, то выполнение процесса после Try-Catch прекратится.

Свойства

Символ * в названии свойства указывает на обязательность заполнения. Описание общих свойств см. в разделе Свойства элемента.

СвойствоТипОписание
ИсключениеLTools.Common.Model.ExecutionExceptionInfoПеременная для сохранения данных об исключении
Скриншот исключенияBooleanСоздает скриншот при возникновении исключения в блоке Try. По умолчанию чекбокс выключен — скриншот не создается

Пример использования

На странице Learning доступен RPA-проект, демонстрирующий работу с элементом:

  1. Скачайте архив со всеми обучающими материалами.
  2. Распакуйте архив и откройте в Студии проект StudioActivities.
  3. Выберите процесс StudioActivities/Ru/Управление/Try-Catch Исключение.ltw для просмотра.

Только код

Пример использования элемента в процессе с типом Только код (Pure code) находится в разработке.