TMemoryStream *s;
創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的郴州網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
try
{
s = new TMemoryStream;
frReport1-SaveToStream(s);
//以下代碼為新增報(bào)表
Query1-SQL-Clear();
Query1-SQL-Add("insert into tb_report (r_id,r_desc,r_data) Values (報(bào)表編號(hào),'報(bào)表說(shuō)明',',:r_data)");
//Query1-ParamByName("r_sql")-AsString = FSQL;
Query1-ParamByName("r_data")-LoadFromStream(s,ftBlob);
Query1-Prepare();
Query1-ExecSQL();
//以下代碼為更新報(bào)表
Query1-SQL-Clear()
Query1-SQL-Add("update tb_report set r_data=:r_data where r_id=報(bào)表編號(hào)");
Query1-ParamByName("r_data")-LoadFromStream(s,ftBlob);
Query1-Prepare();
Query1-ExecSQL();
}
__finally
{
delete s;
s = NULL;
}
----------
確實(shí)是語(yǔ)言不對(duì)啊.因?yàn)樽约涸诳茨愕膯?wèn)題的時(shí)候,也嘗試自己去做了.不過(guò)delphi用這種方法可行,其它的語(yǔ)言應(yīng)該也不會(huì)查到哪去吧~
這個(gè)專業(yè)我也學(xué)得不是很好,用書上得例子吧。
某公司盡力需要了解公司在全國(guó)各地得銷售情況,設(shè)計(jì)一個(gè)水晶報(bào)表。統(tǒng)計(jì)個(gè)地區(qū)得銷售總額和全國(guó)總額
準(zhǔn)備工作
用 SQL server 2000 創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)company 在該數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)表Sales.用于儲(chǔ)存區(qū)域銷售數(shù)據(jù)
在表Sales 中添加若干條記錄
設(shè)計(jì)報(bào)表
打開 Visual Studio.NET創(chuàng)建名為 Salesreport得 WINDOWS應(yīng)用程序 將Form1.cs 名更改為 frmSalesReport.cs
frmSalesReport窗體得屬性設(shè)置里。 吧 frmSalesReport.cs得Text屬性更改為"區(qū)域銷售報(bào)表"
把NAME屬性更改為frmSalesReport。
在 VisualStudio.NET 菜單中選擇 項(xiàng)目添加新項(xiàng)。在"添加新項(xiàng)"窗口得“類別”區(qū)域擴(kuò)展 “本地項(xiàng)目項(xiàng)”,選擇數(shù)據(jù),在"模板"區(qū)域選擇"數(shù)據(jù)集" 在"名稱"那將Dataset1.xsd改名 SalesDetaset.xsd
單擊"打開" 將生成一個(gè)新得結(jié)構(gòu)文件 SalesDataset.xsd 該文件將顯示在 ADO.NET數(shù)據(jù)集設(shè)計(jì)器中。
Visualbasic代碼編輯器沒(méi)有這個(gè)功能,但可以用第三方的編輯軟件Emedit來(lái)實(shí)現(xiàn)這個(gè)功能。
1、用Emedit打開*.frm文件。
2、點(diǎn)工具,當(dāng)前配置屬性,然后勾選顯示行號(hào)即可。
這樣的效果用FineReport報(bào)表實(shí)現(xiàn)起來(lái)非常容易,只要在主報(bào)表的模板上,在需要放置子報(bào)表的單元格上右擊選擇“單元格元素|子報(bào)表”即插入了子報(bào)表,然后綁定子報(bào)表所需的數(shù)據(jù)源,實(shí)現(xiàn)讓子報(bào)表的內(nèi)容顯示在主報(bào)表上,然后將整個(gè)cpt文件插入vb.net中。
報(bào)表是企業(yè)管理的基本措施和途徑,是企業(yè)的基本業(yè)務(wù)要求,報(bào)表可以幫助企業(yè)訪問(wèn)、格式化數(shù)據(jù),并把數(shù)據(jù)信息以可靠和安全的方式呈現(xiàn)給使用者。 簡(jiǎn)單來(lái)說(shuō),報(bào)表就是通過(guò)表格,圖表等來(lái)對(duì)數(shù)據(jù)的呈現(xiàn).沒(méi)有計(jì)算機(jī)的時(shí)候,人們就用紙和筆來(lái)對(duì)賬目進(jìn)行記錄匯總分析等.當(dāng)計(jì)算機(jī)出現(xiàn)之后,人們利用計(jì)算機(jī)處理數(shù)據(jù)和界面設(shè)計(jì)的功能來(lái)生成、展示報(bào)表。計(jì)算機(jī)上的報(bào)表的主要特點(diǎn)是數(shù)據(jù)動(dòng)態(tài)化,格式多樣化,并且實(shí)現(xiàn)報(bào)表數(shù)據(jù)和報(bào)表格式的完全分離,用戶可以只修改數(shù)據(jù),或者只修改格式.今后為了提高報(bào)表的制作效率,更是出現(xiàn)了專門制作報(bào)表的工具. 而在vb中報(bào)表的使用整個(gè)過(guò)程分這個(gè)幾個(gè)階段. 首先 是報(bào)表設(shè)計(jì)器的安裝和報(bào)表模版的建立 其次 是報(bào)表和數(shù)據(jù)庫(kù)的連接最后vb代碼的實(shí)現(xiàn)
CrystalReportViewer
dataset 定義數(shù)據(jù)源
.rpt 文件描述具體報(bào)表樣式
再加一個(gè)調(diào)用報(bào)表的FORM,就可以實(shí)現(xiàn)簡(jiǎn)單的報(bào)表功能
Option Explicit
dim Report as New Cystal1
Private Sub Form_Load()
Screen.MousePointer = vbHourglass
'調(diào)用水晶報(bào)表時(shí)置鼠標(biāo)為沙漏狀 CRViewer91.ReportSource = Report '該語(yǔ)句的賦值將在后面被修改
CRViewer91.ViewReport
Screen.MousePointer = vbDefault '調(diào)用水晶報(bào)表完成后置鼠標(biāo)為默認(rèn)形狀
End Sub
Private Sub Form_Resize()
CRViewer91.Top = 0
CRViewer91.Left = 0
CRViewer91.Height = ScaleHeight
CRViewer91.Width = ScaleWidth
End Sub