《C#_Win實踐開發(fā)教程》chp7.水晶報表技術(shù).ppt_第1頁
《C#_Win實踐開發(fā)教程》chp7.水晶報表技術(shù).ppt_第2頁
《C#_Win實踐開發(fā)教程》chp7.水晶報表技術(shù).ppt_第3頁
《C#_Win實踐開發(fā)教程》chp7.水晶報表技術(shù).ppt_第4頁
《C#_Win實踐開發(fā)教程》chp7.水晶報表技術(shù).ppt_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、基于C#語言,講師:錢韶,課時:72課時聯(lián)系方式:Windows編程,第7章,水晶報表技術(shù),本章主要內(nèi)容介紹5.1 windows和Forms 5.2 Visual S IDE簡介5.3事件處理、內(nèi)容、本章的學(xué)習(xí)目標(biāo):了解水晶報表的功能和優(yōu)勢。使用水晶報告專家創(chuàng)建水晶報告。將水晶報表與表單中的報表綁定。導(dǎo)言7-1。產(chǎn)品部、財務(wù)部和市場部的薪資明細(xì)。按順序顯示信息并匯總信息?報表格式和組織的數(shù)據(jù)記錄表示,水晶報表7-2簡介,以表格形式顯示的數(shù)據(jù),需要手動計算每個部門的工資總額,水晶報表7-3簡介,組織化意味著數(shù)據(jù)記錄更容易匯總所需信息,水晶報表7-4簡介,水晶報表是在Visua

2、l Studio環(huán)境(包括Visual Studio)中創(chuàng)建報表的標(biāo)準(zhǔn)工具。NET),它不僅可以為WinForms和WebForms創(chuàng)建高質(zhì)量的交互式報表,還可以將報表作為Web服務(wù)存儲在Web服務(wù)器上用于創(chuàng)建和格式化報表的“Crystal Report Designer”界面中,這大大減少了代碼編寫量、Crystal報表的功能、運(yùn)行時定制、crystalreportviewer和其他控件之間的交互以及報表作為Web服務(wù),從而使借助交互式界面創(chuàng)建報表變得更加容易。在窗口窗體7-5中使用水晶報表,創(chuàng)建新的窗口項目,添加水晶報表查看器控件,添加“選擇報表”按鈕和添加按鈕以響應(yīng)事件,私有無效。DLG

3、=新的開放文件對話框();Dlg。Title=打開水晶報告文件;Dlg。過濾器=晶體報告文件(*。rpt)|*。rpt|所有文件| *。*;if(dlg。顯示對話()=對話結(jié)果。好的)水晶報表視圖1。ReportSource=dlg。文件名;在Windows窗體7-6中使用水晶報表,建立水晶報表文件7-7,1。以下方法可用于在執(zhí)行模式下從crystal report獲取數(shù)據(jù):當(dāng)請求拉模式:時,crystal report根據(jù)指定的驅(qū)動程序直接連接到數(shù)據(jù)庫,然后匯編數(shù)據(jù),當(dāng)然不需要編寫任何代碼。此時,開發(fā)人員必須編寫自己的代碼來連接數(shù)據(jù)、組裝數(shù)據(jù)集并將其發(fā)送到報表。在這種情況下,可以通過使用連接

4、共享和限制記錄集合的大小來最大化報告性能。創(chuàng)建水晶報表文件7-7,2,報表類型(1)強(qiáng)類型報表:當(dāng)您將報表文件添加到項目中時,它將成為“強(qiáng)類型”報表。在這些情況下,您將有權(quán)直接創(chuàng)建報告的對象,這將減少一些代碼并提供一些性能。(2)非類型化報告:此處的報告不直接包含在項目中,因此稱為非類型化報告。在這種情況下,您必須使用水晶報表的“ReportDocuemt”對象來創(chuàng)建一個實例,并“手動”調(diào)用該報表。建立水晶報表文件7-7,3,使用拉模式(1)首先創(chuàng)建rpt文件,并使用水晶報表設(shè)計界面設(shè)置一些必要的數(shù)據(jù)連接。(2)將CrystalReportViewer控件拖放到aspx頁面,并設(shè)置其屬性以指定

