簡體   English   中英

Java JasperReports條碼打印

[英]Java JasperReports Barcode print

我需要使用JasperReports報告打印條形碼標簽。 我已經正確設計了Jasper報告,並且可以使用iReport進行預覽。 但是,當我通過Java應用程序條形碼參數將參數傳遞給jasper報告時,從未生成過報告。

使用以下代碼

//Print barcode
try {
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    Connection conn = (Connection) 
            DriverManager.getConnection("jdbc:mysql:///miracleposdb", "root", "mysql");


    String reportSource = "../src/reports/barcode.jrxml"; /* Report Path*/
    Map<String, Object> params = new HashMap<String, Object>();
    params.put("printid", lblbarcodeID.getText());

    JasperReport jasperReport = JasperCompileManager.compileReport(reportSource); /*Compiling  */

    JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,
            params, DB.MiraclePOS.connect());  /*Filling report*/
    JasperViewer.viewReport(jasperPrint, false);   /*For Print*/

} catch (Exception e) {
}

如果查看jrxml文件,條形碼部分應如下所示:

就我而言,我使用了barcode4j

<componentElement>
    <reportElement x="353" y="42" width="200" height="50"/>
        <jr:Code39 xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components"    xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd" textPosition="bottom">

            <jr:codeExpression>                 
                <![CDATA[$P{printid}]]>                     
            </jr:codeExpression>                
       </jr:Code39>
</componentElement>

我使用netbean報表查看器生成PDF視圖,它對我有用。

注意:

使用iReport拖放條形碼時,jrxml的barcord部分應具有空的CDATA:

<![CDATA[]]>

如果您在這種情況下生成PDF,則由於沒有價值,因此不會顯示Barcord。

另外,請確保使用iReport設置參數。

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM