官术网_书友最值得收藏!

Typical Workflow

The flow chart overleaf illustrates the typical workflow while creating reports with JasperReports:

Typical Workflow

When working with JasperReports, the first step is to create a report template as an XML file. XML report templates can be hand-coded or generated by a graphical report designer. Even though JasperReports' report templates are XML files, template filenames are given an extension of .jrxml. JasperReports XML templates are commonly referred to as JRXML files, which is the term we will use for them in this book.

Here is what a typical JRXML file looks like. We will discuss JRXML files in detail in Chapter 4.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE jasperReport PUBLIC "http://JasperReports//DTD Report Design//EN" "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">
<jasperReport name="simple_template">
<title>
<band height="50">
</band>
</title>
<pageHeader>
<band height="50">
</band>
</pageHeader>
<columnHeader>
<band height="30">
</band>
</columnHeader>
<detail>
<band height="100">
</band>
</detail>
<columnFooter>
<band height="30">
</band>
</columnFooter>
<pageFooter>
<band height="50">
</band>
</pageFooter>
<lastPageFooter>
<band height="50">
</band>
</lastPageFooter>
<summary>
<band height="50">
</band>
</summary>
</jasperReport>

The JRXML file here mostly illustrates the main elements of a JRXML file. All elements in the file are optional except for the root<jasperReport> element. The above JRXML file, when compiled and filled, will generate an empty report; not very useful in its own right, but it can be used as a template for creating more useful reports. As can be seen in the above example, each main element of the JRXML file contains a<band> element as its only child element. Bands contain the data that is displayed in the report. In the above example, all bands are empty. In real JRXML files, bands contain child elements that are used to position, format, and display the actual report data, both textual and graphical. There are commercial and open-source visual design tools that can aid in the development of JRXML files. iReport, the official JasperReports graphical report designer, is covered in detail in Chapter 10.

JRXML files are compiled into a JasperReports native binary template, either programmatically by calling the appropriate methods on the JasperReports class library (compileReportToFile()), or by using a custom ANT task (used to compile multiple XML report design files in a single operation, by specifying the root directory that contains those files or by selecting them using file patterns) provided by JasperReports. The resulting compiled template is commonly known as the Jasper file, and is typically saved to disk with a .jasper extension. The Jasper file is then used to generate the final report, by providing it with its required data. This process is known as filling the report. A JRXML file has to be compiled only once. The generated Jasper file can be filled as many times as necessary to create and display reports.

Filled reports can be saved to disk in a JasperReports native format. Reports saved in this format are known as JasperPrint files. JasperPrint file names have a .jrprint extension. JasperPrint files can only be viewed with a JasperReports-specific viewer. JasperPrint files can be exported to other formats so that they can be opened with commonly available tools like PDF viewers and word processors. Exporting to other formats is discussed in detail in Chapter 9.

主站蜘蛛池模板: 海丰县| 昌平区| 南乐县| 佛山市| 齐河县| 烟台市| 三明市| 涞水县| 娄烦县| 玉树县| 义马市| 巴彦淖尔市| 绍兴市| 喀喇| 张家界市| 松溪县| 同心县| 南涧| 合肥市| 舒兰市| 平度市| 桃江县| 托里县| 浪卡子县| 乡城县| 奈曼旗| 涡阳县| 得荣县| 西乌| 扎鲁特旗| 杨浦区| 滦平县| 闵行区| 霍州市| 西充县| 建始县| 富顺县| 高安市| 印江| 买车| 台北市|