Свои цвета в 1С 8.3: строки списков, отчёты, формы и печать
Содержание
Изменить цвет в 1С Предприятие проще всего через условное оформление: в списке откройте Ещё → Настроить список, перейдите на вкладку «Условное оформление», задайте условие и цвет текста или фона. Программист для этого не нужен, настройка сохраняется за пользователем.
Частое заблуждение — что где-то в параметрах есть переключатель «тема оформления», как в Windows. В интерфейсе «Такси» цвета окон берутся из стиля конфигурации. Пользователь меняет цвета строк, ячеек отчётов и печатных форм, а палитру всей программы меняет разработчик в конфигураторе.
Где какой цвет меняется: карта возможностей
Прежде чем что-то настраивать, определите, какой именно цвет вам мешает. От этого зависит, кто и где его меняет.
| Что хотите покрасить | Где меняется | Кто может | Нужен конфигуратор |
|---|---|---|---|
| Строки списка документов или справочника | Условное оформление списка | Пользователь | Нет |
| Ячейки и строки отчёта | Настройки отчёта, условное оформление | Пользователь | Нет |
| Ячейки печатной формы | Макет печатной формы | Ответственный пользователь или администратор | Нет (в БСП) |
| Поле или кнопка на форме | Свойства элемента формы | Разработчик | Да |
| Фон и цвета всех окон | Стиль конфигурации | Разработчик | Да |
| Цвета диаграммы | Свойства диаграммы или настройки отчёта | Разработчик, частично пользователь | Чаще да |
Цвет строк в списках: условное оформление в пользовательском режиме
Это самый востребованный сценарий. Например, бухгалтер хочет видеть непроведённые документы красным, а реализации больше 100 000 ₽ — жирным на жёлтом фоне.
Пошагово
- Откройте нужный список, например «Реализация (акты, накладные)».
- Нажмите
Ещё → Настроить список. - Перейдите на вкладку «Условное оформление».
- Нажмите «Добавить». Откроется окно нового правила.
- В блоке условия выберите поле и вид сравнения. Пример:
Сумма→ «Больше» →100000. - В блоке оформления отметьте «Цвет фона» или «Цвет текста» и выберите цвет из палитры.
- В блоке оформляемых полей оставьте пусто, чтобы красилась вся строка, или укажите одну колонку.
- Нажмите «ОК», затем «Завершить редактирование».
Правило действует сразу. Оно хранится в настройках вашего пользователя и не влияет на коллег.
Несколько правил сразу
Правил можно сделать сколько угодно. Если два правила срабатывают на одну строку, видно последнее по списку оформление. Порядок меняют стрелками в окне настроек.
Не красьте фон строки там, где важно видеть текущую позицию курсора. Подсветка выделенной строки перекрывает ваш фон, и кажется, что правило «пропало».
Как отменить
Если оформление стало мешать, снимите галочку у правила или удалите его. Команда «Установить стандартные настройки» в меню Ещё сбрасывает все ваши настройки списка разом — включая отборы и колонки.
Цвета в отчётах и диаграммах
Отчёты на системе компоновки данных (СКД) красятся тем же механизмом. В типовых конфигурациях это почти все отчёты: ОСВ, анализ субконто, отчёты по продажам.
Подсветить значения в отчёте
- Откройте отчёт и нажмите кнопку «Настройки».
- Переключите вид настроек на расширенный.
- Откройте вкладку условного оформления и добавьте правило.
- Задайте условие, например «Конечное сальдо Дт» → «Меньше» →
0. - В оформлении выберите красный цвет текста.
- Сформируйте отчёт заново.
Чтобы правило не пропало, сохраните вариант отчёта: Ещё → Сохранить вариант отчёта (или команду сохранения варианта на панели отчёта). Иначе после закрытия отчёт вернётся к исходным настройкам.
Макет оформления отчёта
В параметрах вывода СКД есть макет оформления — готовый набор цветов шапки, группировок и итогов. В конфигураторе его выбирают на вкладке параметров вывода схемы. Смена макета перекрашивает весь отчёт за один шаг.
Цвета диаграмм
Диаграмма в отчёте получает цвета серий автоматически из палитры. Если два ряда сливаются, у разработчика два пути:
- 🎨 сменить палитру диаграммы в её свойствах;
- 🖌️ задать цвет конкретной серии в коде через свойство
Цвет.
// Цвет первой серии диаграммы — тёмно-синий
Диаграмма.Серии[0].Цвет = Новый Цвет(31, 78, 121);
Цвета через конфигуратор: элемент формы, условное оформление в коде
Когда цвет должен быть у всех пользователей сразу, настройку переносят в конфигуратор.
Статически: свойства элемента
Откройте форму в конфигураторе, выделите элемент, в палитре свойств найдите ЦветТекста, ЦветФона или ЦветРамки. Диалог выбора цвета предлагает цвета стиля, web-цвета, системные цвета Windows и произвольный RGB.
Выбирайте цвет из стиля, а не RGB-код. Тогда при смене стиля поле перекрасится вместе со всей программой, а не останется «белым пятном».
Динамически: в модуле формы
Простая смена цвета при открытии формы:
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Элементы.Комментарий.ЦветФона = Новый Цвет(255, 250, 205);
Элементы.Комментарий.ЦветТекста = ЦветаСтиля.ПоясняющийТекст;
КонецПроцедуры
Для списков менять ЦветФона элемента бесполезно — он покрасит всю колонку. Строки по условию красят через условное оформление формы:
&НаСервере
Процедура ДобавитьКрасныйДляОтрицательных()
ЭлементОформления = УсловноеОформление.Элементы.Добавить();
ПолеОформления = ЭлементОформления.Поля.Элементы.Добавить();
ПолеОформления.Поле = Новый ПолеКомпоновкиДанных(Элементы.СписокСумма.Имя);
Отбор = ЭлементОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Список.Сумма");
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Меньше;
Отбор.ПравоеЗначение = 0;
Отбор.Использование = Истина;
ЭлементОформления.Оформление.УстановитьЗначениеПараметра("ЦветТекста", WebЦвета.Красный);
КонецПроцедуры
Вызовите процедуру из ПриСозданииНаСервере. Здесь Список — динамический список формы, СписокСумма — имя колонки на форме.
Если поле из условия не выведено колонкой в динамический список, отметьте у него в настройках списка флаг «Использовать всегда». Без этого платформа не выбирает поле из базы, и условие не срабатывает.
Свой стиль: как перекрасить программу целиком
Цвета всех окон задаёт стиль. В дереве конфигурации он лежит в ветке Общие → Стили, а отдельные цвета, шрифты и рамки — в Общие → Элементы стиля.
Порядок работы
- В конфигураторе раскройте
Общие → Стилии добавьте новый стиль. - В редакторе стиля задайте свои значения для системных элементов: фон формы, цвет кнопок, цвет поясняющего текста и так далее.
- Добавьте собственные элементы в
Общие → Элементы стиля, напримерЦветПросроченногос типом «Цвет». - Укажите новый стиль основным в свойствах корня конфигурации.
- Обновите конфигурацию базы данных и перезапустите сеанс 1С.
Собственные элементы стиля потом используются в формах и коде как ЦветаСтиля.ЦветПросроченного. Захотели поменять оттенок — правите один элемент, а не 40 форм.
Когда делать это НЕ нужно
- 🚫 Типовая конфигурация на полной поддержке, а цель — «чтобы было приятнее глазу». Каждое обновление превратится в сравнение-объединение.
- 🚫 Нужно отличать рабочую базу от копии. Для этого проще поменять заголовок программы
в общих настройках раздела
Администрирование, чем вести отдельный стиль. - 🚫 Мешает яркость монитора. Это решается настройками Windows и масштабом в
Сервис и настройки → Параметры, а не правкой конфигурации.
Цвет в печатных формах: заливка, текст, рамки
Печатная форма — это табличный документ по макету. Цвет ячеек хранится в самом макете.
Через пользовательский режим (конфигурации на БСП)
В БП 3.0, ЗУП 3.1, УТ 11 есть встроенный редактор макетов:
- Откройте
Администрирование → Печатные формы, отчеты и обработки → Макеты печатных форм. - Найдите макет по названию печатной формы.
- Откройте его на изменение — программа создаст пользовательскую копию.
- Выделите ячейки и задайте цвет фона или текста в свойствах ячейки.
- Сохраните и закройте. Новая печать пойдёт по изменённому макету.
Если результат не понравился, верните стандартный макет командой в том же списке. Типовой макет при этом не меняется, обновления его не затрут.
Через конфигуратор и код
В конфигураторе макет открывается двойным щелчком, свойства ячейки — через контекстное меню. Цвет можно задать и при формировании:
Область = ТабДок.Область("R5C2:R5C8");
Область.ЦветФона = Новый Цвет(242, 242, 242);
Область.ЦветТекста = WebЦвета.Черный;
Перед тем как красить печатную форму, распечатайте пробную страницу на офисном принтере. На чёрно-белом лазерном принтере светлая заливка уходит в бледно-серый, а жёлтая часто исчезает совсем.
Расширения и внешние обработки: цвет без снятия с поддержки
Для типовых конфигураций правильный путь — расширение конфигурации (появились в платформе 8.3.6). Основная конфигурация остаётся на поддержке, а изменения живут отдельно и переживают обновления.
Как перекрасить поле типовой формы расширением
- В конфигураторе:
Конфигурация → Расширения конфигурации, создайте новое расширение. - В основной конфигурации найдите нужную форму и добавьте её в расширение через контекстное меню.
- В модуле заимствованной формы добавьте обработчик с аннотацией
&После:
&НаСервере
&После("ПриСозданииНаСервере")
Процедура Расш1_ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Элементы.Комментарий.ЦветФона = Новый Цвет(255, 250, 205);
КонецПроцедуры
- Обновите конфигурацию базы данных и перезапустите 1С.
Если в типовой форме нет обработчика ПриСозданииНаСервере, создайте обычный обработчик события формы в самом расширении.
Перед установкой расширения в рабочую базу проверьте его на копии — ошибка в модуле заимствованной формы не даст открыть эту форму никому.
Что умеют внешние обработки
Внешняя обработка не перекрашивает чужие формы. Её место — дополнительные печатные формы и отчёты со своим оформлением, которые подключаются через Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки. Цвета в них задаются в собственном макете обработки.
Почему цвет не меняется: частые проблемы
| Симптом | Вероятная причина | Что сделать |
|---|---|---|
| Правило условного оформления есть, строки не красятся | Условие не выполняется или поле не выбирается из базы | Проверьте условие на одной строке; в конфигураторе отметьте «Использовать всегда» |
| Цвет виден, пока строка не выделена | Подсветка текущей строки перекрывает фон | Красьте текст, а не фон |
| Настройки списка пропали | Нажата «Установить стандартные настройки» или очищены настройки пользователя | Настройте заново; важные правила перенесите в конфигурацию |
| Цвет в отчёте сбросился после закрытия | Не сохранён вариант отчёта | Сохраните вариант с правилами |
| После обновления типовой конфигурации исчезли цвета формы | Правка была в основной конфигурации | Перенесите изменения в расширение |
| Цвет в коде задан, но поле прежнее | Его перебивает условное оформление формы | Проверьте условное оформление формы в конфигураторе |
Если программа после обновления выглядит «не так», проверьте ещё кэш клиента: запуск с параметром /ClearCache в свойствах ярлыка или в дополнительных параметрах запуска базы. Делайте это при закрытом сеансе.
Как подобрать цвета, чтобы ими было удобно пользоваться
Цвет в учётной программе — это сигнал, а не украшение. Пара правил из практики:
- 🎯 Один цвет — одно значение. Красный — «ошибка или долг», зелёный — «оплачено». Если красный в одном списке значит просрочку, а в другом — VIP-клиента, им перестают доверять.
- 🔢 Не больше 3–4 цветов на экран. Пёстрый список читается хуже, чем без оформления.
- 👁️ Учитывайте цветовую слепоту. Пару «красный — зелёный» многие не различают. Дублируйте цвет жирным шрифтом или значком.
- 🌫️ Фон — светлый, текст — насыщенный. Тёмный текст на бледной заливке читается лучше, чем белый на ярком.
- 🖨️ Для печати — минимум цвета. Документы уходят контрагентам, в архив и в налоговую чаще всего чёрно-белыми.
Удобные пары для фона строки (RGB):
| Смысл | Фон | Текст |
|---|---|---|
| Внимание | 255, 242, 204 | обычный |
| Ошибка, долг | 255, 228, 225 | 192, 0, 0 |
| Готово, оплачено | 226, 239, 218 | обычный |
| Неактуально | без заливки | 150, 150, 150 |
Увидят ли коллеги цвета, которые я настроил в списке?
Ещё → Настроить список хранится в настройках вашего пользователя. Чтобы цвета были у всех, их переносят в конфигурацию или копируют настройки другим пользователям через администрирование настроек.