К статье
Практический материал

Разработка и Конфигурация · 10 мин

Как изменить цвет в 1С: инструкция для пользователя и разработчика

Как изменить цвет в 1С: настройка условного оформления форм и отчётов, раскраска строк списка, изменение цвета программно и через стили конфигурации.

Изменить цвет в 1С можно несколькими способами, и выбор зависит от того, что именно нужно раскрасить: строки списка документов, ячейки отчёта, элементы формы или весь интерфейс программы. Пользовательский сценарий — это обычно условное оформление через «Ещё → Изменить форму» или настройки отчёта, а разработчику доступны стили конфигурации и программное изменение цвета через встроенный язык.

Важно понимать, что в управляемых формах 1С нет произвольной палитры «на лету»: цвета берутся из предопределённых элементов стиля (например, «Цвет текста ошибки», «Цвет фона кнопки») либо задаются абсолютными значениями RGB через код. Это сделано для того, чтобы интерфейс оставался единообразным и корректно отображался при смене темы оформления.

Ниже разобраны все основные сценарии: от простой раскраски строк списка без программирования до изменения цвета через код и типичных ошибок, из-за которых оформление «не срабатывает».

Определяем задачу: что именно нужно раскрасить

Прежде чем менять цвет, ответьте на вопрос: где должен измениться цвет и по какому условию. От этого зависит инструмент. Раскраска строк списка документов (например, выделить непроведённые документы красным) делается через условное оформление формы списка. Цветные ячейки в отчёте настраиваются в варианте отчёта. Изменение цвета конкретной кнопки или поля — задача конфигуратора или кода формы.

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

Маршрут решения

Как выбрать способ

Нужно выделить строки списка по условию (статус, сумма, дата)Используйте условное оформление через «Ещё → Изменить форму» или настройки списка
Нужно раскрасить ячейки отчёта по значениюОткройте настройки варианта отчёта и добавьте условное оформление
Нужно поменять цвет конкретного поля или кнопки навсегдаИзмените свойства элемента в конфигураторе или программно в модуле формы
Нужно изменить цветовую схему всей программыПотребуется доработка конфигурации: изменение стилей в конфигураторе

Условное оформление списка без программирования

Самый частый запрос — раскрасить строки списка документов или справочников. В большинстве типовых конфигураций это делается через настройку формы списка. Откройте нужный список (например, «Реализация товаров и услуг»), нажмите «Ещё» и выберите «Изменить форму» либо «Настроить список» — название зависит от конфигурации и режима настроек.

В настройках списка найдите раздел «Условное оформление» и добавьте новое правило. Укажите условие: например, «Проведён равно Нет» или «Сумма больше 100000». Затем на вкладке «Оформление» выберите свойство «Цвет текста» или «Цвет фона» и задайте значение. Сохраните настройку — список сразу перерисуется, и строки, подходящие под условие, изменят цвет.

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

Раскраска строк списка
  1. 1
    Откройте список документов или справочника
  2. 2
    Нажмите «Ещё» → «Настроить список» (или «Изменить форму»)
  3. 3
    Перейдите к разделу «Условное оформление» и добавьте правило
  4. 4
    Задайте условие отбора, например «Проведён = Нет»
  5. 5
    В параметрах оформления выберите «Цвет текста» и укажите красный
  6. 6
    Сохраните настройку и проверьте список: нужные строки должны изменить цвет

Изменение цвета ячеек в отчёте

Отчёты на системе компоновки данных (а это большинство отчётов в типовых конфигурациях) поддерживают условное оформление на уровне варианта отчёта. Откройте отчёт, нажмите «Ещё» → «Изменить вариант отчёта» и перейдите на вкладку «Условное оформление».

Добавьте элемент оформления: укажите условие (например, «Остаток меньше 0»), выберите оформляемые поля — важный шаг, который часто пропускают. Если поле не указано, оформление применится ко всей строке или не применится вовсе, в зависимости от настроек. Затем выберите цвет фона или текста и сохраните вариант отчёта.

Чтобы настройка сохранилась для других пользователей, сохраните вариант отчёта с признаком «Для всех пользователей» — для этого нужны соответствующие права. Личный вариант увидите только вы.

Программное изменение цвета в коде

Разработчику доступны два подхода: установка цвета напрямую через свойства элемента формы и использование элементов стиля. Свойства называются «ЦветТекста», «ЦветФона» и «ЦветРамки». Абсолютный цвет задаётся объектом «Цвет» с компонентами RGB, а цвет из стиля — через коллекцию «ЦветаСтиля».

Предпочтительный способ — цвета стиля, потому что они автоматически адаптируются к теме оформления и единообразны во всей конфигурации. Абсолютные цвета RGB используйте только там, где стилевого решения нет, например для условной подсветки по бизнес-логике.

// Абсолютный цвет RGB

Элементы.СуммаДокумента.ЦветТекста = Новый Цвет(255, 0, 0);

// Цвет из стиля конфигурации (рекомендуется)

