Table of Contents
Общая структура
Настройки вида карточки типа элемента представляют из себя себя JSON - текст в формате ключ: значение.
...
Описание ключей и их возможных значений сведено в таблицу ниже (красным выделены обязательные ключи).
Ключ | Описание | Значение | Пример |
name | Название вкладки | Текст или формула | "Файлы" - в качестве названия вкладки будет использован заданный текст "This(\"contenttype.name\")" – в качестве названия вкладки будет использовано название типа текущего элемента. |
permission | Права, которые должны быть у пользователя на элемент для отображения вкладки | Атрибут code элемента списка Права | permission.manage - вкладка будет показана только тем пользователям, у которых есть право "Управление версиями" для текущего элемента. Полный список прав и их коды можно посмотреть в списке Права: Центр администрирования → Настройки → Списки → Права |
isVisible | Видимость вкладки | true/false или формула | "IsNotNull(Parent(\"8ec1df0c-cb97-4bea-9831-7e11c916a765\"))" – формула для вкладки Привязки на списке ТЭ, вернет true для ТЭ, которые являются дочерними от ТЭ Процесс. Формула должна возвращать true или false |
isAdmin | Должна ли вкладка быть видна только администратору | true/false (значение по умолчанию – false) | true - вкладка будет видна только пользователям с правами администратора. |
isEnabled | Доступна ли вкладка для редактирования | true/false или формула | !This(\"task_status.resolved\") – вернет true, если задача не завершена, используется на вкладке Файлы ТЭ Задача на согласование |
list | Список Компонентов представлений, отображаемых на вкладке (таблица view_part) | Список вида [ { "id": …, "settings":{} } ] settings – объект с настройками | [ { "id": "a29a30ca-2bf6-46ed-bea8-189b11891818", "settings": { "visibleFieldList": [ "name", "document_status" ] } } ] Более подробно см. описание компонентов представлений. |
Компоненты представлений
FieldIterator - компонент, отвечающий за вывод атрибутов текущего элемента.
Item - компонент, позволяющий отобразить карточку элемента, связанного с текущим.
ListView - компонент, позволяющий вывести список связанных элементов, с возможностью добавления нового.
DetailAction - компонент, позволяющий вывести на вкладку уведомление с заданным текстом и набором возможных действий-кнопок.
LookupPicker - компонент, позволяющий вывести контрол выбора элемента из списка.
WorkflowInitFileList - компонент, отображающий таблицу отображающий таблицу с файлами в окне запуска процесса.
Activity - компонент, отображающий историю изменений элемента.
Version Version - компонент, отображающий список версий файла.
Scope Scope - компонент, позволяющий управлять правами доступа к элементу.
WorkflowRoute WorkflowRoute - компонент, отображающий маршрут процесса.
ChildItemList ChildItemList - компонент, отображающий дочерние элементы текущего.
ParentItem ParentItem - компонент выбора родительского элемента. toc
FieldIterator
Описание: Вывод атрибутов текущего элемента.
Guid: a29a30ca-2bf6-46ed-bea8-189b11891818
Пример отображения:
Настройки:
Настройка | Описание | Значение | Пример |
visibleFieldList | Список видимых атрибутов. Атрибуты, не указанные в списке, отображаться не будут. Атрибуты отобразятся в том порядке, в котором они указаны в visibleFieldList. Если настройка не задана, отобразятся все атрибуты ТЭ. Пример использования: у типа элемента 20 атрибутов, а необходимо вывести только 2 из них. Эти 2 атрибута указываем в visibleFieldList -> будут показаны только заданные два атрибута. | Массив Системных имен (internal_name) атрибутов ТЭ | ["item_id", "workflow_status", "name", "start_date_plan", "start_date_fact", "initiator"] |
hiddenFieldList | Список скрытых атрибутов. Атрибут, указанный и в visibleFieldList и в hiddenFieldList, отображаться не будет. Пример использования: у типа элемента 20 атрибутов, необходимо вывести все, кроме 2 из них. Эти 2 атрибута указываем в hiddenFieldList, и не задаем visibleFieldList -> будут показаны все атрибуты кроме указанных двух. | Массив Системных имен (internal_name) атрибутов ТЭ | ["id", "project_scope","stamp_profile"] |
rowFieldList | Список атрибутов, которые должны отобразиться в 1 строку. Указанные атрибуты должны идти друг за другом в visibleFieldList (или привязаны в таком порядке к типу элемента, если visibleFieldList не задан). Указанные таким образом атрибуты будут размещены в строках попарно. | Массив Системных имен (internal_name) атрибутов ТЭ | ["item_id", "workflow_status", "start_date_plan", "start_date_fact", "initiator"] |
maxVisibleCount | Количество видимых атрибутов, остальные свернутся в кнопку «Развернуть». Используется в карточках, настроенных для добавления элементов через кнопку «Добавить» | Число | 4 |
groupList | Список групп атрибутов, которые отображаются/скрываются в зависимости от заданного условия (формулы) | Массив объектов вида { "label": string -заголовок группы; "fieldList": [string] - массив Системных имен (internal_name) атрибутов ТЭ, входящих в группу; "isVisible": string | boolean – true/false или формула; "field": string – системное имя (internal_name) атрибута, после которого отобразится группа; } | [ { "fieldList": [ "time_range" ], "isVisible": "Id(This(\"Диапазон времени\")) == Id(Lookup(\"Типы диапазона времени.Динамический\"))", "field": "time_range_type" }, { "fieldList": [ "time_range_start", "time_range_end", "time_range_step" ], "isVisible": "Id(This(\"Диапазон времени\")) == Id(Lookup(\"Типы диапазона времени.Статический\"))", "field": "time_range_type" } ] |
Item
Описание: Карточка элемента, связанного с текущим по указанному атрибуту. Если элемент не существует, отображается пустая карточка, после заполнения которой элемент будет создан.
Guid: 92ab22bd-3420-43bf-b27f-2766b98c5e57
Пример отображения:
Настройки:
...
Guid: 5685e905-a34c-4f41-941d-a37a2f8a8f50
Пример отображения:
Настройки:
...
Пример отображения:
Настройки:
Настройка | Описание | Значение | Пример |
visibleFormula | Формула видимости всего компонента | Формула | "Any(GetList(\"02b4fda6-01b9-4ddb-a7cd-7a56fa415f11\", Format(\"i => i.ContentTypeId == Guid(\\\"70a8952c-539f-49a5-aa4b-31ff67d1663f\\\") && i.GetValueAsGuid(\\\"source\\\") == \\\"{0}\\\"\", Id()), false), \"This(\\\"Статус согласования.Название\\\")\", \"На рассмотрении\", \"\") && !(Id(This(\"Статус задачи\")) == Id(Lookup(\"Статусы задач.Закрыто\")))" компонент будет отображен если статус задач не равен "Закрыто", а среди вложений в задачу есть вложения со статусом согласования "На рассмотрении". |
stateList | Список состояний компонента | Массив объектов вида: { "state": string – одно из 3-x значений: "success"/"error"/"warning". Влияет на цвет и иконку плашки зеленый/желтый/красный соответственно, "text": string– текст внутри плашки, "visibleFormula": string – формула видимости состояния. Высчитывается сразу для всех состояний, отображается первое состояние, чья формула вернула true, "actionList": – список действий, которые будут отображаться в виде кнопок. Содержит массив объектов вида: [{ "code": string – код действия, "style": string – css класс, который определяет стиль кнопки (см. в конце таблицы), "isEnabled": boolean – true/false, определяет активна ли кнопка }] } | Настройки вкладки «Файлы» вида Вид карточки задачи процесса "Согласование документации" |
css классы для style
Название | Внешний вид |
vitro-primary | |
vitro-outline-primary | |
vitro-outline-light | |
vitro-light |
...
Пример отображения:
Настройки:
Настройка | Описание | Значение | Пример |
placeholder | Текст-подсказка, который отображается, когда значение не выбрано | Строка | "Выберите статус" |
onChangeAction | Действие, которое выполнится после изменения значения | код действия | "workflow.task.reference.set.approval.status" |
isEnabled | Доступен ли лукап на редактирование | true/false или формула | "!This(\"task_status.resolved\")" |
component | Компонент, которым отображаются значения | Строка | "Icon" |
list | id списка, из которого достаются значения | guid | "bb6d31b7-7ffa-485b-a90c-483c43b0cc81" |
filterQuery | Формула фильтрации доступных для выбора значений | Формула | "Merge(Lookup(\"Статусы согласования.Согласовано\"), Lookup(\"Статусы согласования.Согласовано с замечаниями\"), Lookup(\"Статусы согласования.Отклонено\"))" |
disabledFilterQuery | Формула, по которой определяются неактивные значения (в списке видны, но не доступны для выбора) | Формула | "if(All(GetList(\"02b4fda6-01b9-4ddb-a7cd-7a56fa415f11\", Format(\"i => new Guid[] {{ Guid(\\\"{0}\\\") }}.Contains(i.GetValueAsGuid(\\\"destination\\\")) && i.ContentTypeId == \\\"4bc42916-9e3c-4c96-a25d-8a1b9b4bbc35\\\"\", Join(\"\\\"), Guid(\\\"\", Select(Refs(\"Связь задачи на согласование\"), \"Id()\")))), \"This(\\\"source.Статус задачи.Название\\\")\", \"Закрыто\", \"Аннулировано\"), Merge(Lookup(\"Статусы согласования.Согласовано с замечаниями\"), Lookup(\"Статусы согласования.Отклонено\")), Merge(Lookup(\"Статусы согласования.Согласовано\")))" |
internalName | Атрибут, в который подставится выбранное значение и передастся в обработчик действия | Системное имя (internal_name) атрибута типа Lookup | "approval_status" |
value | Формула, которая должна вернуть текущее выбранное значение (элемент) при повторном открытии карточки элемента. | Формула | "if((This(\"package_approval_mode\") == \"true\") && !Any(GetList(\"02b4fda6-01b9-4ddb-a7cd-7a56fa415f11\", Format(\"i => i.ContentTypeId == Guid(\\\"70a8952c-539f-49a5-aa4b-31ff67d1663f\\\") && i.GetValueAsGuid(\\\"source\\\") == \\\"{0}\\\"\", Id()), false), \"This(\\\"Статус согласования.Название\\\")\", \"На рассмотрении\"), Select(GetList(\"02b4fda6-01b9-4ddb-a7cd-7a56fa415f11\", Format(\"i => i.ContentTypeId == Guid(\\\"70a8952c-539f-49a5-aa4b-31ff67d1663f\\\") && i.GetValueAsGuid(\\\"source\\\") == \\\"{0}\\\"\", Id()), false), \"Field(\\\"Статус согласования\\\")\"), \"\")" |
displayFieldList | Отображаемые атрибуты | Массив Системных имен (internal_name) атрибутов | ["name", "code "] |
isMulti | Множественный выбор значений. По умолчанию false | true/false | true |
filterMinLength | Минимальное количество символов для поиска | Число | 0 |
WorkflowInitFileList
Описание: Таблица с файлами в окне запуска процесса.
...
Важно: Инлайн редактирование ячеек в табличном не доступно.
Настройки:
Настройка | Описание | Значение | Пример |
viewId | id Вида списка | guid | "7ad4be07-c646-428e-9cda-eaf365678f55" |
isAddListSelectEnabled | Доступен ли выбор списка при добавлении элемента | true/false. По умолчанию true | false |
isAddSiteSelectEnabled | Доступен ли выбор пространства при добавлении элемента | true/false. По умолчанию true | false |
isGroupByParent | Группировать ли элементы в табличном по родителю (parent_id) | true/false. По умолчанию true | false |
Activity
Описание: компонент вкладки «Активность»
...
Пример отображения:
Настройки:
Настройка | Описание | Значение | Пример |
actionList | Список действий контекстного меню строки. По умолчанию отображается список контекстных действий ТЭ | Массив значений вида { "code" - code действия "isConfirm": boolean; - нужно ли подтверждение "isShowAfterAction": boolean; - показать ли сообщение после завершения действия "isShowProgress": boolean; - показать ли прогресс "text": string; - текст действия "data": any; - доп. данные "image": string; - иконка "permission": string; - права "confirmText": string; - текст подтверждения если включен isConfirm } | [{ "code": "link.copy"; "isConfirm": false; "isShowAfterAction": false; "isShowProgress": false; "image": "054328ed-7944-45d9-96c7-bd938c18b3e3" "permission": "read" }] |
ParentItem
Описание: Родительский элемент
...












