原標題:JAVA批量打印皕杰報表
不使用皕杰報表工具條上的打印按鈕,用java怎么實現批量打印皕杰報表呢?
解決方案:
皕杰報表提供了批量打印的工具類ReportToolkits,ReportToolkits類參考幫助文檔-開發指南-javadoc-bios.report.api.utils-ReportToolkits
實例代碼如下:
public class PrintSample {
public static void main(String[] args) throws Exception {
ArrayList list = new ArrayList();
list.add(calcReport("E:\\BIOS Studio\\workspace\\演示項目\\Demo\\分組報表\\5分組匯總.brt"));
list.add(calcReport("E:\\BIOS Studio\\workspace\\演示項目\\Demo\\分組報表\\1普通分組.brt"));
ReportToolkits.batchPrint(list.toArray(new ReportBean[list.size()]), null);
}
/**
* 計算報表,返回報表運算結果
* @param brtFilePath
*/
private static ReportBean calcReport(String brtFilePath) throws Exception {
ReportManager manager = new ReportManager(new FileInputStream(brtFilePath), null, null);
manager.setConnection(getCon());
ReportBean reportBean = manager.calc();
return reportBean;
}
//創建報表所需要的數據源的jdbc連接
//因上面的報表是皕杰報表自帶的實例報表,所以下面創建的jdbc連接是實例報表用到的h2
private static Connection getCon() {
Connection con=null;
JdbcConnectionPool cp = JdbcConnectionPool.create( "jdbc:h2:E:\\bijetsoft\\BIJETSOFT\\BiosPlatform4Win-V5.2-B20190428\\BIOS Studio\\data\\biosembededdb", "sa", "");
try {
con=cp.getConnection();
} catch (SQLException e) {
e.printStackTrace();
}
return con;
}
}
實例代碼中用到的ReportManager 和ReportBean ,你可以參考幫助文檔-開發指南-javadoc-bios.report.api.manager返回搜狐,查看更多
責任編輯: