基于Web服務(wù)的PDA生產(chǎn)管理系統(tǒng)應(yīng)用開(kāi)發(fā)(20201207201259)_第1頁(yè)
基于Web服務(wù)的PDA生產(chǎn)管理系統(tǒng)應(yīng)用開(kāi)發(fā)(20201207201259)_第2頁(yè)
基于Web服務(wù)的PDA生產(chǎn)管理系統(tǒng)應(yīng)用開(kāi)發(fā)(20201207201259)_第3頁(yè)
基于Web服務(wù)的PDA生產(chǎn)管理系統(tǒng)應(yīng)用開(kāi)發(fā)(20201207201259)_第4頁(yè)
基于Web服務(wù)的PDA生產(chǎn)管理系統(tǒng)應(yīng)用開(kāi)發(fā)(20201207201259)_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、基于Web服務(wù)的PDA生產(chǎn)管理系統(tǒng)應(yīng)用開(kāi)發(fā)王鑫摘要:引言:1、任務(wù)要求結(jié)合一汽生產(chǎn)管理系統(tǒng)軟件及數(shù)據(jù)庫(kù),開(kāi)發(fā)移動(dòng) PDA 設(shè)備,主 要實(shí)現(xiàn)以下功能:通過(guò)掃描條形碼讀取零件信息通過(guò)調(diào)用 web 服務(wù)讀寫(xiě)數(shù)據(jù)庫(kù)2、開(kāi)發(fā)環(huán)境2.1 硬件立象 PT90 (WinCE 6.0、WIFI )、PC 機(jī)、數(shù)據(jù)線2.2 軟件VS2008、SQL2008、WM設(shè)備中心、IIS管理器、PT-90驅(qū)動(dòng)程序、PT90_CE600 SDK、 Device Emulate 設(shè)備仿真器 /管理器 本機(jī)的操作系統(tǒng)為 64 位 Win7 家庭版,經(jīng)升級(jí)后安裝 IIS 服務(wù), 在本機(jī)上配置虛擬服務(wù)器: 4:

2、80812.3 語(yǔ)言C#、 .NET 3.53、系統(tǒng)設(shè)計(jì)3.1系統(tǒng)框架基于PC機(jī)的生產(chǎn)管理數(shù)據(jù)庫(kù)局域網(wǎng)基于PC機(jī)的Web服務(wù)無(wú)線WIFI基于PDA的數(shù)據(jù)采集系統(tǒng)c掃描|明細(xì)報(bào)工1設(shè)置系統(tǒng)主要由數(shù)據(jù)庫(kù)、web服務(wù)和PDA采集系統(tǒng)三個(gè)部分組成。 PDA通過(guò)掃描零件條形碼獲得加工過(guò)程卡號(hào),通過(guò)無(wú)線WIFI連接遠(yuǎn)程Web服務(wù)調(diào)用數(shù)據(jù)庫(kù)查詢功能,對(duì)數(shù)據(jù)庫(kù)進(jìn)行查詢獲得零件相 關(guān)信息,返回PDA界面。同時(shí),用戶可以通過(guò)修改 PDA界面相關(guān) 信息,以同樣的方式實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的讀寫(xiě)操作。3.2系統(tǒng)功能PDA系統(tǒng)主要分為四個(gè)模塊:掃描、明細(xì)、報(bào)工、設(shè)置。掃描模塊可以實(shí)現(xiàn)加工過(guò)程卡號(hào)的錄入(掃描條形碼或者手動(dòng)輸 入)

