Jasper reports JasperReports:如何在两列中显示数据

Jasper reports JasperReports:如何在两列中显示数据,jasper-reports,Jasper Reports,这是我当前的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/jas

这是我当前的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="report1" language="groovy" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="18199607-277f-4e05-b2ba-be2f5d89e7d5">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<queryString>
    <![CDATA[SELECT
 language.`id` AS language_id,
 language.`name` AS language_name
FROM
 `language` language]]>
</queryString>
<field name="language_id" class="java.lang.Long"/>
<field name="language_name" class="java.lang.String"/>
<title>
    <band height="20" splitType="Stretch">
        <staticText>
            <reportElement uuid="662306ce-d3df-4306-b320-e89a92485da3" x="0" y="0" width="555" height="20"/>
            <textElement textAlignment="Center" verticalAlignment="Middle">
                <font size="14" isBold="true" isItalic="true" isUnderline="true" isStrikeThrough="false"/>
            </textElement>
            <text><![CDATA[Languages]]></text>
        </staticText>
    </band>
</title>
<detail>
    <band height="41" splitType="Stretch">
        <textField>
            <reportElement uuid="1f1d2c1a-bafd-4095-9c7a-e0a48c20a82f" x="23" y="14" width="231" height="20"/>
            <textElement/>
            <textFieldExpression><![CDATA[$F{language_name}]]></textFieldExpression>
        </textField>
        <textField>
            <reportElement uuid="1f1d2c1a-bafd-4095-9c7a-e0a48c20a82f" x="301" y="14" width="235" height="20"/>
            <textElement/>
            <textFieldExpression><![CDATA[$F{language_name}]]></textFieldExpression>
        </textField>
        <textField>
            <reportElement uuid="52cb1ba3-4bdd-4b18-877e-0c40f70d073d" x="0" y="14" width="23" height="20"/>
            <textElement/>
            <textFieldExpression><![CDATA[$F{language_id}]]></textFieldExpression>
        </textField>
        <textField>
            <reportElement uuid="52cb1ba3-4bdd-4b18-877e-0c40f70d073d" x="278" y="14" width="23" height="20"/>
            <textElement/>
            <textFieldExpression><![CDATA[$F{language_id}]]></textFieldExpression>
        </textField>
    </band>
</detail>
</jasperReport>

这是我的输出:

我需要这个:


因此,如何从列表中以两列显示数据。

您应该将报表的属性打印顺序(printOrder)值设置为水平,并将报表的属性列(columnCount)值设置为2

样本 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="report1" language="groovy" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="18199607-277f-4e05-b2ba-be2f5d89e7d5">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<queryString>
    <![CDATA[SELECT
 language.`id` AS language_id,
 language.`name` AS language_name
FROM
 `language` language]]>
</queryString>
<field name="language_id" class="java.lang.Long"/>
<field name="language_name" class="java.lang.String"/>
<title>
    <band height="20" splitType="Stretch">
        <staticText>
            <reportElement uuid="662306ce-d3df-4306-b320-e89a92485da3" x="0" y="0" width="555" height="20"/>
            <textElement textAlignment="Center" verticalAlignment="Middle">
                <font size="14" isBold="true" isItalic="true" isUnderline="true" isStrikeThrough="false"/>
            </textElement>
            <text><![CDATA[Languages]]></text>
        </staticText>
    </band>
</title>
<detail>
    <band height="41" splitType="Stretch">
        <textField>
            <reportElement uuid="1f1d2c1a-bafd-4095-9c7a-e0a48c20a82f" x="23" y="14" width="231" height="20"/>
            <textElement/>
            <textFieldExpression><![CDATA[$F{language_name}]]></textFieldExpression>
        </textField>
        <textField>
            <reportElement uuid="1f1d2c1a-bafd-4095-9c7a-e0a48c20a82f" x="301" y="14" width="235" height="20"/>
            <textElement/>
            <textFieldExpression><![CDATA[$F{language_name}]]></textFieldExpression>
        </textField>
        <textField>
            <reportElement uuid="52cb1ba3-4bdd-4b18-877e-0c40f70d073d" x="0" y="14" width="23" height="20"/>
            <textElement/>
            <textFieldExpression><![CDATA[$F{language_id}]]></textFieldExpression>
        </textField>
        <textField>
            <reportElement uuid="52cb1ba3-4bdd-4b18-877e-0c40f70d073d" x="278" y="14" width="23" height="20"/>
            <textElement/>
            <textFieldExpression><![CDATA[$F{language_id}]]></textFieldExpression>
        </textField>
    </band>
</detail>
</jasperReport>

报告的设计(在iReport中):

结果将是(通过iReport中的预览):


@AlexK如果我在“详细信息”部分中有一个表格,并且我希望内容如您上面所示并排打印,那么我如何实现这一点