Ano ang JRXML file?
Ang isang JRXML file ay nilikha ng JasperReports at naglalaman ng kahulugan ng disenyo sa sikat na XML na format ng file. Iniimbak nito ang lahat ng mga elemento ng disenyo tulad ng layout ng ulat, mga patlang ng teksto, mga larawan, mga tsart, mga parameter, at mga variable. Ang JasperReports ay isang Java library na ginagamit para sa paglikha ng mga ulat sa pamamagitan ng programmatically sa pamamagitan ng pagkuha ng data mula sa backend database at storage media.
JRXML File Format
Ang mga JRXML file ay mga plain text file na nilikha batay sa XML file format. Maaaring pangasiwaan ng JasperReport framework ang iba’t ibang uri ng data source. Kapag na-compile ang isang .jrxml file, nagreresulta ito sa .jasper file bilang output. Ang isang jrxml file ay binubuo ng isang hanay ng mga seksyon. Ang ilang mga seksyon ay naglalaman ng impormasyon na nauugnay sa mga pisikal na katangian ng pahina tulad ng dimensyon ng pahina, pagpoposisyon ng mga patlang, at taas ng mga banda, habang ang ilan ay may kinalaman sa mga lohikal na katangian tulad ng deklarasyon ng mga parameter at variable at ang kahulugan ng isang query para sa pagpili ng data.
Halimbawa ng JRXML file
Ang isang simpleng halimbawa ng JRXML file ay ipinapakita sa ibaba.
<a name="kanchor14"></a><?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports
http://jasperreports.sourceforge.net/xsd/jasperreport.xsd"
name="My first report" pageWidth="595" pageHeight="842" columnWidth="535"
leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
<queryString language="SQL">
<![CDATA[select * from address order by city]]>
</queryString>
<field name="ID" class="java.lang.Integer">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="FIRSTNAME" class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="LASTNAME" class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="STREET" class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="CITY" class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<group name="CITY">
<groupExpression><![CDATA[$F{CITY}]]></groupExpression>
<groupHeader>
<band height="27">
<staticText>
<reportElement mode="Opaque" x="0" y="0" width="139" height="27"
forecolor="#FFFFFF" backcolor="#000000"/>
<textElement>
<font size="18"/>
</textElement>
<text><![CDATA[CITY]]></text>
</staticText>
<textField hyperlinkType="None">
<reportElement mode="Opaque" x="139" y="0" width="416" height="27"
forecolor="#FFFFFF" backcolor="#000000"/>
<textElement>
<font size="18" isBold="true"/>
</textElement>
<textFieldExpression class="java.lang.String"><![CDATA[$F{CITY}]]>
</textFieldExpression>
</textField>
</band>
</groupHeader>
<groupFooter>
<band height="8">
<line direction="BottomUp">
<reportElement key="line" x="1" y="4" width="554" height="1"/>
</line>
</band>
</groupFooter>
</group>
<background>
<band/>
</background>
<title>
<band height="58">
<line>
<reportElement x="0" y="8" width="555" height="1"/>
</line>
<line>
<reportElement positionType="FixRelativeToBottom" x="0" y="51" width="555"
height="1"/>
</line>
<staticText>
<reportElement x=”65” y=”13” width ”424” height=”35”/>
<textElement textAlignment=”Center”>
<font size=”26” isBold=”true”/>
</textElement>
<text><![CDATE[Classic template]]> </text>
</staticText>
</band>
</title>
<pageHeader>
<band/>
</pageHeader>
<columnHeader>
<band height="18">
<staticText>
<reportElement mode="Opaque" x="0" y="0" width="138" height="18"
forecolor="#FFFFFF" backcolor="#999999"/>
<textElement>
<font size="12"/>
</textElement>
<text><![CDATA[ID]]></text>
</staticText>
<staticText>
<reportElement mode="Opaque" x="138" y="0" width="138" height="18"
forecolor="#FFFFFF" backcolor="#999999"/>
<textElement>
<font size="12"/>
</textElement>
<text><![CDATA[FIRSTNAME]]></text>
</staticText>
<staticText>
<reportElement mode="Opaque" x="276" y="0" width="138" height="18"
forecolor="#FFFFFF" backcolor="#999999"/>
<textElement>
<font size="12"/>
</textElement>
<text><![CDATA[LASTNAME]]></text>
</staticText>
<staticText>
<reportElement mode="Opaque" x="414" y="0" width="138" height="18"
forecolor="#FFFFFF" backcolor="#999999"/>
<textElement>
<font size="12"/>
</textElement>
<text><![CDATA[STREET]]></text>
</staticText>
</band>
</columnHeader>
Ang mga sumusunod ay ang mga detalye ng halimbawa.
<queryString>
− Ito ay walang laman (habang kami ay nagpapasa ng data sa Java Beans). Karaniwang naglalaman ng SQL statement, na kumukuha ng resulta ng ulat.
<pangalan ng field>
− Ginagamit ang elementong ito upang mag-map ng data mula sa mga pinagmumulan ng data o mga query, sa mga template ng ulat. muling ginagamit ang pangalan sa katawan ng ulat at case-sensitive.
<fieldDescription>
− Minamapa ng elementong ito ang pangalan ng field gamit ang naaangkop na elemento sa XML file.
<staticText>
− Tinutukoy nito ang static na text na hindi nakadepende sa anumang datasource, variable, parameter, o expression ng ulat.
<band>
− Ang mga banda ay naglalaman ng data, na ipinapakita sa ulat.