VARCHART XGantt用戶手冊(cè):數(shù)據(jù)表—— 處理數(shù)據(jù)表(ActiveX版)
VARCHART XGantt是一個(gè)交互式的甘特圖控件,其模塊化的設(shè)計(jì)讓您可以創(chuàng)建滿足您和您的客戶所需求的應(yīng)用程序。(我們領(lǐng)先的甘特圖控件VARCHART XGantt可用于.NET,ActiveX和ASP.NET應(yīng)用程序。)除此之外,同時(shí)還具有一個(gè)穩(wěn)定可靠的甘特圖工具,在編寫第一行代碼之前,您就可以知道是否可以滿足客戶的需求。本文主要描述甘特圖數(shù)據(jù)表教程中的處理數(shù)據(jù)表?。ū疚氖茿ctiveX版本教程內(nèi)容,想要查看.NET版本的教程請(qǐng)點(diǎn)擊這里~)
作為用于甘特圖的圖形顯示的數(shù)據(jù)庫,VARCHART XGantt使用兩個(gè)用于節(jié)點(diǎn)和鏈接的標(biāo)準(zhǔn)數(shù)據(jù)表,可以分別定義其字段。在4.0版中,此概念得到了擴(kuò)展。最多可以定義90個(gè)數(shù)據(jù)表,并且可以在表之間建立1:n關(guān)系。類似于數(shù)據(jù)庫,數(shù)據(jù)以相互依賴的數(shù)據(jù)集進(jìn)行結(jié)構(gòu)化,從而避免了數(shù)據(jù)冗余并提供了數(shù)據(jù)所需的數(shù)據(jù),并集成資源調(diào)度模塊。
由于與現(xiàn)有應(yīng)用程序兼容的原因,默認(rèn)情況下,VARCHART XGantt繼續(xù)在以前的模式下運(yùn)行。只有在設(shè)計(jì)時(shí)或運(yùn)行時(shí)激活相應(yīng)的選項(xiàng),才能使用擴(kuò)展數(shù)據(jù)表。您可以在屬性頁“常規(guī)”中找到“擴(kuò)展數(shù)據(jù)表”選項(xiàng):
在編程界面中,通過將VcGantt屬性ExtendedDataTables設(shè)置為True,可以在運(yùn)行時(shí)打開擴(kuò)展數(shù)據(jù)表。
處理數(shù)據(jù)表
默認(rèn)情況下,存在數(shù)據(jù)表Maindata和Relations。在屬性頁面對(duì)象上,您可以單擊按鈕“數(shù)據(jù)表…”進(jìn)入“管理數(shù)據(jù)表”對(duì)話框。生成新數(shù)據(jù)表之前需要先打開擴(kuò)展數(shù)據(jù)表模式。下圖中的數(shù)據(jù)表“任務(wù)和操作”是通過在“數(shù)據(jù)表”部分中單擊創(chuàng)建的。
在“數(shù)據(jù)表字段”部分中,您可以編輯上面所選表的字段。您可以通過創(chuàng)建新字段,通過刪除現(xiàn)有字段或通過復(fù)制字段,如下所示。
使用API時(shí),索引列是必不可少的,因?yàn)閿?shù)據(jù)字段的內(nèi)容只能通過索引進(jìn)行尋址。如果在此對(duì)話框中修改了字段的順序(即索引),則在生成了編程代碼后,您需要調(diào)整訪問相應(yīng)字段的編程代碼。
如果修改數(shù)據(jù)類型,則可能必須相應(yīng)地調(diào)整已經(jīng)定義的格式和圖層,以確保在訪問字段時(shí)使用適當(dāng)?shù)臄?shù)據(jù)類型。
如果要唯一標(biāo)識(shí)數(shù)據(jù)記錄,則將主鍵功能設(shè)置為一個(gè)字段。對(duì)于關(guān)系引用的數(shù)據(jù)表,必須設(shè)置主鍵。主鍵可能還包含更多字段—— 但最多三個(gè)。
如果內(nèi)容顯示為1:n關(guān)系并且從屬數(shù)據(jù)記錄應(yīng)直接引用主數(shù)據(jù)記錄的數(shù)據(jù)字段,則關(guān)聯(lián)表很有用。
目前在兩個(gè)表A和B之間只能建立一個(gè)1:n關(guān)系。 B的第二個(gè)字段不允許引用A的主鍵。但是,第三張表C的字段允許引用表A的主鍵。
注意:如果在關(guān)系中使用了具有復(fù)合主鍵的數(shù)據(jù)表,則該關(guān)系必須匹配主鍵。否則,不可能建立唯一的連接。如果關(guān)系定義不正確——在API或“管理數(shù)據(jù)表”對(duì)話框中均未選中該關(guān)系,則不會(huì)連接數(shù)據(jù)記錄。這導(dǎo)致事件OnDataRecordNotFound。
在下面的示例中,通過在“關(guān)系”列中設(shè)置Task:ID,在表Operation和Task之間創(chuàng)建一個(gè)關(guān)系。
表格任務(wù):
表操作:
示例代碼
Dim dataTableCltn As VcDataTableCollection Dim dataTable As VcDataTable Set dataTableCltn = VcGantt1.DataTableCollection Set dataTable = dataTableCltn.DataTableByName("Task") dataTable.DataRecordCollection.Add ("1;Task 1;10;12.05.2007;20.05.2007") dataTable.DataRecordCollection.Add ("2;Task 2;10;01.06.2007;15.06.2007") Set dataTable = dataTableCltn.DataTableByName("Operation") dataTable.DataRecordCollection.Add ("1;1;Operation 1;12.05.2007;14.05.2007") dataTable.DataRecordCollection.Add ("2;1;Operation 2;15.05.2007;19.05.2007") dataTable.DataRecordCollection.Add ("3;2;Operation 3;01.06.2007;05.06.2007") dataTable.DataRecordCollection.Add ("4;2;Operation 4;05.06.2007;11.06.2007") dataTable.DataRecordCollection.Add ("5;2;Operation 5;11.06.2007;15.06.2007") VcGantt1.EndLoading
根據(jù)在“數(shù)據(jù)表”部分的屬性頁“節(jié)點(diǎn)”上選擇的數(shù)據(jù)表,節(jié)點(diǎn)的圖形顯示可能源自不同的基礎(chǔ)。交互式創(chuàng)建節(jié)點(diǎn)時(shí),基礎(chǔ)是自動(dòng)向其添加新數(shù)據(jù)記錄的表??梢暬@示的相應(yīng)行受活動(dòng)節(jié)點(diǎn)過濾器、分組和顯示選項(xiàng)的影響。
如果選擇“操作”表作為基礎(chǔ),這就是甘特圖的表中的結(jié)果。描述、數(shù)量和到期日期的條目源自主表任務(wù)。
如果使用“任務(wù)”而不是“操作”表,則XGantt中的可見表將僅包含兩個(gè)條目。
在VARCHART XGantt 4.0版中,可以使用新的對(duì)象類型來代替以前的對(duì)象類型。出于兼容性的原因,以前的對(duì)象類型已保留在當(dāng)前版本中。在新應(yīng)用程序和現(xiàn)有應(yīng)用程序的更新中,僅應(yīng)使用新對(duì)象。
本教程內(nèi)容尚未完結(jié),敬請(qǐng)期待后續(xù)內(nèi)容“數(shù)據(jù)表創(chuàng)建和修改記錄”~喜歡的朋友可以下載VARCHART XGantt體驗(yàn)一下哦~
相關(guān)內(nèi)容推薦:
VARCHART XGantt用戶手冊(cè):數(shù)據(jù)表——?jiǎng)?chuàng)建和修改數(shù)據(jù)記錄(ActiveX版)
VARCHART XGantt用戶手冊(cè):數(shù)據(jù)表——處理數(shù)據(jù)表(.NET版)
VARCHART XGantt用戶手冊(cè):數(shù)據(jù)表——?jiǎng)?chuàng)建和修改數(shù)據(jù)記錄(.NET版)
VARCHART XGantt用戶手冊(cè):如何添加、復(fù)制、刪除或編輯框
想要購買VARCHART XGantt正版授權(quán),或了解更多產(chǎn)品信息請(qǐng)點(diǎn)擊“咨詢?cè)诰€客服”