3、、清空、讀取、退出等功能。明細(xì)模塊列出所對(duì)應(yīng)加工過(guò)程卡號(hào) 零件的工序列表、制造令號(hào)、工件名稱等信息,并設(shè)計(jì)返回和報(bào)工 功能。報(bào)工模塊由明細(xì)模塊轉(zhuǎn)入,列出明細(xì)模塊工序列表中相應(yīng)工 序所對(duì)應(yīng)的具體信息,包括零件生產(chǎn)狀態(tài)、檢驗(yàn)狀態(tài)、投入及合格數(shù)量、不合格清單,并設(shè)計(jì)保存修改和返回功能。設(shè)置模塊主要實(shí)現(xiàn)是對(duì)服務(wù)器的選擇及保存服務(wù)器IP信息功能。4、系統(tǒng)實(shí)現(xiàn)與用戶界面4.1 Web服務(wù)ServiceClassf WebService1 Methodsv Get DataSetV GetDSInvalid7 lnserlnvalid:* Servicev UpdateDataV Llpdateinvali

4、dWeb服務(wù)中共建立了五個(gè)操作數(shù)據(jù)庫(kù)的服務(wù)項(xiàng):查詢整體信息(GetDataSet)、查詢不合格明細(xì)(GetDSInvalid )、更新整體信息(UpDateData)、修改不合格數(shù)量 (Updatelnvalid )、插入不合格數(shù)量(Inserlnvalid )。涉及到生產(chǎn)管理數(shù)據(jù)庫(kù) plmplat中的WSPROCESSOPER WSPROCESSHEADVSOPERINVALIDPIECE個(gè)數(shù)據(jù)表。編寫(xiě)好相應(yīng)代碼后生成解決方案,并將Web服務(wù)發(fā)布到本機(jī)所配置的虛擬服務(wù)器所對(duì)應(yīng)的目錄中。4.2 PDA 4.2.1掃描frm_aileCbfis 沖 RannA Fields-Methods詐 b

5、irttonil_Click(object sender Event Args e): void 屮 burttn2_Clickpbject sender EventArgs e) : vid birttonSClickCobject iendec EvehtArgs e) void瀘 button4_Click(objert sender, EventArgss e): void f* Dispose(bool disposing: widV frmJcateOfrm_Scale_Artivated(ahject sender EveirtArgs e): void 屮 frm.Scale.

6、Deactivatet&bject sender, EventArgs e:旳 id 丈 frrn_Scale_loa(l(object 注門(mén)ders ErentArgs e : void 詐natialkeCci mponentQ : void 滬 ScainO - void 亭 text BMtl_lK.eyDown(object serxler. KeyEvtntArgs e): void用戶打開(kāi)客戶端后系統(tǒng)自動(dòng)打開(kāi)掃描界面,并將光標(biāo)定位在文本 框中,PT90打開(kāi)掃描程序后,對(duì)條形碼按掃描鍵后條碼信息會(huì)顯示光標(biāo)位置,以“回車”為結(jié)束字符,通過(guò)textBox1_KeyDown()函數(shù)捕捉掃

7、描結(jié)束信息,調(diào)用 Web服務(wù)GetDataSet方法查詢數(shù)據(jù)庫(kù),返回Dataset并傳給自動(dòng)跳轉(zhuǎn)到的明細(xì)界面。如果是手動(dòng)輸入,在輸入 加工過(guò)程卡號(hào)結(jié)束后可按設(shè)備“ ENT ”鍵,或者點(diǎn)擊界面“讀取” 按鈕,即可跳轉(zhuǎn)到明細(xì)界面。界面底部設(shè)置狀態(tài)欄,在讀取數(shù)據(jù)庫(kù)時(shí)顯示提示延遲信息。設(shè)置 按鈕關(guān)聯(lián)設(shè)置界面。清空按鈕擇負(fù)責(zé)清空文本框信息。422明細(xì)frm_DetailClass+Form- FwldsMethods滬 buttcnl.Clickfobjert sender Event Args e): void$ buttcn3_Click_lfobject st nder, Event Args 和

8、 void辭 dataGridl_DcudleCli: voidFrmlnrtialD ; oidIniriailizcCijmiponcntO : w&id rTJumerkUpLtonS.ValweChangfidfobject seer EventArgs e)! void $ FlurTiiritcUpDi4wrJi3_VdluChAfJig4d(fihjtowri4ValidChanged(ob)ect sflnder, EvtntArgs e) : void 芒 ftdmericUpDowri5_ValuaChariged(fiibjet 刖.Evente) : gid .卜 ni

9、jm?rKUpDwni_V4li?Changtd(Dbjicct 5nd?r Eve-ntArgs c) : void K FKimericUpDo 丹 n/.YdueCharigEdgb/Kt aefider. Event Args e): void報(bào)工界面上半部分四個(gè)控件的填充信息由明細(xì)界面的數(shù)據(jù)表獲 得,其中生產(chǎn)和檢驗(yàn)狀態(tài)根據(jù)數(shù)據(jù)庫(kù)查詢出的整型數(shù)據(jù)轉(zhuǎn)換為對(duì)應(yīng) 的文字信息并填充。下半部分為某工序編號(hào)所對(duì)應(yīng)的不合格清單, 在窗體載入過(guò)程中單獨(dú)調(diào)用 Web 服務(wù) GetDSInvalid 方法查詢數(shù)據(jù)庫(kù) 獲得。當(dāng)用戶修改控件數(shù)據(jù)點(diǎn)擊保存后,分兩部分進(jìn)行保存。投入數(shù)量 和合格數(shù)量通過(guò)調(diào)用 Web