5、。我們在上一步中創(chuàng)建的rpt文件。建立使用水晶報表文件7-7,3,拉模式,(1)右鍵單擊“解決方案資源管理器”,在彈出菜單中選擇“添加”、“添加新項目”和“水晶報表”,(2)在“水晶報表庫”中選擇單選按鈕“作為空白報表”,最后單擊“確定”。建立水晶報表文件7-7,3,使用拉模式,和(3)出現(xiàn)水晶報表設(shè)計器。(4)右鍵單擊報告中的“詳細(xì)信息區(qū)域”,然后選擇“數(shù)據(jù)庫”“數(shù)據(jù)庫專家”。在彈出的數(shù)據(jù)庫專家中展開OLE數(shù)據(jù)庫選項,此時將彈出另一個OLE數(shù)據(jù)庫窗口。,建立水晶報表文件7-7,3,使用拉模式,(5)在OLE DB (ADO)彈出窗口中,選擇“微軟OLE DB提供程序”,然后單擊“下一步”,(

6、6)指定連接信息(選擇Pubs庫),單擊“下一步”,最后單擊“完成”。設(shè)置水晶報表文件7-7,3,使用拉模式,(7)然后您可以在“數(shù)據(jù)庫專家”窗口中看到我們選擇的數(shù)據(jù)庫。展開“Pubs”數(shù)據(jù)庫,展開“表格”,選擇“員工”表格并將其添加到“選定表格”區(qū)域,然后單擊“確定”按鈕。(8)現(xiàn)在,在“字段資源瀏覽器”中,您選擇的表和表中的字段將顯示在左側(cè)的“數(shù)據(jù)庫字段”區(qū)域中。建立水晶報表文件7-7,3,使用拉模式,(9)拖放所需字段進(jìn)入報表的“詳細(xì)信息”區(qū)域。域名將自動出現(xiàn)在“標(biāo)題”區(qū)域。如果要修改標(biāo)題文本,可以右鍵單擊標(biāo)題區(qū)域中的文本,選擇編輯文本對象選項并編輯它。保存和瀏覽信息。建立水晶報表文件7

7、-7,3,使用拉模式,(10)返回到上一個網(wǎng)絡(luò)表單,將水晶報表查看器控件拖放到頁面。(11)調(diào)出水晶報表查看器控件的屬性窗口,選擇“報表源”區(qū)域,然后單擊下拉列表。此時,您可以從水晶報表查看器控件中看到由一些虛擬數(shù)據(jù)組成的報表文件的預(yù)覽。設(shè)置水晶報表文件7-7,4,使用推送模式,設(shè)計一個數(shù)據(jù)集來創(chuàng)建一個. rpt文件,并將其分配給上一步創(chuàng)建的數(shù)據(jù)集。將CrystalReportViewer控件拖放到aspx頁面中,并將其與上一個rpt文件相關(guān)聯(lián)。在代碼中訪問數(shù)據(jù)庫,并將數(shù)據(jù)存儲在數(shù)據(jù)集中,以調(diào)用DataBind方法。基本步驟,構(gòu)建水晶報表文件7-7,4,使用推送模式,第一步:設(shè)計數(shù)據(jù)集,(1)

8、右鍵單擊解決方案瀏覽器,選擇添加-添加新項-數(shù)據(jù)集,(2)在服務(wù)器資源管理器中從SQL Server拖放存儲。(3)此時,數(shù)據(jù)集中會有一個商店表的結(jié)構(gòu)圖。設(shè)置水晶報告文件7-7,4。使用推送模式。步驟1:設(shè)計一個數(shù)據(jù)集,并建立水晶報表文件7-7。4.使用推送模式。步驟2:創(chuàng)建一個。并將其分配給上一步中創(chuàng)建的數(shù)據(jù)集。4)使用上述方法創(chuàng)建該文件。唯一的區(qū)別是使用數(shù)據(jù)集而不是以前的直接連接數(shù)據(jù)。5)創(chuàng)建后。rpt文件,右鍵單擊詳細(xì)信息-添加和刪除數(shù)據(jù)庫。6)在數(shù)據(jù)庫專家窗口中,展開項目數(shù)據(jù)(而不是以前的OleDb),展開ADO.Net數(shù)據(jù)集-數(shù)據(jù)集1,然后選擇存儲表。7)將“商店”表添加到“選擇的表

9、”中,單擊“確定”,并創(chuàng)建水晶報表文件7-7。4.使用推送模式。步驟2:創(chuàng)建一個. rpt文件,并將其分配給上一步創(chuàng)建的數(shù)據(jù)集,以創(chuàng)建一個水晶報表文件7-7。第三步:在aspx頁面拖放一個水晶。創(chuàng)建水晶報表文件7-7,4,使用推送模式,以及步驟4:創(chuàng)建水晶報表查看器控件并設(shè)置其屬性,這與PULL模式一致。同時,注意將生成的數(shù)據(jù)集對象拖到表單界面中。創(chuàng)建水晶報表文件7-7,4,使用推送模式,步驟5:運(yùn)行后,我們會看到一個空報表,主要原因是數(shù)據(jù)集對象只復(fù)制一個空物理表的模式結(jié)構(gòu),實際數(shù)據(jù)只能通過編程實現(xiàn)。,在代碼中訪問數(shù)據(jù)庫并將數(shù)據(jù)保存到數(shù)據(jù)集。見以下代碼:7-8水晶報表文件設(shè)計案例,案例1:打印

10、一份大學(xué)生成績單案例,一所大學(xué)是一所合作學(xué)校,有三所合作學(xué)校,評分文件的格式完全不一致。論文報告風(fēng)格如下:詳見學(xué)生成績文檔的報告圖片,7-8水晶報告文件設(shè)計案例,案例1:打印大學(xué)生成績單案例,數(shù)據(jù)庫分析數(shù)據(jù)庫分析報告參見電子文檔,7-8水晶報告文件設(shè)計案例,案例1:打印大學(xué)生成績單案例,第一步:創(chuàng)建一個空的rpt文件,首先設(shè)置整個報告的紙張大小, 這對于以后打印報告和報告布局非常重要,第二步:將紙張大小設(shè)置為B5紙張,垂直,7-8格水晶報告文件設(shè)計,第一格:打印大學(xué)生的成績單,第三步:再次選擇頁面設(shè)置,并配置頁面的上下左右邊距。 具體頁邊距請參考WORD文檔中的頁面設(shè)置參數(shù)。7-8水晶報表文件

