关于Crystal Report动态分组的使用

简介:
很多经验不敢独享,何况我也是踩着前人的臂膀才做出来的,说实话说到数据仓库工具我一向是眼高手低的,攻克这个所谓的技术问题,也算值得高兴一把。 
有这样一个需求,假设有这么一张报表
 
 
用户可能要求按如下组合进行分组:
Factory Name ->Sales Man/Product Name/Employee Name.
Sales Man->Factory Name/Product Name/Sale Date.
Employee Name->Sales Date/Factory Name.
总之:按照两层进行分组,几乎每个数据项都参与进来了
具体做法:
1. 创建一个存储过程,其实本不必创建存储过程的,只不过当时想着顺便把 Crystal Report不能调用 Oracle存储过程的问题也给解决了。很简单 J 获取用户拥有阅读权限所有的表。
CREATE OR REPLACE package RefType
as
TYPE RefCursor IS REF CURSOR;
end;
/
CREATE OR REPLACE procedure gettabnopara ( p_cursor in out RefType.RefCursor )
as
begin
open p_cursor for
select owner , tablespace_name , table_name , 1 as TestNumber
from all_tables ;
end;

 
2. 其他的按照创建报表的一贯做法,选择数据源,选择该存储过程,选择所有相关字段,不必分组,不必过滤,选择缺省模板,一路回过来就 OK了。
3. 创建 Parameter Fields,在 Default Values中输入想要排序的报表字段
a. 创建 GroupBy , Default Values中输入 Owner,Tablespace_Name
b. 创建 SubGroupBy , Default Values中输入 Tablespace_Name ,Owner
4. 创建 Formula Fields,将参数和实际字段相关联
a. 创建 GroupBy ,具体公式如下
b. 创建 SubGroupBy ,具体公式如下
if {?GroupBy } = "OWNER" then
{GETTABNOPARA.OWNER}
else
if {?GroupBy } = "TABLESPACE_NAME" then
{GETTABNOPARA.TABLESPACE_NAME} 
 
5. 在报表中点击 Insert Group,选择 GroupBy,SubGroupBy ,插入分组栏目
 
6. 然后在 Group Footer#2,Group Footer#1中插入 Insert Summary
 
7. 最终报表的设计样式如下:
 
所有的报表相关参数参见 Field Explorer图,然后就 OK了





本文转自baoqiangwang51CTO博客,原文链接: http://blog.51cto.com/baoqiangwang/309757 ,如需转载请自行联系原作者
相关文章
SAP QM执行事务代码QE23为检验批录入结果,报错-No selected set exists for the inspection point 200 or plant NMDC-
SAP QM执行事务代码QE23为检验批录入结果,报错-No selected set exists for the inspection point 200 or plant NMDC-
SAP QM执行事务代码QE23为检验批录入结果,报错-No selected set exists for the inspection point 200 or plant NMDC-
SAP QM 执行事务代码QE01为检验批录入结果直接进入Multiple Specification标签页?
SAP QM 执行事务代码QE01为检验批录入结果直接进入Multiple Specification标签页?
SAP QM 执行事务代码QE01为检验批录入结果直接进入Multiple Specification标签页?
SAP QM 源检验(Source Inspection)功能展示
SAP QM 源检验(Source Inspection)功能展示
SAP QM 源检验(Source Inspection)功能展示
SAP LSMW Standard Batch (Direct) Input 方式制作的LSMW工具导入OPEN PO 单据时候’税码’字段的处理
SAP LSMW Standard Batch (Direct) Input 方式制作的LSMW工具导入OPEN PO 单据时候’税码’字段的处理
SAP LSMW Standard Batch (Direct) Input 方式制作的LSMW工具导入OPEN PO 单据时候’税码’字段的处理
|
BI 数据库 数据中心