Для каждого ресурса, действия или сценария администратор DDP может добавить неограниченное количество параметров одного из следующих типов:

  • «Array» — список значений;
  • «Boolean» — булево значение;
  • «Date» — дата;
  • «Entities» — сущность, один из параметров которой можно выбрать в качестве значения;
  • «Enum» — перечисление значений с ключом и отображаемым значением;
  • «JSON» — текст в JSON-формате;
  • «List» — список значений с возможностью выбора одного из них;
  • «Markdown» — текст в Markdown-формате;
  • «Number» — число;
  • «Object» — произвольный объект в JSON-формате;
  • «Percentage» — процент;
  • «String» — строка;
  • «Teams» — команды;
  • «URL» — строка в формате URL;
  • «Users» — пользователи;
  • «YAML» — текст в YAML-формате.

Ресурсы

После добавления параметра для ресурса он будет отображаться у всех сущностей данного ресурса в их карточках и в таблице каталога. Для каждого параметра можно задать значение по умолчанию. Значение каждого параметра можно изменить для каждой сущности по отдельности.

Заполненность параметров проверяется для каждой сущности. Результат проверки выводится на странице сущности в заголовке блока «Параметры», подсказка к нему перечисляет пустые параметры.

Синхронизация параметров ресурса

По различным причинам у сущностей могут появиться параметры, которых нет у ресурса. Для того чтобы удалить подобные параметры, доступна кнопка «Синхронизировать параметры» в меню ресурса.

При синхронизации параметров:

  • для каждого параметра ресурса будет получен его идентификатор;
  • для каждой сущности ресурса будет получен список её параметров;
  • те параметры сущности, название которых не соответствует ни одному из идентификаторов параметров ресурса, будут удалены из спецификации сущности.

Действия и сценарии

Для каждого действия и сценария задаётся пользовательская форма, состоящая из параметров, которые пользователь должен заполнить при запуске.

Ограничения

Идентификатор каждого параметра должен:

  • содержать символы a-z, A-Z, цифры либо подчёркивания;
  • не начинаться с цифры.

Конфигурация

Новый параметр в редакторе по умолчанию необязателен, доступен для редактирования и виден пользователю. Включите «Обязательный параметр», если его значение требуется для сохранения формы или запуска. Настройки задаются отдельно для каждого параметра:

  • «Редактируемый параметр» — для каждого параметра можно настроить разрешение либо запрет редактирования пользователем. В случае запрета редактирования пользователь при запуске действий или сценариев не сможет изменить значение параметра, то есть всегда будет использоваться значение по умолчанию.
  • «Обязательный параметр» — каждый параметр может быть обязательным либо опциональным. Значение обязательного параметра не может быть пустым при запуске действий, сценариев и процессов и при сохранении формы сущности. Параметр типа «Boolean» всегда имеет значение. Значение опционального параметра может оставаться пустым без влияния на работоспособность действия. При создании и изменении сущности через API, источники данных и действия обязательность параметров ресурса не проверяется.
  • «Скрытый параметр» — скрытый параметр не отображается в таблицах и карточках сущностей, а также при запуске действий и сценариев.
  • «Показывать в упрощённой форме» — параметр отображается в упрощённой форме окна запуска процесса. Остальные параметры сохраняют значения по умолчанию и передаются при запуске. Обязательные параметры без значения отображаются в упрощённой форме независимо от этого признака. Признак доступен только для параметров процесса.

Типы параметров

Array

Параметр типа «Array» хранит список элементов. Элементы добавляются кнопкой «Добавить элемент». Для каждого элемента в форме сущности и в форме запуска выбирается его тип:

  • «Текст» — значение сохраняется как строка без разбора; текст может занимать несколько строк;
  • «JSON» — значение разбирается как JSON и сохраняется со своим типом: объект, список, число, логическое значение или null.

Если в элемент типа «JSON» введён некорректный JSON, форма сообщает «Элемент N: введите корректный JSON» и не сохраняется. Для элементов, уже записанных в параметр, например источником данных, тип выбирается по сохранённому значению.

Date

Параметр типа «Date» может принимать значение даты с определённым пользователем форматом. При этом в спецификации значение всегда хранится в формате ISO 8601 (YYYY-MM-DDTHH:mm:ss.sssZ).

Конфигурация параметра

  • «Формат» — настройка отображения даты. Если формат не задан явно, то используется формат по умолчанию: YYYY-MM-DDTHH:mm:ss.sssZ. Описание конфигурации формата доступно в документации Day.js. Настройка формата влияет на:
    • отображение даты в таблицах и карточках сущностей;
    • значение параметра при запуске действий или сценариев.
  • «Текущая дата по умолчанию» — подстановка текущей даты в качестве значения по умолчанию при редактировании сущностей, а также при запуске действий или сценариев.
  • «Значение по умолчанию» — заранее заданное значение по умолчанию. Не применяется, если активирован переключатель «Текущая дата по умолчанию».

При запуске действий или сценариев и использовании текущей даты по умолчанию, параметр не должен быть скрытым в пользовательской форме. В противном случае текущая дата подставлена не будет.

При запуске действий или сценариев в параметр типа «Date» нельзя подставить значения с использованием шаблонов Go.

List

Параметр типа «List» позволяет выбрать одно значение из предопределённого списка.

Enum

Параметр типа «Enum» позволяет выбрать один элемент из предопределённого списка. В отличие от типа «List», параметр «Enum» использует пару «ключ — значение», где ключ хранится в спецификации, а значение отображается пользователю. Это позволяет изменять отображаемый текст без изменения ключей.

Percentage

Параметр типа «Percentage» хранит процент в виде числа. В форме запуска действия, сценария или процесса значение вводится числом от 0 до 100, значение вне этого диапазона форма не принимает. В форме сущности значение также вводится числом. В таблицах и карточках сущностей процент отображается полосой заполнения.