ireport  追加新报表

/* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com; import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRPrintPage;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.view.JasperViewer; /**
*
* @authored by vijayan.A
* @reviewed by Krishnaveni.T
*/
public class MultiPageLinking { private Map fillReportParameters() {
Map parametersMap = new HashMap();
Map reportparametermap1 = new HashMap();
Map reportparametermap2 = new HashMap();
Map reportparametermap3 = new HashMap(); reportparametermap1.put("Parameter1", "First Name");
reportparametermap1.put("Parameter2", "Middle Name");
reportparametermap1.put("Parameter3", "Last Name"); reportparametermap2.put("Parameter21", "Address1");
reportparametermap2.put("Parameter22", "Address2");
reportparametermap2.put("Parameter23", "Address3"); reportparametermap3.put("Parameter31", "Phone no");
reportparametermap3.put("Parameter32", "Mobile no");
reportparametermap3.put("Parameter33", "Fax no"); parametersMap.put("reportparametermap1", reportparametermap1);
parametersMap.put("reportparametermap2", reportparametermap2);
parametersMap.put("reportparametermap3", reportparametermap3); return parametersMap;
} private JasperPrint fillJasperPrint(String jasperpath, Map parametersMap)
throws IOException, JRException {
JasperPrint jasperprint = new JasperPrint();
jasperprint = JasperFillManager.fillReport(getClass().
getResource(jasperpath).openStream(), parametersMap);
return jasperprint;
} private JasperPrint getLinkedStaticpages() throws IOException, JRException {
Map page1param, page2param, page3param;
page1param = (Map) fillReportParameters().get("reportparametermap1");
page2param = (Map) fillReportParameters().get("reportparametermap2");
page3param = (Map) fillReportParameters().get("reportparametermap3"); JasperPrint firstsecondlinked = multipageLinking(fillJasperPrint("com/page1 .jasper", page1param), fillJasperPrint("com/page2.jasper", page2param));
JasperPrint firstsecondthirdlinked = multipageLinking(firstsecondlinked, fillJasperPrint("com/page3.jasper", page3param));
return firstsecondthirdlinked;
} private JasperPrint multipageLinking(JasperPrint page1, JasperPrint page2) {
List pages = page2.getPages();
for (int count = 0; count <
pages.size(); count++) {
page1.addPage(pages.get(count));
} return page1;
} private void viewer(JasperPrint page1) {
JasperViewer viewer = new JasperViewer(page1, false);
viewer.setVisible(true);
} public static void main(String arg[]) throws IOException, JRException {
MultiPageLinking multipages = new MultiPageLinking();
JasperPrint allpages = multipages.getLinkedStaticpages();
multipages.viewer(allpages);
}
}

ireport 追加新报表的更多相关文章

  1. jasperreport 追加新报表(2)

    用ireport做好模版后,如果要新加一个打印页,如果是新手,直接修改模版应该是理想情况, 可是什么数据源 feild,parameter,var,subreport ,还有路径, 真的可以让一个人疯 ...

  2. iReport 4.1 报表制作,子报表,实例解析

    开发使用步骤(iReport 4.1.1) (个人总结,如有问题请留言,另外知道table控件用法的给我留言或者发邮件谢谢.Email:jiazx0107@163.com) 目录 1.      开发 ...

  3. jasperreports+iReport+jatoolsPrinter制作报表笔记

    此文章是基于 EasyUI+Knockout实现经典表单的查看.编辑 一. 准备工作 1. 点击此下载相关的文件,并把 ims 文件夹放到 ims 工程对应的路劲下 2. 参考网址:杰创打印控件 二. ...

  4. 利用JasperReport+iReport进行Web报表开发

    用JasperReport+iReport进行Web报表开发 序言 在非常多实际的项目里,报表都是当中十分重要的组成部分,比如把查询结果以报表的形式呈现出来.这里所提到的报表可不是简单的二维表,而是拥 ...

  5. 使用JasperReport+iReport进行Web报表开发

    使用JasperReport+iReport进行Web报表开发 前言 在实际工程中非常,报告是其中很重要的一部分,结果以报表的形式呈现出来.这里所提到的报表可不是简单的二维表,而是拥有复杂表头的.多维 ...

  6. HighCharts SVN IReport进行PDF报表设计--模板

    BOS物流项目笔记第十五天 HIghcharts是很强大的图表绘制插件,它是基于纯js绘制的.当然地,对于图表也会有很多操作了.下面就我工作时遇到的一些比较常见的highcharts的操作进行小结,不 ...

  7. 使用FileStream向txt格式的文本文件 "追加" 新内容并读取

    原文:使用FileStream向txt格式的文本文件 "追加" 新内容并读取 //得到文件路径. static string filePath = AppDomain.Curren ...

  8. 搭建第一个web项目:jasperReports+ireport制作pdf报表

    一:jasperReports介绍: 在web应用中,必须面临大量的报表问题,即将数据库中的数据形成报表并进行打印.传统开发只能使用html页面设计报表,效率低且不支持别的格式.所以jasperRep ...

  9. python openpyxl模块实现excel的读取,新表创建及原数据表追加新数据

    当实际工作需要把excel表的数据读取出来,或者把一些统计数据写入excel表中时,一个设计丰富,文档便于寻找的模块就会显得特别的有吸引力,本文对openpyxl模块的一些常见用法做一些记录,方便工作 ...

随机推荐

  1. 架构思想之CAP原理

    由于自己负责后端的设计已经有一段时间,对设计的一些思想和理论有一些理解,但最近被问到什么是CAP时,却一脸懵逼,下来后专门针对CAP架构思想进行了一些专题学习,在这里也将这个概念引入给大家,大家可以有 ...

  2. Maven copy方式列举

    maven copy有很多种方法: 1.maven-antrun-plugin (使用ant复制) <build> <finalName>flex</finalName& ...

  3. Generator 简介

    Generator 就是一种状态机,封装多个内部状态. 执行 Generator 函数会返回一个遍历器对象(),也就是说,Generator 函数除了状态机,还是一个遍历器对象生成函数.返回的遍历器对 ...

  4. ASP.NET-使用事件监视诊断程序异常

    用windows自带的事件监视程序来监视网站的异常 来自为知笔记(Wiz)

  5. POJ——T 1469 COURSES

    http://poj.org/problem?id=1469 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 24197   ...

  6. 使用sh运行bash脚本的奇怪问题

    在同一个文件夹下有两个脚本.a.sh和b.sh,脚本内容例如以下: a.sh: echo "test for a" source b.sh b.sh: echo "tes ...

  7. Invalid project description.

    1.错误描写叙述 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/ ...

  8. oracle新手随记10

    1. unpivot注意点:select new_col from (select ename,job,to_char(sal) as sal,null as c from emp)         ...

  9. hdoj--1237--简单计算器(栈模拟)

    简单计算器 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Subm ...

  10. react --- React中state和props分别是什么?

    props React的核心思想就是组件化思想,页面会被切分成一些独立的.可复用的组件. 组件从概念上看就是一个函数,可以接受一个参数作为输入值,这个参数就是props,所以可以把props理解为从外 ...