<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-0  評論-3  文章-28  trackbacks-0

    在(一)中的配置保持不變,前一篇是用crviewer標簽來實現(xiàn)jsp顯示水晶報表的

    這篇文章教你如何自己寫代碼來享受水晶報表的

    report_source.jsp

    <%@page contentType="text/html"%>
    <%@page pageEncoding="UTF-8"%>

    <%//Crystal Java Reporting Component (JRC) imports.%>
    <%-- jrcerom.jar--%>
    <%@page import="com.crystaldecisions.reports.sdk.*" %>
    <%-- rascore.jar--%>
    <%@page import="com.crystaldecisions.sdk.occa.report.lib.*" %>

    <%
    //水晶報表的位置
    final String REPORT_NAME = "view_report.rpt";
    %>

    <%

    try ...{    
        
    //打開報表
         ReportClientDocument reportClientDoc = new ReportClientDocument();
         reportClientDoc.open(REPORT_NAME,
    0);

        
    //把報表源放進session,傳遞到報表顯示頁面
         session.setAttribute("reportSource", reportClientDoc.getReportSource());
            
        
    //轉到報表顯示頁面
         response.sendRedirect("CrystalReportViewer.jsp");
            
    }

    catch(ReportSDKException ex) ...{    
         out.println(ex);
    }

    catch(Exception ex) ...{
         out.println(ex);            
    }

    %>

    上面的可以封裝到javabean里面

    reportClientDoc.getDatabaseController().logon(USERNAME, PASSWORD);

    設置數(shù)據(jù)庫的登陸用戶,如果瀏覽這個報表的用戶需要設置不同的權限的話,那就需要設置上面這個了

    CrystalReportViewer.jsp

    <%@page contentType="text/html"%>
    <%@page pageEncoding="UTF-8"%>

    <%//Crystal Report Viewer imports.%>
    <%-- webreporting.jar--%>
    <%@page import="com.crystaldecisions.report.web.viewer.*"%>
    <%-- rascore.jar--%>
    <%@page import="com.crystaldecisions.reports.sdk.*" %>

    <%
    //建立一個viewer對象實例,并設置
    CrystalReportViewer viewer = new CrystalReportViewer();
    viewer.setOwnPage(
    true);
    viewer.setOwnForm(
    true);
    viewer.setPrintMode(CrPrintMode.ACTIVEX);

    //從session中取報表源
    Object reportSource = session.getAttribute("reportSource");
    viewer.setReportSource(reportSource);

    //顯示水晶報表
    viewer.processHttpRequest(request, response,this. getServletConfig().getServletContext(), null);

    %>

    第二種方法直接用一個頁面

    CrystalReportViewer.jsp

    <%@page contentType="text/html"%>
    <%@page pageEncoding="UTF-8"%>

    <%//Crystal Java Reporting Component (JRC) imports.%>
    <%-- jrcerom.jar--%>
    <%@page import="com.crystaldecisions.reports.sdk.*" %>
    <%-- rascore.jar--%>
    <%@page import="com.crystaldecisions.sdk.occa.report.lib.*" %>
    <%-- webreporting.jar--%>
    <%@page import="com.crystaldecisions.report.web.viewer.*"%>

    <%
    //水晶報表的位置
    final String REPORT_NAME = "view_report.rpt";
    %>

    <%
    try ......{    
        
    //打開報表
         ReportClientDocument reportClientDoc = new ReportClientDocument();
         reportClientDoc.open(REPORT_NAME,
    0);

        
    //把報表源放進session,傳遞到報表顯示頁面
        
    //session.setAttribute("reportSource", reportClientDoc.getReportSource());

        
    //建立一個viewer對象實例,并設置
         CrystalReportViewer viewer = new CrystalReportViewer();
         viewer.setOwnPage(
    true);
         viewer.setOwnForm(
    true);
         viewer.setPrintMode(CrPrintMode.ACTIVEX);

        
    //從session中取報表源
        
    //Object reportSource = session.getAttribute("reportSource");
        
    //viewer.setReportSource(reportSource);
         viewer.setReportSource(reportClientDoc.getReportSource());

        
    //顯示水晶報表
          viewer.processHttpRequest(request, response,this. getServletConfig().getServletContext(), null);

            
        
    //轉到報表顯示頁面
        
    //response.sendRedirect("CrystalReportViewer.jsp");      
    }

    catch(ReportSDKException ex) ......{    
         out.println(ex);
    }

    catch(Exception ex) ......{
         out.println(ex);            
    }

    %>

    個人感覺第一種方法好,報表源跟顯示分開,安全,重用方便

    posted on 2008-03-28 16:47 閱讀(577) 評論(1)  編輯  收藏 所屬分類: java基礎

    評論:
    # re: 使用eclipse在jsp上顯示水晶報表(二)后臺代碼例子(轉載) 2011-03-31 11:58 | 劉文
    54fd  回復  更多評論
      
    主站蜘蛛池模板: 色一情一乱一伦一视频免费看| 亚洲国产成人综合| 视频一区二区三区免费观看| 拔擦拔擦8x华人免费久久| 亚洲国产系列一区二区三区| 久久久久久国产精品免费免费| 国产精品亚洲四区在线观看| 久草在视频免费福利| 亚洲 日韩经典 中文字幕| 全免费a级毛片免费看不卡| 亚洲日韩av无码中文| 亚洲精品国产成人| 3d成人免费动漫在线观看| 久久久无码精品亚洲日韩按摩| 最好看最新的中文字幕免费| 亚洲男人的天堂在线| 欧亚精品一区三区免费| 亚洲精品乱码久久久久久蜜桃图片| 国产精品国产午夜免费福利看| 日本免费精品一区二区三区| MM131亚洲国产美女久久| 久久福利青草精品资源站免费| 久久精品视频亚洲| 999国内精品永久免费观看| 亚洲人成色4444在线观看| 免费一区二区视频| 97国免费在线视频| 亚洲日产2021三区在线| 黄网址在线永久免费观看| 国产精品午夜免费观看网站| 亚洲VA中文字幕无码一二三区| 性xxxxx免费视频播放| 国产亚洲精品第一综合| 国产亚洲一区二区三区在线| 99无码人妻一区二区三区免费| 激情无码亚洲一区二区三区| 久久亚洲精品视频| 国产精品免费_区二区三区观看| 成人免费无码H在线观看不卡| 亚洲国产精品综合久久网各| 亚洲国产V高清在线观看|