Элементы.СуммаДокумента.ЦветТекста = ЦветаСтиля.ЦветОтрицательногоЧисла;

// Условная подсветка фона поля

Если Объект.СуммаДокумента < 0 Тогда

Элементы.СуммаДокумента.ЦветФона = Новый Цвет(255, 220, 220);

Иначе

Элементы.СуммаДокумента.ЦветФона = ЦветаСтиля.ЦветФонаПоля;

КонецЕсли;

Для динамических списков прямое изменение цвета элемента не работает построчно — там используется только условное оформление формы, которое можно наполнять и программно через коллекцию «УсловноеОформление» формы или компоновщика настроек списка.

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

Изменение цветов через стили конфигурации

Если нужно поменять цветовую схему целиком — например, фирменный цвет кнопок или фон панелей — это делается в конфигураторе через ветку «Общие → Стили». Каждый элемент стиля (цвет текста кнопки, цвет фона формы и т.д.) имеет значение, которое применяется во всех местах, где этот стиль используется.

Изменение стиля — это доработка конфигурации: потребуется снять конфигурацию с полной поддержки или добавить изменения через расширение. Перед такой правкой обязательно сделайте резервную копию информационной базы и проверьте результат на тестовой копии, потому что изменение стиля затронет сразу все формы.

Почему цвет не меняется: типичные ошибки

Если после настройки оформления ничего не произошло, проверьте несколько стандартных причин. Во-первых, условие может быть пустым или логически невыполнимым — например, сравнение даты со строкой. Во-вторых, в отчётах часто забывают указать оформляемые поля. В-третьих, порядок правил имеет значение: более позднее правило условного оформления может перекрывать раннее.

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

Типичные ошибки
01
Не указаны оформляемые поля в отчёте — цвет не применяется ни к одной ячейке
02
Условие сравнивает поля несовместимых типов (строка с числом) — правило никогда не срабатывает
03
Программно задан цвет, но не сброшен в ветке «Иначе» — подсветка «залипает»
04
Правила оформления расположены в неверном порядке — нижнее правило перекрывает верхнее
05
Настройка сохранена как личная, а ожидалась для всех пользователей

Проверка результата и ограничения

После любой настройки проверьте результат в трёх точках: в списке или отчёте сразу после сохранения, после повторного открытия формы (чтобы убедиться, что настройка сохранилась) и под другим пользователем, если оформление должно быть общим. Для программных изменений дополнительно проверьте тонкий и веб-клиент — отображение цветов может незначительно отличаться.

Учитывайте ограничения платформы: в управляемых формах нельзя произвольно раскрашивать отдельные символы внутри одного поля, нельзя задавать градиенты и картинки фона для обычных полей ввода, а некоторые элементы (например, системные кнопки командной панели) вообще не позволяют менять цвет из кода.

Контрольные точки

Как проверить результат

Список после сохранения настройки
Норма

Строки под условие окрашены, остальные в стандартном цвете

Тревожный признак

Цвет не изменился или окрашены все строки подряд

Повторное открытие формы
Норма

Оформление сохранилось

Тревожный признак

Настройка сбросилась — проверьте права и сохранение варианта

Просмотр под другим пользователем
Норма

Общая настройка видна всем

Тревожный признак

Оформление видно только вам — вариант сохранён как личный

Частые вопросы об изменении цвета в 1С

Можно ли поменять цвет всей программы без программиста?

Полностью — нет. Пользователю доступны только те настройки внешнего вида, которые предусмотрела конфигурация: условное оформление списков и отчётов, а в некоторых решениях — выбор темы. Изменение глобальной цветовой схемы требует правки стилей в конфигураторе или расширения.

Как выделить цветом только одну колонку списка, а не всю строку?

В условном оформлении формы списка или отчёта есть список оформляемых полей. Укажите в нём только нужную колонку — тогда цвет применится исключительно к её ячейкам, а остальные колонки строки останутся в стандартном оформлении.

Почему в веб-клиенте цвет выглядит иначе, чем в тонком клиенте?

Браузер и платформа по-разному отрисовывают элементы интерфейса, а некоторые стилевые цвета могут иметь собственные значения для веб-клиента. Это нормальное поведение; критичные для восприятия подсветки проверяйте именно в том клиенте, которым пользуются сотрудники.

Можно ли задать свой цвет RGB без кода?

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

Условное оформление пропало после обновления конфигурации. Что делать?

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

Как раскрасить строки табличной части документа по условию?

Через пользовательские настройки это обычно недоступно. Нужна доработка: либо условное оформление формы документа в конфигураторе с условием на поле табличной части, либо программное добавление правила оформления в модуле формы при её создании.

Итог

Что важно запомнить

Большинство задач по изменению цвета в 1С решается условным оформлением без программирования: для списков — через настройку списка, для отчётов — через вариант отчёта с обязательным указанием оформляемых полей. Программные изменения и правка стилей делайте только на копии базы и предпочитайте цвета стиля абсолютным значениям RGB.