Конструктор состояний
Конструктор состояний предназначен для создания состояний объектов, настройки переходов между ними и определения разрешённых операций для каждого состояния. Конструктор работает с Базовыми объектами, то есть позволяет создавать и редактировать состояния для созданных видов карточек.
Разрешение на работу с конструктором определяется наличием лицензии.
Состояния необходимы для поддержания жизненного цикла карточки, поэтому для начала работы с карточкой типа Документ или Задание необходимо, чтобы для соответствующего вида было настроено хотя бы одно состояние. Заранее настроенный набор состояний и операций переходов между ними в системе Docsvision называется Автоматом состояний.
Для карточек типа Задание по умолчанию имеется заранее настроенный автомат состояний, предназначенный для реализации типового жизненного цикла задания. Для карточек типа Документ по умолчанию настроенных состояний не предусмотрено, однако, для карточки доступны все стандартные операции.
Интерфейс "Конструктора состояний"
Главное окно Конструктора состояний представлено на рисунке.
![Главное окно "Конструктора состояний"](../../_images/state-designer.png)
-
Панель выбора библиотеки карточек и вида карточки в библиотеке.
-
Область построения автомата состояний: схемы с условным обозначением состояний и операций между ними.
-
Область настройки разрешённых операций для выбранного из списка состояния.
-
Область настройки операций перехода.
В нижней части окна имеются инструменты изменения масштаба автомата состояний.
-
Перетаскиванием слайдера влево — уменьшит масштаб, вправо — увеличит.
-
Кнопками
и
.
-
Используя колёсико мыши: навести курсор на область графа, удерживая клавишу Ctrl.
Область "Операции редактирования"
Область Операции редактирования расположена в правой части главного окна Конструктора состояний.
![Область "Операции редактирования"](../../_images/states-edit-operation-area.png)
Кнопка | Название | Описание |
---|---|---|
Добавить операцию |
При нажатии этой кнопки в списке Операций редактирования появляется новая запись, имя которой можно изменить. Новая операция может быть использована либо как операция перехода между состояниями, либо как действие, связанное с элементом управления (настраивается через Конструктор разметок). |
|
Удалить операцию |
Позволяет удалить выделенную операцию (стандартную операцию удалить нельзя) |
|
Сделать все операции доступными |
Позволяет сделать все операции из списка доступными для текущего состояния. После нажатия этой кнопки напротив каждой операции в списке устанавливается флаг. |
|
Сделать все операции недоступными |
Данная команда противоположна по смыслу предыдущей: при её использовании все операции для выделенного состояния становятся недоступными. Команда позволяет одним действием снять флаги со всех операций в списке. |
Область "Операции перехода"
Область Операции перехода включает средства управления операциями переходов, а также список самих операций, которые заданы для переходов между состояниями.
![Область "Операции перехода"](../../_images/states-transition-operations.png)
Список операций позволяет включать или отключать доступность для каждой операции, а кнопки на панели инструментов ( и
) — включать или отключать доступность операции для всего списка операций сразу.
Если операция недоступна (флаг снят), то соответствующий переход между состояниями не будет отображаться в карточке, а стрелка из автомата состояний, соответствующая данному переходу, будет автоматически удалена.