水晶報表使用經驗談2--使用sql語句直接產生dataset做為報表的資料來源!

來源:互聯網
上載者:User
上一次自己做了直接在rpt檔案裡使用oledb串連使用資料庫的方法 但是不是很靈活 這次做了使用sql語句直接產生dataset做為報表的資料來源(即push模式),這樣就可以接受參數了。當然報表有設定參數的功能 這方面我還沒有詳細研究

一.sql語句中沒有使用表的相互關聯(簡單的查詢語句)
 設計一個DataSet
1) 右擊“解決方案瀏覽器”,選擇“添加”--“添加新項”-->“資料集”
2) 從“伺服器總管”中的“SQL Server”中拖放“Stores”表(位於PUBS資料庫中)
3) 此時在資料集中就會有一個Stores表的結構圖。xsd檔案中僅僅包含一個結構圖,但是不會有任何資料在裡面

建立一個.rpt檔案crystalreport1.rpt同時將其指定給上一步建立的DataSet。
4) 使用上面的介紹過的方法建立此檔案,唯一的不同就是使用資料集來代替前面的直接連接資料。
5)建立.rpt檔案之後,右擊“詳細資料”-->"添加/刪除資料庫“
6) 在”資料庫專家“視窗中,展開”項目資料“(代替以前的OleDb),展開“ADO.Net資料集”--"DataSet1“,選擇”Stores“表。
7) 將”Stores"表添加到“選定的表”中,點擊“OK”
8) 建立一個WebForm1.aspx  拖入一個Crystal Report Viewer 控制項

9)WebForm1.aspx.cs
   ReportDocument oRpt = new ReportDocument();
   string RptDir="f:\\bbs\\test\\crystal\\crystalreport1.rpt";
   oRpt.Load(RptDir);
  
   ...//根據sql語句得到DataSet 這個就不多說了

   oRpt.SetDataSource(ds);   
   CrystalReportViewer1.ReportSource=oRpt;

   //注意push模式用不到設定logOnInfo參數

10)運行試試看!應該沒問題哦
另外送上水晶報表10的下載:http://sc.fixdown.com/fixdown/download.asp?id=14867&free=sx-down 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.