2014-01-12 3 views
-1

Я хочу применить на своем компоненте Table группу для отображения иерархически данных.Применить группу в таблице

У меня есть Java объект с именем MASTER.

это имеет два атрибута:

  • имя (строка)
  • lstInfo (список другого объекта с именем SLAVE)

Я хочу построить таблицу сгруппированных по master.name показать все lstInfo подключен к хозяин объект.

Я пытаюсь добавить в моем компоненте DataSet атрибут группы и моя таблица определена таким образом:

  • Первый столбец Имя
  • Второй столбец lstInfo

Но когда я запустите мой отчет, покажите эту ошибку:

Infinite loop creating new page due to column header overflow. 

Для получения дополнительной информации: Я использую IReport 5.2.0, как IDE, чтобы сделать мой доклад

EDIT

<jr:column width="90" uuid="e562503c-d39f-47e3-b50a-04669ebe1d33"> 
    <jr:tableHeader style="table 1_TH" height="30"/> 
    <jr:tableFooter style="table 1_TH" height="30"/> 
    <jr:groupHeader groupName="grpMaster"> 
     <jr:cell style="table 1_TH" height="30"> 
      <textField> 
       <reportElement uuid="e7e52c98-1631-4237-a11b-6167acbf4e01" x="0" y="0" width="90" height="20"/> 
       <textElement/> 
       <textFieldExpression><![CDATA[""+$F{master.name}]]></textFieldExpression> 
      </textField> 
     </jr:cell> 
    </jr:groupHeader> 
    <jr:groupFooter groupName="grpMaster"> 
     <jr:cell style="table 1_TH" height="30"/> 
    </jr:groupFooter> 
    <jr:columnHeader style="table 1_CH" height="30"> 
     <staticText> 
      <reportElement uuid="85a422bc-2d60-4cd2-8058-ffbc8f18b69c" x="0" y="0" width="90" height="30"/> 
      <textElement/> 
      <text><![CDATA[master.name]]></text> 
     </staticText> 
    </jr:columnHeader> 
    <jr:columnFooter style="table 1_CH" height="30"/> 
    <jr:detailCell style="table 1_TD" height="20"/> 
</jr:column> 
<jr:column width="90" uuid="e47bd6ce-098d-447c-ae54-0639110ce45e"> 
    <jr:tableHeader style="table 1_TH" height="30"/> 
    <jr:tableFooter style="table 1_TH" height="30"/> 
    <jr:groupHeader groupName="grpMaster"> 
     <jr:cell style="table 1_TH" height="30"/> 
    </jr:groupHeader> 
    <jr:groupFooter groupName="grpMaster"> 
     <jr:cell style="table 1_TH" height="30"/> 
    </jr:groupFooter> 
    <jr:columnHeader style="table 1_CH" height="30"> 
     <staticText> 
      <reportElement uuid="de0366d9-3e7e-42ce-a755-279bcbbf4b81" x="0" y="0" width="90" height="30"/> 
      <textElement/> 
      <text><![CDATA[lstInfo]]></text> 
     </staticText> 
    </jr:columnHeader> 
    <jr:columnFooter style="table 1_CH" height="30"/> 
    <jr:detailCell style="table 1_TD" height="20"> 
     <textField> 
      <reportElement uuid="2a8a5b05-49df-4f92-8cb0-65a2166ebf87" x="0" y="0" width="90" height="20"/> 
      <textElement/> 
      <textFieldExpression><![CDATA[""+$F{lstInfo}]]></textFieldExpression> 
     </textField> 
    </jr:detailCell> 
</jr:column> 
+0

Не могли бы вы вставить свой jrxml здесь? Было бы легче отладить ошибку. –

ответ

0

Я изменил свою точку зрения.

Вместо этого используйте объект с коллекцией, я создал матрицу данных.

Таким образом, я могу группировать из набора полей и таблицы правильно.

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