birt报表脚本数据源

yangshan2010 2011-09-23 04:23:30
我在一个map里面放了2个list,通过一个报表实现显示,第1个list有12条数据,第2个list有6条数据,我想10条显示一页,但是一个list数据去完之后,下一个list必须从另一页开始,也就是这2个list显示出来应该是3页,有办法实现吗?
...全文
184 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yangshan2010 2011-09-23
  • 打赏
  • 举报
回复
我说的是在birt报表中,嘿嘿
yangshan2010 2011-09-23
  • 打赏
  • 举报
回复
我说的是在birt报表中,嘿嘿
士元 2011-09-23
  • 打赏
  • 举报
回复
public static void main(String[] args) {
System.out.println(getData(1));
System.out.println(getData(2));
System.out.println(getData(3));
}
public static List getData(int page){
Map<String, List<Object>> map = new HashMap<String, List<Object>>();
List list = new ArrayList<Object>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
list.add(5);
list.add(6);
list.add(7);
list.add(8);
list.add(9);
list.add(10);
list.add(11);
list.add(12);
list.add(13);
map.put("b", list);
list = new ArrayList<Object>();
list.add(21);
list.add(22);
list.add(23);
list.add(24);
map.put("a", list);
int total = 0;
int pageSize=10;
for(List l:map.values()){
if((total+Math.ceil((float)l.size()/pageSize))>=page){
int end =(page-total)*pageSize;
if(end>l.size())end=l.size();
int from = (page-total-1)*pageSize;
if(from<0)from=0;
return l.subList(from, end);
}
total+= Math.ceil((float)l.size()/pageSize);
}
return null;
}
yangshan2010 2011-09-23
  • 打赏
  • 举报
回复
我知道你的意思了!我换个问法吧,我如何先把map中的list数据全部先不管分页显示在birt报表中
bijanen19861113 2011-09-23
  • 打赏
  • 举报
