VB圖書銷售管理系統(tǒng).doc_第1頁
VB圖書銷售管理系統(tǒng).doc_第2頁
VB圖書銷售管理系統(tǒng).doc_第3頁
VB圖書銷售管理系統(tǒng).doc_第4頁
VB圖書銷售管理系統(tǒng).doc_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

XXXXXVB程序設(shè)計課程設(shè)計報告題目:圖書銷售管理系統(tǒng)所在院系:信息技術(shù)學(xué)院學(xué) 生: XX指導(dǎo)老師: XX日 期:二XXXXXXX摘 要:圖書作為一種關(guān)系到人們工作、學(xué)習(xí)及生活等各個方面的特殊商品,在人們的生活水平日益提高的同時,它的地位也越來越重要, 然而圖書品種繁多,銷售模式特殊,隨著信息化的快速發(fā)展和業(yè)務(wù)量的不斷增大,傳統(tǒng)的手工管理手段已經(jīng)無法適應(yīng)圖書銷售業(yè)的發(fā)展,如今,圖書銷售業(yè)需要實現(xiàn)銷售業(yè)務(wù)的計算機(jī)管理,迫切需要開發(fā)出相應(yīng)的銷售管理軟件,從而加強(qiáng)對圖書銷售的管理,通過計算機(jī)來完成大量本來由工作人員手工完成的工作,真正達(dá)到合理和充分利用現(xiàn)有資源,減輕工作壓力的效果。因此, 開發(fā)一個圖書銷售管理系統(tǒng)是很有必要的,除此之外,圖書銷售管理系統(tǒng)也有著廣泛的市場前景和實際的應(yīng)用價值。經(jīng)過分析,使用微軟公司的Visual Basic6.0開發(fā)工具及Access數(shù)據(jù)庫,設(shè)計了圖書銷售管理系統(tǒng)。 關(guān)鍵字:圖書銷售管理系統(tǒng),數(shù)據(jù)庫,Visual Basic6.0 Abstract: As a particular commodity,books affect peoples work , study and life and so on.At the same time , peoples living standards are rising quickly, now , it plays a more and more important role, however, a wide variety of books and special sales mode, With the rapid development of information technology and the growing volume of business, the traditional management tools have not adapted the development of the bookselling industry, today, industry sales of books need to achieve sales of computer management. it is urgent to develop relevant sales management software , so that people can strengthen the Book sales management, using computers to finish the large amount of work which was finished by hand before ,people can really make full use of existing resources and alleviate the pressure of work. As a result, it is very necessary to develop a Book Selling Management System., in addition, the book sales management systems also have broad market prospects and practical application. After analysis, using Microsofts Visual Basic6.0 and Access database development tool to design the book sales management system.Key words: Book Selling Management System, database, Visual Basic6.0一:開發(fā)環(huán)境介紹: 1.1 Visual Basic簡介Visual Basic簡稱VB,是Microsoft公司推出的一種 Windows應(yīng)用程序開發(fā)工具。是當(dāng)今世界上使用最廣泛的編程語言之一,它也被公認(rèn)為是編程效率最高的一種編程方法。 早在1991年,為了簡化Windows應(yīng)用程序的開發(fā),微軟公司推出了Visual Basic1.0,如今的最新版本是Visual Basic 6.0。Visual Basic 6.0集成開發(fā)環(huán)境包含標(biāo)題欄、菜單欄、工具欄、窗體設(shè)計器窗口、工程資源管理器窗口、工程窗口、窗體布局窗口和屬性窗口。Visual Basic 6.0 的特點有:可視化的設(shè)計平臺、面向?qū)ο蟮脑O(shè)計方法、事件驅(qū)動的編程機(jī)制、結(jié)構(gòu)化的設(shè)計語言、充分利用Windows資源、開放的數(shù)據(jù)庫功能與網(wǎng)絡(luò)支持。 二:系統(tǒng)需求分析與功能模塊2.1 系統(tǒng)需求分析一般的圖書銷售管理系統(tǒng)包括,進(jìn)貨管理,銷售管理,庫存管理,退貨管理,銷售統(tǒng)計,信息維護(hù)等功能。以下介紹一下銷售管理系統(tǒng)的一些必備功能,每個功能由若干相關(guān)的子模塊構(gòu)成。 進(jìn)貨管理 包括進(jìn)書錄入及查詢 銷售管理 主要對銷售的情況進(jìn)行記錄及瀏覽銷售情況 庫存管理 主要對庫存量進(jìn)行錄入與查詢。 退貨管理 對顧客退回來的書籍進(jìn)行管理,包括退貨錄入及查詢 銷售統(tǒng)計 主要是對銷售業(yè)績進(jìn)行統(tǒng)計,以報表的形式顯示銷售業(yè)績 信息維護(hù) 主要包括圖書信息維護(hù),人員信息維護(hù)及用戶信息維護(hù),其中只有管理員可以對人員信息進(jìn)行維護(hù),管理員可以更改所有用戶的信息,用戶只能修改個人信息。2.2 系統(tǒng)的功能可用如圖2-1所示框圖表示。系統(tǒng)登陸圖書銷售管理系統(tǒng)進(jìn)貨管理銷售管理庫存管理退貨管理銷售統(tǒng)計信息維護(hù) 圖2-1 2.3 數(shù)據(jù)庫設(shè)計 本系統(tǒng)的數(shù)據(jù)庫采用 Microsoft Access 2003 2.3.1 建立ccess 數(shù)據(jù)庫 啟動ccess 2003,選擇文件,新建,空數(shù)據(jù)庫(books_sale.mdb),如圖2-2所示 圖2-2 2.3.2 創(chuàng)建表在上面的基礎(chǔ)上,選擇主菜單中的插入-表格,根據(jù)要求設(shè)計相應(yīng)的表格,本系統(tǒng)中設(shè)計的表格如下所示: tb_login (用戶登錄信息表) tb_buybooks(圖書進(jìn)貨錄入表) tb_personnelinfo(人員信息維護(hù)表) tb_sale (圖書銷售表) tb_store(圖書庫存表) tb_withdraw(圖書退貨表)三:系統(tǒng)具體實現(xiàn)3.1 歡迎界面 在此界面中引用了一個第三方控件(ccrpprg6),它是一個進(jìn)度條控件。首先要加載此控件,具體方法是把壓縮包ccrpprg6.zip解壓縮,然后在工具箱的空白處單擊鼠標(biāo)右鍵,從彈出的快捷菜單中啟動部件窗口,如圖3-1所示。 圖3-1點擊瀏覽按鈕,從存放ccrpProgressBar控件的文件夾中找到ccrpprg.ocx文件。點擊應(yīng)用后ccrpProgressBar控件就添加到工具箱中了。向窗體中添加一個ccrpProgressBar控件和一個Timer控件Timer控件的Interval值設(shè)置為100,與ccrpProgressBar控件的默認(rèn)值一致。在timer1的timer事件中添加如下代碼If i = 100 Then Frm_before.Hide Timer1.Enabled = False 定時器停止工作 Frm_login.ShowElse i 不為100則進(jìn)度條向前進(jìn) ccrpProgressBar1.Value = i i = i + 2End If. 使本窗體透明,新建一個模塊Module1,添加如下代碼Public Declare Function SetLayeredWindowAttributes Lib user32 (ByVal hwnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long AnimateWindow是一個窗口打開和關(guān)閉時產(chǎn)生動畫效果的新函數(shù),因為是一個新的函數(shù), 所以在此定義Public Const WS_EX_LAYERED = &H80000Public Const GWL_EXSTYLE = (-20)Public Const LWA_ALPHA = &H2 表示把窗體設(shè)置成半透明樣式 Public Const LWA_COLORKEY = &H1 不顯示窗體中的透明色 Public Declare Function GetWindowLong Lib user32 Alias GetWindowLongA (ByVal hwnd As Long, ByVal nIndex As Long) As LongPublic Declare Function SetWindowLong Lib user32 Alias SetWindowLongA (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long在form的load 事件中加入如下代碼Timer1.Enabled = TrueTimer1.Interval = 100 定時器開始工作Frm_before.Visible = Truertn = GetWindowLong(Me.hwnd, GWL_EXSTYLE) 取窗口的原先樣式rtn = rtn Or WS_EX_LAYERED 使窗體添加上新的樣式WS_EX_LAYEREDSetWindowLong Me.hwnd, GWL_EXSTYLE, rtn 把新的樣式賦給窗體SetLayeredWindowAttributes Me.hwnd, 0, 150, LWA_ALPHA 把窗體設(shè)置成半透明樣式,第二個參數(shù)表示透明程度取值范圍0 -255, 為0時就是一個全透明的窗體了3.2 系統(tǒng)登錄. 在窗體上加個adodc1控件,登錄的主要代碼為Dim i As IntegerAdodc1.RefreshAdodc1.Recordset.MoveLastAdodc1.Recordset.MoveFirstFor i = 1 To Adodc1.Recordset.RecordCountIf 控件名.Text = Then 如果控件中的內(nèi)容為空,則顯示提示 MsgBox 請選擇用戶類型!, vbOKOnly + vbInformation, 注意ElseIf (Combo1.Text = Adodc1.Recordset.Fields(userkind) And (Trim(Text1.Text) =Adodc1.Recordset.Fields(name)And(Trim(Text2.Text)=Adodc1.Recordset.Fields(password) Then 判斷用戶名與密碼是否相符 Frm_main.Show Unload Me Exit SubElse MsgBox 無效的密碼,請重試!, 登陸 Exit SubEnd IfNext若當(dāng)前用戶是新用戶,則可以單擊新用戶注冊進(jìn)行注冊,主要代碼如下:.在Module1中加入如下代碼:Option ExplicitPublic con As ADODB.ConnectionPublic rst As ADODB.RecordsetPublic Sub OpenDataBase()Set con = New ADODB.Connectioncon.ConnectionString=Provider=Microsoft.Jet.OLEDB.4.0;DataSource=books_sale.mdb;Persist Security Info=FalseSet rst = New ADODB.Recordsetcon.OpenEnd Sub在caption屬性為”新用戶注冊”的按紐的click事件中添加如下形式的代碼Call OpenDataBase rst.Open tb_login, con, adOpenStatic, adLockOptimistic, -1 If Text1.Text = Then 提示不能為空 ElseIf Text2.Text = Then 提示不能為空 Else For i = 1 To rst.RecordCount If Text1.Text = rst.Fields(name).Value Then MsgBox 該用戶已存在,請重新輸入用戶名!, vbOKOnly + vbExclamation, 用戶 Exit Sub Else rst.MoveNext End If Next I 判斷新的用戶名是否與已存在的用戶重名 rst.AddNew rst.Fields(字段名) = Text.Text rst.Update rst.Requery rst.Close MsgBox 新用戶添加成功!, vbOKOnly + vbInformation, 提示 Unload Me End If3.3 主界面選擇VB IDE中的菜單欄中的工具菜單編輯器,進(jìn)行如下(圖3-2)設(shè)置 圖3-2加oolbar控件,單擊如圖3-3中的添加6個按紐,并分別設(shè)置其標(biāo)題及關(guān)鍵字,對應(yīng)的 與中的數(shù)值要一致。 圖3-3在toolbar1的buttonclick事件中加入如下形式代碼Select Case Button.KeyCase 關(guān)鍵字語句End Select加ImageList控件,然后右擊打開如圖3-4的屬性頁,選擇圖像,單擊,添加個圖片 圖3-4在圖3-3中選擇通用,然后設(shè)置其圖像列表為ImageList1即添加StatusBar,timer控件 在statusbar的屬性頁中,選擇窗格,然后單擊,插入相應(yīng)的窗格 在timer1的timer事件中加入語句StatusBar1.Panels(3).Text = Time 顯示當(dāng)前系統(tǒng)時間在form的load事件中的主要代碼如下StatusBar1.Panels(1).Text = 歡迎使用圖書銷售管理系統(tǒng)!StatusBar1.Panels(2).Text = Format(Date, dddddd) 以完整日期表示法顯示當(dāng)前系統(tǒng)中的日期If Frm_login.Combo1.Text = 0 Then Me.personnelim.Enabled = False如果登錄的用戶為一般用戶則該用戶不能對人員信息進(jìn)行維護(hù)3.4 進(jìn)貨管理進(jìn)書錄入在確定按紐的click事件中加入如下形式代碼Call OpenDataBase rst.Open 表名, con, adOpenStatic, adLockOptimistic, -1 rst.AddNew rst.Fields(表中字段名) = Text1.Text rst.Update rst.Requery rst.Close MsgBox 新書添加成功!, vbOKOnly + vbInformation, 提 示”在form 的load 事件中加入如下語句DTPicker1.Value = Date 使Dtpicker1的當(dāng)前值為系統(tǒng)日期進(jìn)書查詢 在“查詢“按紐的click 事件中添加如下代碼 Dim sql As Stringsql = select * from tb_buybooks whereIf Combo1.Text = ThenMsgBox 請選擇圖書進(jìn)貨日期!, vbOKOnly + vbExclamationCombo1.SetFocusExit SubElsesql = sql & ISBN = & Trim(Combo1.Text) & End IfAdodc1.RecordSource = sqlAdodc1.Refresh 查詢指定日期的進(jìn)書情況 3.5 銷售管理圖書銷售錄入(代碼同進(jìn)書錄入的代碼)圖書銷售瀏覽 . 在from的load 事件中添加如下代碼 Call OpenDataBase rst.Open tb_sale, con, adOpenStatic, adLockOptimistic, -1.在通用代碼段中添加如下形式代碼Public Sub viewdatas()On Error Resume NextText.Text = rst.Fields(字段名”)Value 把數(shù)據(jù)庫中的字段值賦給相應(yīng)的控件End Sub.在”第一本”按紐的click事件中加入如下代碼 rst.MoveFirst 移到表中的第一條記錄Call viewdatas. 在”上一本”按紐的click事件中加入如下代碼 If rst.BOF Then 判斷是否是第一條記錄MsgBox 已經(jīng)是第一條記錄!, vbOKOnly + vbInformationElserst.MovePrevious 向前移一條記錄Call viewdatasEnd If. 在”下一本”按紐的click事件中加入如下代碼 If rst.EOF Then 判斷是否是最后一條記錄MsgBox 已經(jīng)是最后一條記錄!, vbOKOnly + vbInformationElserst.MoveNext 向后移一條記錄Call viewdatasEnd If. 在”最末本”按紐的click事件中加入如下代碼 rst.MoveLast 移到最后一條記錄Call viewdatas3.6 庫存管理庫存錄入 (代碼同進(jìn)書錄入的代碼)庫存查詢 在“查詢“按紐的click事件中添加如下代碼Dim txtSQL As String txtSQL = select * from tb_store If Text7.Text = Then sMeg = 請輸入圖書編號! MsgBox sMeg, vbOKOnly + vbExclamation, 警告 Text7.SetFocus Exit Sub Else txtSQL = txtSQL & where ISBN = & Trim(Text7.Text) & End If Adodc1.RecordSource = txtSQL 重新給數(shù)據(jù)源賦值 Adodc1.Refresh Adodc1的記錄源設(shè)置如圖3-5所示: 圖3-53.7退貨管理退貨錄入 (代碼同進(jìn)書錄入的代碼)退貨查詢 (同庫存查詢)3.8 銷售統(tǒng)計圖書銷售業(yè)績報表 .選擇VB IDE 的菜單欄中的工程 添加Data report,添加一個數(shù)據(jù)報表,名稱使用默認(rèn)的Datareport1。 .設(shè)定 Datareport對象的DataSource屬性為Environment1。 .設(shè)定Datareport對象的DataMember屬性為 Command1。 .右擊設(shè)計器,在彈出的快捷菜單中單擊“檢索結(jié)構(gòu)”選項。 .向相應(yīng)的節(jié)添加相應(yīng)的控件。報表Datareport1的設(shè)計界面如圖3-6 所示。 圖3-6在主窗體的菜單欄中選擇銷售統(tǒng)計-圖書銷售業(yè)績報表,加入語句DataReport1.Show3.9信息維護(hù)圖書信息維護(hù)(同圖書銷售瀏覽)人員信息維護(hù)添加一些常用按紐之后,然后在人員信息維護(hù)中加一個(CommonDialog)按紐,在“瀏覽圖片”的click事件中添加如下代碼With Me.CommonDialog1.DialogTitle = 選擇要導(dǎo)入的圖片.Filter = 選擇圖片類型|*.jpg|*.bmp|*.bmp|*.gif|*.*|*.jpg.ShowOpen.InitDir = App.PathMe.Picture1.Picture = LoadPicture(Me.CommonDialog1.FileName)End With用戶信息維護(hù)在Form的 load事件中加入如下代碼If Frm_login.Combo1.Text = 0 Then 判斷當(dāng)前使用者是管理員還是一般用戶Me.Combo1.Text = Frm_login.Text1.Text 若為一般用戶則該用戶名賦值給Combo1.Text,否則,則把所有用戶名都加到Combo1中ElseSet s = New ADODB.ConnectionDim str As Stringstr = provider=microsoft.jet.oledb.4.0;data source= & App.Path & books_sale.mdb;persist security info=falses.Open strSet c = New ADODB.Recordsetc.Open select * from tb_login, str, 1, 1c.MoveFirstWhile Not c.EOFCombo1.AddItem (c.Fields(name).Value)c.MoveNextWendEnd If在“確定”按紐的click事件中加入如下代碼Call OpenDataBaserst.Open tb_login, con, adOpenStatic, adLockOptimistic, -1Adodc1.RecordSource = select password from tb_login where name = combo1.textIf Text1.Text rst.Fields(password).Value Then 判斷輸入的原密碼是否與數(shù)據(jù)庫中的相同MsgBox 您輸入的原密碼不正確,請重新輸入!, vbOKOnly + vbInformation, 提示Elserst.Fields(password) = Text2.Textrst.Updaterst.Requeryrst.CloseMsgBox 密碼修改成功!, vbOKOnly + vbInformation, 提示Unload MeEnd If四:調(diào)試過程.系統(tǒng)運行時的第一個界面如圖4-1所示 圖4-1.然后進(jìn)入登錄界面,如圖4

溫馨提示

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

評論

0/150

提交評論