При работе с типовыми отчетами в программе 1С:Зарплата и Управление Персоналом 3.1 пользователи часто сталкиваются с тем, что стандартная сетка таблицы выглядит слишком блеклой, тонкой или практически невидимой. В современном интерфейсе «Такси» по умолчанию используются светло-серые тона, из-за чего границы ячеек могут сливаться с белым фоном экрана. Особенно сильно эта проблема проявляется при печати документов или при их экспорте в сторонние редакторы, такие как Microsoft Excel.
В рамках данной статьи мы подробно разберем, как сделать линии сетки в отчетах более контрастными и жирными. Мы рассмотрим как простые пользовательские методы, доступные непосредственно в режиме 1С:Предприятие, так и более сложные варианты настройки, требующие работы в режиме Конфигуратор.
Самый простой, быстрый и эффективный способ изменить толщину границ ячеек — использовать механизм условного оформления Системы компоновки данных (СКД). Этот метод не требует программирования и изменения конфигурации, все настройки выполняются прямо в пользовательском режиме. Для подробного знакомства с пользовательскими возможностями компоновщика можно использовать руководство по настройке отчетов на СКД в типовых конфигурациях 1С.
Для того чтобы настроить жирность сетки этим способом, выполним следующие шаги:
Стиль границы (или отдельные параметры для каждой стороны: Стиль границы сверху, Стиль границы снизу, Стиль границы слева, Стиль границы справа).Средняя или Толстая. Также здесь можно выбрать тип линии, например, Сплошная или Двойная.Цвет границы. Снимем флажок автоматического определения цвета и выберем четкий контрастный цвет — например, темно-серый или черный (RGB-код 0, 0, 0).Проанализируем частую ошибку пользователей при такой настройке. Если вы примените жирные границы ко всей таблице без разбора, жирными могут стать также шапки отчета, область вывода параметров и группировочные поля, что сделает отчет визуально «перегруженным». Чтобы избежать этого, настроим область использования оформления:
В окне настройки элемента условного оформления перейдем на вкладку Область использования. Здесь снимем флажки с пунктов В заголовке полей, В параметрах и В отборе. Оставим флажки только для пунктов В группировке и В общем итоге. Таким образом, жирная сетка будет применена только к рабочей области таблицы с данными.
Если вы не хотите вручную настраивать свойства каждой границы, можно воспользоваться встроенными в платформу шаблонами дизайна. В системе компоновки данных 1С предусмотрено несколько стандартных стилей оформления таблиц.
Разберем, как быстро переключить макет оформления:
Макет оформления. По умолчанию там может быть установлено значение «Стандартный» или «Основной».Античный, Арктика, Зеленый, Лаванда, Море, Нейтральный и другие.Античный или Нейтральный. Эти макеты используют более темные и четкие линии для разграничения ячеек, что визуально делает сетку более выразительной без ручной детальной настройки границ.Если стандартных возможностей условного оформления в пользовательском режиме недостаточно или требуется автоматически применять жирную сетку при формировании отчета у всех пользователей базы данных, мы можем прибегнуть к программному изменению свойств выводимого табличного документа.
Выясним, как реализовать это с помощью встроенного языка 1С. В модуле объекта отчета или в модуле менеджера при выводе данных в табличный документ мы можем перебрать все ячейки и принудительно установить для них нужный тип и цвет линий. Рассмотрим пример кода, который делает все линии сетки в результирующем документе сплошными и тонкими (но заметными черными):
// Пример программного изменения границ в табличном документе отчета
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
// Позволим системе сформировать отчет по умолчанию
СтандартнаяОбработка = Истина;
// После формирования переопределим параметры сетки
ДокументРезультат.ОтображатьСетку = Истина;
// Зададим стиль линии для программного применения
ЧернаяЛиния = Новый Линия(ТипЛинииРисункаТабличногоДокумента.Сплошная, 1);
// Пройдемся по заполненной области табличного документа и установим границы
Для Строка = 1 По ДокументРезультат.ВысотаТаблицы Цикл
Для Колонка = 1 По ДокументРезультат.ШиринаТаблицы Цикл
ОбластьЯчейка = ДокументРезультат.Область(Строка, Колонка);
ОбластьЯчейка.Обвести(ЧернаяЛиния, ЧернаяЛиния, ЧернаяЛиния, ЧернаяЛиния);
КонецЦикла;
КонецЦикла;
КонецПроцедуры
Этот метод гарантирует, что при формировании отчета абсолютно все ячейки получат четко очерченные границы заданного типа. Однако стоит учитывать, что перебор большого количества ячеек в цикле может замедлить время формирования отчетов с большим объемом данных.
Иногда сетка в сформированном отчете отсутствует в принципе. Это связано с тем, что в свойствах результирующего табличного документа отключен флаг отображения сетки. Мы можем легко включить его интерактивно, прямо во время просмотра отчета на экране.
Выполним следующие действия:
Обратите внимание: данный способ активирует отображение сетки только для текущего сеанса работы с отчетом. При следующем открытии или формировании отчета настройки могут вернуться к исходным значениям, если они не были сохранены в пользовательском варианте отчета.
Проанализируем важную особенность совместной работы программ 1С и Microsoft Excel. Очень часто пользователи настраивают отображение сетки способом №4 (через меню «Таблица — Вид»), но после сохранения отчета в формате .xlsx и его открытия в Excel обнаруживают абсолютно белый лист без делений на строки и столбцы.
Это происходит потому, что системная сетка просмотра 1С не переносится в свойства файлов табличных документов при экспорте. Для того чтобы сетка гарантированно перенеслась в Excel со всеми визуальными свойствами, необходимо использовать только Способ 1 (Условное оформление границ). Границы ячеек, явно заданные через свойства условного оформления СКД, жестко прописываются в структуру XML-файла выгрузки. Открыв такой файл в Excel, вы увидите точно такие же четкие, жирные или цветные линии границ, какие были настроены в интерфейсе 1С:Предприятия.