Как настроить условное оформление в 1С Предприятии
Содержание
Покрасить строки с просроченной оплатой в красный, выделить жирным документы без проведения, спрятать служебную колонку от части пользователей — всё это делает механизм условного оформления. Он меняет цвет, шрифт и видимость данных по заданному условию, и в большинстве случаев настраивается прямо в режиме «Предприятие», без программиста.
Правило состоит из трёх частей: оформление (что поменять — цвет, шрифт), условие (когда применять) и оформляемые поля (к каким колонкам). Разберём, где это настраивается в динамических списках и отчётах на СКД, как собрать условие в конструкторе отбора и что делать, когда правило не срабатывает.
Ещё → Настроить список… → вкладка Условное оформление. Настройка сохранится лично у вас.Настройки или Ещё → Изменить вариант…) → вкладка Условное оформление. Правило живёт внутри варианта отчёта.Что меняет механизм и где он работает
Условное оформление — это набор правил, которые система проверяет при выводе каждой строки или ячейки. Совпало условие — применяется заданное оформление. Не совпало — ячейка выводится как обычно. Пересчёт идёт на лету: изменили данные, строка перекрасилась.
Механизм один и тот же, но точек входа несколько:
- 📋 Динамические списки — журналы документов, списки справочников, формы списка. Настраивает сам пользователь.
- 📊 Отчёты на СКД — раскраска ячеек и строк в результате отчёта.
- 🖥 Управляемые формы — оформление полей и таблиц формы, задаётся в Конфигураторе.
- 📄 Табличные документы и макеты — там раскраска чаще задаётся иначе, но СКД-отчёт выводит результат в табличный документ уже с применённым оформлением.
Важно понимать границу: в списках и отчётах оформление — это персональная настройка. Вы красите список под себя, у коллеги он остаётся прежним. Если нужно, чтобы правило видели все и всегда, его зашивают в конфигурацию.
Условное оформление не меняет сами данные — только их вид на экране и в печати отчёта. Суммы, даты и реквизиты остаются нетронутыми.
Как добавить правило в режиме предприятия
Самый частый сценарий — раскрасить журнал документов или список справочника. Разберём по шагам на примере списка, где нужно выделить красным строки с отрицательным остатком.
- Откройте нужный список (например, список документов).
- Нажмите
Ещёв командной панели →Настроить список…. - Перейдите на вкладку
Условное оформление. - Нажмите
Добавить— появится новый пустой элемент с тремя настройками. - В поле Оформление задайте, что поменять: откройте его, поставьте галочку
Цвет текстаи выберите красный. Можно отметить сразу несколько свойств. - В поле Условие соберите отбор: поле
Остаток, вид сравненияМеньше, значение0. - В поле Оформляемые поля выберите колонки, которые красить. Оставите пустым — покрасится вся строка.
- Нажмите
Завершить редактирование, затемОК. Список сразу перерисуется.
Настройка сохраняется автоматически и привязана к вашему пользователю. Чтобы снять правило, вернитесь на ту же вкладку и либо снимите галочку «Использовать» у элемента, либо удалите его.
Какие свойства можно менять
В поле «Оформление» доступен целый список параметров. Чаще всего используют:
- 🎨 Цвет текста и Цвет фона — основная раскраска.
- 🔤 Шрифт — сделать жирным, курсивом, поменять размер.
- 👁 Видимость — скрыть строку или ячейку, не удаляя данные.
- 🔒 Доступность — сделать поле недоступным для редактирования.
- ✏️ Текст — подменить выводимый текст (например, вместо пустого значения показать прочерк).
- 🔢 Формат — задать формат вывода числа или даты для конкретных строк.
Галочки можно комбинировать: одно правило способно одновременно задать и фон, и жирный шрифт.
Полезные примеры условий
Чтобы не изобретать каждый раз с нуля, держите под рукой типовые заготовки. Поля в них называются условно — подставляйте те, что есть в вашем списке.
| Задача | Условие (отбор) | Оформление |
|---|---|---|
| Просроченная оплата | ДатаОплаты Меньше ТекущаяДата | Цвет текста — красный |
| Непроведённый документ | Проведён Равно Ложь | Цвет текста — серый, курсив |
| Нулевая или отрицательная сумма | Сумма Меньше или равно 0 | Цвет фона — светло-жёлтый |
| Незаполненный реквизит | Склад Не заполнено | Цвет фона — розовый |
| Выделить своего контрагента | Контрагент В списке (ваш список) | Шрифт — жирный |
Текущую дату удобно задавать не фиксированным значением, а через кнопку выбора — система подставит параметр, который пересчитывается каждый день. Тогда правило «просрочено» останется актуальным без правок.
Как собрать условие в конструкторе отбора
Условие — это обычный отбор системы компоновки данных. Он собирается из строк вида поле + вид сравнения + значение.
Виды сравнения зависят от типа поля. Для чисел и дат — Равно, Не равно, Больше, Больше или равно, Меньше, Меньше или равно. Для любых полей — В списке, Не в списке, Заполнено, Не заполнено. Для строк добавляется Содержит и Начинается с.
Несколько условий объединяются в группы. По умолчанию строки связаны логическим И — должны выполниться все. Если нужно «или», добавьте группу с типом Группа ИЛИ и перенесите в неё нужные строки.
Пример составного условия «просроченный и неоплаченный»:
Группа (И)
├── ДатаОплаты < ТекущаяДата
└── Оплачено = Ложь
В условии можно ссылаться только на поля, которые есть в этом списке или отчёте. Нельзя взять реквизит из другой таблицы, если он не выведен в данные. Если поля не хватает — его сначала добавляют в состав полей списка.
Отдельно обратите внимание на оформляемые поля. Если оставить их пустыми, оформление применится ко всей строке. Если указать одну-две колонки — покрасятся только они, а остальная строка останется белой. Это удобно, когда нужно подсветить, например, только колонку «Сумма», а не весь ряд.
Что происходит, когда правил несколько
Правила проверяются по списку сверху вниз, и каждое срабатывает независимо. Строка может попасть под несколько правил сразу: одно красит фон, другое меняет шрифт — применятся оба.
Проблема начинается, когда два правила задают одно и то же свойство одной ячейки. Например, первое правило красит фон в жёлтый по одному условию, второе — в зелёный по другому, а строка подошла под оба. Выиграет то правило, которое стоит в списке ниже: оно отрабатывает последним и перекрывает верхнее.
Отсюда практическое правило: частные условия ставьте ниже общих. Если у вас есть широкое правило «все неоплаченные — серым» и узкое «просроченные более 30 дней — красным», узкое должно стоять ниже, иначе серый фон перекроет красный.
Когда правил много, их удобно держать «от общего к частному»: сначала фоновая заливка по крупным категориям, затем точечные акценты по отдельным строкам. Разные свойства при этом не мешают друг другу — конфликт возникает только по совпадающему параметру одной ячейки. Поэтому правило «весь ряд — светло-серым фоном» и правило «колонку Сумма — жирным красным» спокойно живут рядом: они трогают разные свойства.
Порядок меняется стрелками Вверх / Вниз (или командами перемещения) в списке правил на вкладке условного оформления. После перестановки проверьте результат на реальных данных — это самый надёжный способ убедиться, что приоритет настроен верно.
Если правил много и они путаются, временно снимайте галочку «Использовать» у отдельных элементов — так проще понять, какое из них красит конкретную строку.
Оформление в Конфигураторе и отчётах на СКД
Когда раскраска нужна всем пользователям по умолчанию, персональной настройки мало — её задают на уровне конфигурации.
В управляемой форме. У формы есть собственная коллекция условного оформления (в редакторе формы — отдельная вкладка/команда настройки условного оформления). Там правила задаются так же: оформление, отбор, оформляемые поля. Разница в том, что настройка сохраняется в конфигурации и действует для всех.
В динамическом списке формы. Если на форме лежит реквизит типа «Динамический список», его оформление настраивается в свойствах этого реквизита — механизм тот же, что и в режиме предприятия, но зафиксированный разработчиком.
Программно. Элементы условного оформления можно добавлять кодом. Схема такая:
Элемент = УсловноеОформление.Элементы.Добавить();
ОтборЭлемент = Элемент.Отбор.Элементы.Добавить(
Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемент.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Сумма");
ОтборЭлемент.ВидСравнения = ВидСравненияКомпоновкиДанных.Меньше;
ОтборЭлемент.ПравоеЗначение = 0;
Элемент.Оформление.УстановитьЗначениеПараметра(
"ЦветТекста", Новый Цвет(255, 0, 0));
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных("Сумма");
В отчётах на СКД. В системе компоновки данных условное оформление — штатная вкладка настроек. Разработчик задаёт правила в схеме компоновки, а пользователь может их дополнить или переопределить в настройках варианта отчёта через Ещё → Изменить вариант…. Здесь часто красят итоговые строки, выделяют отклонения, подсвечивают значения вне нормы. Логика отбора, приоритета и оформляемых полей — ровно та же, что в списках.
В отчётах появляется приятная деталь: оформляемым полем можно указать не только колонку, но и область — например, только строки группировки или только общий итог. За счёт этого итоговая строка легко отделяется жирным шрифтом и заливкой, а детальные строки остаются спокойными. Если отчёт выводится в несколько колонок-ресурсов, оформление назначают каждому ресурсу отдельно — тогда покраснеет именно та цифра, что вышла за норматив, а не вся строка.
Правила, заданные в конфигурации, и правила, добавленные пользователем в варианте отчёта, работают совместно. Это значит, что персональная раскраска не затирает штатную, а накладывается поверх по тем же законам приоритета — нижнее перекрывает верхнее по совпадающему свойству.
Типичные ошибки и способы их устранения
Условное оформление устроено просто, но несколько ситуаций стабильно сбивают с толку.
Ещё одна частая мелочь: цвет выбран слишком бледный и на фоне выделенной строки не читается. Берите контрастные сочетания и проверяйте, как раскраска выглядит при наведении курсора, когда строка подсвечивается системой.
Частые вопросы
Сохранится ли условное оформление после закрытия программы?
Ещё → Установить стандартные настройки.Можно ли скрыть строку целиком по условию?
Чем условное оформление отличается от отбора?
Как перенести настроенное оформление другому пользователю?
Ещё → Сохранить настройки… можно выгрузить настройку списка и загрузить её другому пользователю командой Загрузить настройки…. Для массового применения оформление задают в конфигурации.Почему в отчёте раскраска есть, а при выгрузке в Excel пропала?
Сохранить как… из самого отчёта.