Документация для разработчиков
Темная тема

Особенности хранения данных элементов

Для каждого процесса имеется свой набор элементов. В этом плане иерархия аналогична инфоблокам, где процесс - это тип инфоблока, а элементы - это элементы инфоблока. Только вместо свойств инфоблока используются пользовательские поля из ядра.

Большая часть кода, отвечающего за хранение элементов и значений пользовательских свойств сосредоточена в папке modules/main/lib/userfield/internal

В этой статье можно прочитать подробно про общие процессы динамического создания таблиц и колонок.

Классы в rpa, отвечающие за таблицы процессов, элементов и обвязка, являются наследниками классов из ядра.

Системные поля

Все таблицы элементов в rpa имеют набор системных полей:

См. подробнее \Bitrix\Rpa\Model\PrototypeItem.

Пользовательская сортировка элементов в канбане

Каждый пользователь может задать произвольный порядок элементов в каждой стадии на канбане. Эта сортировка будет работать только в рамках этой стадии и только для этого пользователя. Без этой сортировки сверху колонки отображаются элементы с наибольшей датой смены стадии (см \Bitrix\Rpa\Model\Stage::getUserSortedItems())

Таблица b_rpa_item_sort. Класс \Bitrix\Rpa\Model\ItemSortTable.

Полнотекстовый индекс

Для каждого процесса помимо таблицы элементов создается динамически таблица для хранения полнотекстовского индекса. Заполняется индекс автоматически на событиях (\Bitrix\Rpa\Model\DataManager::onAfterAdd, \Bitrix\Rpa\Model\DataManager::onAfterUpdate)

Класс \Bitrix\Rpa\Model\PrototypeItemIndex.

Сами таблицы создаются тут \Bitrix\Rpa\Model\TypeTable::onAfterAdd.

История изменений

Все действия, выполняемые с элементами, подробно логируются в отдельной таблице. Заполнение таблицы происходит не на событиях, а в \Bitrix\Rpa\Command::saveToHistory().

Класс \Bitrix\Rpa\Model\ItemHistoryTable.

© «Битрикс», 2001-2024, «1С-Битрикс», 2024