範例

下列範例是一個 JSP 頁面,示範如何為包含 Country 參數的報表設定參數欄位。在參數設定後,便會顯示報表。

注意    您必須為本教學課程範例中使用的所有報表設定適當的 JDBC 資料來源,這樣應用程式伺服器才能存取這些報表。本範例所使用的報表不包含在教學課程中。

parameterFieldsViewReport.jsp

<%@ page import="com.crystaldecisions.report.web.viewer.*" %>

<%@ page import="com.crystaldecisions.sdk.occa.report.data.*"  %>

<%@ page import="com.crystaldecisions.reports.reportengineinterface.JPEReportSourceFactory" %>

<%@ page import="com.crystaldecisions.sdk.occa.report.reportsource.IReportSourceFactory2" %>


<%

    Object reportSource = session.getAttribute("reportSource");

    if (reportSource == null)

    {

String report = "/reports/sample.rpt";

        IReportSourceFactory2 rptSrcFactory = new JPEReportSourceFactory();

        reportSource = rptSrcFactory.createReportSource(report, request.getLocale());

        session.setAttribute("reportSource", reportSource);

    }


    Fields fields = new Fields();

    ParameterField pfield1 = new ParameterField();


    Values vals1 = new Values();

    ParameterFieldDiscreteValue pfieldDV1 = new ParameterFieldDiscreteValue();


    pfield1.setName("Country");

    pfield1.setReportName("");

    pfieldDV1.setValue("Spain");

    pfieldDV1.setDescription("The country is Spain.");


    vals1.add(pfieldDV1);

    pfield1.setCurrentValues(vals1);


    fields.add(pfield1);


    CrystalReportViewer viewer = new CrystalReportViewer();

    viewer.setReportSource(reportSource);

    viewer.setParameterFields(fields);

    viewer.setEnableParameterPrompt(false);


    if (session.getAttribute("refreshed") == null)

    {

viewer.refresh();

session.setAttribute("refreshed", "true");

    }


    viewer.setOwnPage(true);

    viewer.processHttpRequest(request, response, getServletConfig().getServletContext(), null);

%>




Business Objects
http://www.china.businessobjects.com
Support services
http://www.china.businessobjects.com