10、 服務(wù) UpDateData 方法更新數(shù)據(jù)庫(kù)即可。 不合格列表則根據(jù)用戶修改控件狀態(tài)以及數(shù)據(jù)庫(kù)存儲(chǔ)狀態(tài)分成兩種 情況:當(dāng)用戶修改了不合格控件并且數(shù)據(jù)庫(kù)中有該項(xiàng)時(shí),視為“修 改”,此時(shí)調(diào)用 Web 服務(wù) UpdateInvalid 方法更新數(shù)據(jù)庫(kù);當(dāng)用戶修 改了不合格控件并且數(shù)據(jù)庫(kù)中沒(méi)有該項(xiàng)時(shí),視為“保存” ,此時(shí)調(diào)用 Web 服務(wù) InserInvalid 方法插入數(shù)據(jù)庫(kù)。點(diǎn)擊返回按鈕后界面跳轉(zhuǎn)到 明細(xì)界面以便重新選擇工序。此外,在用戶修改各個(gè)控件數(shù)量時(shí),根據(jù)規(guī)則設(shè)置約束。若出現(xiàn) 合格數(shù)量與不合格數(shù)量之和大于投入數(shù)量的情況,則彈出提示對(duì)話 框,并返回到未修改之前的狀態(tài)。若合格數(shù)量與投入數(shù)量相同

11、且狀 態(tài)標(biāo)記都為“完成”,則將不合格清單中的各個(gè)控件 Enable屬性設(shè)置 為“false”。若在操作數(shù)據(jù)庫(kù)過(guò)程中出現(xiàn)異常,則彈出“操作數(shù)據(jù)失 敗”對(duì)話框提示用戶檢查數(shù)據(jù)庫(kù)連接和服務(wù)器連接狀態(tài)。順利保存 各項(xiàng)后彈出“保存成功”對(duì)話框。4.2.4 設(shè)置設(shè)置服務(wù)器ip:ijClass耳 FieldsW buttanl; Button button2 : Button 匚omboBoxl : ComboBox CDrnpcnerrts : I Container labell: Label maiinMenul: MainMenu* strSerwr: string二i Methods上中 butt

12、Qnl_Click(object sender EventArgis e): void 護(hù) button2_Click(olbject sender. EventArgs,e) void 盧 Dhpa$e(bool deposing): voidM frm.Setfl frm_Set_L&ad(object lendtr. Eve nt Ar gi e) ; void 沖 InitializeCamponeritQ : void設(shè)置界面由掃描界面的設(shè)置按鈕連接,ComboBox控件中給出了常用的服務(wù)器IP列表,用戶可以在選擇某一地址后點(diǎn)擊保存按鈕, 將服務(wù)器IP傳入主系統(tǒng)中以便調(diào)用,同時(shí)關(guān)閉當(dāng)

