Коды останова парсера, и перехода на другое действие

Коды останова

Некоторые действия парсера (выполняющие проверку какого-либо условия), в качестве значения параметра «Остановить» или параметра «Название набора действий», принимают специальные коды останова, — отрицательные значения от -1 до -9
Указание такого кода говорит парсеру, что при выполнении условия в действии, нужно остановить процесс выполнения списка действий.

Коды останова могут принимать следующие значения:

Код останова Действия со стороны программы
-1 выход из обработки текущим списком действий
-2 выход без обработки подуровней и вывода на лист
-3 выход без обработки остальных элементов текущего массива
-4 выход без обработки остальных элементов текущего массива, и останов верхних уровней обработки исходных данных
-5 принудительный переход к следующему значению исходных данных (на верхний уровень)
-9 полный останов парсера (завершение работы)

 

Коды возврата / перехода на другое действие

Некоторые действия также поддерживают переход к другому действию в текущем списке действий (например, это умеет действие Проверка на выполнение условия).
В этом случае, вместо кода останова (отрицательное значение) указывается код перехода на другое действие — положительное числовое значение (от 1 и до количества действий в списке). При выполнении условия, парсер перейдёт к выполнению действия с указанным номером.

Пример использования кода возврата / перехода на другое действие:

Действие Параметр Значение Результат
Задать новое значение Новое значение 10 Число
Сохранить результат в переменную  
Использовать новое значение да
Сумма чисел Сколько прибавить или вычесть 3 Число
Количество цифр после запятой 0
Проверка на выполнение условия Режим проверки не кратно Число
Значение для сравнения 7
Действие при выполнении условия Остановить
Параметр действия 2
Добавить текст ДО или ПОСЛЕ Префикс Минимальное число вида 10 + 3*X равно Текст

Суффикс  

В этом примере, парсер добавляет к исходному значению 10 число 3, и проверяет, делится ли результат на 7. Если не делится, то выполняется переход на действие с номером 2 (второе действие в списке — Сумма чисел), т.е. снова выполняется суммирование с числом 3 и проверка на делимость.
После нескольки суммирований мы получаем результат (число 28), которое не проходит проверку «не делится на 7», и парсер продолжает выполнять действия из списка ниже

ВНИМАНИЕ: крайне осторожно используйте кода перехода к другому действию, поскольку это может вызвать зацикливание парсера!