在大多報(bào)表系統(tǒng)中都有清單類報(bào)表的身影,比如:客戶清單、商品信息清單、設(shè)備清單、物品采購(gòu)清單、記賬憑證、貨品發(fā)貨清單、員工清單等等。清單類報(bào)表看視乎比較簡(jiǎn)單,但是,由清單類報(bào)表演變而來(lái)的報(bào)表類型卻十分豐富,在清單類報(bào)表中可以加入數(shù)據(jù)統(tǒng)計(jì)、數(shù)據(jù)分欄、數(shù)據(jù)分組,以及交互式報(bào)表和數(shù)據(jù)可視化功能。
本文將展示兩種布局的清單類報(bào)表,表格式清單報(bào)表和自由布局清單報(bào)表。
?
1、表格式清單報(bào)表——客戶信息清單
在客戶信息清單報(bào)表中以表格形式顯示所有客戶信息,包括客戶編號(hào)、公司名稱、聯(lián)系人、聯(lián)系人職務(wù)、電話和地址信息,同時(shí),報(bào)表顯示客戶總數(shù)和頁(yè)碼信息。
1.1、 在應(yīng)用程序中創(chuàng)建一個(gè)名為 rptCustomerList.cs 的報(bào)表,使用的報(bào)表模板為 ActiveReports 區(qū)域報(bào)表(基于代碼)。
?
打開(kāi) rptCustomerList 報(bào)表設(shè)計(jì)界面,在 detail 區(qū)域的左上角有一個(gè)數(shù)據(jù)源圖表。點(diǎn)擊該圖標(biāo)以創(chuàng)建報(bào)表數(shù)據(jù)源,我們使用的數(shù)據(jù)源是源代碼工程中 Data 目錄下的 NWind_CHS.mdb,在打開(kāi)的報(bào)表數(shù)據(jù)源對(duì)話框中,選擇”提供程序”選項(xiàng)卡,點(diǎn)擊建立連接按鈕以打開(kāi)“數(shù)據(jù)鏈接屬性”對(duì)話框,并選擇 “Microsoft Jet 4.0 OLE DB Provider”數(shù)據(jù)提供器,點(diǎn)擊“下一步”按鈕切換到 “連接”選項(xiàng)卡,點(diǎn)擊“…”按鈕定位到 NWind_CHS.mdb 文件,然后點(diǎn)擊“確定”按鈕以完成創(chuàng)建據(jù)源的操作。
回到“OLE DB”選項(xiàng)卡之后在查詢區(qū)域輸入一下 SQL 語(yǔ)句:Select * from 客戶;,最終結(jié)果如下:
創(chuàng)建完數(shù)據(jù)源之后回到報(bào)表設(shè)計(jì)界面,然后通過(guò) VS2010 “菜單” –> “其他窗口” –> “報(bào)表資源管理器 V7”打開(kāi) ActiveReports 報(bào)表資源管理器
?
在報(bào)表資源管理器的“字段” –> “綁定”節(jié)點(diǎn)下列出了客戶數(shù)據(jù)表中的所有字段
1.2、 將數(shù)據(jù)庫(kù)字段拖拽到到報(bào)表設(shè)計(jì)界面的 detail 區(qū)域中,同時(shí)從 VS 工具箱中的 “ActiveReports 7 區(qū)域布局報(bào)表” 分類下將 Label 添加到 pageHeader 區(qū)域中,并于 detail 中的數(shù)據(jù)字段一一對(duì)應(yīng)。
?
因?yàn)閳?bào)表紙張大小的限制,為了能在有限區(qū)域內(nèi)更多內(nèi)容,我們需要設(shè)置 txt公司名稱1 和 txt地址1 控件的 ShrinkToFit 為True,通過(guò)該屬性設(shè)置控件可以根據(jù)數(shù)據(jù)內(nèi)容自動(dòng)調(diào)整字體大小。
在 pageHeader 中添加一個(gè) TextBox 控件,并設(shè)置以下屬性:
DataFiedl = 客戶ID
SummaryFunc = Count
SummaryType = GrandTotal
在 pageFooter 中添加一個(gè) ReportInfo 控件,如何設(shè)置以下屬性:
FormatString = 第 {PageNumber} 頁(yè),共 {PageCount} 頁(yè)
最后,在 ASPX 頁(yè)面中添加 WebViewer 控件,并設(shè)置以下屬性:
ReportName = ControlExplorer.Reports.rptCustomerList
ViewerType = FlashViewer
?
1.3、 F5 鍵運(yùn)行程序得到以下結(jié)果:
2、自由布局式清單報(bào)表——商品信息清單
在進(jìn)行 ActiveReports 報(bào)表界面設(shè)計(jì)時(shí),您可以通過(guò)拖拽的方式對(duì)報(bào)表控件進(jìn)行自由布局,而不局限于表格式的布局方式。商品信息清單中每一條商品信息都是以多行、多列以及多行合并的方式進(jìn)行顯示。
?
2.1、在工程中創(chuàng)建名為 rptProductList.cs 的報(bào)表,使用的報(bào)表模板為 ActiveReports 區(qū)域報(bào)表(基于代碼)。創(chuàng)建完成之后我們?yōu)楸硎驹O(shè)置下圖中的數(shù)據(jù)源信息:
?
2.2、從報(bào)表資源管理器的字段、綁定節(jié)點(diǎn)中將需要的字段拖拽到報(bào)表設(shè)計(jì)界面,需要注意的是產(chǎn)品圖片使用的是Picture控件來(lái)呈現(xiàn)的。最終的設(shè)計(jì)效果如下圖所示:
?
2.3、通過(guò) F5 鍵運(yùn)行程序,得到以下運(yùn)行結(jié)果:
?
源碼下載地址: http://www.gcpowertools.com.cn/products/activereports_demo.htm
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
