資料庫名: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...