2014-10-22 5 views
2

Преамбула: У меня есть перекрестный вроде следующего:Как динамически удалять столбцы кросс

  • групп строк: месяц, с января сделать декабря;
  • Группы столбцов: наименование;
  • Итоговая колонка и итоговая сумма.

На самом деле это показывает общую сумму денег, потраченную в параметрический год для каждого человека в БД. My datasource - это база данных Postgres, я получаю данные с запросом.

В моей БД Я использую некоторые «пустые» записи для частичных выделений: поскольку мне нужно показать все месяцы, и я запускаю это, например, в мае, мне нужно будет показывать все месяцы с января до декабря.

My DB выглядит следующим образом:

ID | NAME | MONTH  | YEAR | MONEY 
    1 | Marco | January | 2014 | 150.0 
    2 | Marco | February | 2014 | 80.0 
    3 | Marco | March  | 2014 | 135.5 
    4 | Marco | April  | 2014 | 50.0 
    5 | Marco | May  | 2014 | 200.0 
    6 |  | June  | 2014 | 0.0 
    7 |  | July  | 2014 | 0.0 
    8 |  | August | 2014 | 0.0 
    9 |  | September | 2014 | 0.0 
    10 |  | October | 2014 | 0.0 
    11 |  | November | 2014 | 0.0 
    12 |  | December | 2014 | 0.0 

Первых 5 строк, является примером «обычной» записи, остальные о «взломе» те, которые мне нужны для 12 месяцев перекрестном стола на мой отчет.

Проблема: Это решение приводит меня к таблице кросс-таблицы, которая имеет пустой столбец, если я запускаю этот отчет с января по ноябрь. Если декабрь заполнен, он не показывает пустой столбец.

Как:

  |   | Marco | Mario | Luigi | Total 
    January | 0.0 | 150.0 | 150.0 | 150.0 | 450.0 
    February | 0.0 | 80.0 | 80.0 | 80.0 | 240.0 
    March  | 0.0 | 135.5 | 135.5 | 135.5 | 406.5 
    April  | 0.0 | 50.0 | 50.0 | 50.0 | 150.0 
    May  | 0.0 | 200.0 | 200.0 | 200.0 | 600.0 
    June  | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 
    July  | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 
    August | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 
    September | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 
    October | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 
    November | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 
    December | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 
    TOTAL  | 0.0 | 615.5 | 615.5 | 615.5 | 1846.5 

Expectation:

  | Marco | Mario | Luigi | Total 
    January | 150.0 | 150.0 | 150.0 | 450.0 
    February | 80.0 | 80.0 | 80.0 | 240.0 
    March  | 135.5 | 135.5 | 135.5 | 406.5 
    April  | 50.0 | 50.0 | 50.0 | 150.0 
    May  | 200.0 | 200.0 | 200.0 | 600.0 
    June  | 0.0 | 0.0 | 0.0 | 0.0 
    July  | 0.0 | 0.0 | 0.0 | 0.0 
    August | 0.0 | 0.0 | 0.0 | 0.0 
    September | 0.0 | 0.0 | 0.0 | 0.0 
    October | 0.0 | 0.0 | 0.0 | 0.0 
    November | 0.0 | 0.0 | 0.0 | 0.0 
    December | 0.0 | 0.0 | 0.0 | 0.0 
    TOTAL  | 615.5 | 615.5 | 615.5 | 1846.5 

Вопрос: Как я могу скрыть "пустой" колонку? Есть ли способ сделать это крахом?

EDIT: Я попытался сделать «пустой» столбец полностью пустым, отредактировав выражение мер, которые будут отображаться «пустым», если также указано «Столбец». Затем как в столбце, так и в ячеистой ячейке я проверил опцию «remove if blank» без результата. Между месяцами и остальной частью кросс-таблицы все еще остается место. Вот что я получил в настоящее время:

  |   | Marco | Mario | Luigi | Total 
    January |   | 150.0 | 150.0 | 150.0 | 450.0 
    February |   | 80.0 | 80.0 | 80.0 | 240.0 
    March  |   | 135.5 | 135.5 | 135.5 | 406.5 
    April  |   | 50.0 | 50.0 | 50.0 | 150.0 
    May  |   | 200.0 | 200.0 | 200.0 | 600.0 
    June  |   | 0.0 | 0.0 | 0.0 | 0.0 
    July  |   | 0.0 | 0.0 | 0.0 | 0.0 
    August |   | 0.0 | 0.0 | 0.0 | 0.0 
    September |   | 0.0 | 0.0 | 0.0 | 0.0 
    October |   | 0.0 | 0.0 | 0.0 | 0.0 
    November |   | 0.0 | 0.0 | 0.0 | 0.0 
    December |   | 0.0 | 0.0 | 0.0 | 0.0 
    TOTAL  |   | 615.5 | 615.5 | 615.5 | 1846.5 
+0

Не могли бы вы предоставить ваш текущий запрос? – Houari

ответ

0

Это невозможно удалить столбцы кросс-таблицы с помощью IReport.