Настройка синхронизации атрибутов задач ============================================ .. _attribute_synchro: .. contents:: :depth: 3 В журналах :ref:`задач` добавлена возможность фильтровать bpmn задачи по атрибутам документа, атрибутам задач. Для настройки синхронизации атрибутов задач в **Рабочее пространство "Раздел администратора" - Управление процессами** добавлен журнал настроек **Синхронизация атрибутов задач BPMN**. .. image:: _static/attribute_synchro/01.png :width: 700 :align: center Объект настройки ------------------ .. image:: _static/attribute_synchro/01_1.png :width: 600 :align: center Настройка включает в себя: * **Включено** - флаг, включена или выключена текущая настройка * **Имя** - имя настройки * **Источник** - источник атрибута, доступны значения: - **Record**- источником атрибута является **record**, по которому запущен БП - **Тип** - источником атрибута является **Тип данных рекорда**, по которому запущен БП * Список атрибутов. Настройка атрибута включает в себя: * - **id** - идентификатор атрибута задачи. Этот **id** должен быть уникальным - **Тип атрибута** - **Типы (список)** Список типов данных, которые подлежат синхронизации. У одного атрибута может быть несколько связанных типов данных, таким образом, можно синхронизировать общие поля (даже если они в разных атрибутах) из разных типов в один атрибут. Например, "Контрагент" может быть у договоров, счетов и тд * **Тип** - тип данных * **Атрибут** - выбор атрибута. Для источника **"Record"** выбор осуществляется из списка атрибутов, для источника **"Тип"** нужно вписать **record выражение** (необходимо для доступа к кастомной конфигурации - например, **config.urgency?num**) Механизм работы ----------------- Синхронизация поддерживает актуальное состояние атрибутов для всех активных задач. Ранее созданные задачи тоже синхронизируются. Заполнение атрибутов задач происходит при: 1. Создании задачи 2. Обновлении документа 3. Обновлении типа данных (массовое обновление всех заинтересованных задач) 4. Обновлении настроек синхронизации (массовое обновление всех заинтересованных задач) .. note:: Массовое обновление всех задач происходит не моментально, скорость зависит от количества активных задач. По замерам, 22 000 задач синхронизируются приме6рно за 9 минут. Сортировка по синхронизируемым атрибутам не поддерживается. Фильтрация поддерживается в полном объеме. Если необходимо синхронизировать атрибут **статус документа**, то его **id** должен быть **"documentStatus"**, тип **"Text"**. Фильтрация по статусу сейчас работает только по тексту с **id статуса**. Если известны все возможные статусы, то можно настроить выбор через перечисление статусов в конфигурации журнала. Примеры настроек ----------------- Настройка атрибутов с источником Record ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. image:: _static/attribute_synchro/02.png :width: 600 :align: center Настройка атрибутов с источником Тип ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. image:: _static/attribute_synchro/03.png :width: 600 :align: center Настройка журнала ------------------ Для отображения синхронизируемых атрибутов в журнале активных задач необходимо в **id атрибута** добавлять префиксы. Для атрибутов с source **"Record"** - **"doc"**, для source **"Тип"** - **"doc_t"**. .. image:: _static/attribute_synchro/05.png :width: 600 :align: center .. code-block:: - id: _doc_documentStatus name: en: Document status ru: Статус документа - id: _doc_currency name: en: Document currency ru: Валюта документа type: ASSOC formatter: type: assoc editor: type: journal config: journalId: currency searchable: true sortable: false - id: _doc_contractDate name: en: Document contract date ru: Дата договора документа type: DATE searchable: true sortable: false - id: _doc_legalEntity name: en: Document legal entity ru: Юридическое лицо д type: ASSOC formatter: type: assoc - id: _doc_signatory name: en: Document signatory ru: Подписант документа type: AUTHORITY - id: _doc_performer name: en: Document performer ru: Исполнитель документа type: AUTHORITY - id: _doc_t_parentType name: en: Document parent type ru: Тип родительского документа type: ASSOC formatter: type: assoc Активные задачи по умолчанию: .. image:: _static/attribute_synchro/06.png :width: 700 :align: center И с добавленными полями: .. image:: _static/attribute_synchro/07.png :width: 1000 :align: center