水晶報表在VS中的使用

2021-04-14 01:09:50 字數 1363 閱讀 6103

水晶報表在應用時分兩種方法,分別是拉模式(pull)、

推模式(push)。

1、拉模式:

在水晶報表生成時的"資料來源"是從水晶報表檔案中的sql語句從資料庫中提取的,在程式設計時不用重寫sql語句,

但要加上登入資訊(具體方法,後面介紹)。

2、推模式:

在水晶報表生成時的資料來源,是用程式設計時重寫水晶報表中sql語句而生成的dataset對像。

也就是說,推模式是用dataset組裝水晶報表。

3、水晶報表元件介紹:

水晶報表在vs2005中有兩種元件,在web專案是分別是crystalreportsource,crystalreportviewer。

在form專案裡是分別是crystalreport,crystalreportviewer。crystalreportsource,crystalreport是水晶報表的資料提供者;

crystalreportviewer是水晶報表的瀏覽器。另外還要介紹一下水的報表的檔案是以rpt為副檔名的檔案,該檔案可以用vs2005生成。

4、具體操作方法:

(1)、拉模式(pull):

在拉模式中如要在水晶報表中的sql語句加上條件引數時要用方式給出。

例:「select t1, t2, t3 from t where t1=''」 parm就是引數名

以下例子中所用到的水晶報表檔案中使用的sql語句是「select t1, t2, t3 from t where t1=''」 parm就是引數名。

【web方式下】

using crystaldecisions.shared;

using crystaldecisions.crystalreports.engine;

protected void button_pull_click(object sender, eventargs e)

crystalreportviewer1.reportsource = crystalreport1;

}2、水晶報表最簡便繫結法

水晶報表一般在建立資料集之後進行繫結,下面我介紹一種,直接用sql語句繫結,不需要設定crystalreportviewer1的報表路徑,不需要單獨建立資料集的簡便方法。

**如下:

crystalreport3 ocr = new crystalreport3(); // 繫結的.rpt 物件

ocr.setdatasource(ds);

this.crystalreportviewer1.reportsource = ocr;  // 繫結rpt檔案

cnn.close();

注:meetingplan要與報表專家crystalreport3繫結的一致,否則會出現查詢引擎錯誤。

在VS2013中使用水晶報表

原文 在vs2013中使用水晶報表 又遇到了在b s系統中列印,列印格式要求比較高,列印出的效果要求高大上。用vs2013中微軟自帶的報表,實在難以實現應用的效果,主要問題表現在 1.不能插入用word做好的列印模板,自己按照模板來做感覺比較費事,實現不了word的列印效果,一旦列印模板改變,調整格...

在VS2013中使用水晶報表

又遇到了在b s系統中列印,列印格式要求比較高,列印出的效果要求高大上。用vs2013中微軟自帶的報表,實在難以實現應用的效果,主要問題表現在 1.不能插入用word做好的列印模板,自己按照模板來做感覺比較費事,實現不了word的列印效果,一旦列印模板改變,調整格式比較麻煩。2.在火狐 谷歌瀏覽器中...

vs2005水晶報表的使用

網上有很多關於水晶報表的文章,但是都寫的不是特別細,不適合沒玩過的人,我自己也是找了很多文章才弄懂的,在這裡重新講一下winfrom下面的推模式,主要是怕自己忘記 1.用vs新建乙個crystalreport的專案。2.根據嚮導連線到資料庫。3.將所需的字段拉倒crystalreport裡面。4.務...