国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

DateGridView 控件的自動分層技術(shù)實現(xiàn)及其應(yīng)用

2015-06-02 03:16:07廖璐葉小艷施錦鎮(zhèn)
電腦知識與技術(shù) 2015年9期
關(guān)鍵詞:樹狀數(shù)據(jù)源控件

廖璐 葉小艷 施錦鎮(zhèn)

摘要:為了解決ERP系統(tǒng)中樹狀結(jié)構(gòu)數(shù)據(jù)表現(xiàn)問題,設(shè)計了一個TreeGird復(fù)合控件,該控件主要由DateGridView和TreeView組成的新控件。通過設(shè)計數(shù)據(jù)的父項和子項類,來實現(xiàn)數(shù)據(jù)的自動歸類和分層的功能,通過TreeView控件節(jié)點閉合與展開,實現(xiàn)DateGridView數(shù)據(jù)的顯示和隱藏功能,并以DateGridView控件實現(xiàn)一系列的ERP的系統(tǒng)功能。經(jīng)過實踐確認,該控件實現(xiàn)了數(shù)據(jù)庫高效穩(wěn)定的讀取以及用戶更加直觀的進行增刪查改等操作功能。

關(guān)鍵詞:控件;DateGridView;Treeview;自動分層

中圖分類號:TP311.11 文獻標識碼:A 文章編號:1009-3044(2015)09-0234-03

Abstract: in order to solve the performance problem of tree structure data in ERP system, the design of a TreeGird composite control, the new control the control is mainly composed of DateGridView and TreeView. Through the design of the data of the parent and child classes, to realize data automatic classification and stratification of function, through the TreeView control node is closed and expansion, DateGridView data display and hidden features, and realize the function of the system are a series of ERP based on DateGridView control. After the practice confirmation, the controls to achieve the stable and efficient database read and users more intuitive for crud functions.

Key words: DateGridView; Treeview; automatic control; hierarchical

傳統(tǒng)的ERP管理軟件由少量的簡單模塊組成,主要以記事功能為主;隨著信息化發(fā)展,ERP管理軟件開始注重于生產(chǎn)、貿(mào)易全過程的進展,實現(xiàn)全過程的業(yè)務(wù)跟蹤,這樣可以隨時掌握整個公司、各個分公司的運營情況[1]。在錄入訂單信息、跟蹤物流等繁瑣的工作更容易出錯,因此,為了能夠直觀顯示數(shù)據(jù)且方便的操作,ERP系統(tǒng)中一般使用樹狀結(jié)構(gòu)來表現(xiàn)數(shù)據(jù)關(guān)系,但未能表現(xiàn)出樹狀結(jié)構(gòu)中所得到的數(shù)據(jù),目前在用C#開發(fā)的軟件也中還沒有成熟好用的開源控件可以解決樹狀結(jié)構(gòu)的數(shù)據(jù)表現(xiàn)。本文設(shè)計一個TreeGird復(fù)合控件,解決樹狀結(jié)構(gòu)數(shù)據(jù)表現(xiàn)問題。

該TreeGird復(fù)合控件,是基于.NET Framework的可重用組件,分為復(fù)合控件、擴展控件和自定義控件三類。其中,復(fù)合控件就是將多個控件封裝在一個窗體中,它既可以保留每個被包含控件的原有的功能,也可以選擇地公開它們的部分屬性。復(fù)合控件繼承與UserControl類,擁有了大量的默認鼠標、鍵盤處理的功能[2]。

1 基礎(chǔ)控件的設(shè)計

1.1 外觀設(shè)計

該控件外觀設(shè)計由TreeView和DataGridView組合成新控件,左邊樹狀的每個級別都分別對應(yīng)右邊的數(shù)據(jù)源,如圖1所示。

1.2 應(yīng)用流程

開發(fā)者首先向該控件添加數(shù)據(jù),調(diào)用GetDataTable方法,當滿足需求時,可以顯示出BOM表。BOM作為“零部件表”,能具體顯示產(chǎn)品的組成結(jié)構(gòu),而且還得說明該產(chǎn)品在制造過程中的階段[3]。TreeGrid控件流程如圖2所示。

