1

我正在使用netbeans7.3。带ireports4.7.1插件

我的程序连接到数据库并仅检索应在生成的报告中显示的一条记录。

这是生成它的代码:

     try 
   {



        Connection con= DriverManager.getConnection(host, uname, pword);

        File f1 = new File("report1Spring.jrxml");
        String path = f1.getAbsolutePath();
        JasperDesign jd = JRXmlLoader.load(path);

         String sql = "select Arabic , English, Nit, cnumber, (select mail from EMails where id ="+ Vars.pronum
         +") as email from allInfo inner join allAccounts on allInfo.id=allAccounts.id where allInfo.id ="+Vars.pronum;

         JRDesignQuery newQuery = new JRDesignQuery();
         newQuery.setText(sql);
         jd.setQuery(newQuery);

         JasperReport jasRep = JasperCompileManager.compileReport(jd);

         JasperPrint jasPrint = JasperFillManager.fillReport(jasRep, null , con);

         JasperViewer.viewReport(jasPrint,false);
   }
         catch (SQLException | JRException e)
         {
         JOptionPane.showMessageDialog(null,e);
         }

这里的问题是:

我清理并构建项目,

然后从生成的jar文件中执行,将jasper和jrxml文件放在同一个dist目录下。

然后当我按下“生成报告”按钮时,报告会完美生成,

问题是当我需要保存它时,只有 pdf、rtf、xls(单张或多张)会出现问题。其他扩展很好。“另存为 pdf”选项生成大小为 0 的 pdf 文件,当我尝试打开它时,它给了我错误:“无法打开,因为它已损坏或不受支持的文件类型”,以及“另存为 xls ",根本不生成任何文件。

并且“另存为 csv”会生成一个文件,但是当我打开它时,它会显示没有任何含义的符号字符。

我找不到问题,感谢您的帮助。

谢谢

4

0 回答 0