Система 1С:Предприятие 8.0 предоставляет удобные средства оформления внешнего вида печатной формы. Панель «Форматирование» позволяет управлять шрифтом, цветом текста и фона, выравниванием текста и рамками:
Можно отформатировать одну ячейку или сразу несколько, предварительно выделив их мышью. Если удерживать клавишу Ctrl, то можно выделять несмежные ячейки.
Палитра свойств предоставляет еще более расширенные возможности по форматированию ячеек. Например, можно задавать наклон текста от -360 до 360 градусов (свойство Ориентация), узор, выравнивание по вертикали, форматную строку, которую можно составить вручную или в диалоговом окне.
Средства встроенного языка позволяют при выводе печатной формы задавать форматирование ячеек программным образом. Это дает возможность форматировать ячейки в соответствии с их содержимым.
Например, ниже выводится отчет по остаткам товаров, а товары с остатком меньше критического уровня выделяются красным цветом:
ТабДок = Новый ТабличныйДокумент;
ТекстЗапроса = "ВЫБРАТЬ
| СпрНоменклатура.Наименование,
| СпрНоменклатура.ЭтоГруппа,
| СпрНоменклатура.Ссылка КАК Ссылка,
| РегОстатки.КоличествоОстаток КАК Остаток
|ИЗ
| Справочник.Номенклатура КАК СпрНоменклатура
| ЛЕВОЕ СОЕДИНЕНИЕ
| РегистрНакопления.УчетНоменклатуры.Остатки КАК РегОстатки
| ПО СпрНоменклатура.Ссылка = РегОстатки.Номенклатура
|ГДЕ ЭтоГруппа = Ложь
|ИТОГИ СУММА(Остаток) ПО Ссылка ТОЛЬКО ИЕРАРХИЯ";
Запрос = Новый Запрос(ТекстЗапроса);
Макет = ПолучитьМакет("Остатки");
Обл = Макет.ПолучитьОбласть("Шапка");
ТабДок.Вывести(Обл);
//зафиксируем шапку для удобного просмотра
ТабДок.ФиксацияСверху = ТабДок.ВысотаТаблицы;
Обл = Макет.Область("Строка");
ОбычныйШрифт = Обл.Шрифт;
ОбычныйЦветТекста = Обл.ЦветТекста;
ОбычныйЦветФона = Обл ЦветФона;
//один раз получим область Строка
Обл = Макет.ПолучитьОбласть("Строка");
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Остаток = ?(Выборка.Остаток = NULL, 0, Выборка.Остаток);
Обл = Макет.Область("Строка");
Обл.Шрифт = ОбычныйШрифт;
Обл.ЦветТекста = ОбычныйЦветТекста;
Обл.ЦветФона = ОбычныйЦветФона;
Если Выборка.ТипЗаписи() = ТипЗаписиЗапроса.ИтогПоГруппировке Тогда
Если Остаток <= 2 Тогда
Обл.Шрифт = Новый Шрифт(ОбычныйШрифт,,,Истина); //жирный
Обл.ЦветТекста = Новый Цвет(255,0,0); //красный
КонецЕсли;
Иначе
Обл.Шрифт = Новый Шрифт(ОбычныйШрифт,,,Истина); //жирный
Обл.ЦветФона = Новый Цвет(240,240,255); //сиреневый
КонецЕсли;
//установим параметры полученной ранее области Строка
Обл.Параметры.Номенклатура = Выборка.Ссылка;
Обл.Параметры.Остаток = Остаток;
ТабДок.Вывести(Обл);
КонецЦикла;
Обл = Макет.ПолучитьОбласть("Подвал");
ТабДок.Вывести(Обл);
ТабДок.ОтображатьСетку = Ложь;
ТабДок.ТолькоПросмотр = Истина;
ТабДок.ОтображатьЗаголовки = Истина;
ТабДок.Показать();