代碼范例如下:

var d = GetDataTable();

this.treeGrid1.dataTable = d;

public DataTable GetDataTable()

{

DataTable dt = new DataTable();

if (SqlConnection1.State == ConnectionState.Closed)

{

SqlConnection1.Open();

}

SqlCommand ccgc = new SqlCommand("PX", SqlConnection1);

ccgc.CommandType = CommandType.StoredProcedure;

SqlDataReader sdr = ccgc.ExecuteReader();

dt.Load(sdr);

SqlConnection1.Close();

return dt;

}

1.3 使用要求

數(shù)據(jù)源本身必須符合等級關(guān)系以及符合樹狀結(jié)構(gòu),第一列數(shù)據(jù)用1來表示第一層,用2表示第二層,以此類推;兩個2之間的3屬于前面的2,兩個3之間的4屬于前面的3,以此類推。1和3之前必然存在2。圖3是樹狀控件與數(shù)據(jù)源第一列數(shù)據(jù)的對應(yīng)關(guān)系。

2 控件實現(xiàn)自動分層的方法

2.1 展開與收起指定層級

展開與收起條目,默認用鼠標點擊“+”時展開下一級別,“-”時收起當前級別以下的條目。觸發(fā)AfterCollapse和AfterExpand事件,調(diào)用tableChange()方法,利用遞歸算法顯示出展開與收起指定層次的數(shù)據(jù)。

private void treeView1_AfterExpand(object sender, TreeViewEventArgs e) //展開節(jié)點

{

tableChIange();

}

private void treeView1_AfterCollapse(object sender, TreeViewEventArgs e) //折疊節(jié)點

{

tableChange();

}

2.2 展開與收起當前節(jié)點

private void

收起當前節(jié)點

ToolStripMenuItem_Click(object sender, EventArgs e)

{

treeView1.SelectedNode.Collapse();

}

private void

展開當前節(jié)點

ToolStripMenuItem_Click(object sender, EventArgs e)

{

treeView1.SelectedNode.ExpandAll();

}

2.3 展開與收起所有節(jié)點

private void

展開所有節(jié)點

ToolStripMenuItem_Click(object sender, EventArgs e)

{

treeView1.ExpandAll();

tableChange();

}

private void

收起所有節(jié)點

ToolStripMenuItem_Click(object sender, EventArgs e)

{

treeView1.CollapseAll();

}

3 該控件在ERP系統(tǒng)中的應(yīng)用

在ERP系統(tǒng)中,有很多地方應(yīng)用到這種數(shù)據(jù)結(jié)構(gòu)。

首先,ERP是建立于中大型數(shù)據(jù)庫的信息系統(tǒng),大量數(shù)據(jù)都會進行增、刪、查、改等操作,因此,組合樹狀控件能為ERP帶來更高效的訪問速度。其次,這些數(shù)據(jù)在軟件中可以表現(xiàn)為樹狀結(jié)構(gòu)(即層次化結(jié)構(gòu)),TreeView能解決這種情況,再結(jié)合DataGridView能為用戶提供更加直觀的數(shù)據(jù)顯示。

其次,ERP系統(tǒng)中有大量的數(shù)據(jù)都存在著從屬關(guān)系,這些數(shù)據(jù)在軟件中可以表現(xiàn)為樹狀結(jié)構(gòu),而該控件剛好解決了這個問題,而且能把數(shù)據(jù)顯示出來。

在ERP系統(tǒng)中,有大量數(shù)據(jù),在它們之間有著從屬關(guān)系,如物料清單的數(shù)據(jù),還有排產(chǎn)、生產(chǎn)計劃控制、工程管理、項目管理等的數(shù)據(jù)[4]。這些數(shù)據(jù)在系統(tǒng)軟件中展示給用戶時,都可以通過組合樹狀控件來完成。以下是組合樹狀控件在ERP中的實例。在TreeView中顯示材料等級或者顯示層次。

