庫存管理系統(tǒng)(下)_第1頁
庫存管理系統(tǒng)(下)_第2頁
庫存管理系統(tǒng)(下)_第3頁
庫存管理系統(tǒng)(下)_第4頁
庫存管理系統(tǒng)(下)_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、庫存管理系統(tǒng)(下)    第五章 系統(tǒng)實施 51、開發(fā)工具簡介 本系統(tǒng)的前端開發(fā)工具,我選擇了Visual Basic6.0,后臺數(shù)據(jù)庫采用Access2000。 Visual意為“可視化的”,指的是一種開發(fā)圖形用戶界面的方法,所以Visual Basic是基于Basic的可視化的程序設計語言。在Visual Basic中,一方面繼承了Basic所具有的程序設計語言簡單易用的特點,另一方面在其編程系統(tǒng)中采用了面向?qū)ο?、事件?qū)動的編程機制,用一種巧妙的方法把Windows的編程復雜性封裝

2、起來,提供了一種所見即所得的可視化程序設計方法。 l 具有面向?qū)ο蟮目梢暬O計工具 在VB中,應用面向?qū)ο蟮某绦蛟O計方法(OOP),把程序和數(shù)據(jù)封裝起來視為一 個對象,每個對象都是可視的。程序員在設計時只需用現(xiàn)有工具根據(jù)界面設計要求,直接在屏幕上“畫”出窗口、菜單、按鈕、滾動條等不同類型的對象,并為每個對象設置屬性。程序員的編程工作僅限于編寫相關對象要完成的功能程序,因而程序設計的效率可大大提高。 l 事件驅(qū)動的編程機制 事件驅(qū)動是非常適合圖形用戶界面的編程方式。在圖形用戶界面的應用程序中,是由用戶的動作即事件掌握著程序運行

3、的流向,每個事件都能驅(qū)動一段程序的運行。程序員只要編寫響應用戶動作的代碼,而各個動作之間不一定有聯(lián)系。 l 提供了易學易用的應用程序集成開發(fā)環(huán)境 在VB集成開發(fā)環(huán)境中,用戶可設計界面、編寫代碼、調(diào)試程序,直至把應用程序編譯成可執(zhí)行文件在Windows中運行,使用戶在友好的開發(fā)環(huán)境中工作。 l 結構化的程序設計語言 VB具有豐富的數(shù)據(jù)類型和結構化程序結構,作為一種程序設計語言,它還有如下一些特點: Ø 強大的數(shù)值和字符串處理功能 Ø 豐富的圖形指令,可方便地繪制各種圖形

4、0;Ø 提供靜態(tài)和動態(tài)數(shù)組,有利于簡化內(nèi)存的管理 Ø 過程可遞歸調(diào)用,使程序更為簡練 Ø 支持隨機文件和順序文件的訪問 Ø 提供了一個可供應用程序調(diào)用的包含多種類型的圖標庫 Ø 具有完善的運行出錯處理 l 支持多種數(shù)據(jù)庫系統(tǒng)的訪問 利用數(shù)據(jù)控件可訪問的數(shù)據(jù)庫系統(tǒng)有:Microsoft Access、Btrieve、DBASE、Microsfot FoxPro和Paradox等,也可以訪問Microsoft&

5、#160;Excel、Lotus1-2-3等多種電子表格。 l 支持動態(tài)數(shù)據(jù)交換(DDE)、動態(tài)鏈接庫(DLL)和對象的鏈接與嵌入(OLE)技術 l 完備的HELP聯(lián)機幫助功能 與Windows環(huán)境下的軟件一樣,在VB中,利用幫助菜單和F1功能鍵,用戶可以隨時方便地得到所需要的幫助信息。VB幫助窗口中顯示了有關的示例代碼,通過復制、粘貼操作可獲取大量的示例代碼,為用戶的學習和使用提供了極大的方便。 VB程序設計的概念就是面向?qū)ο蟮母拍睿瑢ο缶褪菙?shù)據(jù)(DATA)和代碼(CODE)互相結合的綜合體。Windows上面的每一個圖標,包括窗口

6、本身都是對象,如果沒有任何事情發(fā)生,對象處于停頓狀態(tài)。當存在外來事件時,程序段執(zhí)行,它的執(zhí) 行是由外來事件決定的。因此是“事件”驅(qū)動的。 編寫VB程序較為簡單,首先將各個對象放在空白窗體上,然后將程序代碼分別添加給對象或圖標,將它們組合起來就可以隨意運行了。 在VB中,窗體實際上是一個對象,VB的窗體含有許多內(nèi)嵌特性,這使得用戶界面部分的建立像是從一個目錄中挑選一個個合適的控件,而不是從零開始一步一步地建立控件。這種開發(fā)者能親眼看到的程序設計過程就是“可視化程序設計”(Visual Programming)  對象:面向?qū)ο缶幊蹋∣O

