Выполнение начинается при запуске мастера действий в окне «Быстрый запуск» или при нажатии на кнопку Запустить в карточке справочника Мастера действий.
Порядок выполнения мастеров действий зависит от настроек мастера действий.
Выполнение мастера действий происходит по алгоритму:
1. | Выполняется событие «До выбора». |
2. | Выполняется событие «Начало». |
3. | Если в свойстве Wizard.CurrentStep не задан текущий этап, то задать его первым этапом мастера действий. |
4. | Выполняется событие «Начало» текущего этапа мастера действий. |
5. | Если текущий этап является объектным этапом и в настройках установлен флажок Автоматически открывать, то выполняется шаг 6, иначе выполняется шаг 8. |
6. | Открывается объект этапа. |
7. | Если в настройках этапа установлен флажок Ожидать завершения <Название объекта>, то ожидается завершение закрытия объекта. |
8. | Ожидается нажатие какой-либо доступной кнопки. |
9. | Если для нажатой кнопки задано событие, то оно обрабатывается. |
10. | Если при обработке события произошла ошибка, и не была нажата кнопка Отмена, то есть сгенерировалось исключение, то выполняется шаг 8. |
11. | Если в событии кнопки установлено значение свойства Wizard.NextStep, то результат выполнения этапа Wizard.CurrentStep.ExecutionResult устанавливается в значение «wsrCustom». |
12. | Если для текущего этапа мастера действий задано событие «Завершение», то оно выполняется. |
13. | Если при обработке события сгенерировалось исключение, и не была нажата кнопка Отмена, то выполняется шаг 8. |
14. | Если результат выполнения этапа подразумевает стандартную логику перехода, например, переход на предыдущий, следующий или заключительный этап, то в свойстве Wizard.NextStep указывается номер следующего этапа. |
15. | Если следующего этапа нет, то выполняется шаг 19, иначе выполняется шаг 16. |
16. | Если результат выполнения этапа – завершающий, то есть нажата клавиша Отмена или OK, то выполняется шаг 19, иначе выполняется шаг 17. |
17. | В значение свойства Wizard.CurrentStep указывается значение свойства Wizard.NextStep. |
19. | Выполняется событие мастера действий «Завершение». |