成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

FastReport.Net 報(bào)表連接數(shù)據(jù)庫

U2FsdGVkX1x / 2368人閱讀

摘要:為節(jié)省您的時(shí)間,我將簡單談?wù)撘幌略趫?bào)表中連接數(shù)據(jù)源。所以,本文分為兩部分在報(bào)表中連接數(shù)據(jù)庫和將連接字符串傳遞到報(bào)表??梢赃x擇不同類型的連接,以連接到數(shù)據(jù)庫。

通常開發(fā)人員在學(xué)習(xí)FastReport .Net時(shí)出現(xiàn)的第一個(gè)問題就是:如何將數(shù)據(jù)連接到報(bào)表中?幸運(yùn)的是,該報(bào)告生成器有一個(gè)直觀的界面設(shè)計(jì)器。為節(jié)省您的時(shí)間,我將簡單談?wù)撘幌略趫?bào)表中連接數(shù)據(jù)源。接下來我將為您展示如何從用戶應(yīng)用程序中傳遞連接字符串。所以,本文分為兩部分:在報(bào)表中連接數(shù)據(jù)庫和將連接字符串傳遞到報(bào)表。
在報(bào)表中連接數(shù)據(jù)庫

1、有2種方式將新的數(shù)據(jù)源添加到報(bào)表中:

通過工具欄上“報(bào)表”選項(xiàng)卡圖標(biāo);

從“數(shù)據(jù)”窗口中的Actions下拉菜單中;

讓我們看一個(gè)例子。創(chuàng)建數(shù)據(jù)源。在打開的窗口中,選擇新的連接。可以選擇不同類型的連接,以連接到數(shù)據(jù)庫。這里采用MS Access connection。

進(jìn)一步選擇我們要工作的表單。你可以可以選擇使用SQL查詢的數(shù)據(jù)(沒有XML數(shù)據(jù)庫)。為此有一個(gè)查詢生成器,你需要手動(dòng)撰寫需求。

下一步,設(shè)置查詢的參數(shù);接下來重寫列的數(shù)據(jù)類型。

我選擇了2張表:員工表和訂單。它們有字段EmpNo綁定,要做到這一點(diǎn),打開“數(shù)據(jù)”的Action菜單,選擇新的關(guān)系。

父表是員工,孩子表-訂單。綁定EmpNo字段。

我們?yōu)槭裁催@樣做?現(xiàn)在我們可以為每個(gè)雇員顯示一個(gè)訂單列表。創(chuàng)建一個(gè)簡單的報(bào)表模板:

這里的帶(band)“數(shù)據(jù)”包含詳細(xì)的帶“數(shù)據(jù)”。

正如我們可以看到的:第一個(gè)顯示雇員的名字,第二個(gè)顯示的是一些訂單數(shù)據(jù)。
詳細(xì)的帶數(shù)據(jù)可以從“上下文”菜單中添加,或者通過帶配置窗口(配置帶)來添加:

如果我們雙擊第一個(gè)帶“數(shù)據(jù)”,我們將看到表名雇員被選為數(shù)據(jù)源,第二個(gè)帶“數(shù)據(jù)”為訂單。當(dāng)你將字段添加到空的帶時(shí),數(shù)據(jù)源會(huì)自動(dòng)選擇,當(dāng)然你也可以改為手動(dòng)。

如果不設(shè)置數(shù)據(jù)源,則不顯示數(shù)據(jù)。更確切地說,只是第一行的數(shù)據(jù)添加字段。保存報(bào)表。

2、從應(yīng)用程序中傳遞連接字符串到報(bào)表

創(chuàng)建窗體應(yīng)用程序。從FastReport .NET標(biāo)簽向窗體添加報(bào)表組件和按鈕:

從應(yīng)用程序中傳遞連接字符串到報(bào)表。

首先,你需要稍微修改先前創(chuàng)建報(bào)表。打開它的設(shè)計(jì)器。
創(chuàng)建報(bào)表參數(shù)。我們會(huì)給它一個(gè)連接字符串。在“數(shù)據(jù)”窗口中查找項(xiàng)目參數(shù)。右鍵點(diǎn)擊它-新參數(shù)。在“屬性”窗口中,設(shè)置參數(shù)名稱-conn。

現(xiàn)在選擇“數(shù)據(jù)”窗口中的連接,接下來在“屬性”窗口中,找到ConnectionStringExpression并添加到我們的參數(shù)。修改報(bào)表完成,保存并返回到程序。

雙擊按鈕運(yùn)行。在按鈕的事件處理程序添加的主要應(yīng)用程序代碼:

private string ReportPath = Environment.CurrentDirectory + "/ConnectionFromApp.frx";
private string DBPath = Environment.CurrentDirectory + "/demo.mdb";
private string ConnStr;

在主要操作之前,我們聲明一個(gè)變量來存儲(chǔ)報(bào)表路徑和數(shù)據(jù)庫。

private void RunBtn_Click(object sender, EventArgs e)  
 {  
 using (Report report = new Report())  
 {  
 report.Load(ReportPath);  
 ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + DBPath + ";User ID=Admin";  
 report.SetParameterValue("conn", ConnStr);
   report.Show();  
 }  
 }

點(diǎn)擊按鈕創(chuàng)建一個(gè)報(bào)告實(shí)例。然后加載該報(bào)告,指定連接字符串變量的值,指定連接字符串的報(bào)表參數(shù)值,并運(yùn)行該報(bào)表。

正如從文章中所說的那樣,將報(bào)表連接到數(shù)據(jù)是非常容易的事情,你可以連接報(bào)表到任意的數(shù)據(jù)庫,如果需要,你可以傳輸連接字符串到報(bào)表。當(dāng)用戶選擇的是本地驅(qū)動(dòng)器的數(shù)據(jù)庫時(shí),這就再方便不過了。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/17602.html

相關(guān)文章

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<