使用水晶报表JRC(Java Report Component)在Unix下实现实时报表
来源:互联网 发布:mac可用的画图软件 编辑:程序博客网 时间:2024/04/20 11:54
一、在开发平台上向报表传递参数时,一直出现""Some parameters are missing values"。
JRC的Sample有问题,正确的参数传递应该是这样的:(来自http://support.businessobjects.com/library/kbase/articles/c2015264.asp)
ParameterField paramField = new ParameterField();
paramField.setReportName("");
...
而它的例子中是没有上面红色的这一句。
二、ORACLE中处理
1、因为需要返回动态结果集,在Oracle中存储过程无法做到,所以定义一个Package来实现,Package是这样定义的
CREATE OR REPL
AS
/******************************************************************************
NAME: ReportRealTimeDataSet
PURPOSE: 营业分类帐实时报表生成Package定义部分
REVISIONS:
Ver Date Author Description
--------- ---------- --------------- ------------------------------------
1.0
******************************************************************************/
/* 定义ref cursor类型
不加return类型,为弱类型,允许动态sql查询,
否则为强类型,无法使用动态sql查询;
*/
TYPE myrctype IS REF CURSOR;
PROCEDURE getTestResultSet(staffid INTEGER,p_rc IN OUT myrctype);
/*
自定义过程
根据输入条件生成查询结果分类帐
@param condition 查询条件(f.handlestaff in (6004,6005) ..etc)
@s_date 查询条件,起始日期
@e_date 查询条件, 结束日期
*/
PROCEDURE getdataset (condition VARCHAR2, s_date DATE, e_date DATE);
/*
自定义过程
根据输入条件生成查询结果受理量
@param condition 查询条件(f.handlestaff in (6004,6005) ..etc)
@s_date 查询条件,起始日期
@e_date 查询条件, 结束日期
*/
PROCEDURE getdatasetnum (condition VARCHAR2, s_date DATE, e_date DATE);
/*
取营业帐分类清单结果集
@param s_date:统计起始日期
@param e_date:统计结束日期
@param staff: 统计对象(个人),workgroup 班组 department 部门
*/
PROCEDURE getchargedetail (
s_date DATE,
e_date DATE,
department VARCHAR2,
WORKGROUP VARCHAR2,
STAFF VARCHAR2,
p_rc IN OUT myrctype
);
/*
取个人营业帐分类结果集
@param s_date:统计起始日期
@param e_date:统计结束日期
@param staff: 统计对象(个人)
@param business: 业务
*/
PROCEDURE getstaffproc (
s_date DATE,
e_date DATE,
STAFF VARCHAR2,
BUSINESS VARCHAR2,
p_rc IN OUT myrctype
);
/*
取营业受理量结果集清单
@param s_date:统计起始日期
@param e_date:统计结束日期
@param staff: 统计对象(个人),department 受理部门 workgroup:受理班组? @param business: 业务
*/
PROCEDURE getacceptdetail (
s_date DATE,
e_date DATE,
department VARCHAR2,
WORKGROUP VARCHAR2,
STAFF VARCHAR2,
p_rc IN OUT myrctype
);
/*
取个人营业受理量结果集
@param s_date:统计起始日期
@param e_date:统计结束日期
@param staff: 统计对象(个人)
@param business: 业务
*/
PROCEDURE getstaffprocnum (
s_date DATE,
e_date DATE,
STAFF VARCHAR2,
BUSINESS VARCHAR2,
p_rc IN OUT myrctype
);
/*
取班组营业帐分类结果集
@param s_date:统计起始日期
@param e_date:统计结束日期
@param workgroup: 统计对象(班组)
@param business: 业务
*/
PROCEDURE getworkgroupproc (
s_date DATE,
e_date DATE,
WORKGROUP VARCHAR2,
BUSINESS VARCHAR2,
p_rc IN OUT myrctype
);
/*
取班组营业受理量结果集
@param s_date:统计起始日期
@param e_date:统计结束日期
@param workgroup: 统计对象(班组)
@param business: 业务
*/
PROCEDURE getworkgroupprocnum (
s_date DATE,
e_date DATE,
WORKGROUP VARCHAR2,
BUSINESS VARCHAR2,
p_rc IN OUT myrctype
);
/*
取班组营业帐分类部门结果集
@param s_date:统计起始日期
@param e_date:统计结束日期
@param workgroup: 统计对象(部门)
@param business: 业务
*/
PROCEDURE getdepartproc (
s_date DATE,
e_date DATE,
department VARCHAR2,
BUSINESS VARCHAR2,
p_rc IN OUT myrctype
);
/*
取班组营业受理量结果集
@param s_date:统计起始日期
@param e_date:统计结束日期
@param workgroup: 统计对象(部门)
@param business: 业务
*/
PROCEDURE getdepartprocnum (
s_date DATE,
e_date DATE,
department VARCHAR2,
BUSINESS VARCHAR2,
p_rc IN OUT myrctype
);
/*
自定义函数,根据instr,生成相应的条件输出
@param instr='6004/6005/6006' or 'null'
@return 'in (6004,6005,6006)' or ''
*/
FUNCTION gencondition (INSTR VARCHAR2)
RETURN VARCHAR2;
END Reportrealtimedataset;
/
2、在Oracle中定义一个会话型的全局临时表(Create Global Temporary table rp_ON COMMIT PRESERVE ROWS,在每个方法中直接使用这个临时表返回数据即可。(注意为了减少Redo,需要将Oracle9i补丁打到9.2.0.5,参见http://blog.csdn.net/eygle/archive/2004/07/04/33499.aspx) 需要在启动weblogic时指定启动项 Djava.awt.headless=true ,参见http://support.businessobjects.com/library/kbase/articles/c2016832.asp
三、布署到生产系统(weblogic+hp ux时的问题)时出现“Unable to connect to an X11 window server using ":0.0" as DISPLAY variable value”而在开发系统无此问题。
四、布署到生产系统(Unix)时老出 ""Some parameters are missing values"而在开发系统(windows)无此问题
rpt的文件名不能是中文。必须是英文才能正确识别。
需要在启动weblogic时指定启动项 Djava.awt.headless=true ,参见http://support.businessobjects.com/library/kbase/articles/c2016832.asp
四、布署到生产系统(Unix)时老出 ""Some parameters are missing values"而在开发系统(windows)无此问题
rpt的文件名不能是中文。必须是英文才能正确识别。
- 使用水晶报表JRC(Java Report Component)在Unix下实现实时报表
- java 水晶报表(JRC)开发参考网站
- 水晶报表.NET 2003 下使用水晶报表(Crystal Report)
- JRC(Java Reporting Component)创建报表源方法
- JRC(Java Reporting Component)创建报表源方法
- 在ASP.NET下使用水晶报表
- 主流Java报表工具功能对比 -- Style Report、水晶报表、数巨报表、润乾报表
- .net2005下使用水晶报表
- winfrom下使用水晶报表
- 使用 水晶报表 实现打印
- 水晶报表(crystal report)--回忆
- 在ASP.NET下使用水晶报表一(零点起步)
- 编写的vs2005水晶报表程序在vs2008下正常使用的一些实现方法
- 编写的vs2005水晶报表程序在vs2008下正常使用的一些实现方法
- vs2005水晶报表程序在vs2008下正常使用的一些实现方法
- 关于水晶报表的 "不支持的操作。无法在 C++ 堆栈中打开由 JRC 引擎处理的文档。"
- Visual Studio 2012使用水晶报表Crystal Report
- [.Net码农]Visual Studio 2012使用水晶报表Crystal Report
- ASP中正则表达式的应用 选择自 bigcarp 的 Blog
- 时尚女子生活传真
- ASP小偷(远程数据获取)程序的入门教程 选择自 arcow 的 Blog
- 用javascript写的热键例子
- 正则表达式经典 选择自 pazll 的 Blog
- 使用水晶报表JRC(Java Report Component)在Unix下实现实时报表
- 纪念安装linux成功
- 分手清单
- 电影中的计算机
- 谈谈后门
- 年轻女郎的尴尬
- 补考马哲~
- adodb Stream 详细用法 选择自 3cts 的 Blog
- XMLHTTP抓取数据时乱码问题解决 选择自 babyt 的 Blog