Ошибка приращения набора данных кросс-таблицы - PullRequest
10 голосов
/ 05 апреля 2011

У меня есть источник данных, который состоит из объекта {groupName, rowName, colName, value}. Я пытаюсь поместить поля row, col, val в кросс-таблицу, разделенные группой [группа имеет заголовки]. Коллекция объектов данных хранится в качестве основного источника данных.

Я получаю сообщение об ошибке при попытке сделать это:

net.sf.jasperreports.engine.JRRuntimeException: Error incrementing crosstab dataset
    net.sf.jasperreports.engine.fill.JRFillCrosstab$JRFillCrosstabDataset.customIncrement(JRFillCrosstab.java:762)
    net.sf.jasperreports.engine.fill.JRFillElementDataset.increment(JRFillElementDataset.java:193)
    net.sf.jasperreports.engine.fill.JRCalculator.calculateVariables(JRCalculator.java:162)
    net.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(JRVerticalFiller.java:747)

У кого-нибудь есть предложения, почему это происходит или как это исправить?

Ответы [ 2 ]

19 голосов
/ 05 апреля 2011

Я нашел следующее, что может помочь: *

Что "кросс-таблица данных уже была обработано "означает исключение?

Это исключение выдается, если больше данных добавляется в набор данных кросс-таблицы после кросс-таблица уже была оказаны.
Это обычно происходит, когда элемент кросс-таблицы связан с основным набор данных отчета (не использует запуск набора данных) и resetType атрибут набора данных кросс-таблицы делает не соответствует месту, где находится кросс-таблица оказано.
Кросстабы особенные компоненты, которые отображают агрегированные данные. И когда они связаны с Основной набор данных отчета, вы просто не могу поместить их в подробный раздел, потому что нет данных для агрегирования из одной записи.
Такие кросс-таблицы может находиться только в нижнем колонтитуле группы или в кратком разделе отчета и иметь соответствующий resetType значение, так что их набор данных инициализируется каждый раз после того, как они оказаны.
Если вы все еще думаете, что вам нужно сделать одну кросс-таблицу для каждой детали в мастер-документе, то почти конечно эта кросс-таблица должна быть связан с набором данных, а не с основной набор данных отчета.

Вы, должно быть, пытаетесь поместить все данные в подробный раздел, что не позволит компоненту кросс-таблицы объединить все ваши данные.

* jasperforge.org

0 голосов
/ 29 марта 2017

поместите CrossTab в летнюю секцию и удалите все остальные полосы, чтобы правильно выровнять CrossTabЯ работаю с jasperstudio, и этот метод исправил проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...