2015-07-13 3 views
0

В SSRS BI 2012 я сделал отчет, как показано ниже. Когда работа прерывается, например, в выходные дни, в отчете есть еще одна строка с тем же номером версии. В приведенном ниже примере это версия 3.Объединение строк в SSRS и только сумма некоторых значений

Есть ли способ объединить строки, если номер версии определенного порядкаНо одно и то же, а затем суммировать Netto и ActualTime, а не Bruto и PlannedTime?

OrderNo Ver Netto Bruto PlannedTime ActualTime 
123456  1 1000 1050 01:50  01:45 
      2 1000 1050 01:50  01:45 
      3 500  1050 01:50  00:30 
      3 500  1050 01:50  00:45

ответ

1

Что касается Вашего вопроса:

Есть ли способ объединить строки, если номер версии конкретного OrderNo то же самое, а затем просуммировать Нетто и ActualTime и не BRUTO и PlannedTime?

Я думаю, что это возможно, если вы настроите текстовое поле, используя выражение и общее количество столбцов. Проверка this

Это проще, если вы получаете свои данные так, как вам нужно, из вашего источника данных. Предполагая BRUTO и PlannedTime столбцов будет держать то же самое для конкретной версии и у вас есть таблица, как это: enter image description here

Вы можете использовать следующий запрос из набора данных:

select OrderNo,Ver,Sum(Netto) as Netto 
,Max(Bruto) as Bruto, Max(PlannedTime) as PlannedTime, 
DATEADD(ms, SUM(DATEDIFF(ms, '00:00:00.000', ActualTime)), '00:00:00.000') as ActualTime 
from Interruption 
group by OrderNo, Ver 

Из этого набора данных вы можете используйте компонент таблицы. Отформатируйте свои столбцы времени в качестве своего запроса примерно так.

enter image description here

Используя компонент таблицы, я построил этот:

enter image description here

Дайте попробовать, я надеюсь, что это может помочь вам.

+0

спасибо за ответ, реальный запрос намного сложнее, но я собираюсь приложить к нему усилия и сжать его. Везде я вижу, что люди подсказывают, что лучше настроить запрос, а затем манипулировать отчетом. – Ignotus

1

Да, вам нужно создать группу на основе номера версии. Затем для столбцов Netto, ActualTime вместо обычных столбцов назначают их функциям. Для функций с функцией Sum SUM (...) для Bruto и Planned Time я предполагаю, что вы не суммируете, потому что вы такие же? В этом случае просто установите для функции первое значение.