2013-03-17 2 views
1

У меня есть 3 столбца, которые выглядят следующим образом.Как суммировать значения на основе разных условий в iReport

Bucket  Amt  Fixed Amount 
1   10  100 
2   20  200 
3   30  300 
4+   40  400 

Я хочу суммировать значения из ведра 2 до 4+ и из ковша 3 4+ т.е. мой финальный стол должен выглядеть ниже

Bucket  Amt  Fixed Amount 
1   10  100 
2   20  200 
3   30  300 
4+   40  400 
2-4+  90  900 
3-4+  70  700 

Я создал 2 переменные «2-4 + "и" 3-4 + ". Назначено вычисление на «Сумма» Но как написать выражение для того же, которое суммирует значение для amt и фиксированную сумму на основе ведра? Могу ли я использовать условные выражения? т. Е. Для первой переменной 2-4 + суммировать значение для amt и фиксированную величину для ковшей между 2 и 4+. Аналогично для второй переменной.

Любые предложения будут оценены. Спасибо!

ответ

0

Если каждый квадрат представляет собой строку вывода в вашем запросе, и вы знаете, что только вычисления, которые вам нужно выполнить, это «2-4 +» и «3-4 +», вы можете рассмотреть возможность построения вычислений в ваш запрос.

Или - вы можете попробовать группировать на ковше. Покажите ведра 1, 2,3, 4+ в своей группе мелодий, как обычно. Создайте три переменные, чтобы удерживать результаты ковшей 2, 3, 4+ (расчет = ничего, тип сброса = группа, группа сброса = ведро и выражение выражения = $ F {bucket}). Затем создайте еще две переменные, чтобы удерживать результаты «2-4 +» и «3-4 +» (расчет = ничего, выражение value = $ V {bucket_2} - $ V {bucket_4} и $ V {bucket_3} - $ V {bucket_4}). Убедитесь, что переменные, которые хранят результаты в виде ведра, объявляются перед переменными вычисления. Отобразите выходные данные ваших вычислений в нижнем колонтитуле группы.

0

Для 2-4 +, создать новую переменную и установить ее переменной выражение к:

$V{REPORT_COUNT} > 1 ? $F{Amt} : 0 

3-4 +, создать новую переменную и установить его переменной выражение к:

$V{REPORT_COUNT} > 2 ? $F{Amt} : 0 
Смежные вопросы