jsp中如何传参数到Crystal Report9中,再由Crystal Report9生成报表

fingerling2004 2004-07-21 11:25:43
原来是用Crystal Report9生成的报表,工具自动生成一个.csp页面要求选择参数,这样太不灵活,现在想自己做一个.jsp页面传送参数,但是不知道用什么函数或者方法可以把jsp页面获得的值传到Crystal Report9中。
请知道的大侠帮忙!!谢谢!分不够还可以加!!
...全文
231 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
JamesLiu8888 2004-12-15
  • 打赏
  • 举报
回复
<%!
public ParameterField newStringParameterField(String name,String value) throws Exception{
ParameterField field = new ParameterField();
Values vals = new Values();
ParameterFieldDiscreteValue val = new ParameterFieldDiscreteValue();
field.setName(name);
val.setValue(value);
field.setReportName("");
val.setDescription("");
vals.add(val);
field.setCurrentValues( vals );
return field;
}
%>
<%!
public ConnectionInfos newConnectionInfos(String user,String password) throws Exception{
ConnectionInfos infos = new ConnectionInfos();
IConnectionInfo con = new ConnectionInfo();
con.setUserName(user);
con.setPassword(password);
infos.add(con);
return infos;
}
%>
<%
......

ParameterField caseIDField = newStringParameterField("caseID",caseID);
ParameterField entpCodeField = newStringParameterField("entpCode",entpCode);
Fields fields = new Fields();
fields.add(caseIDField);
fields.add(entpCodeField);
viewer.setEnableParameterPrompt(false);
viewer.setParameterFields( fields );
viewer.refresh();
......
%>
黑马 2004-07-21
  • 打赏
  • 举报
回复
关注
fuzhe 2004-07-21
  • 打赏
  • 举报
回复
<%@ page import= "java.net.*,
com.crystaldecisions.sdk.occa.report.data.*,
com.crystaldecisions.sdk.occa.report.data.Filter,
com.crystaldecisions.report.web.*,
com.crystaldecisions.sdk.occa.report.application.*,
com.crystaldecisions.sdk.occa.report.reportsource.*,
com.crystaldecisions.report.web.viewer.*,
com.crystaldecisions.sdk.occa.report.lib.*"
%>
<%
String reportDirectory = "c:\\your_report_directory";
// ** Userid of database **
String uid = "your_user_id";
// ** Password of database **
String pwd = "your_pass_word";

// Declare the Server Control
ReportServerControl serverControl = new ReportServerControl();

// Declare the ReportClientDocument
ReportClientDocument clientDoc = new ReportClientDocument();

// Declare the Connection Infos object
ConnectionInfos connInfos;

// Declare the Connection info object
IConnectionInfo iConnInfo;

/********************************************************************************************
* Opening the Report Client Document
********************************************************************************************/
// Here we set the ReportClientDocument's ReportAppServer.

try {
String rasServerName = "0.0.0.0"; // ReportAppServe ip address
// Set the Report Application Server for the ReportClientDocument object
clientDoc.setReportAppServer(rasServerName);

} catch(ReportSDKException e) {

out.println(e);
}


CrystalReportInteractiveViewer viewer = new CrystalReportInteractiveViewer();
try {
clientDoc.open(reportDirectory+"report_info.rpt", OpenReportOptions._openAsReadOnly);
} catch(Exception e) {
out.println("Can not open the report serverl, please check the server.");
out.println(e);
}
clientDoc.getDatabaseController().logon(uid,pwd);
viewer.setReportSource(clientDoc.getReportSource());
viewer.setHasLogo(false);
viewer.setHasViewList(true);
viewer.setBestFitPage(true);
viewer.setDisplayPage(true);
viewer.setDisplayGroupTree(false);
viewer.setDisplayToolbar(false);
viewer.setHasPrintButton(true);
viewer.setHasExportButton(true);
viewer.setOwnPage(false);
viewer.setEnableDrillDown(false);
viewer.setHasHeaderArea(false);
viewer.setSelectionFormula("your_module_info");
viewer.setEnableLogonPrompt(false);
viewer.setEnableParameterPrompt(true);
viewer.refresh();
viewer.processHttpRequest(request, response, getServletConfig().getServletContext(), null);

%>
fingerling2004 2004-07-21
  • 打赏
  • 举报
回复
项目中只能用Crystal Report9,:(
javatool 2004-07-21
  • 打赏
  • 举报
回复
可以用JavaCellReport http://www.javatoolsoft.com/cn
你只需要在JSP拼凑URL就可以了..

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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