Есть несколько способов сделать это:
(1) Задайте промежуточную сумму для суммирования соответствующего поля - добавьте его в секцию групповой базы, которая исключается, когда группа не является группой 2.
или
(2) Добавьте более высокий уровень группировки по формуле, установленной в 1 для существующих групп 1 и 2, и как 2 для групп 3 и 4, затем добавьте сумму соответствующего поля в раздел групповой основы для группа формулы (которая должна быть исключена, если формула не равна 1). Для этого:
- добавьте новое поле формулы с именем TopGroup (например).
задайте формулу, например:
if {TableName.GroupField} =
Group1 or {TableName.GroupField} =
Group2 then 1 else 2
(при необходимости подставляя фактические значения Group1 и Group2 ).
Вставить новую группу в TopGroup. Вы, вероятно, обнаружите, что теперь это самый низкий уровень группировки - откройте Group Expert, чтобы сделать его верхним уровнем группировки.
- Щелкните правой кнопкой мыши новый заголовок группы # 1 и выберите «Подавить».
- Перетащите поле, которое вы хотите суммировать, в новый нижний колонтитул группы # 1. Щелкните правой кнопкой мыши в нижнем колонтитуле и выберите «Вставка»> «Сводка ...», выберите соответствующую итоговую операцию (возможно, «Сумма») и «Сводка» в качестве группы № 1, затем нажмите кнопку «ОК».
- Перетащите новое поле сводки из верхней части поля, которое оно суммировало в разделе Нижний колонтитул группы # 1, затем замените поле данных не суммированным на соответствующее текстовое поле, например. Всего: .
- Войдите в Эксперт секции и установите условное подавление нижнего колонтитула группы № 1, где
{@TopGroup} <> 1
. Если вы сейчас просматриваете свой отчет, вы должны увидеть желаемую сумму между концом Group2 и началом Group3.
Если окажется, что вам, скорее всего, понадобится отобразить промежуточную сумму в другом месте отчета, я бы предложил первый метод, в противном случае лично я предпочел бы второй.