表格软件FineReport中java如何直接调用报表打印

 时间:2026-02-15 19:45:59

1、定义报表运行环境

// 定义报表运行环境,才能执行报表  

         String envPath = "D:\\FineReport\\develop\\code\\build\\package\\WebReport\\WEB-INF";  

         FRContext.setCurrentEnv(new LocalEnv(envPath));

2、定义执行模板工作薄

TemplateWorkBook workbook = TemplateWorkBookIO.readTemplateWorkBook(FRContext.getCurrentEnv(), "GettingStarted.cpt");

3、 获取报表参数并设置值

// 参数传值  

             Parameter[] parameters = workbook.getParameters();  

             HashMap<String, String> paraMap = new HashMap<String, String>();

             paraMap.put(parameters[0].getName(), "华北");

4、java中调用报表打印方法并进行判断

通过公式PrintUtils.printWorkBook(cptPath)进行打印,此时不弹出打印窗口。

若需显示打印选项对话框,则使用PrintUtils.printWorkBook(cptPath, true),其中参数true为显示打印选项对话框,如下所示:

// java中调用报表打印方法  

             boolean a = PrintUtils.printWorkBook("GettingStarted.cpt", paraMap, true);  

             if (a == false) {  

                 System.out.println("失败啦!返回" + a);  

             } else {  

                 System.out.println("成功!返回" + a);  

             }

其中printWorkBook()返回值为boolean型,可通过返回值true(打印成功)和false(打印失败)来判断打印是否成功。

5、完整代码:

package com.fr.io;    

import java.io.File;    

import java.util.HashMap; 

import com.fr.base.FRContext;      

import com.fr.base.Parameter;    

import com.fr.dav.LocalEnv;

import com.fr.main.TemplateWorkBook; 

import com.fr.print.PrintUtils;  

6、public class JavaPrint {    

     public static void main(String[] args) {    

         // 定义报表运行环境,才能执行报表    

         String envPath = "D:\\FineReport\\develop\\code\\build\\package\\WebReport\\WEB-INF";    

         FRContext.setCurrentEnv(new LocalEnv(envPath));    

         try {    

             TemplateWorkBook workbook = TemplateWorkBookIO.readTemplateWorkBook(FRContext.getCurrentEnv(), "GettingStarted.cpt");    

             // 参数传值    

             Parameter[] parameters = workbook.getParameters();    

             HashMap<String, String> paraMap = new HashMap<String, String>();  

             paraMap.put(parameters[0].getName(), "华北");  

               

             // java中调用报表打印方法    

             boolean a = PrintUtils.printWorkBook("GettingStarted.cpt", paraMap, true);    

             if (a == false) {    

                 System.out.println("失败啦!返回" + a);    

             } else {    

                 System.out.println("成功!返回" + a);    

             }    

         } catch (Exception e) {    

             e.printStackTrace();    

         }    

     }    

 }

7、编译进行打印

编译该程序,弹出打印机设置窗口,选择打印机就可以进行打印了,并在后台返回结果:成功!返回true。

  • 电子表格FineReport中java如何直接调用报表打印
  • Java报表插件:FineReport
  • 报表打印教程之FineReport工具:如何修改数据
  • 报表打印教程之FineReport工具: 怎样保存模板
  • 企业报表FineReport在报表中如何调用客户的js
  • 热门搜索
    正规旅游网站 洛阳旅游网 张家界旅游学校 大连旅游局 洱海旅游攻略 那曲旅游 山东威海旅游 丽江著名旅游景点 中国旅游饭店行业规范 韩国旅游报价