11、設(shè)計案例,案例1:打印大學(xué)生成績單案例,步驟4:從報表工具箱中選擇一個文本對象,拖動到報表頭,輸入“網(wǎng)絡(luò)管理”字樣,右鍵選擇并設(shè)置對象格式,建立如下圖所示的報表頭樣式。7-8水晶報表文件設(shè)計案例,案例1:打印大學(xué)生成績單案例,步驟5:設(shè)計頁眉部分。由于報表左側(cè)的線段不能通過工具箱的控制來實現(xiàn),所以這部分是通過繪圖軟件來實現(xiàn)的。右鍵單擊標(biāo)題并選擇圖片,將生成的圖片插入左側(cè)標(biāo)題。然后,將圖片的高度設(shè)置為頁眉高度。從工具箱中拖放框架對象。這里需要注意的是,在繪制框架的時候,頁眉和細(xì)節(jié)是一起框起來的,這樣報表的風(fēng)格才能統(tǒng)一美觀。7-8水晶報表文件設(shè)計案例,案例1:打印大學(xué)生成績單案例,步驟6:在工具箱

12、中選擇行對象,在表頭畫四個單元格,并準(zhǔn)備添加相關(guān)文本信息。7-8水晶報表文件設(shè)計案例,案例1:打印大學(xué)生成績單案例,步驟7:右鍵點(diǎn)擊報表界面,在彈出菜單中選擇數(shù)據(jù)庫-數(shù)據(jù)庫專家,在彈出的OLE DB(ADO)界面中選擇OLE DB Provider SQL Server,配置數(shù)據(jù)庫服務(wù)器連接信息。選擇完成后,在菜單中的水晶報表項目中打開字段資源管理器,并將展開的數(shù)據(jù)庫字段拖動到報表界面。7-8水晶報表文件設(shè)計案例,案例1:打印大學(xué)生成績單案例,步驟8:根據(jù)下圖在表頭寫下文字,配置字體大小,用線對象勾勒出表格的基本數(shù)據(jù)分布區(qū)域。刪除拖動屬性字段的標(biāo)題部分后,將實際字段排列在詳細(xì)信息的空格中。7-

13、8水晶報表文件設(shè)計案例,案例1:打印大學(xué)生成績單案例,步驟9:配置報表頁腳,從工具箱中拖放文本、線條和框架對象,形成下圖中的頁腳樣式。7-8水晶報表文件設(shè)計案例,案例1:打印大學(xué)生的成績單,步驟10:右鍵點(diǎn)擊報表頁面,選擇報表-截面專家,在打開的截面專家設(shè)計器中,檢查頁面底部的打印功能。此功能使報表頁腳僅顯示在最后一頁的底部。7-8水晶報表文件設(shè)計案例,案例1:打印大學(xué)生的成績單,步驟11:整體設(shè)計完成后的報表如下圖所示。單擊主報告預(yù)覽,預(yù)覽報告的基本外觀。7-8水晶報表文件設(shè)計案例,案例1:打印大學(xué)生成績單案例,步驟12:返回表單1界面,從水晶報表中拖出一個水晶報表查看器對象,并將水晶報表查

14、看器對象的reportsource屬性配置為剛剛設(shè)計的rpt文件。運(yùn)行form1,程序正常,主要問題是:報表頭的數(shù)據(jù)沒有動態(tài)變化;顯示的學(xué)生成績內(nèi)容不是一個班級的,而是所有學(xué)生的成績。每門課程的百分比不會動態(tài)變化。畢竟,每個老師給出的百分比是不同的。報表頁腳中的信息是靜態(tài)的。顯然,這遠(yuǎn)非真正的動態(tài)報告。7-8水晶報表文件設(shè)計案例,案例2:水晶報表定制案例。第一步:將第四章ADO.NET案例中的類庫businesslayer.cs和databaselayer.cs以及案例14的表單文件form14.cs、form14.designer.cs和form14.resx復(fù)制到crystal report項目中,并將表單文件form14.cs指定為運(yùn)行的第一頁。7-8水晶報表文件設(shè)計案例,案例2:水晶報表定制案例,步驟2:運(yùn)行表單文件form14.cs,調(diào)整運(yùn)行后的狀態(tài)如下圖所示。期望當(dāng)你點(diǎn)擊打印按鈕時,你可以通過剛剛建立的案例1顯示一個班級和一門課程的水晶報表,也就是打開當(dāng)前項目的表單1表單。7-9水晶報表文件設(shè)計案例,案例2:水晶報表定制案例,步驟2:運(yùn)行表單文件form14.cs,調(diào)整運(yùn)行后的狀態(tài)如下圖所示。期望當(dāng)你點(diǎn)擊打印按鈕時,你可以通過剛剛建

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論