Как убрать ресурс из общих итогов в СКД?

Программист 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

При настройке отчетов в системе компоновки данных (СКД) часто возникает задача: необходимо рассчитать показатели для определенных группировок, но скрыть или обнулить их в строке общих итогов. Давайте разберем, как грамотно управлять выводом ресурсов, чтобы отчет выглядел именно так, как требует бизнес-логика.

Понимание настройки «Рассчитывать по»

Первым делом проанализируем стандартные возможности СКД. Вкладка Ресурсы — это основной инструмент управления расчетами. Когда мы создаем ресурс, мы можем указать поле Рассчитывать по.

Если вы укажете конкретную группировку, СКД будет вычислять ресурс только для нее и всех вложенных уровней. Если же оставить это поле пустым, расчет будет производиться для всех уровней, включая общий итог. Чтобы исключить отображение суммы в определенных местах, необходимо четко ограничить область действия функции ресурса.

Использование функций «ВычислитьВыражение»

Более гибкий подход, чем просто выбор группировки, заключается в использовании функций 1С непосредственно в выражении ресурса. С помощью функции ВычислитьВыражение мы можем проверить текущий контекст вывода.

Мы можем использовать конструкцию, которая проверяет уровень группировки. Если отчет находится на уровне «Общий итог» (уровень 0), мы можем принудительно возвращать NULL. В СКД вывод NULL в ячейке ресурса приводит к тому, что ячейка остается пустой, что визуально эквивалентно отсутствию значения.

Пример логики выражения:


Выбор
    Когда Уровень() = 0 Тогда NULL
    Иначе Сумма(ВашеПоле)
Конец

Применение условного оформления для скрытия значений

Если ваша задача состоит не в изменении математической логики, а исключительно в визуальном оформлении, воспользуйтесь Условным оформлением. Это избавляет от необходимости писать сложные формулы в ресурсах.

  1. Перейдите в настройки отчета.
  2. Выберите раздел Условное оформление.
  3. Добавьте новое правило.
  4. В поле Условие укажите, что поле группировки равно «Общие итоги».
  5. В настройках оформления установите цвет текста и цвет фона такими же, как цвет фона всей таблицы (обычно белый).

Таким образом, значение остается в расчетах, но пользователь его не видит. Это полезно, если данный ресурс используется в других формулах, где его значение критически важно, но в итоговой строке оно лишь «засоряет» отчет.

Создание вычисляемых полей

Иногда настройки ресурсов недостаточно для сложных сценариев. В таких случаях мы создаем вычисляемое поле. Это поле будет содержать логику вывода (с помощью функции Выбор), а затем именно это вычисляемое поле мы перетаскиваем в ресурсы.

Преимущества этого подхода:

Важные рекомендации

При работе с ресурсами всегда помните, что Сумма и Сумма общая в понимании движка СКД могут вести себя по-разному в зависимости от того, как настроена иерархия. Если вы столкнулись с тем, что «0» не дает нужного эффекта, попробуйте заменить его на NULL. В большинстве случаев это решает проблему «лишних» нулей в строках итогов.

Если отчет должен быть настраиваемым, рекомендуем добавить параметр ПоказыватьИтоги (типа Булево). В выражении ресурса добавьте проверку:


Выбор
    Когда &ПоказыватьИтоги Тогда Сумма(Поле)
    Иначе NULL
Конец

Теперь пользователи сами смогут управлять отображением через настройки отчета, не обращаясь к программисту для изменения структуры СКД. Надеемся, что данные методы помогут вам сделать отчеты более чистыми и профессиональными!

← На главную