版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p> 畢 業(yè) 設(shè) 計 說 明 書</p><p> 設(shè)計(論文)題目:小筑書店銷售系統(tǒng) </p><p> 系 別: 信息工程學(xué)院 1</p><p> 專 業(yè): 計算機網(wǎng)絡(luò)技術(shù) 1</p><p> 姓 名: 1</p><p> 學(xué) 號:
2、 1</p><p> 指導(dǎo)教師: </p><p> 完成時間: 2011-4-28 </p><p><b> 摘要</b></p><p> 本系統(tǒng)是從圖書銷售管理這一角度出發(fā),對圖書銷售管理的日常事物跟蹤軟件和管理軟件做出了深入的研究后,使用SQL Serve
3、r 2000作為后臺數(shù)據(jù)庫進行開發(fā)的。</p><p> 首先本系統(tǒng)討論了圖書銷售管理的基本過程,并指出了人工管理的復(fù)雜性和不可靠性。然后給出了用Visual Basic 6.0實現(xiàn)的圖書銷售管理系統(tǒng)。在管理過程中所要遇到的各類情況,在本系統(tǒng)中都做了詳細而又正確的處理結(jié)果(如進貨、編目、管理),本系統(tǒng)不僅對圖書管理進行了統(tǒng)計和查詢,而且對用戶和會員的管理、享受折扣等進行了分析和排行,解決了用手工方法帶來的困難,
4、和數(shù)據(jù)出錯的概率。給用戶和管理人員帶來了極大的便利,而且創(chuàng)建了賞心悅目、相互友好的用戶界面。</p><p> 關(guān)鍵詞 圖書銷售管理系統(tǒng);查詢;C/S模式</p><p><b> 目錄</b></p><p><b> 第一章 緒論1</b></p><p><b> 1.1
5、引言1</b></p><p> 1.2 選題目的1</p><p> 1.3 圖書銷售管理系統(tǒng)1</p><p> 1.4 開發(fā)系統(tǒng)軟件簡介2</p><p> 1.4.1 Microsoft Visual Basic 6.02</p><p> 1.4.2 Microsoft SQL
6、 Server 20002</p><p> 第二章 系統(tǒng)功能分析和總體設(shè)計4</p><p> 2.1 需求分析4</p><p> 2.2 總體設(shè)計4</p><p> 2.3 數(shù)據(jù)庫設(shè)計5</p><p> 2.3.1 數(shù)據(jù)庫分析5</p><p> 2.3.2 數(shù)
7、據(jù)庫概要設(shè)計5</p><p> 2.3.3 數(shù)據(jù)庫詳細設(shè)計7</p><p> 第三章 系統(tǒng)詳細設(shè)計10</p><p> 3.1 登錄子模塊設(shè)計10</p><p> 3.2 管理員模塊設(shè)計12</p><p> 3.3 圖書管理模塊設(shè)計13</p><p> 3.4
8、 會員管理模塊設(shè)計17</p><p> 3.5 用戶模塊設(shè)計18</p><p> 3.5.1 會員注冊設(shè)計19</p><p> 3.5.2 圖書查詢20</p><p> 3.6 報表處理模塊設(shè)計21</p><p> 3.7 菜單設(shè)計22</p><p> 第四章
9、 系統(tǒng)調(diào)試24</p><p> 4.1 語法錯誤24</p><p> 4.2 運行錯誤24</p><p> 4.3 SQL Server 程序配合調(diào)試25</p><p><b> 謝辭26</b></p><p><b> 參考文獻27</b>&
10、lt;/p><p><b> 附錄28</b></p><p><b> 第一章 緒論</b></p><p><b> 1.1 引言</b></p><p> 圖書銷售管理系統(tǒng)是典型的信息管理系統(tǒng),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應(yīng)用程序的開發(fā)兩個方面。對于
11、前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的數(shù)據(jù)庫。而對于后者則要求應(yīng)用程序功能完備,易使用等特點。</p><p> 在本次畢業(yè)設(shè)計中,使用了Microsoft公司的Visual Basic 6.0和SQL SERVER 2000為開發(fā)工具,結(jié)合開入式圖書館的要求,完成了對圖書銷售管理系統(tǒng)的需求分析、功能模塊劃分、數(shù)據(jù)庫模式分析。本系統(tǒng)采用會員制管理,系統(tǒng)功能應(yīng)包含進書管理、售書管理、退貨管理、系統(tǒng)管理
12、等。系統(tǒng)界面力求簡潔、易用,在標(biāo)準(zhǔn)化的基礎(chǔ)上考慮界面的美觀和新穎協(xié)調(diào)。在指導(dǎo)老師的幫助下,開發(fā)過程中不斷得到了修正和改進直到形成了這套可行的系統(tǒng)。</p><p><b> 1.2 選題目的</b></p><p> 利用計算機管理繁瑣的日常圖書銷售管理工作,避免手工操作過程中繁瑣且易出錯的現(xiàn)象,提高工作的質(zhì)量和效率。</p><p>
13、信息在社會和經(jīng)濟的發(fā)展中所起的作用越來越為人們所重視。信息資源的開發(fā)利用水平成為衡量一個國家綜合國力的重要標(biāo)志之一。計算機作為信息處理的工具,為適應(yīng)數(shù)據(jù)處理需求的迅速發(fā)展。隨著辦公自動化的日益發(fā)展,越來越多的企事業(yè)單位都實現(xiàn)了無紙化辦公。作為一個現(xiàn)代化的書店,需要一個擁有自動化,全方位的辦公系統(tǒng),方便處理日益復(fù)雜化的管理經(jīng)營項目。書店管理系統(tǒng)就是能滿足書店日常經(jīng)營及后臺統(tǒng)計電算化的系統(tǒng)。具有方便,人性化的系統(tǒng)可以幫助營業(yè)員和管理人員處理
14、一般的管理項目。使書店能夠滿足快速發(fā)展的現(xiàn)代化會的需要。</p><p> 1.3 圖書銷售管理系統(tǒng)</p><p> 圖書銷售管理系統(tǒng)對圖書日常銷售中的手工操作繁瑣、易出錯的問題進行研究,利用計算機管理繁瑣的日常圖書銷售管理工作,避免手工操作過程中繁瑣且易出錯的現(xiàn)象,提高工作的質(zhì)量和效率。</p><p> 1.4 開發(fā)系統(tǒng)軟件簡介</p>&
15、lt;p> 1.4.1 Microsoft Visual Basic 6.0</p><p> Visual Basic是一種可視化的、面對對象和條用事件驅(qū)動方式的結(jié)構(gòu)化高級程序設(shè)計,可用于開發(fā)Windows環(huán)境下的種類應(yīng)用程序。它簡單易學(xué)、效率高,且功能強大,可以與Windows的專業(yè)開發(fā)工具SDK相媲美,而且程序開發(fā)人員不必具有C/C++編程基礎(chǔ)。在Visual Basic環(huán)境下,利用事件驅(qū)動的編程
16、機制、新穎易用的可視化設(shè)計工具,使用Windows內(nèi)部的應(yīng)用程序接口(API)函數(shù),以及動態(tài)鏈接庫(DLL)、動態(tài)數(shù)據(jù)交換(DDE)、的鏈接與嵌入(OLE)、開放式數(shù)據(jù)訪問(ODBC)等技術(shù),可以高效、快速地開發(fā)出Windows環(huán)境下功能強大、圖形界面豐富的應(yīng)用軟件系統(tǒng)。</p><p> VB6.0全稱為Visual Basic 6.0,是微軟公司推出的可視化編程工具MSDN之一,是目前世界上使用最廣泛的程序
17、開發(fā)工具。其特點有:</p><p> (1)應(yīng)用面向?qū)ο蟮某绦蛟O(shè)計方法:在VB中,應(yīng)用面向?qū)ο蟮某绦蛟O(shè)計方法,把程序和數(shù)據(jù)封裝起來視為一個對象,每個對象都是可視的。程序員在設(shè)計時只需用現(xiàn)有工具根據(jù)界面設(shè)計的要求,直接在屏幕上“畫”出窗口、菜單、按鈕、滾動條等不同類型的對象,并為每個對象設(shè)置屬性。</p><p> (2)事件驅(qū)動的編程機制:事件驅(qū)動是非常適合圖形用戶界面的編程方式。事
18、件掌握著程序運行的流向,每個事件都能驅(qū)動一段程序的運行。程序員只需編寫響應(yīng)用戶動作的代碼,而各個動作之間不一定有聯(lián)系。這樣的應(yīng)用程序代碼一般較短,所以程序既易于編寫又易于維護。</p><p> (3) 提供了易學(xué)易用的應(yīng)用程序集成開發(fā)環(huán)境: 在VB集成開發(fā)環(huán)境中,用戶可設(shè)計界面、編寫代碼、調(diào)試程序,直至把應(yīng)用程序編譯成可執(zhí)行文件在Windows中運行,使用戶在友好的開發(fā)環(huán)境中工作。</p>&l
19、t;p> (4) 支持多種數(shù)據(jù)庫系統(tǒng)的訪問 :利用數(shù)據(jù)控件可訪問的數(shù)據(jù)庫系統(tǒng)有:Microsoft SQL Server、Btrieve、dBASE、Microsoft FoxPro和Paradox等,也可訪問Microsoft Excel,Lotusl-2-3等多種電子表格。</p><p> (5) 結(jié)構(gòu)化的程序設(shè)計語言:VB具有豐富的數(shù)據(jù)類型和結(jié)構(gòu)化程序結(jié)構(gòu),而且簡單易學(xué)。</p>
20、<p> 1.4.2 Microsoft SQL Server 2000</p><p> SQL Server 2000作為本系統(tǒng)的數(shù)據(jù)庫,它是一個支持多用戶的新型數(shù)據(jù)庫,適用于中小規(guī)模的數(shù)據(jù)量需求,以其建立方便,兼容性強受到廣泛應(yīng)用。</p><p> SQL是高級的非過程化編程語言,允許用戶在高層數(shù)據(jù)結(jié)構(gòu)上工作。它不要求用戶指定對數(shù)據(jù)的存放方法,也不需要用戶了解具體
21、的數(shù)據(jù)存放方式,所以具有完全不同底層結(jié)構(gòu)的不同數(shù)據(jù)庫系統(tǒng)可以使用相同的SQL語言作為數(shù)據(jù)輸入與管理的接口。它以記錄集合作為操作對象,所有SQL語句接受集合作為輸入,返回集合作為輸出,這種集合特性允許一條SQL語句的輸出作為另一條SQL語句的輸入,所以SQL語句可以嵌套,這使他具有極大的靈活性和強大的功能,在多數(shù)情況下,在其他語言中需要一大段程序?qū)崿F(xiàn)的功能只需要一個SQL語句就可以達到目的,這也意味著用SQL語言可以寫出非常復(fù)雜的語句。&
22、lt;/p><p> SQL的功能介紹:SQL面向數(shù)據(jù)庫執(zhí)行查詢;SQL可從數(shù)據(jù)庫取回數(shù)據(jù);SQL可在數(shù)據(jù)庫中插入新的記錄;SQL可更新數(shù)據(jù)庫中的數(shù)據(jù);SQL可從數(shù)據(jù)庫刪除記錄;SQL可創(chuàng)建新數(shù)據(jù)庫;SQL可在數(shù)據(jù)庫中創(chuàng)建新表;SQL可在數(shù)據(jù)庫中創(chuàng)建存儲過程;SQL可在數(shù)據(jù)庫中創(chuàng)建視圖;SQL可以設(shè)置表、存儲過程和視圖的權(quán)限。</p><p> 第二章 系統(tǒng)功能分析和總體設(shè)計</p&
23、gt;<p><b> 2.1 需求分析</b></p><p> 用戶對一個書店最基本的需求,就是可以讓用戶進行圖書的查找,可以進行購買,如果購買的圖書有書頁毀壞等情況,還可以進行退貨。長期在此書店購買圖書,就希望可以有一定的優(yōu)惠政策。</p><p> 一個書店本身最基本的功能應(yīng)包括新書編目、圖書銷售、圖書退貨,為了能夠有更多的消費者來購買本店
24、的書籍,還可以有會員,根據(jù)他們在書店所積的積分,來進行相應(yīng)的優(yōu)惠政策。書店的管理員還可以打印所有會員的相關(guān)信息,打印書店銷售的相關(guān)信息。</p><p> 為了滿足這些基本需求,小筑書店的設(shè)計包括了系統(tǒng)管理、圖書查詢、圖書銷售、會員管理等基本功能。</p><p><b> 2.2 總體設(shè)計</b></p><p> 根據(jù)上面的需求分析與
25、數(shù)據(jù)庫的設(shè)計,對圖書銷售管理系統(tǒng)軟件的功能劃分、數(shù)據(jù)結(jié)構(gòu)有了一定的認識。根據(jù)實際,我們應(yīng)構(gòu)造一個可執(zhí)行的軟件系統(tǒng)模型,這樣用戶和開發(fā)人員可以較快的確定需求,然后對系統(tǒng)模型作連續(xù)的精化,將系統(tǒng)需具備的性質(zhì)逐漸增加上去,直到所有的性質(zhì)全部滿足。此時模塊也發(fā)展成為最終產(chǎn)品了。</p><p> 此系統(tǒng)模塊主要分為系統(tǒng)管理、圖書管理、會員管理、報表處理、關(guān)于五大功能模塊。如圖2-1系統(tǒng)功能圖所示。</p>
26、<p> 系統(tǒng)管理中的管理員子模塊是實現(xiàn)對管理員的添加、刪除和對管理員密碼進行修改。</p><p> 圖書管理是由4個子模塊來實現(xiàn)的,分別是:銷售管理、進書退書管理、圖書編目和圖書修改子模塊。其中銷售管理實現(xiàn)顧客購書和顧客退書。進書退書管理實現(xiàn)對已編目書籍的進購和退貨。圖書編目實現(xiàn)對未編目書籍進行圖書編目。圖書修改是對已編目書籍的相關(guān)信息的進行修改。</p><p>
27、會員管理是由2個子模塊來實現(xiàn)的,分別是:會員修改、會員刪除子模塊。此模塊的功能是實現(xiàn)對會員信息的管理,包括對會員基本信息的修改和刪除。</p><p> 報表處理主要是實現(xiàn)對一些會員信息和圖書銷售信息等的打印。</p><p><b> 2.3 數(shù)據(jù)庫設(shè)計</b></p><p> 2.3.1 數(shù)據(jù)庫分析</p><p
28、> 數(shù)據(jù)庫在一個信息管理系統(tǒng)中占有非常重要的地位,數(shù)據(jù)庫結(jié)構(gòu)設(shè)計的好壞會直接對應(yīng)用系統(tǒng)的效率以及實現(xiàn)的效果產(chǎn)生影響。合理的數(shù)據(jù)庫結(jié)構(gòu)設(shè)計可以提高數(shù)據(jù)存儲的效率,保證數(shù)據(jù)的完整和一致。</p><p> 數(shù)據(jù)庫中的數(shù)據(jù)是整個系統(tǒng)的核心,怎樣合理地進行信息建模和范式分解將直接影響整個數(shù)據(jù)庫系統(tǒng)的運行效能。數(shù)據(jù)庫系統(tǒng)的設(shè)計在完成功能的前提下,應(yīng)力求邏輯關(guān)系簡單,否則,由于數(shù)據(jù)庫表之間的復(fù)雜連接操作會大大降低系
29、統(tǒng)的性能。根據(jù)本系統(tǒng)的特點和要求, 本系統(tǒng)使用的是SQL數(shù)據(jù)庫,并在數(shù)據(jù)庫中建表。</p><p> 2.3.2 數(shù)據(jù)庫概要設(shè)計</p><p> 信息系統(tǒng)的主要任務(wù)是通過大量的數(shù)據(jù)獲得管理所需要的信息,這就必須存儲和管理大量的數(shù)據(jù)。因此建立一個良好的數(shù)據(jù)組織結(jié)構(gòu)和數(shù)據(jù)庫,使整個系統(tǒng)都可以迅速、方便、準(zhǔn)確地調(diào)用和管理所需的數(shù)據(jù),是衡量信息系統(tǒng)開發(fā)工作好壞的主要指標(biāo)之一。</p&g
30、t;<p> 數(shù)據(jù)庫設(shè)計主要是進行數(shù)據(jù)庫的邏輯設(shè)計,即將數(shù)據(jù)按一定的分類、分組系統(tǒng)和邏輯層次組織起來,是面向用戶的。</p><p> 本系統(tǒng)根據(jù)需要共建立了6個表,分別是:mimabiao、xiaoshoubiao、tushuziliao、huiyuanbiao、leibiebiao、jintuishu。</p><p> xiaoshoubiao實體屬性圖,如圖2-
31、2 xiaoshoubiao所示。</p><p> tushuziliao實體屬性圖,如圖2-3 tushuziliao所示。</p><p> jintuishu屬性實體圖,如圖2-4 jintuishu所示。</p><p> huiyuanbiao屬性實體圖,如圖2-5 huiyuanbiao所示。</p><p> 2.3.
32、3 數(shù)據(jù)庫詳細設(shè)計</p><p><b> 1、密碼表詳細設(shè)計</b></p><p> mimabiao:中文是密碼表,實現(xiàn)對管理員姓名、密碼的管理。如表2-1 mimabiao 所示。</p><p> 表2-1 mimaobiao</p><p> 2、圖書資料表詳細設(shè)計</p><p
33、> tushuziliao:是圖書資料表,包括數(shù)據(jù)項有:類別、編號、書名、作者、出版社、進價、零售價、數(shù)量、擺放區(qū)域。如表2-2 tushuziliao 所示。</p><p> 表2-2 tushuziliao</p><p><b> 3、會員表詳細設(shè)計</b></p><p> huiyuanbiao:是會員表,包括數(shù)據(jù)項有
34、:會員號、姓名、密碼、性別、住址、積分。如表2-3 huiyuanbiao所示。</p><p> 表2-3 huiyuanbiao</p><p> 4、售書記錄表詳細設(shè)計</p><p> xiaoshoubiao:是售書記錄表,包括數(shù)據(jù)項圖書的編號、書名、零售價、購買數(shù)量、總金額、流水號、會員號、日期。如表2-4 xiaoshoubiao 所示。<
35、/p><p> 表2-4 xiaoshoubiao</p><p> 5、進退書表詳細設(shè)計</p><p> jintuishu:是進退書表,包括數(shù)據(jù)項編號、書名、庫存量、上次進價、進貨數(shù)量、退貨數(shù)量、進價、退貨價、剩余庫存、日期。如圖2-5 jintuishu 所示。</p><p> 表2-5 jintuishu</p>
36、<p> 第三章 系統(tǒng)詳細設(shè)計</p><p> 3.1 登錄子模塊設(shè)計</p><p> 本系統(tǒng)用戶不唯一,為了使不同的用戶只對應(yīng)其范圍內(nèi)的功能模塊,在用戶登錄的時候,根據(jù)選擇的用戶類型和輸入的用戶名、密碼的信息到數(shù)據(jù)庫中的相應(yīng)的表中查詢,識別用戶的身份,如果不是合法用戶,系統(tǒng)將給出提示信息;確認是系統(tǒng)合法用戶后,根據(jù)相應(yīng)的身份,使其進入到相應(yīng)的界面,進行相應(yīng)的操作。進
37、入的界面如圖3-1用戶登錄界面所示。</p><p> 圖3-1 用戶登錄界面</p><p> 用戶進入該系統(tǒng)前,首先需要進行身份驗證。如果通過了身份驗證,則為合法用戶,進入系統(tǒng)。如果不是,則無法進入。</p><p> If Combo1.Text = "" Then</p><p> MsgBox &quo
38、t;請選擇用戶類型"</p><p><b> End If</b></p><p> If Combo1.ListIndex = 2 Then</p><p> Form2.Show</p><p> Form1.Hide</p><p><b> End If&l
39、t;/b></p><p> If Combo1.ListIndex = 1 Then</p><p><b> ……</b></p><p><b> End if</b></p><p> If Combo1.ListIndex = 0 Then</p><p&
40、gt;<b> ……</b></p><p><b> End if</b></p><p> 此代碼實現(xiàn)的是用戶在登錄時,需要先選擇用戶類型,如果用戶類型未進行選擇,彈出提示對話框,如果ListIndex為2,則選擇的是普通用戶,無需用戶名和密碼,可直接進入用戶界面。如果ListIndex為1,則選擇的是管理員,為0則選擇的是會員,這兩種
41、都需要輸入用戶名和密碼,根據(jù)用戶名和密碼的不同,進入其對應(yīng)的界面。</p><p> If Text1.Text = "" Then</p><p> MsgBox "請輸入用戶名!"</p><p> Text1.SetFocus</p><p><b> Else</b>
42、;</p><p> Dim sql As String</p><p> sql = "select * from mimabiao where [用戶名]='" & Trim(Text1.Text) & "'" '查找用戶登錄名</p><p><b> rst.
43、Close</b></p><p> rst.Open sql, con, adOpenDynamic, adLockOptimistic</p><p> If rst.RecordCount <= 0 Then</p><p> MsgBox "用戶名不存在"</p><p> Text1.S
44、etFocus</p><p><b> Exit Sub</b></p><p><b> End If</b></p><p> If LCase(Trim(rst![用戶名])) = LCase(Trim(Text1.Text)) Then</p><p> If Text2.Text
45、 = "" Then</p><p> MsgBox "請輸入密碼"</p><p> Text2.SetFocus</p><p><b> Else</b></p><p> If Trim(rst![密碼]) = Trim(Text2.Text) Then</p
46、><p> Combo1.Text = ""</p><p> Text1.Text = ""</p><p> Text2.Text = ""</p><p> Form6.Show</p><p> Form1.Hide</p><
47、;p><b> Else</b></p><p> MsgBox "密碼錯誤"</p><p> Text2.SetFocus</p><p><b> Exit Sub</b></p><p> 管理員登錄時,如果用戶名文本框為空,彈出提示對話框,將光標(biāo)定位到用
48、戶名所對應(yīng)的文本框,如不為空先進行用戶名判斷,如果不存在彈出提示對話框,光標(biāo)還定位到此文本框,如果存在,再進行密碼判斷,如果密碼為空,彈出提示對話框,將光標(biāo)定位在密碼對應(yīng)的文本框,如不為空,正確則可以進入管理員界面,錯誤彈出提示對話框,光標(biāo)還定位到此文本框。</p><p> 會員登錄時,所進行的判斷跟管理員相似,但因會員號是整型,所以在用戶名判斷時,對文本框中輸入的用戶名類型進行了轉(zhuǎn)換。代碼如下:</p
49、><p> sql = "select * from huiyuanbiao where [會員號]='" & Trim(Val(Text1.Text)) & "'" </p><p> 3.2 管理員模塊設(shè)計</p><p> 管理員忘記其用戶名和密碼,或者是管理員的用戶名和密碼不小心被管理
50、員之外的人知道了,為了防止這些事情的發(fā)生,管理員可對其用戶名和密碼進行添加、刪除或?qū)芾韱T的密碼進行修改。其界面如圖3-2 密碼修改界面所示。</p><p> 圖3-2 密碼修改界面</p><p> If Text3.Text = "" Then</p><p> MsgBox "請輸入新密碼", 48, "
51、;提示信息"</p><p><b> Else</b></p><p> If Text4.Text = "" Then</p><p> MsgBox "請輸入確認密碼", 48, "提示信息"</p><p><b> Else
52、</b></p><p> If Trim(Text3.Text) <> Trim(Text4.Text) Then</p><p> MsgBox "兩次密碼不一致,請重新輸入!"</p><p> Text4.SetFocus</p><p> Text4.Text = "&q
53、uot;</p><p><b> Else</b></p><p> c = MsgBox("確認修改該密碼嗎", 33, "提示信息")</p><p> If c = vbOK Then</p><p> rst("密碼") = Trim(Text
54、4.Text)</p><p> MsgBox "信息修改成功", 64, "提示信息"</p><p> Adodc1.RecordSource = "select * from mimabiao "</p><p> Adodc1.Refresh</p><p> Tex
55、t3.Text = ""</p><p> Text4.Text = ""</p><p> 此段代碼實現(xiàn)的是對管理員密碼的修改,如果新密碼或確認密碼為空,彈出提示對話框,光標(biāo)定位到相應(yīng)文本框,如果不為空,則對兩次的密碼進行判斷,如果不同,彈出提示對話框,如果相同,彈出提示對話框,并進行密碼的更新,同時將新密碼和確認密碼所對應(yīng)的文本框清空。<
56、;/p><p> 3.3 圖書管理模塊設(shè)計</p><p> 書店只有具備了買賣等基本的功能,才能正常進行營業(yè),此模塊就是根據(jù)書店最基本的功能來設(shè)計的,功能如圖3-3圖書管理功能圖所示。</p><p><b> 1、銷售管理:</b></p><p> 售書:售書是實現(xiàn)書店賣書的功能。在售書過程中,工作人員根據(jù)用戶
57、選擇用戶類型,如果是會員,需同時輸入會員號和圖書編號;不是會員的話,只需輸入圖書編號及可,然后在輸入購買數(shù)量后點擊“確定”和“付款”按鈕就可進行售書操作。如果購買成功,就打印出小票給顧客,以防止顧客購買的書籍如有損壞,便可以此作為退書憑證。</p><p> 退書:退書是實現(xiàn)顧客退書的功能。在此功能中,工作人員根據(jù)購買者小票的流水號,查詢顧客是否有購買書籍,確定購買的信息。如果存在輸入退書的數(shù)量,點擊“退書”
58、后,如果退書的數(shù)量超過購買的數(shù)量,彈出提示信息。如果不超過,進行退貨。如果退貨者是會員,積分根據(jù)退貨的數(shù)量的金額進行相應(yīng)減少。</p><p><b> 2、進書退書管理:</b></p><p> 這里的進書和退書都是對小筑書店已經(jīng)編目過的書籍進行操作,首先應(yīng)先選擇是進書還是退書,如果是進書,輸入編號之后,就會出現(xiàn)這本書的書名等相關(guān)信息,輸入所進書籍的數(shù)量和進價
59、,確定之后,就可以將原來此本書籍所剩的數(shù)量進行修改。并將這次進書的記錄寫到j(luò)intuishu表中。如果是退書,其執(zhí)行過程和進書相似。</p><p><b> 3、圖書編目:</b></p><p> 新購的書籍如果沒有進行相應(yīng)的編目,那么銷售起來就比較麻煩,為了能夠方便管理,采用圖書編目對新購的書籍進行編目。但新購的書籍有時有可能已經(jīng)包括編目過的書籍,可能因為進
60、購的書籍比較多,沒有太在意,此時進行編目時,就有可能出現(xiàn)重復(fù)書籍不是相同的編號,因此在進行編目時,輸入要編目的書籍的所有相關(guān)信息后,對書籍的書名、作者和出版社進行判斷,如果庫存中出現(xiàn)相同的書籍,則說明此書籍已經(jīng)存在,彈出對話框,直接輸入進購的數(shù)量就可以了。如果不是已經(jīng)編目過的書籍,但圖書新設(shè)的編號已經(jīng)存在,就提示重新輸入此書籍的圖書編號。</p><p><b> 4、圖書修改:</b>&
61、lt;/p><p> 相同書籍每次的進價有可能不同,為了在賣出時不至于賣價低于進價,或出現(xiàn)其他現(xiàn)象。因此可以對已經(jīng)編目的書籍進行零售價或其他相關(guān)信息的修改。</p><p> 圖書管理中售書又尤為重要,其中售書如圖3-4圖書銷售界面所示。</p><p> 圖3-4 圖書銷售界面</p><p> If Text2.Text = &quo
62、t;" Then</p><p> MsgBox "請輸入圖書編號!"</p><p> Text2.SetFocus</p><p><b> Else</b></p><p> Dim sq As String</p><p> Set rst = Ne
63、w ADODB.Recordset</p><p> sq = "select * from tushuziliao where [編號]='" & Trim(Text2.Text) & "'"</p><p> Call connect_db</p><p> rst.Open sq,
64、con, adOpenDynamic, adLockOptimistic</p><p> If rst.RecordCount > 0 Then </p><p> Text1(0).Text = rst.Fields(2)</p><p> Text1(4).Text = rst.Fields(6)</p><
65、p> Text1(1).Text = rst.Fields(5)</p><p> Text6.Enabled = True</p><p><b> Else</b></p><p> MsgBox "此圖書編號不存在!"</p><p> Text2.SetFocus</p&
66、gt;<p><b> End If</b></p><p><b> rst.Close</b></p><p><b> End If</b></p><p> 此段代碼是先判斷文本框是否為空,不為空判斷所輸入的編號是否存在,如果存在,則將tushuziliao中的相應(yīng)字段綁
67、定到相應(yīng)的文本框中,顯示此圖書編號對應(yīng)的圖書信息,如果不存在,則彈出提示對話框。</p><p> rst.Open "select 書名,零售價 from tushuziliao where 編號='" & Text2.Text & "'", con, 1, 1</p><p> If rst.RecordCou
68、nt > 0 Then</p><p> c = MsgBox("確認銷售嗎?", 33, "提示信息")</p><p> If c = vbOK Then </p><p> Set rst = con.Execute("insert into xiao
69、shoubiao (編號,書名,零售價,購買數(shù)量,總金額,流水號,會員號,日期) values ('" & Text2.Text & "','" & Text1(0) & "','" & Text1(1) & "','" & Text1(2) & &
70、quot;','" & Text1(3) & "','" & Text4 & "','" & Text6.Text & "','" & Label13 & "')")</p><p> S
71、et rst = con.Execute("update tushuziliao set 數(shù)量='" & Text3 & "' where 編號='" & Text2.Text & "'")</p><p> Set rst = con.Execute("update huiyu
72、anbiao set 積分='" & Text5 & "' where 會員號='" & Text6.Text & "'")</p><p> MsgBox "交易成功!"</p><p> 此段代碼是對已經(jīng)編目的書籍進行銷售,將此次銷售寫入xiaosh
73、oubiao中,并將tushuziliao中編號所對應(yīng)的數(shù)量進行相應(yīng)減少,如果是會員,那么會員的積分根據(jù)購買者購買的金額進行相應(yīng)的增加。</p><p> 顧客購書付款后,點擊打印按鈕,即可打印此次的圖書銷售單,作為顧客退書的憑據(jù)。如圖3-5 圖書銷售單所示。</p><p><b> 圖3-5圖書銷售單</b></p><p> 3.4
74、 會員管理模塊設(shè)計</p><p> 普通用戶在成為會員后,可能有時需要對自己的信息進行修改或忘記了密碼,或者書店有活動,隨機抽取相應(yīng)會員號贈送積分等,這些都可以通過管理員來進行相應(yīng)的修改和刪除操作。界面如圖3-6 會員管理所示。</p><p> 圖3-6 會員管理界面</p><p> If rst.BOF Then</p><p>
75、; MsgBox "已經(jīng)到達記錄頂端!"</p><p> Command4.Enabled = False</p><p><b> Exit Sub</b></p><p><b> Else</b></p><p> rst.MovePrevious</p&
76、gt;<p><b> End If</b></p><p> 此段代碼是查看上一條記錄,如果記錄達到頂端,彈出提示對話框,且控件為變?yōu)椴豢捎?,如果未達到頂端,則可繼續(xù)向上查詢。</p><p> If rst.EOF Then</p><p> MsgBox "已經(jīng)到達記錄底端! "</p>
77、;<p> Command5.Enabled = False</p><p><b> Exit Sub</b></p><p><b> Else</b></p><p> rst.MoveNext</p><p><b> End If</b><
78、;/p><p> 此段代碼是查看下一條記錄,如果記錄達到底端,彈出提示對話框,且控件為變?yōu)椴豢捎?,如果未達到底端,則可繼續(xù)向下查詢。</p><p> Dim ans As String</p><p> ans = MsgBox("確定要刪除此記錄嗎?", vbYesNo, "提示")</p><p&g
79、t; If ans = vbYes Then</p><p> rst.Delete</p><p> rst.Requery</p><p> MsgBox "刪除成功!"</p><p><b> Else</b></p><p><b> Exit
80、Sub</b></p><p><b> End If</b></p><p> 此段代碼是對會員信息的刪除,點擊刪除時,會彈出提示對話框,如果選擇是,則將相關(guān)記錄進行刪除,如果選擇否,則退出程序。</p><p> 3.5 用戶模塊設(shè)計</p><p> 小筑系統(tǒng)的用戶分為普通用戶和會員兩種, 購買
81、書籍時,普通用戶沒有購書優(yōu)惠,但會員在購書時可以享受優(yōu)惠,為了能夠有更多的顧客光臨本店,所以將用戶分為兩種。普通用戶的功能和會員的功能分別如圖3-7普通用戶功能圖和3-8會員功能圖所示。</p><p> 3.5.1 會員注冊設(shè)計</p><p> 普通用戶可以進行注冊,成為本店的會員。注冊如圖3-9會員注冊界面所示。</p><p> 圖3-9會員注冊界面&
82、lt;/p><p> Dim sql1 As String</p><p> Set rst = New ADODB.Recordset</p><p> sql1 = "select * from huiyuanbiao order by 會員號 desc"</p><p> Call connect_db</
83、p><p> rst.Open sql1, con, adOpenDynamic, adLockOptimistic</p><p> Label9.Caption = rst.Fields(0) + 1</p><p> 每次進入后,會員號不需要會員自己輸入,實現(xiàn)會員號自動獲取huiyuanbiao中的最后一條記錄的會員號的下一個會員號。</p>
84、<p> Set rst = con.Execute("insert into huiyuanbiao (會員號,姓名,密碼,性別,住址) values ('" & Label9.Caption & "','" & Text1 & "','" & Text2 & "
85、39;,'" & Text3 & "','" & Text4 & "')")</p><p> MsgBox "注冊成功!"</p><p> Call Form_Load</p><p> 實現(xiàn)普通用戶的注冊,注冊成功彈出提示
86、對話框。注冊完成后,執(zhí)行窗體的Form_Load事件,以達到會員編號自增的效果。</p><p> 3.5.2 圖書查詢</p><p> 不管是會員或是普通用戶,都可以查看圖書的相關(guān)資料。對圖書的查找,有精確查找、模糊查找和復(fù)合查找三種方式。</p><p><b> 1、模糊查找</b></p><p> I
87、f Combo5.Text <> "" Then</p><p> Adodc6.RecordSource = "select 類別,編號,書名,作者,出版社,零售價,數(shù)量,擺放區(qū)域 from tushuziliao where 類別='" & Combo5.Text & "'"</p><
88、;p> Adodc6.Refresh</p><p><b> End If</b></p><p> 此段代碼實現(xiàn)用戶以類別的方式對圖書進行查詢,選擇相應(yīng)的類別后,會顯示這一類別的所有圖書的相關(guān)記錄。</p><p><b> 2、精確查找</b></p><p> If Comb
89、o4.Text <> "" Then</p><p> Adodc6.RecordSource = "select 類別,編號,書名,作者,出版社,零售價,數(shù)量,擺放區(qū)域 from tushuziliao where 編號='" & Combo4.Text & "'"</p><p>
90、 Adodc6.Refresh</p><p><b> End If</b></p><p> 此段代碼實現(xiàn)用戶以圖書編號的方式對圖書進行查詢,選擇相應(yīng)的編號后,會顯示這一編號所對應(yīng)的圖書的相關(guān)記錄。</p><p><b> 3、復(fù)合查找</b></p><p> If Text1.T
91、ext <> "" Then</p><p> If Text2.Text <> "" Then</p><p> Adodc6.RecordSource = "select 類別,編號,書名,作者,出版社,零售價,數(shù)量,擺放區(qū)域 from tushuziliao where 書名 like'%"
92、; & Text1.Text & "% ' and 作者='" & Text2.Text & "'"</p><p> Adodc6.Refresh</p><p> If Adodc6.Recordset.RecordCount = 0 Then</p><p>
93、 MsgBox "沒有你要找的書籍!"</p><p> 此段代碼實現(xiàn)用戶以書名和作者相結(jié)合的方式對圖書進行查詢,輸入相應(yīng)的書名或者書名中包含的字和作者后,如果有會顯示圖書的相關(guān)記錄,如果沒有,則彈出提示對話框。</p><p> 3.6 報表處理模塊設(shè)計</p><p> 會員在注冊后,會將會員的相關(guān)信息記錄到書店的系統(tǒng)中。書店的書籍在銷
94、售時,也會將售出的書店的相關(guān)信息記錄到系統(tǒng)中,有時管理員可能需要將這些信息打印出來,因此采用了報表。</p><p> 在這個模塊中,主要是能夠?qū)崿F(xiàn)圖書售出的銷售單、會員信息報表的打印。會員信息的報表如圖3-10會員信息報表所示。</p><p> 圖3-10 會員信息報表</p><p> 會員報表實現(xiàn)過程如下:</p><p>
95、1、選擇“工程”/“添加Data Environment”命令,一個數(shù)據(jù)環(huán)境設(shè)計器將被添加到工程中,同時出現(xiàn)數(shù)據(jù)環(huán)境設(shè)計器窗口。</p><p> 2、添加Connection對象,用鼠標(biāo)右鍵單擊該對象,在彈出的快捷菜單中選擇“屬性”命令,將彈出“數(shù)據(jù)鏈接屬性”對話框。在“提供程序”選項卡中選擇“Microsoft OLE DB Privider for SQL Server”項。選擇“鏈接”選項卡。選擇要連接
96、的數(shù)據(jù)庫xiaozhu,然后單擊“測試連接”按鈕,測試數(shù)據(jù)庫連接,當(dāng)彈出“測試連接成功”提示對話框的時候,即說明數(shù)據(jù)庫連接成功。</p><p> 3、創(chuàng)建Command對象,并設(shè)置其屬性。在“通用”選項卡中設(shè)置數(shù)據(jù)源,這里選中“數(shù)據(jù)庫對象”單選按鈕,在其后下拉列表框中選擇“表”選項,“對象名稱”設(shè)置為huiyuanbiao。</p><p> 4、添加“Data Report”對象,
97、選擇“工程”/“添加Data Report”命令,在工程中添加一個數(shù)據(jù)報表。并且設(shè)置報表的標(biāo)頭信息,并把相應(yīng)的字段從Data Environment中的Command中拖到DataReport中的“細節(jié)”部分。按照此方法一次拖動其他字段和標(biāo)題。</p><p><b> 3.7 菜單設(shè)計</b></p><p> 在設(shè)計管理員界面時,因為管理員可以進行多種操作,因
98、此管理員界面中采用菜單編輯器來設(shè)計。如圖3-11菜單編輯器所示。</p><p> 圖3-11菜單編輯器</p><p><b> 第四章 系統(tǒng)調(diào)試</b></p><p> 編程不可能一次就能正常運行,就算在精通,在經(jīng)過嚴(yán)格測試和反復(fù)調(diào)試之后仍然可以發(fā)現(xiàn)錯誤。Visual Basic具有簡單性,對于編程者要求不高,正因此如此,往往可能會
99、出現(xiàn)更多的錯誤。編程出現(xiàn)錯誤都是難免的,因此在編程時不能粗心大意,而且要有相當(dāng)?shù)哪托模霈F(xiàn)錯誤時,要及時進行修正錯誤。測試與調(diào)試應(yīng)用程序是非常精細而煩瑣的工作,好在Visual Basic提供給程序員大量的程序測試與調(diào)試工具,大大加快測試與調(diào)試進程。因為程序只有在多次調(diào)試下,才可能逐漸完整。</p><p><b> 4.1 語法錯誤</b></p><p> 在
100、調(diào)試過程中,經(jīng)常會出現(xiàn)語法錯誤,語法錯誤是在程序中程序語句不符合Visual Basic的語法規(guī)定。例如:關(guān)鍵字不正確;If和End if不匹配等。</p><p> Visual Basic 6.0中提供了強大的語法檢查功能。在集成開發(fā)環(huán)境中輸入一行代碼語句后,另起一行后,如果有語法錯誤就會彈出錯誤提示信息,出錯行變成紅色。</p><p> 關(guān)鍵字通常在換行之后,如果關(guān)鍵字拼寫正確
101、,則對其進行大小寫處理,并且以藍色顯示。如若沒有改變,說明關(guān)鍵字拼寫錯誤,方便編程者在編程時隨時更改錯誤的關(guān)鍵字。</p><p><b> 4.2 運行錯誤</b></p><p> 程序在編譯通過并不代表沒有錯誤了,運行過程中程序還可能出現(xiàn)運行錯誤。程序員的疏忽,或者是其它一些操作,都可能導(dǎo)致運行錯誤。例如:加載不存在的文件,加載未安裝ActiveX控件等。這
102、些都有在程序運行時,才能發(fā)現(xiàn)哪些是錯誤的。</p><p> 在運行普通用戶注冊成為會員時,所有信息輸入完畢,點擊“注冊”,彈出地址列名無效提示,查看代碼和數(shù)據(jù)庫中的huiyuanbiao,發(fā)現(xiàn)huiyuanbiao中并沒有地址字段,將代碼中的地址改成住址之后,重新運行,可以成功注冊。</p><p> 在運行新書編目界面,進行新書編目時,輸入所有的信息點擊“添加”時,彈出將截斷二進制
103、字符提示,查看數(shù)據(jù)庫中tushuziliao中的書名字段,發(fā)現(xiàn)輸入的書名長度過長,將數(shù)據(jù)庫中的書名的char長度進行增加,以使較長書名的書籍相關(guān)信息也能添加到數(shù)據(jù)庫的tushuziliao中。</p><p> 4.3 SQL Server 程序配合調(diào)試</p><p> 此系統(tǒng)采用的是SQL Server數(shù)據(jù)庫,為了檢驗程序在運行時是否正確,在數(shù)據(jù)庫中設(shè)置一些數(shù)據(jù)記錄,運行后通過SQ
104、L Server查看程序的執(zhí)行結(jié)果,根據(jù)這些結(jié)果以發(fā)現(xiàn)和修改代碼中的錯誤。有時也需要在數(shù)據(jù)庫的記錄中設(shè)置一些錯誤數(shù)據(jù),例如字段為空等來檢驗程序中的代碼在運行時能否正確處理這些錯誤。</p><p><b> 謝辭</b></p><p> 在本次畢業(yè)設(shè)計中,我從指導(dǎo)老師 xx身上學(xué)到了很多東西。老師認真負責(zé)的工作態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神和深厚的理論水平都使我受益匪淺。
105、無論在理論上還是在實踐中,都給予我很大的幫助,使我的水平在原有的基礎(chǔ)上得到不少的提高。這對于我以后的工作和學(xué)習(xí)都有一種巨大的幫助,感謝他細心而又耐心的輔導(dǎo)。</p><p> 另外,感謝校方給予我這樣一次機會,能夠獨立地完成一個課題,并在這個過程當(dāng)中,給予我們各種方便,使我們在即將離校的最后一段時間里,能夠更多學(xué)習(xí)一些實踐應(yīng)用知識,增強了我們實踐操作和動手應(yīng)用能力,提高了獨立思考的能力。再一次對我的母校表示感謝
106、。 感謝在整個畢業(yè)設(shè)計期間幫助過我的老師和同學(xué),在大學(xué)生活即將結(jié)束的最后的日子里,在你們的幫助之下,讓我圓滿的完成了本次的課題。正是因為有了你們的幫助,才使我順利的完成此次畢業(yè)設(shè)計。</p><p> 最后,感謝所有在這次畢業(yè)設(shè)計中給予過我?guī)椭娜恕?lt;/p><p><b> 參考文獻</b></p><p> [1] 杜兆將.
107、《SQL Server數(shù)據(jù)庫管理與開發(fā)教程》. 北京大學(xué)出版社. 2009年8月</p><p> [2] 匡松,呂峻閩.《Visual Basic程序設(shè)計基礎(chǔ)教程》. 中國鐵道出版社. 2006年1月</p><p> [3] 丁寶康.《數(shù)據(jù)庫系統(tǒng)原理》.經(jīng)濟科學(xué)出版社. 2010年3月</p><p> [4] 劉彬彬 安劍. 《Visual Basic
108、從入門到精通》.清華大學(xué)出版社. 2010年7月</p><p> [5] 涂英, 廖恩陽 ,朱曉燕. 《Visual Basic程序設(shè)計》.清華大學(xué)出版社. 2010年2月</p><p><b> 附錄</b></p><p> 1、Form1.frm(用戶登陸界面)</p><p> 2、Form2.frm
109、(普通用戶界面)</p><p> 3、Form3.frm(注冊界面)</p><p> 4、Form4.frm(會員界面)</p><p> 5、Form5.frm(圖書查詢界面)</p><p> 6、Form6.frm(管理員界面)</p><p> 6、Form7.frm(售書界面)</p>
110、;<p> 7、Form8.frm(零售退貨界面)</p><p> 8、Form9.frm(會員管理)</p><p> 9、Form10.frm(密碼修改界面)</p><p> 10、Form11.frm(圖書編目和修改)</p><p> 11、form12.frm(數(shù)據(jù)備份)</p><p
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 網(wǎng)上書店銷售系統(tǒng)畢業(yè)論文
- 網(wǎng)上書店銷售系統(tǒng)-畢業(yè)論文
- 畢業(yè)論文——網(wǎng)上書店銷售系統(tǒng)
- 網(wǎng)絡(luò)書店銷售管理系統(tǒng)——畢業(yè)論文
- 畢業(yè)論文——網(wǎng)絡(luò)書店銷售管理系統(tǒng)
- 網(wǎng)上書店銷售管理系統(tǒng)【畢業(yè)論文】
- 網(wǎng)絡(luò)書店銷售管理系統(tǒng)——畢業(yè)論文
- 網(wǎng)上書店銷售系統(tǒng)設(shè)計與實現(xiàn)-畢業(yè)論文
- 書店系統(tǒng)設(shè)計畢業(yè)論文
- 書店管理系統(tǒng)畢業(yè)論文
- 畢業(yè)論文----書店管理系統(tǒng)
- 畢業(yè)論文---書店管理系統(tǒng)
- vb書店管理系統(tǒng)畢業(yè)論文--書店管理系統(tǒng)
- 網(wǎng)上書店銷售系統(tǒng)設(shè)計與實現(xiàn)畢業(yè)論文(設(shè)計)
- 畢業(yè)論文——某書店圖書銷售管理系統(tǒng)的設(shè)計與實現(xiàn)
- 網(wǎng)上書店系統(tǒng)畢業(yè)論文
- 網(wǎng)上書店系統(tǒng)畢業(yè)論文
- 網(wǎng)上書店畢業(yè)論文---網(wǎng)上書店系統(tǒng)
- 網(wǎng)上書店系統(tǒng)畢業(yè)論文
- 畢業(yè)論文---網(wǎng)上書店系統(tǒng)
評論
0/150
提交評論