2016-01-28 4 views
2

Я использую iReport 5.6.0, и я хочу создать новую страницу для каждой группы.Новая страница для каждой группы в iReport

К примеру у меня есть таблица people_i_know:

Id| Name | State 
1 | Tom | friends 
2 | Jim | friends 
3 | Mike | enemy 
4 | Alex | friends 
5 | Julie| enemy 

My SQL должен быть таким:

SELECT Id,Name,State FROM people_i_know GROUP BY State; 

И в этом примере иРепорт должен дать мне две страницы с подробной группы, как это:

Это должно быть на странице 1.

1 | Tom | friends 
2 | Jim | friends 
4 | Alex | friends 

И это должно быть на странице 2.

3 | Mike | enemy 
5 | Julie| enemy 

Как мне сделать, что иРепорт сделать что-то вроде этого?

ответ

2

Вам не нужно сгруппировать в запросе, просто заказать их

SELECT Id,Name,State FROM people_i_know State ORDER BY State; 

в jrxml

вы будете иметь поле относительно State колонны

<field name="State" class="java.lang.String"> 
    <fieldDescription><![CDATA[]]></fieldDescription> 
</field> 

создать группу на State с атрибутом isStartNewPage="true"

<group name="State" isStartNewPage="true"> 
    <groupExpression><![CDATA[$F{State}]]></groupExpression> 
</group> 

и теперь просто положить поля, которые Вы хотите отобразить в detail группе

+0

Это работает фантастически! Спасибо, мой друг. –

+0

Ваш прием получайте удовольствие! –

Смежные вопросы