История страницы
Try-catch
...
Версия 19 (Net)
Группа действий: Базовые действия
...
Описания
Данное действие предназначено для обработки исключений в выбранных действиях.
Иконка действия
Параметры
Входные параметры
- Блок Try - Действия для выполнения, во время исполнения которых может произойти исключение.
- Блок Catch - Действия для обработки возникшего исключения.
...
3. Блок Finally - Действия для выполнения в любом случае.
Выходные параметры
На выходе получаем ошибку возникшую в ходе выполнения блока Try.
Настройки
Property |
---|
Description |
---|
Type |
---|
Действия для выполнения, во время исполнения которых может произойти исключение.
!! Данный параметр не отображается и назначается системой автоматически.
Да
Действия в блоке должны быть
Действия для обработки возникшего исключения.
Таких блоков может быть несколько, тогда будет создан параметр "Исключения для CATCH <номер последовательности>" для каждого из добавленных блоков.
!! Данный параметр не отображается и назначается системой автоматически.
Нет
Действий в блоке может не быть
Список исключений, для обработки которых предназначена соответствующая последовательность Catch.
Таких последовательностей может быть несколько, тогда будет создан параметр "Исключения для CATCH <номер последовательности>" для каждой из добавленных.
Коллекция
Нет
Блока может не быть
Ошибка возникшая в ходе выполнения блока Try
Идентификатор типа исключения
Filling example | Mandatory field | |||
---|---|---|---|---|
Parameters | ||||
Exceptions | Exceptions collection that must be processed within the corresponding Catch clause. | Robin.Collection | Yes | |
Results | ||||
Error | Error that occurred within Try clause. | Robin.Exception |
Особые условия использования
Если в блоке/блоках Catch отсутствуют действия, то студия продолжит работу ,проигнорировав отловленные ошибки.
Если в блоке Finally отсутствуют Finally отсутствуют действия, то студия продолжит работу.
Порядок работы с Try-Catch
- Выбрать действие «Try-Catch» из группы действий «Базовые действия» и перетащить на рабочую область.
- В блок «Try» поместить действия, для которых будет выполнено исключение. В блок «Catch» поместить действия, которые будут выполнены, если возникнет исключение, т.е. какая-либо ситуация, когда действие выполнено некорректно, иными словами, возникнет ошибка. Если блок «Catch» не заполнен, то робот продолжит работу сценария, проигнорировав возникшие ошибки.
Пример заполнения:
Блоков «Сatch» может быть несколько, тогда для каждого блока будет создан параметр «Исключение для CATCH [Номер блока]». Это нужно, когда для каждой возможной ошибки есть свой вариант действия.
Пример:
Действие «Try-Catch» в сценарии:
...
Пример заполненных параметров для нескольких блоков «Catch».
Блок Finally
Блок Finally
Блок Finally является не обязательным блоком. Действия, указанные в этом блоке, выполнятся вне зависимости от того, возникла ошибка или нет. Если в блоке Finally отсутствуют действия, то робот продолжит свою работу.
...
Выше были рассмотрены общие моменты работы с действием «Try-Catch». Рассмотрим кейс «Погода», где продемонстрирована работа этого действия.
Пример использования
Задача
Роботу необходимо зайти в поисковую систему, сделать запрос «Погода» и получить сегодняшнюю температуру, а затем сохранить ее в excel-файл.
Задача простая, но в ходе ее выполнения могут возникнуть ошибки.
Решение
воспользоваться действием «TryВоспользоваться действием «Try-Catch» для обработки возможных ошибок.
Реализация
- Поместить все действия сценария в блок «Try»,
- В блок «Catch» поместить действие «Сообщение», в котором робот сообщит, что возникла ошибка при работе с браузером.
- В блок «CATCH 2» поместить действие «Сообщение», которое сообщит, что ошибка произошла в действии группы «Excel».
4. В блоке Finally поместить информационное сообщение о том, что робот закончил работу.
Пример заполнения блока «Try»
Пример заполнения блока «Catch»
5. Заполнить параметры: выбрать типы ошибок, которые могут возникнуть во время работы с действиями группы «Браузеры» для блока «Catch».
...
Из-за наличия блока «Try-Cath» робот завершил свою работу без ошибок ошибок , несмотря на то, что при открытии файла возникла ошибка.