JSON ireport 中的数组
JSON Array in ireport
我正在使用 ireport 和 json 数据源来生成报告,
问题是 ireport 没有在 json 数组中循环,
我的JSON文件内容是,
{
"PartOn":[
{
"TypeOfPart":"Rotable"
},
{
"TypeOfPart":"Rotable1"
}]
}
我的 jrxml 文件内容是,
<?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="Test" language="groovy" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="746af965-a199-4603-be60-5c5ee40d397c">
<queryString language="json">
<![CDATA[PartOn]]>
</queryString>
<field name="TypeOfPart" class="java.lang.String">
<fieldDescription><![CDATA[TypeOfPart]]></fieldDescription>
</field>
<background>
<band splitType="Stretch"/>
</background>
<columnHeader>
<band height="61" splitType="Stretch">
<staticText>
<reportElement x="280" y="2" width="100" height="20" uuid="ea8134cf-d2db-46ea-923f-5f1feadbd50e"/>
<text><![CDATA[PartOn.TypeOfPart]]></text>
</staticText>
</band>
</columnHeader>
<detail>
<band height="125" splitType="Stretch">
<textField>
<reportElement x="280" y="68" width="100" height="20" uuid="66712268-3adc-4c5e-bbd4-f77fe1a83b18"/>
<textFieldExpression><![CDATA[$F{TypeOfPart}]]></textFieldExpression>
</textField>
</band>
</detail>
</jasperReport>
当我查看报表时,报表中没有打印任何值。
帮我解决
我找到了一个解决方案,在 json 创建数据源期间的 ireport 中我已经提到
"Use the report JSON expression when filling the report"
这解决了问题。
我正在使用 ireport 和 json 数据源来生成报告,
问题是 ireport 没有在 json 数组中循环,
我的JSON文件内容是,
{
"PartOn":[
{
"TypeOfPart":"Rotable"
},
{
"TypeOfPart":"Rotable1"
}]
}
我的 jrxml 文件内容是,
<?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="Test" language="groovy" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="746af965-a199-4603-be60-5c5ee40d397c">
<queryString language="json">
<![CDATA[PartOn]]>
</queryString>
<field name="TypeOfPart" class="java.lang.String">
<fieldDescription><![CDATA[TypeOfPart]]></fieldDescription>
</field>
<background>
<band splitType="Stretch"/>
</background>
<columnHeader>
<band height="61" splitType="Stretch">
<staticText>
<reportElement x="280" y="2" width="100" height="20" uuid="ea8134cf-d2db-46ea-923f-5f1feadbd50e"/>
<text><![CDATA[PartOn.TypeOfPart]]></text>
</staticText>
</band>
</columnHeader>
<detail>
<band height="125" splitType="Stretch">
<textField>
<reportElement x="280" y="68" width="100" height="20" uuid="66712268-3adc-4c5e-bbd4-f77fe1a83b18"/>
<textFieldExpression><![CDATA[$F{TypeOfPart}]]></textFieldExpression>
</textField>
</band>
</detail>
</jasperReport>
当我查看报表时,报表中没有打印任何值。
帮我解决
我找到了一个解决方案,在 json 创建数据源期间的 ireport 中我已经提到
"Use the report JSON expression when filling the report"
这解决了问题。