Цвета, шрифты и рамки в 1С: что меняет разработчик, а что пользователь
Содержание
Стиль в 1С 8.3 настраивают в конфигураторе: в ветке Общие → Элементы стиля задают цвета, шрифты и рамки, в ветке Общие → Стили переопределяют их значения, а в свойствах корня конфигурации выбирают «Основной стиль». Пользователь стиль конфигурации поменять не может, ему доступны масштаб, панели, настройка форм и условное оформление списков.
Типичная ситуация: бухгалтер просит «сделать красным просроченные счета» или «покрупнее шрифт в шапке документа», а программист видит, что в форме цвета прописаны вручную в десятке мест. Правильная настройка стиля 1С решает это одним изменением в одном месте. Ниже — как устроен механизм и где его трогать безопасно.
Как устроен стиль в 1С 8.3: элементы, стили, основной стиль
Механизм состоит из трёх уровней. Если их не различать, правки «не применяются» или теряются после обновления.
| Уровень | Где находится | Что задаёт |
|---|---|---|
| Элемент стиля | Общие → Элементы стиля | Именованный цвет, шрифт или рамку со значением по умолчанию |
| Стиль | Общие → Стили | Набор переопределений: для каких элементов стиля какое значение использовать |
| Основной стиль | Свойства корня конфигурации | Какой из стилей конфигурации действует в сеансе |
Платформа уже содержит набор стандартных элементов стиля: цвета фона и текста формы, полей, кнопок, особого текста и так далее. Конфигурация добавляет к ним свои. Типовые решения на БСП добавляют десятки элементов — например, для выделения ошибок, недоступных полей, пометок.
Элемент стиля бывает трёх видов:
- 🎨 Цвет — фон, текст, линии.
- 🔤 Шрифт — гарнитура, размер, начертание. Размер можно задавать относительно стандартного шрифта, тогда он масштабируется вместе с интерфейсом.
- 🔲 Рамка — тип и толщина рамки элемента формы.
Главное правило: в формах и коде ссылайтесь на элемент стиля, а не на конкретный цвет. Тогда, чтобы перекрасить всё «красное» в программе, достаточно поменять одно значение.
Стандартное оформление 1С и режим интерфейса
Внешний вид, который пользователь видит «из коробки», задаёт платформа. В 8.3 это интерфейс «Такси». За выбор режима отвечает свойство корня конфигурации «Режим совместимости интерфейса». Типовые конфигурации последних редакций работают только в «Такси».
Что из стандартного оформления доступно без программирования:
- Откройте главное меню программы (кнопка с тремя полосками в заголовке окна).
- В пункте
ВидвыберитеНастройка панелей— так меняется расположение панели разделов, панели открытых окон и панели функций. - Там же, в главном меню, откройте
Сервис → Параметры. В параметрах клиентского приложения задаётся масштаб форм — это самый быстрый способ сделать шрифт крупнее во всей программе.
Масштаб меняет размер шрифтов и элементов пропорционально. Цвета и начертания он не трогает, их меняет только стиль конфигурации.
Если в форме шрифт задан абсолютным размером (например, 10 пт), а не относительно стандартного, он может «выпадать» из масштаба. Это частая причина жалоб «у меня всё крупное, а одна надпись мелкая».
Настройка стиля через конфигуратор: пошагово
Этот путь для разработчика или администратора с правами на изменение конфигурации.
Шаг 1. Подготовьте конфигурацию
Сделайте резервную копию базы
: Администрирование → Выгрузить информационную базу в конфигураторе. Если конфигурация типовая и стоит на поддержке, изменить её можно только после Конфигурация → Поддержка → Настройка поддержки → Включить возможность изменения.
Изменение типовой конфигурации усложняет каждое следующее обновление: при обновлении придётся сравнивать и объединять ваши правки с релизом поставщика. Для стиля почти всегда хватает расширения, о нём — в следующем разделе.
Шаг 2. Создайте или найдите элемент стиля
- В дереве конфигурации раскройте
Общие → Элементы стиля. - Найдите нужный элемент или создайте новый (кнопка «Добавить» на панели дерева).
- Задайте имя латиницей или кириллицей без пробелов, например
ЦветПросроченногоДокумента. - Выберите вид (цвет, шрифт или рамку) и значение по умолчанию.
Шаг 3. Переопределите значение в стиле
- Раскройте
Общие → Стилии откройте стиль, который указан основным. - В редакторе стиля найдите элемент и задайте ему значение для этого стиля.
- Если стилей в конфигурации нет — создайте один и укажите его в свойстве «Основной стиль» корня конфигурации.
Стилей может быть несколько, но в сеансе действует основной. Отдельный стиль удобен, чтобы держать «тёмную» или «контрастную» палитру как готовый набор и переключать её одним свойством.
Шаг 4. Привяжите элементы формы к стилю
В редакторе формы откройте свойства поля или надписи. В свойствах цвета текста, цвета фона или шрифта в окне выбора есть вкладка со стилевыми значениями — выберите там свой элемент стиля.
Из кода к стилю обращаются через свойства глобального контекста ЦветаСтиля, ШрифтыСтиля и РамкиСтиля:
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Объект.Проведен = Ложь Тогда
Элементы.Комментарий.ЦветТекста = ЦветаСтиля.ЦветОсобогоТекста;
КонецЕсли;
КонецПроцедуры
Шаг 5. Сохраните и проверьте
Сохраните конфигурацию и обновите конфигурацию базы данных (F7). Перезапустите сеанс 1С:Предприятия: стиль читается при старте, открытые сеансы новых значений не увидят.
Расширения и внешние обработки: меняем стиль без правки типовой
Расширение конфигурации — основной безопасный способ кастомизации. Типовая остаётся на полной поддержке, обновления ставятся как обычно.
Что можно сделать в расширении:
- ✅ создать собственные элементы стиля и использовать их в своих объектах;
- ✅ заимствовать форму типового документа и привязать её поля к своему элементу стиля;
- ✅ добавить условное оформление в обработчике
ПриСозданииНаСерверезаимствованной формы; - ✅ изменить шрифт и цвет отдельных надписей и групп.
Порядок работы:
- В конфигураторе откройте
Конфигурация → Расширения конфигурациии создайте расширение. - В дереве расширения добавьте свой элемент стиля в ветке
Общие → Элементы стиля. - Заимствуйте нужную форму (контекстное меню объекта в основной конфигурации → «Добавить в расширение»).
- Привяжите поля к своему элементу стиля или пропишите оформление в коде.
- Обновите конфигурацию базы данных и перезапустите сеанс.
Внешняя обработка влияет только на собственные формы. Общий стиль программы она не меняет. Внутри своей формы в ней можно использовать и стандартные элементы стиля через ЦветаСтиля, чтобы обработка выглядела «родной», а не выделялась самодельными цветами.
При выборе цвета в коде предпочитайте элементы стиля, а не Новый Цвет(255, 0, 0). Жёсткий RGB не подстраивается под другой стиль и хуже читается на нестандартной палитре.
Стиль в мобильном клиенте и мобильном приложении
Мобильный клиент работает с той же конфигурацией, что и обычный. Элементы стиля и основной стиль действуют и там, но форма перестраивается под узкий экран, и часть оформления ведёт себя иначе.
Что учитывать:
- 📱 Размеры шрифтов лучше задавать относительно стандартного. Абсолютный размер, удобный на мониторе, на телефоне даёт обрезанные надписи.
- 🌓 На устройстве может быть включена тёмная тема системы. Цвет текста, прописанный вручную, рискует слиться с фоном. Элементы стиля здесь снова безопаснее жёстких цветов.
- 🔲 Рамки и сложные группировки на маленьком экране съедают место. Чем проще форма, тем лучше она выглядит.
- 🧪 Проверяйте формы в эмуляторе или на реальном устройстве до выкладки: в конфигураторе разница не видна.
Для автономного мобильного приложения (отдельная мобильная конфигурация) логика та же: стили и элементы стиля задаются в его конфигурации, на основную базу они не влияют.
Как перенести стиль из одной базы 1С в другую
Стиль и элементы стиля — объекты конфигурации. Значит, переносят их средствами работы с конфигурацией, а не выгрузкой данных.
| Способ | Когда подходит | Риски |
|---|---|---|
Сравнение и объединение с файлом .cf | Переносим стиль между базами с похожей конфигурацией | При неаккуратной отметке объектов подтянутся лишние изменения |
| Выгрузка конфигурации в XML-файлы | Ведёте конфигурацию в Git или EDT, нужен точечный перенос | Нужно вручную следить за ссылками на элементы стиля |
Перенос расширения (.cfe) | Стиль сделан в расширении | Расширение должно подходить к версии основной конфигурации |
Перенос через сравнение и объединение
- В исходной базе сохраните конфигурацию в файл:
Конфигурация → Сохранить конфигурацию в файл. - В целевой базе выберите
Конфигурация → Сравнить, объединить с конфигурацией из файла. - В окне сравнения снимите все отметки и отметьте только нужные объекты в ветках «Элементы стиля» и «Стили».
- Если меняли основной стиль — отметьте и свойство корня конфигурации.
- Выполните объединение и обновите конфигурацию базы данных.
Перенос расширения
В исходной базе в списке расширений сохраните расширение в файл .cfe. В целевой базе загрузите его через тот же список Конфигурация → Расширения конфигурации, затем обновите конфигурацию базы данных. В пользовательском режиме расширения также подключаются через раздел администрирования, если у пользователя есть права.
Перед объединением конфигураций сделайте выгрузку целевой базы. Ошибка в отметках объектов откатывается только из резервной копии.
Личные настройки оформления для отдельного пользователя
Стиль конфигурации общий для всех. Личное оформление собирается из того, что платформа хранит в настройках каждого пользователя.
Без программиста пользователь может:
- Изменить масштаб форм в параметрах клиентского приложения.
- Перестроить панели через
Вид → Настройка панелейглавного меню. - Настроить форму через меню
Ещё → Изменить форму: скрыть поля, поменять порядок, вывести нужные колонки. - Задать условное оформление списка: в меню
Ещёсписка откройте настройку списка и на вкладке «Условное оформление» укажите правило, например «Сумма больше 100 000 — выделять жирным». - Настроить оформление отчёта в настройках варианта отчёта: условное оформление, выделение итогов.
Все эти настройки сохраняются за пользователем и не влияют на коллег.
Пользовательский выбор оформления в коде
Если нужен переключатель «выделять комментарии» для конкретных сотрудников, храните выбор в хранилище общих настроек и применяйте его при открытии формы:
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Выделять = ХранилищеОбщихНастроек.Загрузить("ОформлениеПользователя", "ВыделятьКомментарий");
Если Выделять = Истина Тогда
Элементы.Комментарий.ЦветТекста = ЦветаСтиля.ЦветОсобогоТекста;
Элементы.Комментарий.Шрифт = Новый Шрифт(, , Истина);
КонецЕсли;
КонецПроцедуры
Загрузить возвращает Неопределено, если настройки ещё нет, поэтому сравнение с Истина безопасно. Сохраняет выбор метод ХранилищеОбщихНастроек.Сохранить с теми же ключами — его вызывают из формы настроек пользователя.
Если настройки пользователя «сломались»
Бывает, что после экспериментов форма выглядит странно: пропали колонки, съехали группы. В меню Ещё → Изменить форму есть команда возврата к стандартным настройкам. Для всех форм сразу администратор может очистить настройки пользователя средствами БСП в разделе Администрирование → Настройки пользователей и прав.