JasperReports Tutorial - 3 - Struttura del Report jrxml
I report JasperReports sono dei file in formato xml, con estensione .jrxml. Nell'articolo precedente abbiamo usato il wizard per generare rapidamente il nostro report, adesso incominceremo ad analizzare la struttura del report.
Analizziamo la struttura base del report, che otteniamo con ireport quando scegliamo di generare un report vuoto.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE jasperReport PUBLIC "-//JasperReports//DTD JasperReport//EN" "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">
<jasperReport name="report name" pageWidth="595" pageHeight="842"
columnWidth="535" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
<background> <band/> </background>
<title> <band height="79"/> </title>
<pageHeader> <band height="35"/> </pageHeader>
<columnHeader> <band height="61"/> </columnHeader>
<detail> <band height="125"/> </detail>
<columnFooter> <band height="45"/> </columnFooter>
<pageFooter> <band height="54"/> </pageFooter>
<summary> <band height="42"/> </summary>
</jasperReport>
Analizziamo in dettaglio gli elementi che compongono la struttura del report:
- l'elemento jasperReport è la root del file xml
- l'elemento background contiene i dati dello sfondo
- l'elemento title viene stampato una sola volta all'inizio del report
- l'elemento pageHeader viene stampato all'inizio di ogni pagina. Consiste nella testata di pagina.
- l'elemento columnHeader viene stampato all'inizio di ogni pagina che contiene una banda di tipo detail. L'elemento viene stampato in testa ad ogni colonna
- l'elemento detail viene stampato per ogni record del datasource
- l'elemento columnFooter viene stampato alla fine di ogni pagina che contiene una banda di tipo detail. L'elemento viene stampato in coda ad ogni colonna.
- l'elemento pageFooter viene stampato alla fine di ogni pagina. Consiste nel piè di pagina.
- l'elemento summary viene stampato alla fine del report
L'utente può aggiungere elementi ad ogni sezione per costruire l'aspetto grafico del report.
Inoltre è possibile aggiungere i seguenti elementi per gestire il report:
- stili (tag style) --> Gli stili intervengono sull'aspetto grafico del report
- parametri (tag parameter) --> i parametri sono valori che vengono passati al report direttamente dall'utente
- variabili (tag variable) --> le variabile vengono usate per elaborazioni interne al report
- campi (tag field) --> i campi vengono estratti dal datasource associato al report