ActiveReports 的圖表控件支持絕大多數(shù)常用的二維和三維圖表類型,包括XY圖表和財(cái)務(wù)圖表。通過使用圖表控件的定制功能,如修改坐標(biāo)軸、圖注、圖例等,用戶可以創(chuàng)建任何其所需要的圖表效果。用戶還可以通過代碼把定義好的圖表輸出為多種圖像格式。 本文將演示如何在 ActivReports 中實(shí)現(xiàn)圖文混淆報(bào)表。
我們將要實(shí)現(xiàn)的是2011年度各類產(chǎn)品銷量統(tǒng)計(jì)報(bào)表,其中圖表按照產(chǎn)品類別統(tǒng)計(jì)銷量,表格按照類別和月份統(tǒng)計(jì)銷售量。
?
1、創(chuàng)建報(bào)表文件
在 ASP.ENT 應(yīng)用程序中添加一個(gè)名為 rptSalesByCategory.rdlx 的頁面報(bào)表(PageReport)文件,使用的報(bào)表模板為“ActiveReports 7 頁面報(bào)表”,創(chuàng)建完成之后通過 VS 的以下菜單完成報(bào)表轉(zhuǎn)換操作:
?
2、為 rptSalesByCategory 報(bào)表添加數(shù)據(jù)源
通過 VS2010 “菜單” –> “其他窗口” –> “報(bào)表資源管理器 V7 ” 打開 ActiveReports 報(bào)表資源管理器,在數(shù)據(jù)源節(jié)點(diǎn)上鼠標(biāo)右鍵,并選擇“添加數(shù)據(jù)源”。在出現(xiàn)的報(bào)表數(shù)據(jù)源對話框中,輸入下圖所示的信息:
2.1、在新創(chuàng)建的 NWind_CHS 數(shù)據(jù)源節(jié)點(diǎn)上鼠標(biāo)右鍵,并選擇添加數(shù)據(jù)集,在出現(xiàn)的數(shù)據(jù)集對話框中輸入一下信息:
常規(guī)選項(xiàng)卡 –> 名稱:Sales
查詢選項(xiàng)卡 –> 查詢:
SELECT 類別.類別名稱,t.* FROM (SELECT 類別.類別ID, SUM (訂單明細(xì).數(shù)量) AS 銷售量 FROM (( 訂單INNER JOIN 訂單明細(xì) ON 訂單.訂單ID = 訂單明細(xì).訂單ID)INNER JOIN 產(chǎn)品 ON 訂單明細(xì).產(chǎn)品ID = 產(chǎn)品.產(chǎn)品ID)INNER JOIN 類別 ON 產(chǎn)品.類別ID = 類別.類別IDWHERE DATEDIFF("yyyy",訂單.訂購日期,'2011-01-01') = 0GROUP BY 類別.類別ID, 類別.類別名稱ORDER BY 類別.類別ID, 類別.類別名稱 ) as tINNER JOIN 類別 ON t.類別ID = 類別.類別ID
2.2、在 NWind_CHS 數(shù)據(jù)源節(jié)點(diǎn)上鼠標(biāo)右鍵,并選擇添加數(shù)據(jù)集,在出現(xiàn)的數(shù)據(jù)集對話框中輸入一下信息:
常規(guī)選項(xiàng)卡 –> 名稱:SaleDetails
查詢選項(xiàng)卡 –> 查詢:
SELECT 類別.類別名稱,t.* FROM (SELECT DATEPART("m",訂單.訂購日期) AS 訂購月,類別.類別ID, SUM (訂單明細(xì).數(shù)量) AS 銷售量 FROM (( 訂單INNER JOIN 訂單明細(xì) ON 訂單.訂單ID = 訂單明細(xì).訂單ID)INNER JOIN 產(chǎn)品 ON 訂單明細(xì).產(chǎn)品ID = 產(chǎn)品.產(chǎn)品ID)INNER JOIN 類別 ON 產(chǎn)品.類別ID = 類別.類別IDWHERE DATEDIFF("yyyy",訂單.訂購日期,'2011-01-01') = 0GROUP BY DATEPART("m",訂單.訂購日期),類別.類別ID, 類別.類別名稱ORDER BY DATEPART("m",訂單.訂購日期),類別.類別ID, 類別.類別名稱 ) as tINNER JOIN 類別 ON t.類別ID = 類別.類別ID?
3、創(chuàng)建圖表對象
從 VS 工具箱中將 Chart 控件添加到報(bào)表設(shè)計(jì)界面,選中 Chart 后在屬性窗口中的命令區(qū)域會顯示 Chart 相關(guān)的操作命令,我們點(diǎn)擊【圖表數(shù)據(jù)…】命鏈接,此時(shí)會顯示圖表數(shù)據(jù)對話框,按照以下截圖完成 Chart 的設(shè)置:
3.1 圖表數(shù)據(jù)-常規(guī)設(shè)置
名稱:
Chart1
工具提示:
2011年度各類產(chǎn)品銷售量統(tǒng)計(jì)表
數(shù)據(jù)集名稱:
Sales
3.2、圖表數(shù)據(jù)-系列值
系列標(biāo)簽:
銷售量
值:
=Sum([銷售量])
3.3、圖表數(shù)據(jù)-類別分組
分組-表達(dá)式:
=[類別名稱]
標(biāo)簽:
=[類別名稱]
?
4、創(chuàng)建數(shù)據(jù)明細(xì)表
我們將使用矩陣控件 Matrix 來顯示每月,每類產(chǎn)品的銷售量,從 VS 工具箱中將矩陣控件 Matrix 添加到報(bào)表設(shè)計(jì)界面,并選擇矩陣控件,此時(shí)在屬性窗口中的命令區(qū)域會顯示【屬性對話框…】命令鏈接,點(diǎn)擊該鏈接。
4.1、矩陣-常規(guī)設(shè)置
數(shù)據(jù)集名稱:
SaleDetails
4.2、矩陣-行分組
常規(guī)-分組-表達(dá)式:
=[訂購月]
排序-表達(dá)式:
=[訂購月]
4.3、矩陣-列分組
常規(guī)-分組-表達(dá)式:
=[類別名稱]
4.4、我們得到的最終設(shè)計(jì)效果和運(yùn)行效果如下圖所示:
?
5、運(yùn)行程序
?
源碼下載地址: http://www.gcpowertools.com.cn/products/activereports_demo.htm
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

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