Asp.Net+Grid Report實現Web報表,gridreport

來源:互聯網
上載者:User

Asp.Net+Grid Report實現Web報表,gridreport

     在做VB版機房收費系統時,周結賬單中的水晶報表想必大家都印象深刻。操作流程為:表單載入時,在表單中顯示資料表中的全部資料;選中查詢條件,點擊查詢按鈕,將對顯示的資料進行篩選;如果使用者想列印報表,直接點擊控制項上的列印按鈕即可進行列印。

   可這些操作是在C/S的結構中完成的,最近廊坊人事局的客戶要求我們開發小組完成B/S的報表列印,經過一天的苦苦思索,我終於完成了一個成功的Demo。在此把成果和大家分享下,希望能協助大家進步。

   解決方案目錄如下:

   

     操作步驟如下:

     1.匯入Grid Report官方提供的ReportData.cs、MssqlReportData.cs、CreateControl.js,推薦:http://pan.baidu.com/s/1qWoGe9A;

     2.用Grid++Report 報表設計師製作水晶報表aaa.grf,製作過程參考部落格:用VB做報表;

     3.當完成頁面載入時,需要在showAll.aspx設定顯示資料的SQL語句

<%@ Page Language="C#" %><script runat="server">     protected void Page_Load(object sender, EventArgs e)    {        SqlXMLReportData.GenDetailData(this, "select * from aaa");    }</script>
             4.點擊查詢按鈕後,需要在showPart.aspx中設定篩選資料的SQL語句

<%@ Page Language="C#" %><script runat="server">     protected void Page_Load(object sender, EventArgs e)    {        string QuerySQL = string.Format("select *from aaa where account='{0}'" ,Request.QueryString["account"]);                SqlXMLReportData.GenDetailData(this, QuerySQL);    }</script>
           5.在顯示頁面DisplayViewReport.htm中設定每次訪問的aspx檔案

<html xmlns="http://www.w3.org/1999/xhtml"><head>    <title>Web報表(B/S報表)示範 - 查詢顯示控制項展現報表</title>    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />    <script src="js/CreateControl.js" type="text/javascript"></script>    <style type="text/css">        html, body        {            margin: 20;            height: 100%;        }    </style>    <script type="text/javascript">        function btnSearch_onclick() {            ReportViewer.Stop();            var account = document.getElementById("account").value;            var DataURL = encodeURI("showPart.aspx?account=" + account);            ReportViewer.DataURL = DataURL;            ReportViewer.Start();        }    </script></head><body style="margin: 0">    帳號:<input type="text" name="account" id="account" />    <input type="button" value="查詢"  onclick="return btnSearch_onclick()"/>    <p>    </p>    <script type="text/javascript">        //用查詢顯示控制項展現報表,從URL“../grf/1a.grf”擷取報表膜板定義,從URL“../data/xmlCustomer.aspx”擷取XML形式的報表資料,        CreateDisplayViewerEx("100%", "100%", "grf/aaa.grf", "showAll.aspx", true, "");    </script></body></html>
         通過代碼我們可以發現,當html頁面載入時,頁面會載入grf檔案夾下的aaa.grf檔案,同時向showAll.aspx請求aaa.grf資料顯示需要執行的SQL語句。

   當點擊查詢按鈕後,html頁面通過ReportViewer.DataURL向showPart.aspx提交查詢參數,showPart.aspx通過 Request.QueryString["account"])方式接收html提交的查詢參數,然後通過SqlXMLReportData.GenDetailData()方法執行帶有查詢參數的SQL語句。
   到此,準備工作已經完成,咱們看看代碼運行效果:

   頁面載入時:

          

    點擊查詢後:

         

   怎麼樣,和C/S版的很像吧!如果你喜歡就點個贊吧,謝謝。


Grid++Report 報表設計師 怎使用

下載安裝之後看例子,安裝目錄下有大量例子。

協助的“產品介紹->快速入門指導”部分。根據快速入門指導中的說明,先把例子程式運行。

Grid++的例子分兩部分:
1、報表範本例子,主要是說明各種格式報表的設計,預設安裝,在C:\Grid++Report 5.0\Samples\Reports目錄下。
2、各種程式設計語言中應用報表的例子,每種程式設計語言都提供了相應例子。預設安裝,C/S報表在C:\Grid++Report 5.0\Samples目錄的對應子目錄下,B/S報表在C:\Grid++Report 5.0\WebSamples目錄的對應子目錄下。
 
c#下用Grid++Report怎調用設計好的報表?

C:\Grid++Report 5.0\Samples\CSharp
先學習這個目錄下的例子,應該就是幾行代碼的事情。
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.