2016-05-11 7 views
0

Ich möchte wissen, ist das Ändern der Eigenschaften Wert von Feldern in iReport, mit Java externe Anwendung.
Ist es möglich, eine erstellte iReport-Datei (jrxml) durch Java externe App zu ändern

Zum Beispiel erstelle ich zuerst einen Berichtsnamen abc.jrxml. Hier ist ein Teil des XML-Codes der abc.jrxml-Datei.

<reportElement x="117" y="2" width="65" height="20" uuid="2f281676-e098-4213-b1d3-57b845960b2a"/> 

Ich möchte ändern, dass die Werte: x = "117" bis x = "200". Höhe = "20" bis Höhe = "25". Ich möchte es mit Java-Befehlen ausprobieren. Ist das möglich oder nicht? Wenn es möglich ist, wie kann ich es machen.

+1

Sie Jasper API verwenden können. Es gibt eine Menge von Proben mit dieser Bibliothek –

+0

@AlexK Vielen Dank Sir –

+0

@PetterFriberg einen interessanten Link. Danke, mein Herr.! –

Antwort

2

Wie Alex K. darauf hingewiesen hat, besteht die beste Möglichkeit zum Ändern von Attributen mit einer Java-Anwendung darin, Berichte mit der Jasper Reports-API zu erstellen.

Zum Beispiel in einer Antwort auf http://community.jaspersoft.com/questions/525188/dynamic-width-textfied-parameter die Breite eines Objekts geändert wurde, bevor der Bericht generiert wurde:

JasperDesign design = xmlLoader.loadXML(..jrxmlStream..); 
JRElement[] elements = design.getDetail().getElements(); 
String elementKey = ..key of element to modify..; 
int newWidth = ..new element width..; 
for (int i = 0; i < elements.length; i++) 
{ 
    JRDesignElement element = (JRDesignElement) elements[i]; 
    if (elementKey.equals(element.getKey())) { 
     element.setWidth(newWidth); 
    } 
} 

Sie setHeight zusätzlich nutzen können, setX() und setY() die Elemente Eigenschaften zu ändern.

Weitere Informationen finden Sie hier: http://community.jaspersoft.com/wiki/jasperreports-library-reference-materials

+0

@ tobi6 Danke, mein Herr. Du hast mein Problem gelöst. –

+0

@MartinWickman Stimmen Sie mit Ihnen überein. –