2013-07-27 10 views
5

Ich habe einen Bericht erstellt, der im Grunde eine Arbeitszeittabelle für den Mitarbeiter auszufüllen ist, also eine Tabelle, wo eine Zeile mit den Daten des Mitarbeiters vorgefüllt werden soll (zB: Name/Familienname, Nachname…).Füllen Sie den verbleibenden Platz auf der Seite mit dem statischen Feld

Meine SQL-Abfrage ruft 16 Mitarbeiterdatensätze ab. Eine Seite enthält nur 13 Zeilen, sodass automatisch eine zweite Seite für die letzten 3 Zeilen erstellt wird. Mein Problem (und meine Anforderung) besteht darin, eine zweite Seite mit 13 Zeilen zu erstellen, von denen 3 mit Datensätzen gefüllt werden und 10 von ihnen leer bleiben. Hier

ein Beispiel:

enter image description here

Wie kann ich das tun?

Was ist, wenn ich eine Extra-Seite mit 13 Leerzeilen erstellen möchte?

Kann mir bitte jemand helfen?

+0

Möchten Sie die festen Zeilen oder die dynamische Anzahl hinzufügen (hängt vom "freien" Platz auf der Seite ab)? –

+0

Eigentlich wäre es besser, es dynamisch zu machen, um zu vermeiden, zu viel Zeit zu verlieren, wenn sich die Höhe einer Zeile ändert. –

Antwort

-2

Ich habe meine Antwort auf die Jaspersoft communauty Forum: http://community.jaspersoft.com/questions/817708/resolved-how-fill-reports-blank-space-empty-row-table

Das Prinzip ist der Hintergrund der Band zu gestalten, ist hier in einem Beispiel des Modells:

<background> 
<band height="555" splitType="Stretch"> 
<rectangle> 
<reportElement uuid="ee3fa6a5-eddb-4b38-b834-f2658bcf92d1" x="0" y="59" width="800" height="427"/> 
</rectangle> 
<line> 
<reportElement uuid="4494e946-4ff5-4d57-b3eb-9d64eda302c4" x="0" y="95" width="800" height="1"/> 
</line> 
<line> 
<reportElement uuid="4494e946-4ff5-4d57-b3eb-9d64eda302c4" x="0" y="125" width="800" height="1"/> 
</line> 
<line> 
<reportElement uuid="4494e946-4ff5-4d57-b3eb-9d64eda302c4" x="0" y="155" width="800" height="1"/> 
</line> 
<line> 
<reportElement uuid="4494e946-4ff5-4d57-b3eb-9d64eda302c4" x="0" y="185" width="800" height="1"/> 
</line> 
<line> 
<reportElement uuid="4494e946-4ff5-4d57-b3eb-9d64eda302c4" x="0" y="215" width="800" height="1"/> 
</line> 
<line> 
<reportElement uuid="4494e946-4ff5-4d57-b3eb-9d64eda302c4" x="0" y="245" width="800" height="1"/> 
</line> 
<line> 
<reportElement uuid="4494e946-4ff5-4d57-b3eb-9d64eda302c4" x="0" y="275" width="800" height="1"/> 
</line> 
<line> 
<reportElement uuid="4494e946-4ff5-4d57-b3eb-9d64eda302c4" x="0" y="305" width="800" height="1"/> 
</line> 
<line> 
<reportElement uuid="4494e946-4ff5-4d57-b3eb-9d64eda302c4" x="0" y="335" width="800" height="1"/> 
</line> 
<line> 
<reportElement uuid="4494e946-4ff5-4d57-b3eb-9d64eda302c4" x="0" y="365" width="800" height="1"/> 
</line> 
<line> 
<reportElement uuid="4494e946-4ff5-4d57-b3eb-9d64eda302c4" x="0" y="395" width="800" height="1"/> 
</line> 
<line> 
<reportElement uuid="4494e946-4ff5-4d57-b3eb-9d64eda302c4" x="0" y="425" width="800" height="1"/> 
</line> 
<line> 
<reportElement uuid="4494e946-4ff5-4d57-b3eb-9d64eda302c4" x="0" y="455" width="800" height="1"/> 
</line> 
<line> 
<reportElement uuid="01f3d5fc-9d23-4c7b-96cf-0ff7b3285400" x="160" y="59" width="1" height="427"/> 
</line> 
<line> 
<reportElement uuid="01f3d5fc-9d23-4c7b-96cf-0ff7b3285400" x="320" y="59" width="1" height="427"/> 
</line> 
<line> 
<reportElement uuid="01f3d5fc-9d23-4c7b-96cf-0ff7b3285400" x="480" y="59" width="1" height="427"/> 
</line> 
<line> 
<reportElement uuid="01f3d5fc-9d23-4c7b-96cf-0ff7b3285400" x="639" y="59" width="1" height="427"/> 
</line> 
</band> 
</background> 
0

Es hängt davon ab, welche Datenquelle Sie verwenden ... Wenn Sie JavaBeans als Datenquelle verwenden, kann dies einfach durchgeführt werden. Fügen Sie einfach 10 Bohnen (mit Null-Werten) und wholla ... Sie erhalten 3 (vorherige Seite Rekord) + 10 (leere Datensätze) auf der zweiten Seite .... Darüber hinaus bestehen Sie darauf, Ihre 13 Datensätze in einzelne Seite abzuschließen Indem Sie die Größe der Zellen in einer Tabelle dekrementieren oder auflisten, was immer Sie in Ihrem Bericht haben.

1

Zeichnen Sie ein Raster auf dem Hintergrundband, und ändern Sie die Eigenschaft opaque in allen anderen Bändern auf True.

0

Ich habe das gleiche Problem und das hat mir geholfen. Klicken Sie auf die Tabelle in der jrxml-Datei auf der Designer-Registerkarte, gehen Sie zu den Eigenschaften und schreiben Sie '$ V {REPORT_COUNT} == 1' in das Ausdrucksfeld. Stellen Sie sicher, dass Sie die Option "Zeile entfernen, wenn sie leer ist" aktiviert haben.

Verwandte Themen