水晶報表介紹

2021-09-06 00:21:10 字數 2374 閱讀 8862

資料庫名:test

資料庫表:t

【說明】

水晶報表在應用時分兩種方法,分別是拉模式(pull)、推模式(push)。拉模式:在水晶報表生成時的資料來源是從水晶報表檔案中的sql語句從資料庫中提取的,在程式設計時不用重寫sql語句,但要加上登入資訊(具體方法,後面介紹)。推模式:在水晶報表生成時的資料來源,是用程式設計時重寫水晶報表中sql語句而生成的dataset對像。也就是說,推模式是用dataset組裝水晶報表。

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

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

下面分別介紹具體操作方法:

拉模式(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)

【form方式下】

//在form方式下**同web方式,用crystalreport控制項換掉了crystalreportsource;用crystalreportviewer換掉了crystalreportviewer;這兩個控制項都可以在工具箱裡找到。同時在程式設計時去掉databind()方法。

private

void form1_load(object sender, eventargs e)

推模式(push):

在推模式中程式設計組裝的dataset裡的sql語句中的字段要與水晶報表裡的sql語句字段一致。簡單的說,推模式中的水晶報表是個模板,把在設計器裡報表的格式設好後,再組裝dataset就可以生成報表了。

【web方式下】

using

crystaldecisions.shared;

using

crystaldecisions.crystalreports.engine;

using

system.data.sqlclient;

protected

void button_push_click(object sender, eventargs e)

中的引數可以不用賦值,即使賦了值也不起作用。

// crystalreportsource1.reportdocument.parameterfields["parm"].currentvalues.addvalue("1234567");

crystalreportsource1.reportdocument.parameterfields["title"].currentvalues.addvalue("

這時推模式的報表樣例!"

);crystalreportsource1.databind();

crystalreportviewer1.reportsource = crystalreportsource1;

crystalreportviewer1.databind();

}【form方式下】

private

void form1_load(object sender, eventargs e)

中的引數可以不用賦值,即使賦了值也不起作用。

// crystalreportsource1.reportdocument.parameterfields["parm"].currentvalues.addvalue("1234567");

crystalreport1.parameterfields["title"].currentvalues.addvalue("

這時推模式的報表樣例!"

);crystalreportviewer1.reportsource = crystalreport1;} 

水晶報表 建立報表

水晶報表是乙個優秀的報表開發工具,本人在開發通用管理系統的時候,所有報表都使用水晶報表,其簡單 易用和強大的功能令筆者倍加喜愛,現將水晶報表使用手記呈現給大家。一 在使用自帶的水晶報表時,請註冊,否則只能使用30次 二 使用crystalreportviewer進行預覽 crystalreportv...

水晶報表 子報表

經過了一段時間對水晶報表的操作,我對其稍稍了解了一點點。這兩天,一直在為資料量太大而煩惱,我有六張表,其中一張關聯剩餘的五張表。想要顯示資料,結果,顯示不出來,即使我已經在鏈結裡面設定了左外連線。我知道這個是按照笛卡爾積相乘,所以資料會成倍的增加。所以,即使我改用直接連線資料庫的方式也行不通。就是p...

水晶報表匯出

private void page load object sender,system.eventargs e region web form designer generated code override protected void oninit eventargs e required me...