Files
cc-1c-skills/.codeassistant/skills/form-compile/references/appearance.md
T
2026-06-14 11:08:54 +00:00

8.8 KiB
Raw Blame History

Оформление

Два независимых механизма: оформление элемента (постоянные цвета/шрифт/граница на конкретном элементе) и условное оформление формы (conditionalAppearance — правила, применяемые при выполнении условия).

Оформление элемента (цвета / шрифты / граница)

Свойства задаются прямо на элементе. Применимо к полям (input/check/radio/labelField/picField/calendar), декорациям (label/picture), кнопкам (button), группам (group/columnGroup), страницам (page/pages), попапам (popup) и таблицам (table). Каждое свойство необязательно.

Ключ Что задаёт
textColor Цвет текста
backColor Цвет фона
borderColor Цвет рамки
font Шрифт
border Граница
titleTextColor / titleBackColor / titleFont Цвет текста / цвет фона / шрифт заголовка колонки (labelField, колонки таблицы); у page/pages/popuptitleTextColor/titleFont заголовка страницы/попапа
footerTextColor / footerBackColor / footerFont Цвет текста / цвет фона / шрифт подвала колонки

Те же свойства доступны и через словарь appearance элемента — под русскими именами параметров платформы: ЦветТекста, ЦветФона, ЦветРамки, Шрифт, Граница, ЦветТекстаЗаголовка, ЦветФонаЗаголовка, ШрифтЗаголовка, ЦветТекстаПодвала, ЦветФонаПодвала, ШрифтПодвала. Это та же запись, что и в правилах условного оформления (ниже) и в appearance поля дин-списка.

Цвет

Строка в одной из форм:

Форма Значение
web:Имя Цвет из web-палитры, напр. web:Red, web:FireBrick, web:HoneyDew
win:Имя Системный цвет Windows, напр. win:MenuBar, win:ButtonText, win:DisabledText
style:ИмяСтиля Ссылка на элемент стиля конфигурации/платформы, напр. style:FormBackColor, style:BorderColor
#RRGGBB RGB-hex, напр. #FF0000

Имя должно существовать в своей палитре (несуществующий web-/win-цвет или ссылка на отсутствующий style:-элемент — ошибка загрузки формы).

Шрифт (font / titleFont / footerFont)

  • Строка "style:ИмяСтиля" — шрифт из элемента стиля. Минимальная форма.
  • Объект — задаются только нужные атрибуты:
Ключ Назначение
ref Ссылка на стиль ("style:X") или системный шрифт ("sys:…")
faceName Имя гарнитуры (для собственного шрифта)
height Размер
bold / italic / underline / strikeout true/false — начертание
scale Масштаб, %
kind Absolute (собственный шрифт — с faceName+height) / WindowsFont (системный — с ref:"sys:…")
{ "label": "Внимание!", "textColor": "web:FireBrick",
  "font": { "faceName": "Arial", "height": 12, "bold": true, "kind": "Absolute", "scale": 100 } }

Граница (border)

  • Строка "style:ИмяСтиля" (или объект { "ref": "style:X" }) — граница из стиля.
  • Объект { "width": N, "style": "..." } — собственная граница. style — один из: Single, Double, Underline, DoubleUnderline, Overline, Embossed, Indented, WithoutBorder.
{ "input": "Цена", "path": "Объект.Цена", "textColor": "#FF0000",
  "borderColor": "style:BorderColor", "border": { "width": 1, "style": "Single" } }
{ "labelField": "Код", "titleTextColor": "web:HoneyDew", "border": "style:ControlBorder" }

Условное оформление формы (conditionalAppearance)

Форменный ключ верхнего уровня — массив правил. Каждое правило применяет оформление к перечисленным полям, когда выполняется его условие.

"conditionalAppearance": [
  { "selection": ["ОбычноеПоле"], "filter": ["ЧисловоеПоле > 100"],
    "appearance": { "ЦветФона": "style:FormBackColor" },
    "presentation": { "ru": "Подсветка", "en": "Highlight" } }
]
Ключ Тип Назначение
selection array Имена форматируемых полей формы
filter array Условие применения (грамматика — ниже)
appearance object Словарь «параметр платформы: значение»
presentation string / object Подпись правила в списке настроек
use bool false — правило отключено
viewMode string Режим отображения настройки
userSettingID string Идентификатор пользовательской настройки; "auto" — сгенерировать

filter

Та же грамматика, что в отборе списка — shorthand "Поле оператор значение @флаги" или объект:

"filter": [
  "Статус = 3",
  { "field": "Сумма", "op": ">=", "value": 1000 },
  { "group": "Or", "items": [ "Просрочено = true", "Заблокирован = true" ] }
]
  • Операторы: = <> > >= < <=, in / notIn, inHierarchy, contains / notContains, beginsWith / notBeginsWith, like / notLike (%-шаблон), filled / notFilled.
  • Флаги: @off (отключён), @user, @quickAccess; _ = пустое значение.
  • Группа: { "group": "And"|"Or"|"Not", "items": [...], "use"? }.
  • Дата-значение: ISO-дата "2024-01-01T00:00:00" — фиксированная дата; именованный относительный период — строкой "BeginningOfThisWeek" с "valueType": "v8:StandardBeginningDate" (варианты BeginningOfThisDay/BeginningOfThisWeek/BeginningOfThisMonth/BeginningOfThisYear/…).

appearance

Словарь «параметр платформы: значение». Имена параметров — русские: ЦветТекста, ЦветФона, Шрифт, Граница, Текст, Заголовок, Формат, ВидимостьЭлемента, Доступность и другие параметры оформления компоновки.

Значения:

  • Цвет (ЦветТекста/ЦветФона/…) и шрифт (Шрифт) — те же формы, что в оформлении элемента выше (web:/win:/style:/#RRGGBB; шрифт — строка "style:X" или объект).
  • Текстовые параметры (Текст/Заголовок/Формат) — по форме значения:
    • голая строка → нелокализованный литерал ("" → пустое значение);
    • объект { "ru": "...", "en": "..." } → локализуемая строка;
    • объект { "field": "путь" } → ссылка на поле компоновки.
"conditionalAppearance": [
  { "selection": ["Остаток"], "filter": ["Остаток < 0"],
    "appearance": { "ЦветТекста": "web:Red", "Шрифт": { "bold": true } } },
  { "selection": ["Комментарий"], "filter": ["Комментарий notFilled"],
    "appearance": { "Текст": { "ru": "— нет данных —" }, "ЦветТекста": "win:DisabledText" } }
]

Условное оформление самого дин-списка задаётся не здесь, а в settings.conditionalAppearance реквизита-списка — см. references/dynamic-list.md.