第3章EEP 2019快速入門(下)(多檔實作)第3章EEP 2019快速入門(下)(多檔實作)\3-2多檔—Client端程式

3-2多檔—Client端程式

 

Step1>請先執行桌面上的『Solution1.sln』,此時會進入VS2019開發環境,請在目錄『EEPClient』上面按下滑鼠右鍵,然後選擇『Add』->【New Project..】來新增一個Client的Project。

圖3-2-1新增Client端Project

 

Step2>請選擇Project types中【Visual C#】,此時會看見右邊的Templates:My Templates中,有上個章節所Export的四個Template。因為要實做Client端多檔,所以請選擇【CMasterDetail】,接著將『Name』命名為【C002】,『Location』設為【C:\Program Files\InfoLight\EEP2019\Solution1】。此與之前的程式存放目錄都是一致的,按下【OK】後,會自動產生Client端C002的Project。

圖3-2-2設定Client Project名稱和路徑

 

Step3>接著要設定各個Component的Property。

 

q  首先設定Master(InfoDataSet)的Property『RemoteName』。就是選擇那一個Server模組的InfoCommand。

圖3-2-3進入Master(RemoteName)設置

 

Œ  按下旁邊的【…】按鈕後,會出現RemoteName視窗供選取。在RemoteName視窗中選擇『S002』的【Master】的InfoCommand。

圖3-2-4Master RemoteName視窗

    接著將Master(InfoDataSet)的Property『Active』設成【True】。此時,DataSet內會有兩個DataTable,因為Server模組的S002.Master會有一個Master的DataTable和Detail的DataTable。

圖3-2-5啟動MasterInfoDataSet

q  然後設定ibsMaster (InfoBindingSource)的Property『DataMember』。

在Template中的ibsMaster已經將DataSource設定好Master這個InfoDataSet了,因此只要設定DataMember即可。請下拉選取【Master】,因為InfoDataSet中有兩個DataTable,一個為Master;另一個為Detail,在此選擇為Master。

圖3-2-6設定ibsMaster (InfoBindingSource)屬性

 

Œ   ibsDetail的DataMember請下拉選取【Relation1】。

 

ibsDetail的DataSource是【ibsMaster】。(是infoBindingSource class,而不是Master InfoDataSet)。這是因為Master InfoDataSet有兩個DataTable(一個為Master,另一個為Detail),Master存放所有Master的資料,而Detail是存放這個DataTable每一筆主檔相對的所有明細資料,因此無法跟著idsMaster移動跟著改變Detail的相對資料。

所以我們將Detail的idsDetail.DataSource選擇idsMaster這個InfoBindingSource(BindingSource連到另一個BindingSource);將 idsDetail.DataMember選擇Relation1這個元件。(Relation1是系統依Master/Detail所自動產生的另一個BindingSource,用來實現Master/Detail的對應關係)。如此才能達到Master/Detail的對應關係。

圖3-2-7設定.DataMember

 

    然後到Toolbox工具列中選取『InfoDataGridView』,將之貼到Form1上,位置放在Form1的左上方,目的是要一次顯示多筆Master的資料。

圖3-2-8選取InfoDataGridView元件

 

Ž    此時設定InfoDataGridView2的Property『DataSource』,請下拉選取【ibsMaster】。

圖3-2-9設定InfoDataGridViewDataSource

 

  然後雙擊Master(InfoDataSet),此時會開啟DataSet ColumnSelector的視窗。然後到『Selector』頁面,針對此Tree做展開的動作,並勾選要呈現的欄位(本範例中選到Freight為止),並在Master處按下滑鼠左鍵不放,將之拖曳到Form上面。(排列方式可以在Options頁面自行調整)。

圖3-2-10選取Master(InfoDataSet)所需欄位

 

    此時在Form上便會出現所有相關的欄位資料,然後請設定畫面下方的InfoDataGridView1(InfoDataGridView)的Property『DataSource』,選擇【ibsDetail】。

 

圖3-2-11設定InfoDataGridView1的DataSource

 

‘    設計部分已經完成,如圖3-2-12:

圖3-2-12完成一對多介面

 

Step4>接著對此ProjectC002做編譯(Build)的動作,此時會產生C002.dll這個模組,就已經完成一對多檔的Client端程式開發。

 

Step5>接下來請執行桌面上的『EEPManager.exe』,直接按【OK】登入。

 

圖3-2-13登入EEP Manage管理

 

Œ    點選『System』->『Security Manager』菜單。

圖3-2-14進入安全管理設置

 

 

 

  請點選「Menu Utility」那個頁籤,按下【Add】以便新增一個Menu選單。此處請在『Caption』中鍵入【C002】,『Parent ID』選【0】。(代表C002是接在Menu ID 0=ROOT之下)『ModuleType』選【F】。

Ž    然後點選『Package』旁的【…】按鈕,選取\Solution1\路徑下的【C002.dll】。

圖3-2-15開啟C002.dll

 

    接著在『Sequence』中鍵入【03】。按下【OK】儲存離開。

圖3-2-16依次設定各參數值

 

  然後將焦點放在左方的『C002』,並點選【Access Groups】,將Default User 001所屬的Groups【DEPARTMENT1】指定到右邊的視窗中,按下【OK】後即完成。

圖3-2-17指定Groups的DEPARTMENT1

Step6>執行桌面上的『EEPNetClient.exe』。與之前一樣,必須透過Login的畫面,才能進入主畫面,請依下圖按下【C002】,來執行C002的畫面進行測試。

圖3-2-19EEPNetClient Login

 

圖3-2-20 C002設計主介面

 

 


 

Top of Page