




已閱讀5頁,還剩34頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
吉林省明日科技有限公司監(jiān)制物流管理系統(tǒng)學(xué) 院專 業(yè)班 級(jí)學(xué) 號(hào)姓 名指導(dǎo)教師教師職稱年月日 39 摘要【摘要】隨著市場(chǎng)經(jīng)濟(jì)的高速發(fā)展,制造業(yè)、商業(yè)企業(yè)逐步接受著第三方物流服務(wù)。越來越多的企業(yè)認(rèn)識(shí)到物流企業(yè)外包是降低成本、提高服務(wù)水平的有效渠道。物流管理的特點(diǎn)是以客戶為核心、構(gòu)建面向客戶的業(yè)務(wù)流程支持各種形式、各種需求的現(xiàn)在企業(yè)中的業(yè)務(wù)模式。系統(tǒng)支持多形式客戶的數(shù)據(jù)共享、提高作業(yè)效率、監(jiān)控整個(gè)流程、提供完整的貨品、進(jìn)行訂單跟蹤,并且特別關(guān)注對(duì)各環(huán)節(jié)業(yè)務(wù)的監(jiān)控及例外情況的監(jiān)控?!娟P(guān)鍵詞】 客戶 物流 物流管理系統(tǒng)目錄摘要1目錄1引言11 系統(tǒng)分析21.1 需求分析21.2 可行性分析22 總體設(shè)計(jì)22.1 項(xiàng)目規(guī)劃22.2 系統(tǒng)功能結(jié)構(gòu)圖33 詳細(xì)設(shè)計(jì)33.1 系統(tǒng)登錄設(shè)計(jì)33.2 車輛調(diào)度安排63.3 托運(yùn)申請(qǐng)單管理83.4 貨物托運(yùn)管理113.5 在途跟蹤管理173.6 信息查詢20附錄A 參考文獻(xiàn)30附錄B 數(shù)據(jù)表結(jié)構(gòu)31附錄C 文件架構(gòu)圖37引言在當(dāng)今高速發(fā)展的信息社會(huì),現(xiàn)代物流行業(yè)突飛猛進(jìn)發(fā)展,伴隨著我國(guó)國(guó)民經(jīng)濟(jì)連續(xù)多年的高速增長(zhǎng),為現(xiàn)代物流發(fā)展創(chuàng)造了良好的條件。目前,我國(guó)各類物流企業(yè)有14萬家左右,展望整個(gè)21世紀(jì),可以說現(xiàn)代物流業(yè)還將有更大的發(fā)展。在發(fā)達(dá)國(guó)家,物流理論促使物流實(shí)踐快速發(fā)展。經(jīng)濟(jì)全球化及現(xiàn)代物流業(yè)發(fā)展的系統(tǒng)化、信息化、倉儲(chǔ)運(yùn)輸?shù)默F(xiàn)代化和綜合化等趨勢(shì),對(duì)我國(guó)物流業(yè)的發(fā)展提出了全方位的挑戰(zhàn)。傳統(tǒng)物流行業(yè)的操作模式已經(jīng)不適應(yīng)現(xiàn)代的物流行業(yè),如何縮短物流過程,降低產(chǎn)品庫存,加速對(duì)市場(chǎng)的反應(yīng),這是所有企業(yè)所面對(duì)的問題。本系統(tǒng)就是針對(duì)這些問題根據(jù)中小型企業(yè)的實(shí)際需求而開發(fā)的一套物流管理系統(tǒng)。系統(tǒng)的開發(fā)能夠幫助企業(yè)實(shí)現(xiàn)對(duì)物流全過程的優(yōu)化調(diào)度和動(dòng)態(tài)控制,高效整合企業(yè)的物流業(yè)務(wù),以全面提高經(jīng)濟(jì)效益和效率為目的,提供高效、實(shí)用、技術(shù)的物流管理系統(tǒng)和運(yùn)營(yíng)手段。物流管理系統(tǒng)是集現(xiàn)代運(yùn)輸、倉儲(chǔ)配送、搬運(yùn)、調(diào)度、跟蹤為一體的網(wǎng)絡(luò)系統(tǒng),系統(tǒng)的開發(fā)實(shí)現(xiàn)了商品從原料供應(yīng)商、制造商、分銷商到零售商再到消費(fèi)者的各個(gè)環(huán)節(jié)的有機(jī)結(jié)合。1 系統(tǒng)分析1.1 需求分析通過市場(chǎng)調(diào)查,要求本系統(tǒng)具有以下功能:q 統(tǒng)一友好的操作界面,能保證系統(tǒng)的易用性。q 規(guī)范、完善的基礎(chǔ)信息設(shè)置。q 靈活的報(bào)表設(shè)計(jì)及打印功能。q 實(shí)現(xiàn)貨物申請(qǐng)、托運(yùn)、跟蹤與驗(yàn)收的全過程。q 全方位的信息查詢功能。q 系統(tǒng)日志詳細(xì)記錄各種操作,提供追查的有力依據(jù)。q 完善的權(quán)限管理,增強(qiáng)系統(tǒng)的安全性。q 強(qiáng)大的數(shù)據(jù)備份及恢復(fù)功能,保證系統(tǒng)數(shù)據(jù)的安全性。1.2 可行性分析由于傳統(tǒng)物流行業(yè)操作過程復(fù)雜,手續(xù)繁多,業(yè)務(wù)信息多,圍繞這些信息的處理也很紛雜。而且,物流行業(yè)競(jìng)爭(zhēng)激烈,這種競(jìng)爭(zhēng),一方面表現(xiàn)在發(fā)展客戶的市場(chǎng)開拓上,另一方面也存在于收集處理信息的速度、廣度和深度,以及在業(yè)務(wù)操作中對(duì)業(yè)務(wù)數(shù)據(jù)處理的準(zhǔn)確性和嚴(yán)密性,而更高層次上,還牽涉到公司決策層對(duì)整體業(yè)務(wù)的控制和協(xié)調(diào)。物流管理系統(tǒng)從物流行業(yè)的實(shí)際需求出發(fā),參照先進(jìn)的物流理念和多家領(lǐng)先的物流公司實(shí)際的運(yùn)營(yíng)流程開發(fā)而成,系統(tǒng)從完善的基礎(chǔ)信息設(shè)置到貨物的托運(yùn)管理、在線跟蹤,信息查詢、到最后各種報(bào)表的生成,清晰的業(yè)務(wù)流程,使操作人員能夠按照流程清晰的進(jìn)行實(shí)際的操作,保證物流運(yùn)作有序而高效的進(jìn)行。2 總體設(shè)計(jì)2.1 項(xiàng)目規(guī)劃物流管理系統(tǒng)是一個(gè)典型的數(shù)據(jù)庫管理系統(tǒng),系統(tǒng)由基本信息設(shè)置、貨物托運(yùn)管理、信息查詢、報(bào)表管理、系統(tǒng)管理等模塊組成,規(guī)劃系統(tǒng)功能模塊如下:q 基本信息設(shè)置模塊該模塊主要負(fù)責(zé)完成部門資料設(shè)置、職務(wù)信息設(shè)置、公司資料設(shè)置、員工資料設(shè)置、客戶資料設(shè)置、司機(jī)資料設(shè)置和車輛資料設(shè)置。q 貨物托運(yùn)管理模塊該模塊主要由車輛調(diào)度安排、托運(yùn)申請(qǐng)單管理、貨物托運(yùn)單管理、貨物驗(yàn)收單管理和車輛配送跟蹤記錄單管理幾部分組成。q 信息查詢模塊該模塊由貨物申請(qǐng)單查詢、車輛調(diào)度信息查詢、貨物托運(yùn)信息查詢、貨物托運(yùn)驗(yàn)收查詢和車輛在途跟蹤查詢幾部分組成。q 報(bào)表管理模塊包括貨物申請(qǐng)單報(bào)表、貨物托運(yùn)單報(bào)表和貨物驗(yàn)收單報(bào)表3部分。q 系統(tǒng)管理模塊包括查看日志、刪除日志、用戶管理、數(shù)據(jù)備份、數(shù)據(jù)恢復(fù)和系統(tǒng)數(shù)據(jù)清理幾部分。2.2 系統(tǒng)功能結(jié)構(gòu)圖物流管理系統(tǒng)的系統(tǒng)功能結(jié)構(gòu)圖如圖1所示。圖1 系統(tǒng)功能結(jié)構(gòu)圖3 詳細(xì)設(shè)計(jì)3.1 系統(tǒng)登錄設(shè)計(jì)系統(tǒng)登錄主要用于對(duì)登錄物流管理系統(tǒng)的用戶進(jìn)行安全性檢查,以防止非法用戶登錄該系統(tǒng)。根據(jù)給管理員分配的權(quán)限,登錄用戶可以根據(jù)自己所具有的權(quán)限操作系統(tǒng)中相應(yīng)的功能。在登錄系統(tǒng)時(shí)驗(yàn)證操作員及其密碼,主要通過ADO控件中記錄集(RecordSet)對(duì)象結(jié)合If語句判斷用戶選定的操作員及其輸入的密碼與數(shù)據(jù)庫中的操作員和密碼是否相同來實(shí)現(xiàn),如果相同則允許登錄,并給予相應(yīng)的權(quán)限,否則將不允許用戶登錄。系統(tǒng)登錄的運(yùn)行結(jié)果如圖2所示。圖2 系統(tǒng)登錄窗體的運(yùn)行結(jié)果1窗體設(shè)計(jì)(1)在工程中新建1個(gè)窗體,將窗體的名稱設(shè)置為“frm_xtdl”,BorderStyle屬性設(shè)置為“0-None”,通過設(shè)置Picture屬性為窗體添加圖片。(2)在窗體上添加Adodc控件,由于該控件屬于ActiveX控件,在使用之前必須從“部件”對(duì)話框中添加到工具箱。添加方法如下:在“工程”/“部件”對(duì)話框中勾選“Microsoft Ado Data Controls 6.0(SP4)”列表項(xiàng),單擊【確定】按鈕之后即可將Ado控件添加到工具箱當(dāng)中。(3)在窗體中添加1個(gè)ComboBox控件和文本框控件,分別設(shè)置名稱為Name屬性為“Cbx_Name”和“txt_Password”,設(shè)置BorderStyle屬性為“0-None”,將ComboBox控件的Text屬性設(shè)置為“MR”。(4)在窗體中添加2個(gè)CommandButton控件,分別將Name屬性設(shè)置為“Cmd_Ok”和“Cmd_Cancel”,Caption屬性設(shè)置為“登錄”和“取消”。登錄窗體的設(shè)計(jì)結(jié)果如圖3所示圖3 系統(tǒng)登錄窗體的設(shè)計(jì)界面2代碼設(shè)計(jì)在代碼窗口的聲明部分定義如下變量:Dim itmX As ListItem 定義一個(gè)ListItem對(duì)象Dim key As String 定義字符串變量在窗體裝載事件中,通過ADO控件的ConnectionString屬性建立數(shù)據(jù)庫連接,同時(shí)將所有操作員的姓名添加到Cbx_Name控件當(dāng)中,代碼如下:Private Sub Form_Load() Call WHScreen 調(diào)用獲取屏幕分辨率的過程函數(shù)使用代碼連接數(shù)據(jù)庫與數(shù)據(jù)表 Adodc1.ConnectionString = PublicStr Adodc1.RecordSource = select * from tb_user Adodc1.Refresh If Adodc1.Recordset.RecordCount 0 Then Adodc1.Recordset.MoveFirst Cbx_Name.Clear 在添加數(shù)據(jù)時(shí),首先清空控件中的內(nèi)容 Do While Adodc1.Recordset.EOF = False 將操作員信息添加到ListView控件當(dāng)中 Cbx_Name.AddItem (Adodc1.Recordset.Fields(user_name) Adodc1.Recordset.MoveNext Loop End If If TWidth = 800 Or THeigth 0 Then MPassword = Adodc1.Recordset.Fields(user_mm) If Txt_Password.Text = MPassword Then 判斷數(shù)據(jù)的密碼是否正確 Name1 = Cbx_Name.Text Frm_Main.StatusBar1.Panels.Item(2).Text = 當(dāng)前操作員: + Adodc1.Recordset.Fields(user_name) Frm_Main.Show 通過身份驗(yàn)證則顯示主窗體,登錄到系統(tǒng)當(dāng)中 Unload Me Else MsgBox 密碼不正確,請(qǐng)您確認(rèn)后重新輸入, , 提示信息 Txt_Password.Text = Txt_Password.SetFocus End If Else MsgBox 對(duì)不起 沒有此用戶的信息, , 提示信息 Cbx_Name.Text = Txt_Password.Text = End If End IfEnd Sub如果在輸入密碼的文本框中按下Enter鍵,則將調(diào)用【確定】按鈕的單擊事件,判斷登錄用戶是否合法,代碼如下所示。Private Sub Txt_Password_KeyDown(KeyCode As Integer, Shift As Integer) If KeyCode = 13 Then Call Cmd_Ok_Click 調(diào)用確定按鈕的單擊事件代碼 End IfEnd Sub3.2 車輛調(diào)度安排車輛調(diào)度安排是物流管理過程中的重要環(huán)節(jié),物流公司在接到托運(yùn)貨物信息之后,首要的問題是安排托運(yùn)貨物的車輛。在本系統(tǒng)當(dāng)中通過車輛調(diào)度安排填寫安排托運(yùn)車輛的信息,然后打印出車輛調(diào)度通知單,并將通知單發(fā)放到托運(yùn)司機(jī)的手中,司機(jī)根據(jù)調(diào)度通知單上的信息執(zhí)行托運(yùn)任務(wù)。通過單擊窗體中的Cmd_Select按鈕選擇車牌號(hào)碼,然后輸入其他一些輔助的信息,最后保存車輛調(diào)度安排信息。車輛調(diào)度安排模塊的運(yùn)行結(jié)果如圖4所示。圖4 車輛調(diào)度安排窗體的運(yùn)行結(jié)果1窗體設(shè)計(jì)(1)在工程中新建1個(gè)窗體,將窗體的名稱設(shè)置為“frm_Cldd”,BorderStyle屬性設(shè)置為“1-Fixed Single”,MaxButton屬性設(shè)置False。(2)在窗體上添加1個(gè)Toolbar控件和1個(gè)ImageList控件。(3)在窗體的Toolbar控件上單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇“屬性”項(xiàng),在彈出的“屬性頁”對(duì)話框中設(shè)置窗體的工具欄,設(shè)計(jì)完成的工具欄如圖5所示。(4)在窗體中添加1個(gè)Frame控件,在Frame控件上添加1個(gè)文本框控件數(shù)組,并為每個(gè)文本框控件配置1個(gè)標(biāo)簽控件,并且設(shè)置相應(yīng)的Caption屬性值,如圖5所示。(5)在窗體上添加1個(gè)DTPicker控件,命名為DT1,用于輸入或顯示托運(yùn)司機(jī)執(zhí)行任務(wù)的日期時(shí)間。(6)在窗體上添加1個(gè)Ado控件和1個(gè)DataGrid控件,將DataGrid控件的名稱設(shè)置為Dgr_Sjll,DataSource屬性設(shè)置為Adodc1,AllowUpdate屬性值設(shè)置為False。(7)在窗體中添加1個(gè)標(biāo)簽控件,命名為L(zhǎng)bl_Num。(8)在窗體上添加1個(gè)時(shí)鐘控件Timer1,在屬性窗口中將控件的Interval屬性值設(shè)置為60。車輛調(diào)度安排窗體的設(shè)計(jì)結(jié)果如圖5所示。圖5 車輛調(diào)度安排窗體的設(shè)計(jì)結(jié)果2代碼設(shè)計(jì)工具欄中的控制按鈕控制著窗體的各項(xiàng)操作,在Toolbar控件Tbr_xxcz的ButtonClick事件當(dāng)中,通過選擇Select Case語句的索引值(單擊工具欄中的按鈕執(zhí)行相應(yīng)的索引值)調(diào)用相應(yīng)的過程來完成添加、刪除、修改和保存等操作的功能,保存過程事件的代碼如下:Private Sub Saves() 保存信息的過程 If Text1(0).Text = Or Text1(3).Text = Then MsgBox 重要信息不能為空值, 48, 提示信息 Else AdoRs.Open select * from tb_Goods_cldd where cldd_cphm= + Text1(0).Text + , Cnn, adOpenKeyset If AdoRs.RecordCount 0 Then MsgBox 該信息已經(jīng)存在, 48, 提示信息 AdoRs.Close 關(guān)閉記錄集對(duì)象 Else AdoRs.Close 關(guān)閉記錄集對(duì)象 c = MsgBox(確認(rèn)保存信息嗎, 33, 提示信息) If c = vbOK Then Set AdoRs = Cnn.Execute(insert into tb_Goods_cldd values( &Txt_id & , & Text1(0)& , & Text1(1) & , & Text1(2) & ,& Text1(3) & , & Str(DT1.Value) & , & Text1(4) & , & Text1(5)& , & Txt_bz & ) MsgBox 數(shù)據(jù)保存成功, 64, 提示信息 Else End If Adodc1.RecordSource = select * from tb_Goods_cldd order by cldd_id Adodc1.Refresh Call DBGCon End If Call Tbr_cortrol(Tbr_xxcz, True) End IfEnd Sub用戶自定義修改信息過程事件的代碼如下:Private Sub Edits() 修改信息的過程 c = MsgBox(確認(rèn)修改信息嗎, 33, 提示信息) If c = vbOK Then Set AdoRs = Cnn.Execute(UPDATE tb_Goods_cldd SET cldd_id= + Txt_id + ,cldd_cphm= + Text1(0) + ,cldd_czxm= + Text1(1) + ,cldd_sjxm= + Text1(2) + ,cldd_rwsj= + Str(DT1.Value) + ,cldd_phmc= + Text1(4) + ,cldd_shdd= + Text1(5) + ,cldd_bz= + Txt_bz + where cldd_id= + Txt_id.Text + ) MsgBox 數(shù)據(jù)修改成功, 64, 提示信息 Adodc1.RecordSource = select * from tb_Goods_cldd order by cldd_id Adodc1.Refresh StrId = Txt_id.Text StrTitle = Text1(0).Text Call joinRZ 添加修改信息日志 Call DBGCon Else End IfEnd Sub用戶自定義刪除信息過程事件的代碼如下:Private Sub Deletes() 刪除信息 c = MsgBox(確認(rèn)刪除該信息嗎, 17, 提示信息) If c = vbOK Then On Error Resume Next 執(zhí)行錯(cuò)誤處理 Set AdoRs = Cnn.Execute(Delete tb_Goods_cldd from tb_Goods_cldd where cldd_id= + Txt_id.Text + ) Adodc1.Refresh 刷新數(shù)據(jù)信息 End If For i = 0 To 5 Text1(i).Text = Next i Txt_bz.Text = End Sub3.3 托運(yùn)申請(qǐng)單管理在正式托運(yùn)貨物之前,需要進(jìn)行托運(yùn)貨物申請(qǐng),在進(jìn)行托運(yùn)貨物申請(qǐng)時(shí)需要填寫托運(yùn)貨物申請(qǐng)單,托運(yùn)申請(qǐng)單經(jīng)過核對(duì)之后,才可以填寫貨物托運(yùn)單進(jìn)行托運(yùn)貨物。在托運(yùn)申請(qǐng)單中記錄的托運(yùn)貨物的詳細(xì)信息,以便托運(yùn)貨物時(shí)進(jìn)行核對(duì)。貨物托運(yùn)申請(qǐng)管理模塊的運(yùn)行結(jié)果如圖6所示。圖6 貨物托運(yùn)申請(qǐng)管理模塊運(yùn)行結(jié)果1窗體設(shè)計(jì)(1)在工程中新建1個(gè)窗體,將窗體的名稱設(shè)置為“frm_Tysq”,BorderStyle屬性設(shè)置為“1-Fixed Single”,MaxButton屬性設(shè)置“False”。(2)在窗體上添加1個(gè)Toolbar控件和1個(gè)ImageList控件,為窗體設(shè)計(jì)工具欄。(3)在窗體中添加1個(gè)Frame控件,在Frame控件上添加1個(gè)文本框控件數(shù)組,并為每個(gè)文本控件配置1個(gè)標(biāo)簽控件,設(shè)置相應(yīng)的Caption屬性值,如圖7所示。(4)在Frame控件上添加2個(gè)DTPicker控件,分別名稱命名為DT1和DT2,用于輸入或顯示出貨日期時(shí)間和開票日期。(5)在窗體上添加1個(gè)Ado控件。(6)在窗體中添加1個(gè)標(biāo)簽控件,命名為L(zhǎng)bl_Num。(7)在窗體上添加1個(gè)時(shí)鐘控件Timer1,在屬性窗口中將控件的Interval屬性值設(shè)置為60。貨物托運(yùn)申請(qǐng)單管理窗體的設(shè)計(jì)結(jié)果如圖7所示。圖7 貨物托運(yùn)管理窗體的設(shè)計(jì)結(jié)果2代碼設(shè)計(jì)當(dāng)窗體啟動(dòng)時(shí),鎖定窗體中文本框,禁止輸入字符信息,同時(shí)通過Ado控件的ConnectionString屬性連接到數(shù)據(jù)庫,實(shí)現(xiàn)代碼如下:Private Sub Form_Load() Call LoadFile 在窗體加載的時(shí)候顯示數(shù)據(jù)信息 For i = 1 To 20 Text1(i).Locked = True 鎖定文本框,禁止輸入字符信息 Next i Adodc1.ConnectionString = PublicStr 通過代碼連接到數(shù)據(jù)庫 Adodc1.RecordSource = select * from tb_Goods_sqd order by sqd_lszh Adodc1.Refresh DT1.Value = Date Call Tbr_cortrol(Tbr_xxcz, True)End Sub單擊窗體中的工具欄按鈕,完成相應(yīng)的添加、刪除、修改、保存和打印的操作,Toolbar控件Tbr_xxcz的ButtonClick事件代碼如下所示:Private Sub Tbr_xxcz_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case Button.Index Case 1 添加信息 Call Tbr_cortrol(Tbr_xxcz, False) For i = 0 To 20 Text1(i).Locked = False Text1(i).Text = Next i Text1(0).SetFocus AdoRs.Open select * from tb_Goods_sqd where sqd_lszh like % + Format(Date, yyyymmdd) + % order by sqd_lszh, Cnn, adOpenKeyset 根據(jù)日期產(chǎn)生流水賬號(hào) If AdoRs.RecordCount 0 Then AdoRs.MoveLast Txt_id.Text = Val(AdoRs.Fields(sqd_lszh) + 1 Else Txt_id.Text = Format(Date, yyyymmdd) & 0000001 End If AdoRs.Close Case 2 刪除信息 Call Deletes Case 3 修改信息 Call Edits Case 4 保存信息 Call Saves Case 5 Call Tbr_cortrol(Tbr_xxcz, True) For i = 1 To 20 Text1(i).Text = Text1(1).SetFocus Next i Case 6 打印信息 Unload Me End SelectEnd Sub通過文本框的Change事件,來實(shí)現(xiàn)在另一個(gè)文本框中自動(dòng)計(jì)算合計(jì)金額的功能,實(shí)現(xiàn)的具體代碼如下所示:Private Sub Text1_Change(Index As Integer) If Index = 7 Then Text1(15).Text = Val(Text1(7).Text) + Val(Text1(11).Text) ElseIf Index = 11 Then Text1(15).Text = Val(Text1(7).Text) + Val(Text1(11).Text) ElseIf Index = 15 Then Text1(15).Text = Val(Text1(7).Text) + Val(Text1(11).Text) End IfEnd Sub3.4 貨物托運(yùn)管理貨物托運(yùn)管理是本系統(tǒng)的核心,在貨物托運(yùn)申請(qǐng)完成之后,就可以填寫貨物托運(yùn)單,托運(yùn)司機(jī)根據(jù)貨物托運(yùn)單將貨物托運(yùn)到客戶手中。對(duì)于同一張貨物托運(yùn)單,可以托運(yùn)多種不同的貨物,在托運(yùn)管理窗體中可以添加或刪除托運(yùn)貨物,還可以通過ListView控件瀏覽貨物托運(yùn)單信息。貨物托運(yùn)管理模塊的運(yùn)行結(jié)果如圖8所示,單擊工具欄中的【添加貨物】按鈕,將彈出增加托運(yùn)貨物窗體,如圖9所示。圖8 貨物托運(yùn)管理模塊的運(yùn)行結(jié)果圖9 增加托運(yùn)貨物窗體1貨物托運(yùn)窗體及增加托運(yùn)貨物窗體的設(shè)計(jì)(1)在工程中新建一個(gè)窗體,將窗體的名稱設(shè)置為“frm_Hpty”,BorderStyle屬性設(shè)置為“1-Fixed Single”,MaxButton屬性設(shè)置False。(2)在窗體上添加Toolbar控件,根據(jù)前面所介紹的方法為窗體設(shè)計(jì)工具欄。(3)在窗體中添加2個(gè)ImageList控件。(4)在窗體上添加1個(gè)ListView控件。(5)在ListView控件上單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇“屬性”項(xiàng),在彈出的“屬性頁”對(duì)話框中選擇“通用”選項(xiàng)卡,在該選項(xiàng)卡中選取“整行選擇”、“網(wǎng)格行”和“熱跟蹤”等復(fù)選框,在“查看”旁的列表框中選擇3-lvwReport,如圖10所示。圖10 設(shè)置控件的顯示模式(6)在ListView控件上單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇“屬性”項(xiàng),在彈出“屬性頁”對(duì)話框中選擇“列首”選項(xiàng)卡,在該選項(xiàng)卡中單擊【插入列】按鈕,然后在“文本”文本框中輸入插入列的標(biāo)題名稱,在“寬度”文本框中輸入插入列的寬度,如圖11所示。圖11 設(shè)置插入列的屬性(7)在ListView控件上單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇“屬性”項(xiàng),在彈出的“屬性頁”對(duì)話框中選擇“圖像列表”選項(xiàng)卡,在該選項(xiàng)卡中的“普通”和“列標(biāo)頭”列表框中分別選擇“ImageList2”,如圖12所示。圖12 連接ImageList2控件(8)在窗體上添加1個(gè)Ado控件。(9)在窗體中添加3個(gè)Frame控件,分別在Frame控件中添加文本框控件和DataGrid控件,將DataGrid控件的名稱設(shè)置為Dgr_Sjll,DataSource屬性設(shè)置為Adodc1,BackColor屬性值設(shè)置為&H00FFFFC0&,設(shè)計(jì)完成的界面如圖13所示。(10)在窗體中添加1個(gè)標(biāo)簽控件,名稱命名為L(zhǎng)bl_Num。(11)在窗體上添加1個(gè)時(shí)鐘控件Timer1,在屬性窗口中將控件的Interval屬性值設(shè)置為60。貨物托運(yùn)管理窗體的設(shè)計(jì)結(jié)果如圖13所示。圖13 貨物托運(yùn)管理窗體的設(shè)計(jì)界面(12)在工程中添加1個(gè)窗體,將窗體命名為Frm_Tyhwgl,該窗體作為貨物托運(yùn)管理的子窗體,用于為完成為貨物托運(yùn)單添加托運(yùn)貨物的操作。(13)將該窗體的BorderStyle屬性設(shè)置為“1-Fixed Single”。(14)在該窗體上添加1個(gè)Ado控件。(15)在該窗體中添加1個(gè)Frame控件,在Frame控件中添加文本框控件和標(biāo)簽控件。(16)在該窗體中添加1個(gè)DataGrid控件,將DataGrid控件的名稱設(shè)置為Dgr_Sjll,DataSource屬性設(shè)置為Adodc1,設(shè)計(jì)完成的界面如圖14所示。(17)在窗體上添加4個(gè)CommandButton控件,分別將控件的名稱命名為“Cmd_Add”、“Cmd_Save”、“Cmd_Del”、“Cmd_Cancel”,Caption屬性設(shè)置為“添加”、“保存”、“刪除”、“取消”。圖14 托運(yùn)貨物管理窗體的設(shè)計(jì)界面2貨物托運(yùn)管理窗體的代碼設(shè)計(jì)在窗體啟動(dòng)時(shí),通過調(diào)用LoadFile過程,在窗體上顯示數(shù)據(jù),同時(shí)利用Ado對(duì)象計(jì)算出當(dāng)前數(shù)據(jù)庫中數(shù)據(jù)記錄的條數(shù),代碼如下:Private Sub Form_Load() Call RefreshData Call LoadFile For i = 1 To 21 鎖定文本框,禁止輸入內(nèi)容 Text1(i).Locked = True Next i AdoRs.Open select * from tb_Goods_tyd order by tyd_tydh, Cnn, adOpenKeyset If AdoRs.RecordCount 0 Then Lbl_Num.Caption = 當(dāng)前數(shù)據(jù)表中共有 & AdoRs.RecordCount & 條記錄 End If AdoRs.Close Call Tbr_cortrol(Tbr_xxcz, True)End Sub單擊工具欄中的控制按鈕,通過Select Case語句控制工具欄中的按鈕,完成添加、刪除、修改、保存、添加貨物和刪除貨物等操作,實(shí)現(xiàn)的代碼如下:Private Sub Tbr_xxcz_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case Button.Index Case 1 Call Tbr_cortrol(Tbr_xxcz, False) For i = 0 To 21 Text1(i).Locked = False Text1(i).Text = Next i Text1(0).SetFocus 根據(jù)日期產(chǎn)生流水賬號(hào) AdoRs.Open select * from tb_Goods_tyd where tyd_tydh like % + Format(Date, yyyymmdd) + % order by tyd_tydh, Cnn, adOpenKeyset If AdoRs.RecordCount 0 Then AdoRs.MoveLast Txt_id.Text = Val(AdoRs.Fields(tyd_tydh) + 1 Else Txt_id.Text = Format(Date, yyyymmdd) & 00001 End If AdoRs.Close Case 2 刪除信息 Call Deletes Case 3 修改信息 Call Edits Case 4 保存信息 Call Saves Case 5 Call Tbr_cortrol(Tbr_xxcz, True) For i = 1 To 21 Text1(i).Text = Text1(1).SetFocus Next i Case 6 添加貨物 TStrs = Txt_id.Text Frm_Tyhwgl.Cmd_Del.Enabled = False 使添加貨物窗體中的“刪除”按鈕不可用 Frm_Tyhwgl.Show 1 Case 7 刪除貨物 TStrs = Txt_id.Text Frm_Tyhwgl.Cmd_Add.Enabled = False Frm_Tyhwgl.Cmd_Save.Enabled = False Frm_Tyhwgl.Show 1 Case 8 Unload Me End SelectEnd Sub通過單擊選擇ListView控件中的元素(托運(yùn)單號(hào)),然后調(diào)用DataLoad過程在窗體上顯示相對(duì)應(yīng)托運(yùn)單號(hào)的數(shù)據(jù)信息,同時(shí)查詢?cè)撚涗浭欠癖恍薷倪^,如果修改過則將修改時(shí)間及修改人信息顯示在窗體的Txt_ysrq和Txt_ysr文本框當(dāng)中,代碼如下所示:Private Sub ListView1_Click() AdoRs.Open select * from tb_Goods_tyd where tyd_tydh= & ListView1.SelectedItem & order by tyd_tydh, Cnn, adOpenKeyset If AdoRs.RecordCount 0 Then Call DataLoad 調(diào)用顯示數(shù)據(jù)的過程 End If AdoRs.Close 關(guān)閉數(shù)據(jù)集對(duì)象 AdoRs1.Open select * from tb_Goods_khys where khys_tydh= & ListView1.SelectedItem & , Cnn, adOpenKeyset If AdoRs1.RecordCount 0 Then Txt_ysrq.Text = AdoRs1.Fields(khys_ysrq) Txt_ysr.Text = AdoRs1.Fields(khys_ysr) Else Txt_ysrq.Text = Txt_ysr.Text = End If AdoRs1.Close Call ShowData 調(diào)用數(shù)據(jù)刷新的過程 Call DBGConEnd Sub通過時(shí)鐘控件,將當(dāng)前數(shù)據(jù)庫中的記錄條數(shù)顯示在標(biāo)簽控件Lbl_Num當(dāng)中,實(shí)現(xiàn)的代碼如下所示:Private Sub Timer1_Timer() On Error Resume Next 執(zhí)行錯(cuò)誤處理的語句 Lbl_Num.Caption = 當(dāng)前數(shù)據(jù)表中共有 & AdoRs.RecordCount & 條記錄End Sub3添加托運(yùn)貨物信息窗體的代碼設(shè)計(jì)在增加托運(yùn)貨物窗體中單擊【添加】按鈕,清空窗體中文本框的信息,代碼如下:Private Sub Cmd_Add_Click() For i = 1 To 4 Text1(i).Text = Next i Text1(1).SetFocusEnd Sub在窗體中單擊【保存】按鈕,在確認(rèn)該貨物信息沒有被保存之后,保存所添加的貨物信息,同時(shí)刷新窗體中的數(shù)據(jù)信息,代碼如下:Private Sub Cmd_Save_Click() If Text1(0).Text = Then MsgBox 托運(yùn)單號(hào)不能為空, 64, 提示信息 Else AdoRs.Open select * from tb_Goods_hwzx where hwzx_hwid= + Text1(1) + , Cnn, adOpenKeyset If AdoRs.RecordCount 0 Then MsgBox 該貨物已經(jīng)添加過, 64, 提示信息 Else c = MsgBox(確認(rèn)保存信息嗎, 33, 提示信息) If c = vbOK Then Set AdoRs = Cnn.Execute(insert into tb_Goods_hwzx values( & Text1(1) & , & Text1(2) & , & Text1(0) & , & Text1(3) & , & Text1(4) & ) MsgBox 數(shù)據(jù)保存成功, 64, 提示信息 Adodc1.RecordSource = select * from tb_Goods_hwzx where hwzx_sqdh= + Text1(0) + order by hwzx_hwid Adodc1.Refresh Call DBGCon Cmd_Add.SetFocus End If End If AdoRs.Close End IfEnd Sub3.5 在途跟蹤管理在途跟蹤是對(duì)正在托運(yùn)的貨物信息進(jìn)行管理,托運(yùn)司機(jī)在托運(yùn)貨物的過程中,每到一個(gè)地方或者在托運(yùn)過程中出現(xiàn)某些異常情況,就會(huì)給托運(yùn)公司反饋一個(gè)信息,托運(yùn)公司將反饋回來的信息進(jìn)行記錄,并且對(duì)反饋回來的異常情況進(jìn)行處理,這個(gè)過程就是在途跟蹤。在途跟蹤管理模塊的運(yùn)行結(jié)果如圖15所示。圖15 在途跟蹤管理模塊運(yùn)行結(jié)果1窗體設(shè)計(jì)(1)在工程中新建1個(gè)窗體,將窗體的名稱設(shè)置為“Frm_Ztgz”,BorderStyle屬性設(shè)置為“1-Fixed Single”,MaxButton屬性設(shè)置False。(2)在窗體上添加1個(gè)Toolbar控件和1個(gè)ImageList控件。(3)在窗體上添加1個(gè)ListView控件。(4)在窗體上添加1個(gè)Ado控件。(5)在窗體中添加3個(gè)Frame控件,在Frame控件中添加文本框控件,并設(shè)置控件的相關(guān)屬性。(6)在窗體上添加DataGrid控件,將DataGrid控件的名稱設(shè)置為Dgr_Sjll,DataSource屬性設(shè)置為Adodc1。在途跟蹤管理窗體的設(shè)計(jì)結(jié)果如圖16所示。圖16 在途跟蹤管理窗體的設(shè)計(jì)2代碼設(shè)計(jì)通過單擊選擇ListView控件中的元素(托運(yùn)單號(hào)),在窗體中即可以顯示相對(duì)應(yīng)托運(yùn)單號(hào)的數(shù)據(jù)信息,同時(shí)查詢tb_Goods_ztgzlx數(shù)據(jù)表,從中檢索出該托運(yùn)單號(hào)的跟蹤路線信息,將其顯示在窗體的Txt_lx.文本框當(dāng)中,實(shí)現(xiàn)的代碼如下所示:Private Sub ListView1_Click() AdoRs.Open select * from tb_Goods_ztgz where ztgz_cydh= & ListView1.SelectedI
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公對(duì)公培訓(xùn)協(xié)議書
- 轉(zhuǎn)車買賣協(xié)議書
- 分公司出資協(xié)議書
- 鋼掛石材協(xié)議書
- 還清學(xué)費(fèi)協(xié)議書
- 下水管維修協(xié)議書
- 單位人師徒協(xié)議書
- 高速投資協(xié)議書
- 公益項(xiàng)目地協(xié)議書
- 買商鋪購房協(xié)議書
- GB/T 1885-1998石油計(jì)量表
- 全國(guó)學(xué)生學(xué)憲法講憲法知識(shí)競(jìng)賽題庫及答案
- 安全生產(chǎn)物資領(lǐng)用登記表
- 臨床藥師培訓(xùn)理論試題含答案(呼吸專業(yè))
- 玉雕教學(xué)講解課件
- 家譜宗譜WORD模板
- 民俗學(xué)概論全套精美課件
- 應(yīng)用文寫作概述課件
- 危重癥孕產(chǎn)婦交流課件:妊娠遇到主動(dòng)脈夾層搶救成功病例分享
- 高中政治《增強(qiáng)“四個(gè)意識(shí)”做到“兩個(gè)維護(hù)”》教學(xué)設(shè)計(jì)
- 山東省醫(yī)院護(hù)理服務(wù)質(zhì)量評(píng)價(jià)細(xì)則簡(jiǎn)介
評(píng)論
0/150
提交評(píng)論