7、P)的提法大家一定也很耳熟,雖然Visual Basic并不是完全的面向?qū)ο缶幊?,但也利用了對象編程技術。對象簡單地說就是大家經(jīng)??吹降母鞣N窗口、按鈕、文本框甚至打印機等。 屬性:如同電視有黑白、彩色之分一樣,作為對象的Windows中的窗口也是有大有小,文本框的位置不可能完全一樣,菜單要顯示出不同的功能,這些都是由對象的屬性決定的。不同對象的屬性可能不同。屬性一般決定了對象的位置、大小、顯示等情況。 方法:就是對象能夠做的事,如打印機對象就有打?。≒rint)方法、窗口對象支持隱藏(Hide)方法、很多對象支持移動(Move)方法等。 事件:就是對象對

8、用戶各種操作的反映情況。如用戶用鼠標按一下按鈕,就會觸發(fā)按鈕的“按”(Click)事件。 控件:控件就是Visual Basic提供的編程用的模塊,與對象有直接的聯(lián)系,如同積木的木塊,使用這樣的控件,就可以像拼圖或堆積木一樣“搭”、“拼”你的程序界面。Visual Basic中使用控件,簡化了Windows中的窗口、按鈕等對象的編程設計。每個控件都有各自的屬性、事件及方法。只需修改這些特征你就可以隨心所欲地編程了。最重要的是,你可以利用成千上萬的各種擴充的控件來快速構造幾乎能滿足你任何要求的程序。例如,如果你不滿意Windows簡陋的媒體播放器,你就可以使用VB的

9、多媒體控件在1小時以內(nèi)設計一個完全自己風格的能夠播放CD、VCD的多媒體播放器,而功能完全與之相當。 作為Microsoft的office套件產(chǎn)品之一,access已經(jīng)成為世界上最流行的桌面數(shù)據(jù)庫系統(tǒng)。Access與許多優(yōu)秀的關系數(shù)據(jù)庫一樣,可以讓你很容易地連接相關的信息而且還對其他的數(shù)據(jù)庫系統(tǒng)有所補充。它能操作其它來源的資料,包括許多流行的PC數(shù)據(jù)庫程序(如dBASE,Paradox,Microsoft FoxPro)和服務器、小型機及大型機上的許多SQL數(shù)據(jù)庫。Access還完全支持Microsoft的OLE技術。 Access還提供windows操作系統(tǒng)的高

10、級應用程序開發(fā)系統(tǒng)。Access與其它數(shù)據(jù)庫開發(fā)系統(tǒng)之間相當顯著的區(qū)別就是:您不用寫一行代碼,就可以在很短的時間里開發(fā)出一個功能強大而且相當專業(yè)的數(shù)據(jù)庫應用程序,并且這一愉快的過程是完全可視的!如果您能給它加上簡短的VBA代碼,那么您的程序決不比專業(yè)程序員潛心開發(fā)的程序差。Access的總體結構 Access將所有有名字的東西都成為對象(object),在Access 2000中,最重要的對象有表,查詢,窗體,報表,宏和模塊。 表 用戶定義的存儲資料的對象。每一個表都包含有關某個主體的信息。表包括存儲不同種類資料的字段(列),而記錄(行)則收集特定主體實

11、例的所有信息。 查詢 為來自一個或多個表的資料提供定制視圖的對象。在Access中,可以利用圖形化的實例查詢機制(QBE)或通過SQL語句來建立查詢。你可以在查詢中選擇、更新、插入或刪除資料,也可以用查詢來建立新表。 窗體 窗體是主要的人機接口。大量的操作(幾乎所有)都要通過窗體完成。窗體通過運行宏(macro)或Visual Basic for Applicatinns(VBA)過程,來響應大量的事件。Access 2000為我們提供了強大的(同時也是相當方便的向?qū)В﹣斫藴实腤indows窗體。 報

12、表 為格式化、計算、打印選定資料而設計的對象。它是衡量一個優(yōu)秀的數(shù)據(jù)庫的重要標準(有時甚至是唯一的標準)。 宏 為了響應已定義的事件,需要讓Access去執(zhí)行一個或多個操作,而宏就是對這些操作的結構化的定義對象。它可以讓你像堆積木一樣建立一個功能強大的程序,而無須寫大量的代碼。 模塊 包括用VBA編碼的定制過程的一個對象。模塊提供了獨立的動作流以捕獲錯誤,而宏做不到。模塊能直接響應窗體或報表事件,也可以從應用程序的任何地方被調(diào)用。     Adodc1.Refresh  &#

13、160; Set Text4.DataSource = Adodc1    Text4.DataField = "密碼"    If Text1 = "" Then        MsgBox "請輸入原密碼!", , "修改密碼"

14、;        Exit Sub        MsgBox "原密碼錯誤!", , "修改密碼"        Exit Sub    ElseIf Text2 = ""

15、60;Or Text3 = "" Then        MsgBox "請輸入新密碼!", , "修改密碼"        Exit Sub    ElseIf Text2 <> Text3 Then

16、60;       MsgBox "密碼不一致!", , "修改密碼"        Exit Sub    Else        Text4.Text = Text2.Text    &

