В процессе разработки отчетов в 1С часто возникает задача визуально выделить итоговые строки, например, изменить цвет их фона. Это делает отчет более читабельным и акцентирует внимание на ключевых показателях. Хотя автор исходного вопроса предполагал использовать макеты, наиболее простой и гибкий способ — это условное оформление. Давайте разберем оба подхода и выясним, почему стандартная настройка может не сработать.
Это основной и рекомендуемый способ для большинства случаев. Он позволяет гибко настраивать внешний вид элементов отчета в зависимости от различных условий. Рассмотрим по шагам, как настроить цвет фона для строки общих итогов.
Пошаговая инструкция:
ЦветФона, установите флажок напротив него и выберите желаемый цвет.После этих действий при формировании отчета строка общих итогов будет окрашена в выбранный вами цвет.
Иногда, даже после выполнения всех шагов, результат не соответствует ожиданиям. Проанализируем самые частые причины и способы их устранения, основываясь на обсуждении с форума.
Причина 1: Неправильно задана область использования
Это самая распространенная ошибка. Если в области использования выбрано «В группировке», то окрасятся все строки группировок, а не только общий итог. Если выбрано «В детальных записях», то форматирование применится к строкам с данными. Убедитесь, что установлен только флажок «В общем итоге».
Причина 2: Указаны оформляемые поля
Как упоминалось выше, если на вкладке «Оформляемые поля» указать одно или несколько полей, оформление применится только к ним. Например, ячейки с итоговыми суммами окрасятся, а ячейка с текстом «Итого» останется без изменений. Для окрашивания всей строки список полей должен быть пустым.
Причина 3: Правило оформления добавлено не на уровне всего отчета
Если в структуре отчета у вас есть вложенные группировки, и вы добавили условное оформление, выделив одну из них, а не корневой элемент «Отчет», то правило будет действовать только в контексте этой группировки. Для общих итогов настройку нужно всегда делать на верхнем уровне.
Причина 4: Пользовательские настройки
Часто разработчик настраивает все в конфигураторе, а у пользователя отчет выглядит по-старому. Это может происходить из-за того, что у пользователя сохранены свои, персональные настройки отчета, которые имеют приоритет. Чтобы это проверить, попросите пользователя в режиме «1С:Предприятие» сбросить настройки отчета. Обычно это делается через меню «Еще» → «Стандартные настройки» → «Загрузить стандартные настройки» или «Еще» → «Прочие» → «Сбросить настройки».
Причина 5: Использование макета
Если в отчете уже используется макет для вывода итогов, то настройки условного оформления могут быть проигнорированы, так как макет имеет более высокий приоритет и полностью переопределяет внешний вид. Проверьте вкладку «Макеты» в схеме компоновки данных.
Этот метод сложнее, но дает полный контроль над внешним видом. Он оправдан, когда требуется сложная структура итоговой строки, которую невозможно реализовать стандартными средствами. Для этой задачи можно использовать пример использования собственных макетов в СКД.
Разберем по шагам:
СуммаОборот).Важный нюанс: при использовании макета для итогов система может вывести и стандартную строку итогов, и вашу, из макета. Чтобы избежать дублирования, в настройках отчета (на вкладке «Другие настройки») необходимо управлять расположением общих итогов, установив значение «Нет», если макет полностью заменяет стандартный вывод.
Хотя сам запрос не влияет на оформление, для полноты картины приведем пример, похожий на тот, что обсуждался в теме. Он показывает, как собираются данные для отчета по продажам и доставкам.
ВЫБРАТЬ
ПродажаТоваровОбороты.Контрагент КАК Контрагент,
СУММА(ПродажаТоваровОбороты.СуммаОборот) КАК СуммаОборот,
КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ПродажаТоваровОбороты.Период) КАК Период
ПОМЕСТИТЬ табл1
ИЗ
РегистрНакопления.ПродажаТоваров.Обороты(, , День, ) КАК ПродажаТоваровОбороты
СГРУППИРОВАТЬ ПО
ПродажаТоваровОбороты.Контрагент
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ДоставкаОбороты.Контрагент КАК Контрагент,
КОЛИЧЕСТВО(ДоставкаОбороты.Автомобиль) КАК Автомобиль,
СУММА(ДоставкаОбороты.КилометражОборот) КАК КилометражОборот
ПОМЕСТИТЬ табл2
ИЗ
РегистрНакопления.Доставка.Обороты КАК ДоставкаОбороты
СГРУППИРОВАТЬ ПО
ДоставкаОбороты.Контрагент
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
табл1.Контрагент КАК Контрагент,
табл2.КилометражОборот КАК Километраж,
СУММА(табл2.Автомобиль) КАК КоличествоДоставок,
табл1.СуммаОборот КАК Сумма
ИЗ
табл1 КАК табл1
ЛЕВОЕ СОЕДИНЕНИЕ табл2 КАК табл2
ПО табл1.Контрагент = табл2.Контрагент
СГРУППИРОВАТЬ ПО
табл1.Контрагент,
табл2.КилометражОборот,
табл1.СуммаОборот
В заключение, для простой задачи, такой как изменение цвета фона строки итогов, всегда лучше начинать с условного оформления. Это быстро, просто и в 99% случаев решает задачу. К макетам стоит прибегать только при необходимости создания сложного, нестандартного представления данных.