| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 |
- <%@page import="com.uas.cr.listener.ContextInitListener"%>
- <%@page import="com.uas.cr.entity.DB"%>
- <%@page import="com.uas.cr.util.DES"%>
- <%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
- <%@ page
- import="com.crystaldecisions.report.web.viewer.CrystalReportViewer,com.crystaldecisions.sdk.occa.report.application.OpenReportOptions,com.crystaldecisions.sdk.occa.report.application.ReportClientDocument,com.crystaldecisions.sdk.occa.report.lib.ReportSDKExceptionBase,java.sql.Connection,java.sql.DriverManager,java.sql.ResultSet,java.sql.SQLException,java.sql.Statement,java.lang.Object"%>
- <%@page import="java.text.Format"%>
- <%@page import="com.crystaldecisions.report.web.viewer.CrPrintMode"%>
- <%@page
- import="com.businessobjects12.prompting.objectmodel.common.Values"%>
- <%@page
- import="com.crystaldecisions.reports.queryengine.collections.Fields"%>
- <%@page import="com.businessobjects.reports.dpom.processingplan.Field"%>
- <%@page
- import="com.crystaldecisions.sdk.occa.report.data.ParameterFieldRangeValue"%>
- <%@page
- import="com.crystaldecisions.sdk.occa.report.data.ParameterFieldDiscreteValue"%>
- <%@page
- import="com.crystaldecisions.reports.queryengine.collections.ParameterValues"%>
- <%@page
- import="com.crystaldecisions.sdk.occa.report.data.ParameterField"%>
- <%@page
- import="com.crystaldecisions.reports.reportengineinterface.JPEReportSourceFactory"%>
- <%@page
- import="com.crystaldecisions.sdk.occa.report.reportsource.IReportSourceFactory2"%>
- <%@page
- import="com.crystaldecisions.sdk.occa.report.data.ConnectionInfos"%>
- <%@page
- import="com.crystaldecisions.sdk.occa.report.data.ConnectionInfo"%>
- <%@page
- import="com.crystaldecisions.sdk.occa.report.data.IConnectionInfo"%>
- <%@page
- import="com.crystaldecisions.sdk.occa.report.reportsource.IReportSource"%>
- <%@page import="com.crystaldecisions.sdk.occa.report.lib.PropertyBag"%>
- <%
- try {
- // 报表路径
- String reportName = request.getParameter("reportfile");
- // 条件
- String rcondition = request.getParameter("rcondition");
- DB db = ContextInitListener.getDB();
- if(reportName == null || "".equals(reportName) || db == null) {
- out.println("非法请求!");
- return;
- }
- DES des = new DES();
- String key = "12345678";
- reportName = des.decrypt(reportName, key).replace("%2f", "/");
- ReportClientDocument clientDoc = (ReportClientDocument) session.getAttribute(reportName);
- if (clientDoc == null) {
- clientDoc = new ReportClientDocument();
- clientDoc.setReportAppServer(ReportClientDocument.inprocConnectionString);
- // Open report
- clientDoc.open(reportName, OpenReportOptions._openAsReadOnly);
- // ****** BEGIN POPULATE WITH RESULTSET SNIPPET ****************
- session.setAttribute(reportName, clientDoc);
- }
- // ****** BEGIN CONNECT CRYSTALREPORTPAGEVIEWER SNIPPET ****************
- // Create the CrystalReportViewer object
- IReportSourceFactory2 rsf = new JPEReportSourceFactory();
- java.util.Locale localetest = java.util.Locale.CHINA;
- IReportSource rptSource = (IReportSource) rsf.createReportSource(reportName, localetest);
- ConnectionInfos conninfos = new ConnectionInfos();
- IConnectionInfo connInfo1 = new ConnectionInfo();
-
- PropertyBag propertyBag = new PropertyBag();
- propertyBag.put("Database Class Name", db.getDriverClassName());
- propertyBag.put("CONNECTION_STRING", db.getUrl());
- propertyBag.put("Database DLL", "crdb_oracle.dll");
- propertyBag.put("Server Type", "JDBC (JNDI)");
- propertyBag.put("Use JDBC", "true");
-
- connInfo1.setAttributes(propertyBag);
- connInfo1.setUserName(db.getUsername());
- connInfo1.setPassword(db.getPassword());
- conninfos.add(connInfo1);
- CrystalReportViewer crystalReportPageViewer = new CrystalReportViewer();
- crystalReportPageViewer.setDatabaseLogonInfos(conninfos);
- // set the reportsource property of the viewer
- crystalReportPageViewer.setReportSource(rptSource);
- crystalReportPageViewer.setSelectionFormula(rcondition);
- crystalReportPageViewer.setPrintMode(CrPrintMode.ACTIVEX);
- crystalReportPageViewer.setOwnPage(true);
- crystalReportPageViewer.setOwnForm(true);
- crystalReportPageViewer.setEnableParameterPrompt(false);
- crystalReportPageViewer.setDisplayGroupTree(false);
- crystalReportPageViewer.setHasSearchButton(false);
- crystalReportPageViewer.setHasPrintButton(true);
- crystalReportPageViewer.setHasExportButton(true);
- crystalReportPageViewer.setHasLogo(false);
- crystalReportPageViewer.setGroupTreeWidth(0);
- crystalReportPageViewer.setDisplayGroupTree(false);
- crystalReportPageViewer.setHasViewList(false);
- // Apply the viewer preference attributes
- // Process the report
- crystalReportPageViewer.processHttpRequest(request, response, application, out);
- // ****** END CONNECT CRYSTALREPORTPAGEVIEWER SNIPPET ****************
- } catch (ReportSDKExceptionBase e) {
- out.println(e);
- } catch (Exception e) {
- out.println(e);
- }
- %><%!// Simple utility function for obtaining result sets that will be pushed into the report.
- // This is just standard querying of a Java result set and does NOT involve any%>
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
- <title>报表</title>
- </head>
- <body>
- </body>
- </html>
|