回复
是不是可以先计算好的一个list的总页数n,然后第二个list从n+1开始..
目 录 1 Birt介绍 5 1.1 报表介绍 5 1.2 基本概念 5 1.3 丰富的报表 5 1.4 BIRT报表由四部分组成 6 1.5 报表设计器 6 2 Birt插件安装 8 2.1 插件版本说明 8 2.2 插件安装 9 2.2.1 完全安装 9 2.2.2 更新安装: 9 2.2.3 分步安装 9 3 Birt报表开发实战 13 3.1 创建报表 13 3.1.1 创建报表工程 13 3.1.2 创建报表 14 3.2 数据源配置 16 3.3 创建数据集 19 3.4 网格报表 20 3.4.1 创建数据源 21 3.4.2 创建数据集 21 3.4.3 对报表进行布局 21 3.4.4 格式化与预览 23 3.5 分组报表 24 3.5.1 创建数据源 25 3.5.2 构建数据集 25 3.5.3 对报表进行布局 25 3.5.4 设定分组数据 25 3.5.5 格式化报表 27 3.6 交叉报表 28 3.6.1 构建数据源 28 3.6.2 构建数据集 28 3.6.3 在报表中加入交叉报表 28 3.6.4 数据准备 29 3.6.5 向交叉表插入数据 32 3.6.6 加入汇总 33 3.6.7 格式化报表 34 3.7 嵌套报表 35 3.7.1 构建数据源 36 3.7.2 构建数据集 36 3.7.3 布局嵌套报表 38 3.7.4 将Table绑定数据集 39 3.7.5 设定主表数据 39 3.7.6 设定子表数据 40 3.8 交互报表 42 3.8.1 创建报表数据源 43 3.8.2 创建数据集 43 3.8.3 加入响应参数 45 3.8.4 布局报表 47 3.8.5 插入报表数据 48 3.8.6 格式化与预览 49 3.9 报表钻取 51 3.9.1 设定响应参数 51 3.9.2 预览结果 54 3.10 图表报表 55 3.10.1 为报表插入图表 55 3.10.2 设定图表属性 55 3.10.3 图表预览 60 3.11 多层交叉报表 61 3.11.1 构建数据源 61 3.11.2 构建数据集 61 3.11.3 在报表中加入交叉报表 62 3.11.4 数据准备 63 3.11.5 向交叉表插入数据 63 3.11.6 格式化与预览 64 3.12 多层交叉汇总报表 65 3.12.1 加入汇总 65 3.12.2 格式化与预览 66 3.13 其他 67 3.13.1 格式化报表 67 3.13.1.1 表头与标题 67 3.13.1.2 设定单元格格式 68 3.13.1.3 样式套用 68 3.13.1.4 数据元素格式化 69 3.13.2 分页、页眉与页脚 70 3.13.2.1 设置分页显示 70 3.13.2.2 设置分页打印 70 3.13.2.3 设置页眉页脚 71 3.13.3 隔行高亮度显示 73 3.13.4 对报告进行布局 76 3.13.4.1 添加|删除行或列 76 3.13.4.2 指定行高或列宽 76 3.13.4.3 添加图像 77 3.13.5 数据绑定 79 4 Birt报表script 82 4.1 avascript脚本编写 82 4.1.1 隔行高亮度显示 82 4.1.2 多参数查询 84 4.1.3 脚本创建数据源 85 4.2 java脚本编写 88 4.2.1 创建java类 88 4.2.2 java类与报表交互 92 4.3 BIRT脚本参考 98 5 Birt报表部署 99 5.1 直接使用运行birt-runtime-2_2_0包中的WebViewerExample 99 5.2 集成到已有web应用 100 5.3 数据库驱动位置 107 5.4 报表url说明 107 5.5 web.xml配置 113 5.6 viewer.properties说明 115 5.7 BIRT在jsp中tag使用 116 5.8 关于BIRT编码 123
简介: 1 Birt介绍 5 1.1 报表介绍 5 1.2 基本概念 5 1.3 丰富的报表 5 1.4 BIRT报表由四部分组成 6 1.5 报表设计器 6 2 Birt插件安装 8 2.1 插件版本说明 8 2.2 插件安装 9 2.2.1 完全安装 9 2.2.2 更新安装: 9 2.2.3 分步安装 9 3 Birt报表开发实战 13 3.1 创建报表 13 3.1.1 创建报表工程 13 3.1.2 创建报表 14 3.2 数据源配置 16 3.3 创建数据集 19 3.4 网格报表 20 3.4.1 创建数据源 21 3.4.2 创建数据集 21 3.4.3 对报表进行布局 21 3.4.4 格式化与预览 23 3.5 分组报表 24 3.5.1 创建数据源 25 3.5.2 构建数据集 25 3.5.3 对报表进行布局 25 3.5.4 设定分组数据 25 3.5.5 格式化报表 27 3.6 交叉报表 28 3.6.1 构建数据源 28 3.6.2 构建数据集 28 3.6.3 在报表中加入交叉报表 28 3.6.4 数据准备 29 3.6.5 向交叉表插入数据 32 3.6.6 加入汇总 33 3.6.7 格式化报表 34 3.7 嵌套报表 35 3.7.1 构建数据源 36 3.7.2 构建数据集 36 3.7.3 布局嵌套报表 38 3.7.4 将Table绑定数据集 39 3.7.5 设定主表数据 39 3.7.6 设定子表数据 40 3.8 交互报表 42 3.8.1 创建报表数据源 43 3.8.2 创建数据集 43 3.8.3 加入响应参数 45 3.8.4 布局报表 47 3.8.5 插入报表数据 48 3.8.6 格式化与预览 49 3.9 报表钻取 51 3.9.1 设定响应参数 51 3.9.2 预览结果 54 3.10 图表报表 55 3.10.1 为报表插入图表 55 3.10.2 设定图表属性 55 3.10.3 图表预览 60 3.11 多层交叉报表 61 3.11.1 构建数据源 61 3.11.2 构建数据集 61 3.11.3 在报表中加入交叉报表 62 3.11.4 数据准备 63 3.11.5 向交叉表插入数据 63 3.11.6 格式化与预览 64 3.12 多层交叉汇总报表 65 3.12.1 加入汇总 65 3.12.2 格式化与预览 66 3.13 其他 67 3.13.1 格式化报表 67 3.13.1.1 表头与标题 67 3.13.1.2 设定单元格格式 68 3.13.1.3 样式套用 68 3.13.1.4 数据元素格式化 69 3.13.2 分页、页眉与页脚 70 3.13.2.1 设置分页显示 70 3.13.2.2 设置分页打印 70 3.13.2.3 设置页眉页脚 71 3.13.3 隔行高亮度显示 73 3.13.4 对报告进行布局 76 3.13.4.1 添加|删除行或列 76 3.13.4.2 指定行高或列宽 76 3.13.4.3 添加图像 77 3.13.5 数据绑定 79 4 Birt报表script 82 4.1 avascript脚本编写 82 4.1.1 隔行高亮度显示 82 4.1.2 多参数查询 84 4.1.3 脚本创建数据源 85 4.2 java脚本编写 88 4.2.1 创建java类 88 4.2.2 java类与报表交互 92 4.3 BIRT脚本参考 98 5 Birt报表部署 99 5.1 直接使用运行birt-runtime-2_2_0包中的WebViewerExample 99 5.2 集成到已有web应用 100 5.3 数据库驱动位置 107 5.4 报表url说明 107 5.5 web.xml配置 113 5.6 viewer.properties说明 115 5.7 BIRT在jsp中tag使用 116 5.8 关于BIRT编码 123
目录 第一章、学习基础知识 教程 1:构建简单的列表报告 任务 1:创建新项目 任务 2:创建新报告 任务 3:构建数据源 任务 4:构建数据集 任务 5:对报告进行布局 任务 6:对数据进行排序 任务 7:格式化报告 编辑列标题 格式化列标题 在同一行上显示名字和姓氏 增大行之间的间隔 任务 8:创建报告标题 接下来的步骤 第二章、连接至数据源 如何创建 BIRT 数据源 如何修改现有 BIRT 数据源 如何删除 BIRT 报告设计器数据源 如何对数据库或其他 JDBC 数据源指定连接信息 如何添加 JDBC 驱动程序 如何删除 JAR 文件中的所有 JDBC 驱动程序 第三章、检索数据 如何创建数据集 如何更改数据集的数据源 如何对 JDBC 数据集编写 SQL 查询 如何对 JDBC 数据集指定存储过程 如何查看和更改输出列 如何更改“预览结果”中出现的行数 如何将计算字段添加至数据集 如何连接数据集 如何定义动态查询 如何设置高速缓存首选项 第四章、绑定数据 如何创建列绑定 第五章、对报告进行布局 如何添加行或列 如何删除行或列 如何将数据集绑定至表 如何插入链接的图像 如何插入嵌入式图像 如何插入存储在数据源中的图像 第六章、显示文本 如何使用动态文本元素 第七章、格式化报告内容 如何创建样式 如何导入样式 如何应用样式 如何修改样式 如何删除样式 如何创建格式化规则 如何修改格式化规则 如何删除格式化规则 如何通过拖动边界来调整列或行的大小 如何指定行高 如何指定列宽 如何合并表或网格单元格 如何有条件地隐藏元素 第八章、对数据进行排序和分组 教程 2:对报告数据进行分组 任务 1:打开报告设计 任务 2:将报告另存为新文件 任务 3:将贷记限额字段添加至数据集 任务 4:将贷记限额数据添加至报告 任务 5:按贷记限额对客户数据进行分组 任务 6:在组头中显示贷记限额范围 任务 7:显示聚集信息 任务 8:格式化报告 除去详细信息行中的贷记限额数据 在每组的第一行中显示组标题 用一行分隔每组 任务 9:在 BIRT 报告查看器中预览报告 任务 10:在目录中显示贷记限额范围 第九章、聚集数据 如何在表达式构建器中构造聚集表达式 第十章、编写表达式 第十一章、过滤数据 如何过滤行以便从 JDBC 数据源检索数据 如何在数据集级别进行过滤 如何在报告元素级别进行过滤 如何在组级别进行过滤 第十二章、使用户能够对数据进行过滤 使用户能够在查询运行时进行过滤 如何创建简单报告参数 如何在 SQL 查询中插入参数标记 如何创建数据集参数 如何在运行报告时动态更新过滤条件 第十三章、构建包含子报告的报告 教程 3:构建带有并排子报告的报告 任务 1:创建新报告 任务 2:构建数据源 任务 3:为客户报告构建数据集 任务 4:为订单子报告构建数据集 任务 5:为支付子报告构建数据集 任务 6:创建客户主报告 任务 7:创建订单子报告 任务 8:将订单子报告链接至客户主报告 任务 9:创建支付子报告 任务 10:将支付子报告链接至客户主报告 任务 11:仅显示具有订单或支付的客户 任务 12:并排显示子报告 任务 13:格式化报告 突出显示客户名 编辑列标题 更改日期格式 更改数字格式 增大元素之间的垂直间距 增大订单表与支付表之间的水平间距 在表周围添加边框 增大表边框与内容之间的间距 第十四章、在报告中使用图表 教程 4:创建图表 任务 1:设置报告设计文件 任务 2:在报告中添加图表 任务 3:为图表提供数据 任务 4:查看图表 任务 5:更新图表标题 任务 6:优化图表外观 第十五章、在图表中显示数据 如何选择图表数据集 如何对类别系列数据进行分组 如何设置轴的数据类型和格式 如何更改图表预览首选项 第十六章、对图表进行布局和格式化 如何设置图表背景色 如何定义定制颜色 如何为具有深度的图表或三维图表设置墙体色或地板色 如何设置图表区嵌入 如何为图形设置背景色 如何为图形区加上轮廓 如何为轴中的图形区加上阴影 如何调整图表图形的放置和填充 如何格式化轴名 如何在仪表图或饼图中添加或格式化值系列标题

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