13、前界面。默認(rèn)按鈕 擇用來(lái)復(fù)位系統(tǒng)默認(rèn)地址。5、系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)5.1 PDA對(duì) Web服務(wù)的動(dòng)態(tài)引用在實(shí)際應(yīng)用中,PDA所應(yīng)用的 Web服務(wù)的服務(wù)器地址很可能隨 工作環(huán)境的變換而發(fā)生改變,因此要求實(shí)現(xiàn)對(duì) Web服務(wù)的動(dòng)態(tài)引用。本系統(tǒng)在設(shè)置界面中確定所要調(diào)用的Web服務(wù)器IP地址,然后保存到公共字符串參數(shù) strServer并傳入掃描和報(bào)工界面。當(dāng)用戶需 要調(diào)用Web服務(wù)時(shí),使用以下代碼傳入?yún)?shù):Service sv = new Service (strServer)然后即可調(diào)用sv服務(wù)的各個(gè)方法,實(shí)現(xiàn)相應(yīng)功能。這種方法要求 有兩個(gè)前提條件:一是所選擇服務(wù)器目錄下需要有與默認(rèn)服務(wù)器相 同的 S

14、ervice.asmx 文件;二是更新 PDA 設(shè)備中 Web 引用后需要在 reference.cs文件中修改 public Service(string url)構(gòu)造函數(shù)為:this.Url = url 。5.2 WinCE 系統(tǒng) DataGrid 控件的數(shù)據(jù)寄存從數(shù)據(jù)庫(kù)查詢出結(jié)果后,可以直接將DataSet填充DataGrid控件和調(diào)用DataSet中的數(shù)據(jù)填充其他控件,但是考慮DataGrid要求僅顯示工序名稱和工序內(nèi)容兩個(gè)字段,本系統(tǒng)采用了修改表格樣式中 列寬值為“ -1”的方法隱藏其他字段,達(dá)到了未顯示字段但能調(diào)用 的數(shù)據(jù)寄存目的。設(shè)置表格樣式隱藏“過(guò)程編號(hào)”字段的部分代碼 如下:

15、/定義表格樣式DataGridTableStyle ts = new DataGridTableStyle() ;ts.MappingName = dtMain.TableName;/定義列樣式DataGridColumnStyle gcs = new DataGridTextBoxColumn ();gcs.MappingName = PROCESSID;gcs.HeaderText = 過(guò)程編號(hào) ;gcs.Width = -1;ts.GridColumnStyles.Add (gcs);/填充 DataGridthis.dataGrid1.TableStyles.Add (ts);this

16、.dataGrid1.DataSource = dtMain;5.3 WinCE 系統(tǒng)多控件操作數(shù)據(jù)庫(kù)的方法報(bào)工界面中涉及保存多個(gè)不合格控件數(shù)值的問(wèn)題,而且如 4.2.3中所述要求有多種規(guī)則約束。本系統(tǒng)定義了四個(gè)數(shù)組分別存放不同標(biāo)志,然后根據(jù)不同情況執(zhí)行修改、插入操作,實(shí)現(xiàn)了預(yù)期功能。 關(guān)鍵代碼如下:/數(shù)據(jù)庫(kù)包含標(biāo)志List KeyList = new List (); /控件更改狀態(tài)標(biāo)志List ChangeList = new List (); /所需操作控件NumericUpDown Nus = new NumericUpDown .; /控件對(duì)應(yīng)的不合格名稱 string keyNam

17、e = new string 工廢, 料廢, 回用, 試驗(yàn)件, 返修 ;/執(zhí)行for (int listNO = 1; listNO 6; listNO+)decimal amount = Nus listNO - 1.Value;/修改if (KeyList.Contains (listNO) & ChangeList.Contains (listNO)sv.UpdateInvalid (Convert.ToInt32 (amount), listNO, Convert.ToInt32 (strPorId) ;/插入else if (KeyList.LastIndexOf (listNO) 0 & ChangeList.Contains (listNO) & amou

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論