Глава 3. Модель данных

DataModel

Атрибуты, имена которых начинаются с префикса act* являются ссылками на идентификаторы из Activiti.

  • ProcModel - модель процесса. Атрибуты модели:

    • name - имя модели.
    • description - описание модели.
    • actModelId - ID модели Activiti engine в таблице ACT_RE_MODEL.
  • ProcDefinition - описание процесса. Может быть получен из модели, либо загружен напрямую из XML файла. Атрибуты сущности:

    • name - имя процесса.
    • code - код процесса. Может использоваться для поиска экземпляра сущности из кода приложения.
    • actId - ID объекта процесса из Activiti. Необходим для доступа к модели BPMN (из нее читаются extensionElements).
    • active - определяет, возможен ли запуск новых процессов для текущего ProcDefinition.
    • procRoles - коллекция объектов, определяющих участников процесса.
    • model - ссылка на модель, из которой получено описание процесса
  • ProcRole - роль в процессе. Объекты данного типа создаются автоматически при развертывании процесса на основе информации из XML файла с процессом. Можно сказать, что роли определяют типы участников процесса. Атрибуты сущности:

    • name - имя роли.
    • code - код роли. Может использоваться кодом приложения для идентификации роли.
    • order - порядковый номер. Может использоваться приложением для определения порядка отрисовки ролей.
    • procDefinition - ссылка на описание процесса.
  • ProcInstance - экземпляр процесса. ProcInstance может быть запущен как с привязкой к сущности проекта (например, процесс согласования договора может быть привязан к экземпляру сущности "Договор"), так и без нее. Атрибуты сущности:

    • description - описание экземпляра процесса.
    • startDate - дата запуска процесса.
    • endDate - дата завершения процесса.
    • startedBy - пользователь, запустивший процесс.
    • active - признак, что процесс запущен и еще не завершен.
    • cancelled - признак, что процесс был принудительно отменен.
    • actProcessInstanceId - идентификатор соответствующего ProcessInstance из Activiti.
    • startComment - комментарий, заданный при старте процесса.
    • cancelComment - комментарий, заданный при отмене процесса.
    • entityName - имя сущности, с которой связан процесс.
    • entityId - ID сущности, с которой связан процесс.
    • entityEditorName - имя экрана, который будет использоваться для открытия связанной сущности, если он отличается от стандартного.
    • procTasks - коллекция задач процесса.
    • procActors - коллекция участников процесса.
    • procAttachments - коллекция вложений процесса.
  • ProcActor - участник процесса. Сущность определят исполнителей для ролей процесса по конкретному экземпляру процесса. Атрибуты сущности:

    • user - ссылка на пользователя.
    • procInstance - ссылка на экземпляр процесса.
    • procRole - ссылка на процессную роль.
    • order - порядковый номер. Используется при определении порядка участников для последовательной задачи на многих пользователей.
  • ProcTask - задача по процессу. Объекты данного типа автоматически создаются при достижении процессом узла User task. Атрибуты сущности:

    • name - имя задачи.
    • startDate - дата начала выполнения задачи.
    • claimDate - дата принятия задачи пользователем в случае задачи без явного участника.
    • endDate - дата завершения задачи.
    • outcome - результат выполнения задачи (выход, по которому пользователь завершил задачу).
    • comment - комментарий при завершении задачи.
    • procActor - исполнитель.
    • actTaskId - Activiti task ID. Используется при сигнале Activiti engine о завершения задачи.
    • actExecutionId - Activiti execution ID. Используется для записи/чтения процессных переменных.
    • actTaskDefinitionKey - в XML процесса это поле id у UserTask. Используется при формировании имени переменной, хранящей результат задачи [taskId]_result (см. Переходы в зависимости от выхода (outcome) задачи).
    • cancelled - признак, что задача была завершена при отмене процесса.
    • candidateUsers - список возможных участников для групповой задачи.
    • procInstance - ссылка на экземпляр процесса.
  • ProcAttachment - процессное вложение. Атрибуты сущности:

    • file - ссылка на FileDescriptor.
    • type - тип вложения (ProcAttachmentType).
    • comment - комментарий.
    • author - автор вложения, ссылка на пользователя.
    • procInstance - ссылка на экземпляр процесса.
    • procTask - необязательная ссылка на задачу, в рамках которой было добавлено вложение.
  • ProcAttachmentType - тип вложения. Атрибуты сущности:

    • code - код типа вложения.
    • name - имя типа вложения.