TEC1401.Report开发技术总结 - 第四章 使用Oracle Reports开发报表-创建一个矩阵报表(3/4)
来源:互联网 发布:微信点餐外卖源码 编辑:程序博客网 时间:2024/06/05 08:47
第四章 创建一个矩阵式报表
1. 建立矩阵式报表的需求
建立一个矩阵式报表必须要满足以下四个条件:
1) 在数据模型中必须至少建立四个组。
2) 其中之一必须是交叉组
3) 至少有两个组是交叉组的子组,这两个组用于矩阵式报表中的标题。
4) 至少有一个单元组,这个组中的值用于填写矩阵中的单元格。
2. 建立单查询矩阵报表
单查询矩阵式报表的数据模型由一个查询和四个组组成。由于Oracle Reports为单查询生成一个缺省的组,所以还必须手工为其建立一个交叉组和它的两个子组。
下面举例说明建立单查询式报表的步骤如下:
1) 在对象导航器中,单击“报表”节点,然后在工具栏中单击创建小图标。则在“报表”节点下会出现一个新的报表节点;
2) 在新报表结点下,双击“数据模型”节点,弹出:“报表编辑器-数据模型”窗口;
3) 在“报表编辑器-数据模型”窗口中创建一个查询:
SELECT count(oh.order_number) "count", ot.name "type", party.party_name "name" FROM oe_order_headers_all oh, oe_transaction_types_tl ot, hz_cust_accounts cust, hz_parties party WHERE oh.order_number BETWEEN 29380 AND 29480 AND oh.order_type_id = ot.transaction_type_id AND oh.sold_to_org_id = cust.cust_account_id AND ot.language = userenv('LANG') AND cust.party_id = party.party_id AND oh.org_id = 285 GROUP BY ot.name,party.party_name;
则生成一个查询“Q_1”和一个组“G_1”
4) 分别从G_count组中拖出name和type列,创建两个新组“G_name”、“G_type”;
5) 在工具栏中单击“交叉单元”,在绘画区拖出一个矩形框,将G_name、G_type两个组框在其中;
6) 单击“报表向导”图标,在风格栏中,选取“矩阵(Matrix)”;
7) 在“行”页中,选取“name”作为第一级矩阵行域。
8) 在“列”页中,选择“type”作为第一级矩阵列域。
9) 在“单元”页中,选择“count”作为矩阵单元的值。
10) 在“标签”页中,根据需要修改域和总计的标签。
11) 在“模板”页中,选择合适的模板。
12) 单击“完成”按钮,则出现报表的动态预览格式
3. 建立多查询矩阵报表
多查询式报表包含两个或两个以上组的数据。对于在主组中检索出来的每一个值,对子组进行查询,并从数据库中检索出相关的数据。
下面举例说明建立多查询矩阵式报表的步骤如下:
1) 在对象导航器中,单击“报表”节点,然后在工具栏中单击“创建”小图标,则在“报表”节点下会出现一个新的“报表”节点;
2) 在新报表节点下,双击“数据模型”节点,弹出“报表编辑器-数据模型”窗口;
3) 在“报表编辑器-数据模型”窗口中创建第一个查询Q_name:
SELECT distinct ot.name "type" FROM oe_order_headers_all oh, oe_transaction_types_tl ot WHERE oh.order_number BETWEEN 29380 AND 29480 AND oh.order_type_id = ot.transaction_type_id AND ot.language = userenv('LANG')
4) 在“报表编辑器-数据模型”窗口中创建第二个查询Q_type:
SELECT distinct party.party_name "name" FROM oe_order_headers_all oh, hz_cust_accounts cust, hz_parties party WHERE oh.order_number BETWEEN 29380 AND 29480 AND oh.sold_to_org_id = cust.cust_account_id AND cust.party_id = party.party_id AND oh.org_id = 285
5) 在“报表编辑器-数据模型”窗口中创建第二个查询Q_MATRIX:
SELECT count(oh.order_number) "count", ot.name "type", party.party_name "name" FROM oe_order_headers_all oh, oe_transaction_types_tl ot, hz_cust_accounts cust, hz_parties party WHERE oh.order_number BETWEEN 29380 AND 29480 AND oh.order_type_id = ot.transaction_type_id AND oh.sold_to_org_id = cust.cust_account_id AND ot.language = userenv('LANG') AND cust.party_id = party.party_id AND oh.org_id = 285 GROUP BY ot.name,party.party_name;
6) 在工具栏中单击“交叉单元”小图标,在绘图区中拖出一个矩形框把G_name、G_type两个组框在其中;
7) 在工具栏中单击“数据连接”小图标,在G_name中的name和G_count中的name1之间,G_type中的type和G_MATRIX中的type1之间建立连接;
8) 单击“报表向导”图标,在风格栏中,选取“矩阵(Matrix)”。
9) 在“组”页中选择G_1(横向)、G_name(纵向)、G_type(横向)、G_count(纵向)
10) 在“域”页中选择显示域name,type,count;
11) 在“便签”页中,根据需要修改域和总计的标签。
12) 在“模板”页中,选择合适的模板。
13) 单击“完成”按钮,则出现报表的动态预览格式。
- TEC1401.Report开发技术总结 - 第四章 使用Oracle Reports开发报表-创建一个矩阵报表(3/4)
- TEC1401.Report开发技术总结 - 第二章 使用Oracle Reports开发报表-创建一个简单报表(1/4)
- TEC1401.Report开发技术总结 - 第三章 使用Oracle Reports开发报表-创建一个分组报表(2/4)
- TEC1401.Report开发技术总结 - 第五章 使用Oracle Reports开发报表-在EBS应用中注册Report的注意事项(4/4)
- TEC1401.Report开发技术总结 - 第六章 使用BI Publisher开发报表-创建XML数据源(1/5)
- TEC1401.Report开发技术总结 - 第七章 使用BI Publisher开发报表-创建一个简单的RTF模板(2/5)
- TEC1401.Report开发技术总结 - 第九章 使用BI Publisher开发报表-使用BI Publisher创建RTF模板的语法(4/5)
- TEC1401.Report开发技术总结 - 第八章 使用BI Publisher开发报表-在EBS应用中部署BIP报表(3/5)
- TEC1401.Report开发技术总结 - 第十章 使用BI Publisher开发报表-其他注意事项(5/5)
- TEC1401.Report开发技术总结 - 第一章 使用PLSQL开发HTML报表
- [iReport总结3] EBS使用jasper report进行报表开发
- Crystal Report开发报表
- Crystal Report开发报表
- Report 开发-简单报表
- flex开发报表Report
- 使用Grid++report开发报表功能
- 使用pentaho report 开发web报表
- Reports builder 开发出来的报表挂到oracle ERP
- 移动应用瘦身学习总结 (Android&iOS)
- Java之——Web项目中DLL文件动态加载方法
- HRD(hypothetical reference decode)
- [姿态预测] Advancing Human Pose and Gesture Recognition章节 Pose Estimation with a Deep Heatmap Network
- 自定义View:重绘进度条
- TEC1401.Report开发技术总结 - 第四章 使用Oracle Reports开发报表-创建一个矩阵报表(3/4)
- Open Broadcast Encoder Project
- DOBBO的学习
- HDP学习--Ambari安装Hadoop集群步骤
- Eclipse+pydev 常用快捷键
- TEC1401.Report开发技术总结 - 第五章 使用Oracle Reports开发报表-在EBS应用中注册Report的注意事项(4/4)
- opencaster
- Erlang服务器内存耗尽调查(转)
- fielddata -->doc values