17、#160;   MsgBox "密碼修改成功!", , "修改密碼"        Unload Me    End If  Dim I, J As Integer    Dim STR As String  

18、  If Text1.Text = "" Or Text2 = "" Or Combo1.Text = "" Or Text4 = "" Or Text5 = "" Or Text6 = "" Or Text7

19、 = "" Then        MsgBox "請輸入完整信息!"        Exit Sub    Else 將記錄存入入庫記錄表        MsgBox "已經(jīng)成功入庫!"&

20、#160;                 將記錄加入現(xiàn)有庫存表中        J = 設備入庫表.Text9        MsgBox "現(xiàn)有庫存量為:" & J  

21、  Else        STR = "現(xiàn)有庫存表中無此設備!" & vbCrLf & "請在設備代碼表和現(xiàn)有庫存表中手動添加記錄!"        MsgBox STR        Load frm

22、現(xiàn)有庫存表        frm現(xiàn)有庫存表.Show        Call frm現(xiàn)有庫存表.Command1_Click        Load frm設備代碼表        frm設備代碼表.Show    En

23、d If  End SubPrivate Sub cmdDelete_Click( ) 刪除入庫表中記錄  On Error GoTo DeleteErr  Dim YesNo As String  YesNo = MsgBox("刪除", vbYesNo, "刪除記錄")  If Yes

24、No = vbYes Then    With datPrimaryRS.Recordset        .Delete        .MoveNext        If .EOF Then .MoveLast   

25、; End With  Else    Exit SubEnd IfDeleteErr:  MsgBox Err.DescriptionEnd SubPrivate Sub cmdUpdate_Click( ) 更新紀錄程序  On Error GoTo UpdateErr   Exit SubUpdateErr: &

26、#160;MsgBox Err.DescriptionPrivate Sub Command1_Click( )設備出庫程序    Dim i, J, k As Integer    Dim STR As String    If IsNumeric(Text2) = False Then  

27、60;     MsgBox "數(shù)量必須是數(shù)字!"        Exit Sub    End If    If Text1.Text = "" Or Text2 = "" Or Combo1.Text

28、60;= "" Or Text4 = "" Or Text5 = "" Or Text6 = "" Or Text7 = "" Then        MsgBox "請輸入完整信息!"  

29、      Exit Sub        STR = "現(xiàn)有庫存表中無此設備!請檢查輸入是否正確!"        MsgBox STR        Exit Sub    Else&#

30、160;       MsgBox "已經(jīng)成功存入設備出庫表庫!"    End If            If k >= 0 Then            J

31、 = frm設備出庫表.Text9            MsgBox "現(xiàn)有庫存量為:" & J        Else            MsgBox "現(xiàn)有庫存量不足!請輸

32、入合適數(shù)量!"            Exit Sub        End If    Else        STR = "現(xiàn)有庫存表中無此設備!請檢查輸入是否正確!"   &

33、#160;    MsgBox STR      End IfEnd SubPrivate Sub cmdDelete_Click( )刪除出庫記錄  On Error GoTo DeleteErr  Dim YesNo As String  YesNo = MsgBox("刪除"

34、;, vbYesNo, "刪除記錄")  If YesNo = vbYes Then    With datPrimaryRS.Recordset        .Delete        .MoveNext      

35、0; If .EOF Then .MoveLast    End With  Else    Exit SubEnd IfDeleteErr:  MsgBox Err.DescriptionEnd Sub更新記錄程序同入庫的更新程序相同,在此略 主要程序 Private Sub cmdAdd_Click( ) 添加設備 

36、;On Error GoTo AddErr Exit Sub AddErr: MsgBox Err.Description End Sub 主要程序Private Sub Command1_Click() 顯示高于最大警戒庫存的設備   datPrimaryRS.RecordSource = "select * from 現(xiàn)有庫存表 where 現(xiàn)

37、有庫存>最大庫存"   datPrimaryRS.Refresh   grdDataGrid.Refresh        Beep        MsgBox "表中設備已過量!"   Else        MsgBox

38、 "沒有設備庫存過量!"   End IfEnd Sub Private Sub Command2_Click()顯示低于于最小警戒庫存的設備      datPrimaryRS.RecordSource = "select * from 現(xiàn)有庫存表 where 現(xiàn)有庫存<最小庫存"   datPrim

39、aryRS.Refresh   grdDataGrid.Refresh        Beep        MsgBox "表中設備庫存量已過警戒線!請采購!"   Else        MsgBox "沒有設備庫存量過少!" 

40、;                        End If                  End subPrivate Sub Ti

41、mer1_Timer() 自動報警程序        Beep        MsgBox "有設備庫存超過警戒庫存!" & vbCrLf & "請查看庫存報警記錄"        Timer1.Enabled = Fals

42、e        frmAlarm.Show        Exit Sub     End If   End Sub Private Sub Timer2_Timer()        Beep        MsgBox "有設備庫存低于警戒庫存!" & vbCrLf & "請查看庫存報警記錄"        Timer2.

溫馨提示

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

最新文檔

評論

0/150

提交評論