例1:電子掛鐘物料清單可以利用該控件來顯示。TreeView顯示電子掛鐘的組成成分,DataGridView顯示各種詳細信息。測試結(jié)果如圖4所示。

例2:增刪查改使界面既可以清楚的顯示數(shù)據(jù),又可以在同一個界面進行方便的操作;刪除時不會把數(shù)據(jù)庫中的子類不會跟著被刪除掉,這樣是為了方便再次添加父類的時候能直接顯示出來。如圖5所示。

4結(jié)束語

在ERP系統(tǒng)中,開發(fā)者可以利用組合樹狀控件,使數(shù)據(jù)庫高效穩(wěn)定的讀取,以及用戶更加直觀的進行增刪查改等操作[5]。經(jīng)過反復(fù)的實踐確認,上訴控件實現(xiàn)了預(yù)期的功能。

本次的設(shè)計顯示節(jié)點時運用到了數(shù)據(jù)庫中存儲過程的遞歸方法,TreeView中的遞歸算法,顯示數(shù)據(jù)源時運用到了DataGridView篩選、排序的方法。該控件解決了樹狀結(jié)構(gòu)的數(shù)據(jù)ERP系統(tǒng)中的顯示問題,如物料清單、排產(chǎn)、生產(chǎn)計劃控制、工程管理、項目管理等,能夠提升程序的用戶體驗。該系統(tǒng)能為ERP系統(tǒng)開發(fā)者節(jié)省開發(fā)控件時間、精力以及經(jīng)費。該控件具有良好的可塑性,結(jié)合增刪查改等功能會有更加大的作用。把每個節(jié)點的“+-”符號改為圖片形式會顯得更加美觀,可以有隱藏,顯示等功能。

參考文獻:

[1]張云鶴.基于ERP的倉儲信息化管理研究[D].蘭州:蘭州理工大學,2008.

[2]張趙良,朱菊香.面向?qū)ο蠹夹g(shù)在電氣控制仿真組件中的應(yīng)用[J].內(nèi)江科技,2011,32(1):104-105.

[3]范春迎.淺談物料清單在ERP中的應(yīng)用[J].數(shù)字技術(shù)與應(yīng)用,2010(6):132-132.

[4]康啟強,周霞.PDM和ERP系統(tǒng)集成研究[J].CAD/CAM與制造業(yè)信息化, 2003(12):23-25.

[5]葉小艷.用于MRP開發(fā)的樹表復(fù)合型控件的設(shè)計[J].順德職業(yè)技術(shù)學院學報,2015(1):5-10.

猜你喜歡
樹狀數(shù)據(jù)源控件
鋼結(jié)構(gòu)樹狀支撐柱施工設(shè)計
關(guān)于.net控件數(shù)組的探討
軟件(2018年7期)2018-08-13 09:44:42
Web 大數(shù)據(jù)系統(tǒng)數(shù)據(jù)源選擇*
樹狀月季的嫁接技術(shù)及后期管理
基于不同網(wǎng)絡(luò)數(shù)據(jù)源的期刊評價研究
樹狀月季培育關(guān)鍵技術(shù)
列表畫樹狀圖各有所長
基于真值發(fā)現(xiàn)的沖突數(shù)據(jù)源質(zhì)量評價算法
分布式異構(gòu)數(shù)據(jù)源標準化查詢設(shè)計與實現(xiàn)
就這樣玩會VBA中常見的自定義控件
電腦迷(2012年24期)2012-04-29 00:44:03
安顺市| 昌乐县| 定襄县| 南开区| 陇西县| 房山区| 苍溪县| 临湘市| 海宁市| 乐东| 新蔡县| 新疆| 慈利县| 怀来县| 莱阳市| 青海省| 顺义区| 通化县| 始兴县| 石门县| 株洲县| 和田县| 贡山| 灵石县| 舒兰市| 东丰县| 牟定县| 镇平县| 河东区| 阳春市| 扎鲁特旗| 晋中市| 神农架林区| 乳山市| 邮箱| 汕尾市| 九龙城区| 孝昌县| 阳新县| 唐河县| 旌德县|