一. 完全傻瓜式
- 將一個指向查看器標(biāo)記庫描述符文件的引用添加到 JSP 頁面的頂部。 同時必須確保相應(yīng)的 JAR 文件和附加支持文件都存在。
<%@ taglib uri="/crystal
-t ags-r eportviewer.tld" prefix="crviewer" %>注意: 可以為 prefix 屬性指定任何名稱。prefix 確定要使用什么標(biāo)記前綴來訪問標(biāo)記庫的標(biāo)記。 - 創(chuàng)建一個開始 viewer 標(biāo)記。 在此標(biāo)記中,指定查看器名稱和報表源的類型。
<crviewer:viewer viewerName="CrystalViewer" reportSourceType="reportingComponent" >
- 創(chuàng)建必需的 report 標(biāo)記。
此標(biāo)記指定要顯示的報表以及要用于緩存報表源的會話變量。
- 結(jié)束 viewer 標(biāo)記。 JSP 頁面現(xiàn)在即可查看名為
sample.rpt
的報表。
</crviewer:viewer>
二. 自定義報表源式
1. 將一個指向查看器標(biāo)記庫描述符文件的引用添加到 JSP 頁面的頂部。 同時必須確保相應(yīng)的 JAR 文件和附加支持文件都存在。
<%@ import="com.crystaldecisions.reports.sdk.ReportClientDocument">
<%@ taglib uri="/crystal
注意: 可以為 prefix 屬性指定任何名稱。prefix 確定要使用什么標(biāo)記前綴來訪問標(biāo)記庫的標(biāo)記。
2. 創(chuàng)建報表源,設(shè)置報表源的屬性,把報表源緩存于session變量中(必需的)
<%
final String reportName="rpt/Sample.rpt";
ReportClientDocument crDoc = new ReportClientDocument();
crDoc.open(reportName,0);
crDoc.getDatabaseController().logon("sa","");
session.setAttribute("reportSource",crDoc.getReportSource());
%>
注意:如果viewer標(biāo)記的reportSourceVar屬性的默認(rèn)值是crystalReportSource,如果用這個做session變量的名稱,那可以不用設(shè)置reportSourceVar。
3. 創(chuàng)建一個開始 viewer 標(biāo)記。 在此標(biāo)記中,指定查看器名稱和報表源的類型。
<crviewer:viewer viewerName="CrystalViewer" reportSourceType="pageServer" reportSourceVar="reportSource">
4. 結(jié)束 viewer 標(biāo)記。 JSP 頁面現(xiàn)在即可查看名為 Sample的報表。
</crviewer:viewer>