零售藥店管理系統(tǒng)的設計與實現(xiàn)
《零售藥店管理系統(tǒng)的設計與實現(xiàn)》由會員分享,可在線閱讀,更多相關《零售藥店管理系統(tǒng)的設計與實現(xiàn)(41頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、基于基于 WEBWEB 的零售藥店管理系統(tǒng)的設計與實現(xiàn)的零售藥店管理系統(tǒng)的設計與實現(xiàn) 摘要:隨著我國市場經濟的發(fā)展和人們對醫(yī)藥產品需求的迅速增加,醫(yī)藥行業(yè) 正處于一個高速發(fā)展的時期,因以往藥店主要是以人工記錄模式登記藥品信息, 銷售信息等,因此對于管理藥品信息和數(shù)據(jù)紛亂復雜,整理統(tǒng)計費力費時。要 做好對藥店的管理,藥店就必須快速準確地獲取自己所需的信息,這就要求及 時統(tǒng)計數(shù)據(jù)并方便查看,以及對藥品的數(shù)據(jù)信息進行維護,基于此我們開發(fā)了 零售藥店管理信息系統(tǒng)。 本系統(tǒng)基本遵循軟件工程方法論進行系統(tǒng)分析、總體設計、詳細設計和軟 件測試。采用 ASP.NET 技術作為創(chuàng)建應用程序的方式,以 C#作為編
2、程語言,采 用 SQL Server 數(shù)據(jù)庫作為后臺數(shù)據(jù)庫。它是基于 Browser/Server 結構下形成 的數(shù)據(jù)驅動的 Web 應用程序。 關鍵詞:ASP.NET; 零售藥店; SQL Server;藥品信息 The web-based retail pharmacy management system of design and implementation Abstract:As Chinas market economy development and peoples demand for the rapid increase in pharmaceutical products,
3、 the pharmaceutical industry is in a period of rapid growth, mainly due to the past, pharmacy drug information manual recording mode, registration, sales information, so the drugs for the management of information and chaotic data, collate statistics laborious and time-consuming. To make the managem
4、ent of the pharmacy, pharmacies must quickly and accurately obtain the information they need, which requires timely statistical data and for easy viewing, as well as data on maintenance drugs, on this basis, we developed a retail pharmacy management information system. The system basically follows t
5、he software engineering methodology for system analysis, overall design, detailed design and software testing. It use of technology to create the application, # as a programming language, the database as the background database server. It is based on Browser / Server structure, formed under the data
6、-driven Web applications. Key words: ASP.NET, retail pharmacies, SQL Server, drug information 目目 錄錄 第第 1 章章 概概 述述1 1.1 開發(fā)背景1 1.2 項目提出的意義1 1.3 系統(tǒng)的開發(fā)方法2 1.4 系統(tǒng)開發(fā)工具2 1.4.1 IIS 簡介2 1.4.2 C#簡介.3 1.4.3 ASP.NET 簡介.3 1.4.4 數(shù)據(jù)庫簡介.3 第第 2 章章 需求分析需求分析5 2.1 可行性分析5 2.2 數(shù)據(jù)庫需求分析6 2.3 系統(tǒng)目標6 2.3.1 合理的設計數(shù)據(jù)庫.6 2.3.2 設計
7、出友好的界面.6 2.4 本系統(tǒng)所實現(xiàn)功能6 2.4.1 管理員管理模塊應實現(xiàn)的功能.7 2.4.2 操作員管理模塊應實現(xiàn)的功能.7 第第 3 章章 系統(tǒng)總體分析系統(tǒng)總體分析8 3.1 基本簡介8 3.2 運行環(huán)境8 3.3 數(shù)據(jù)字典8 3.4 ER 圖 10 3.5 主要模塊流程圖13 3.5.1 操作員維護流程圖13 3.5.2 藥品信息管理流程圖13 第第 4 章章 系統(tǒng)程序實現(xiàn)系統(tǒng)程序實現(xiàn)15 4.1 LOGIN(系統(tǒng)主界面).15 4.2 管理員管理模塊16 4.2.1 操作員信息維護列表.16 4.2.2 藥品信息管理模塊.18 4.2.3 庫存信息設置.22 4.2.4 進貨信息
8、查詢.24 4.2.5 藥品銷售日報表.25 4.3 操作員管理模塊27 4.3.1 藥品進貨管理.27 4.3.2 藥品收銀管理.29 第第 5 章章 軟件測試軟件測試32 5.1 測試的概述32 5.1.1 測試的概念及意義.32 5.1.2 測試的特性.33 5.1.3 測試的重要性及范圍.33 5.2 系統(tǒng)測試34 結論和總結結論和總結35 致謝致謝36 參考文獻參考文獻37 第 1 章 概 述 1.1 開發(fā)背景 在現(xiàn)今的社會中,醫(yī)藥行業(yè)是一個發(fā)展迅速的行業(yè),每個不同的藥店管理 機構都要有適合自己業(yè)務的軟件管理系統(tǒng),這樣才能有效的提高工作效率,不 斷地擴大企業(yè)的經營規(guī)模。而康泰藥店現(xiàn)在
9、并沒有適合自己的管理系統(tǒng),目前 仍需要手工作業(yè)管理工作,例如在藥品的庫存管理方面有很多不足,藥品入庫 時需要手工記錄入庫數(shù)量,這種記錄相比較而言也許還會容易些,但當進行實 際庫存量和應有庫存量進行核對時非常復雜。不僅在這方面有很大的欠缺,在 員工管理方面也存在許多不足,所以要想繼續(xù)發(fā)展就必須開發(fā)一個適合該藥店 的管理系統(tǒng)。 1.2 項目提出的意義 為了提高工作效率、解決現(xiàn)存系統(tǒng)中的問題,我們急需開發(fā)一個新的、適 合實際情況需要的管理系統(tǒng),有了這樣一個管理系統(tǒng),不但能解決現(xiàn)存的管理 問題,還能有效的減少人工作業(yè)。 在應用了該管理系統(tǒng)后,原有的手工記錄將完全被取代,這不僅僅可以提 高工作效率,而且
10、還可以提高工作的準確性,減少不必要的損失;應用了該系 統(tǒng)后,系統(tǒng)的智能化的功能可以為藥店提供需要進貨的藥品清單,這樣可以更 加方便、及時的了解到需要采購的藥品,及時進貨,避免了藥品的缺貨現(xiàn)象, 從另一個角度考慮,這樣還可以增加營業(yè)額,提高收入,為進一步發(fā)展擴大業(yè) 務做好充分準備;在應用了該系統(tǒng)后,可以提高全體工作人員的自身素質,在 系統(tǒng)的各個模塊中,需要不同的工作人員來進行管理,在對現(xiàn)代化的軟件系統(tǒng) 管理和運用的同時會發(fā)現(xiàn)許多自身不太了解、甚至一無所知的問題,為了解決 這些問題,更好的投入工作,員工會利用自己的業(yè)余時間學習、充實自己,同 時也會走出一些思想誤區(qū),提高自身修養(yǎng)。該管理系統(tǒng)對藥店的
11、影響及未來發(fā) 展起著至關重要的作用。 1.3 系統(tǒng)的開發(fā)方法 目前,網(wǎng)絡應用軟件運行的模式主要有二類:Client/server 模式, Browser/Web 模式。前者主要的缺點是維護、升級較麻煩,后者是近幾年伴隨 Internet 迅速發(fā)展起來的一種技術,它與客戶/服務器方式類似,客戶端是一 個標準的瀏覽器,服務器端是 Web Server ,而 Web Server 與數(shù)據(jù)庫和應用服 務器的緊密結合,使得這種模式的應用范圍不斷擴大,它已不僅僅用于網(wǎng)上查 詢,有很多部門的業(yè)務系統(tǒng)、企業(yè)的 MIS 系統(tǒng)紛紛采用這種模式,它的主要優(yōu) 點是便于擴充應用、升級維護簡便。 另外,零售藥店管理系統(tǒng)的
12、軟件也必將不斷的更新;同時軟件產品本身就 要經過一個不斷自我完善的過程。 基于上述考慮,用 Browser/Web 模式來設計零售藥店管理系統(tǒng)比較合適, 服務器端我們采用 SQLServer 數(shù)據(jù)庫系統(tǒng)和 ASP 組件來構成評定維護的應用服 務系統(tǒng);客戶端采用瀏覽器來完成在線評定的全過程,同時可進行遠程系統(tǒng)維 護和管理。 1.4 系統(tǒng)開發(fā)工具 該系統(tǒng)在 Microsoft 2000 Server 環(huán)境中開發(fā),采用了目前非常流行的 Browser /server 三層結構軟件構造技術,前臺頁面系統(tǒng)采用 ASP.NET 開發(fā), 后臺管理系統(tǒng)采用 SQL server 2000 作為數(shù)據(jù)庫系統(tǒng)(主要
13、采用了 C#語言) 1.4.1 IIS 簡介 IIS 是 Internet Information Server 的縮寫,它是微軟公司主推的服務 器,最新的版本是 Windows2003 里面包含的 IIS 6,IIS 與 Windows NT Server 完全集成在一起,因而用戶能夠利用 Windows NT Server 和 NTFS(NT File System,NT 的文件系統(tǒng))內置的安全特性,建立強大,靈活而安全的 Internet 和 Intranet 站點。IIS 支持 ISAPI,使用 ISAPI 可以擴展服務器功能,而使用 ISAPI 過濾器可以預先處理和事后處理儲存在 I
14、IS 上的數(shù)據(jù)。 1.4.2 C#簡介 現(xiàn)在 ASP.NET 支持的開發(fā)語言包括 VB.NET、C#.NET、JSCRIPT.NET、VC+.NET 以及其它.NET Framework 所支持的 語言。我們所做的學生檔案管理系統(tǒng)是用 C#語言。所以,在這里我介紹一下 C# 語言。 C# (C sharp)是一種最新的、面向對象的編程語言。它使得程序員可以快 速地編寫各種基于 Microsoft .NET 平臺的應用程序,Microsoft .NET 提供了 一系列的工具和服務來最大程度地開發(fā)利用計算與通訊領域。 1.4.3 ASP.NET 簡介 ASP.NET 有以下技術特點: Micros
15、oft .NET 平臺的出現(xiàn)在應用程序開發(fā)這一領域開創(chuàng)了一個新時代, 它將推動下 一代 Internet 的進步。作為 Microsoft .NET 平臺的一部分, ASP.NET 是一個革命性的編程框架,它實現(xiàn)了企業(yè)級 Web 應用程序的快速開發(fā)。 它提供了最簡便、最具有擴展能力的方式來開發(fā)、部署和運行可以將任何瀏覽 器或設備作為目標的 Web 應用程序。實際上,這只是令 ASP.NET 成為程序員創(chuàng) 建 Web 應用程序的首選的眾多特色中的一小部分。 除了常見的 Web 應用程序,利用 ASP.NET 還可以創(chuàng)建其他的一些類型,這 就使我們的應用程序的范圍可以延伸到新的客戶和業(yè)務合作伙伴。
16、 對程序員來說,部署服務器應用程序一直是一件很痛苦的事。不過,有了 ASP.NET,程序員根本不必擔心這個問題,因為 ASP.NET 大大簡化了部署過程。 要部署 Web 應用程序,只要把它復制到 Web 服務器上就可以了。 除了提供了豐富的程序員這方面的經驗,ASP.NET 還提供了豐富的用戶經 驗。ASP.NET Web 應用程序比傳統(tǒng)的 ASP 應用程序速度要快很多,因為 ASP.NET 令我們可以使用經過編譯的編程語言。因此,ASP.NET 應用程序不需要明確的 編譯步驟,結果便是執(zhí)行得更快了。 1.4.4 數(shù)據(jù)庫簡介 隨著科學技術的進步,信息已成為各行各業(yè)的重要資源。數(shù)據(jù)庫以其強大
17、的操作和管理功能成為高速信息表達的途經。據(jù)我所知,數(shù)據(jù)庫的類型有很多, 如:“SQL server“, “vf“,“framework“,“access“, “Oracle“MySQL“SYBASE“DB2“等等,然而本軟件選擇了用 SQL Server2000 來 作為數(shù)據(jù)庫軟件。 關于 SQL Server2000 的介紹: Microsoft SQL Server2000 是由 Microsoft 公司開發(fā)的,在 Microsoft SQL Server 的發(fā)展歷程中,有兩版本具有重要的意義。那就是在 1996 年推出 的 SQL Server6.5 和在 2000 年 8 月推出的 S
18、QL Server2000 版本。6.5 版本使 SQL Server 得到了廣泛的應用,而 2000 版本在功能和易用性上有很大的增強, 并推出了簡體中文版,它包括企業(yè)版,標準版,開發(fā)版和個人版 4 個版本。 第 2 章 需求分析 要實現(xiàn)一個軟件系統(tǒng),首先應該進行需求分析,這樣才能令設計出的軟件 滿足用戶的各項功能。下面就對零售藥店管理系統(tǒng)的設計進行需求分析。 2.1 可行性分析 可行性分析(Feasibility Analysis)也稱為可行性研究,是在系統(tǒng)調查 的基礎上,針對新系統(tǒng)的開發(fā)是否具備必要性和可能性,對新系統(tǒng)的開發(fā)從技 術、經濟、社會的方面進行分析和研究,以避免投資失誤,保證新
19、系統(tǒng)的開發(fā) 成功??尚行匝芯康哪康木褪怯米钚〉拇鷥r在盡可能短的時間內確定問題是否 能夠解決。該系統(tǒng)的可行性分析包括以下幾個方面的內容。 (1)經濟可行性:主要是對項目的經濟效益進行評價,本系統(tǒng)開發(fā)經費在 經濟上是可以接受的,并且本系統(tǒng)實施后可以顯著節(jié)約時間、提高工作效率。 所以本系統(tǒng)在經濟上是可行的。 (2)技術上的可行性:技術上的可行性分析主要分析技術條件能否順利完 成開發(fā)工作,硬、軟件能否滿足開發(fā)者的需要等。該管理系統(tǒng)采用了 Browser/Server 模式進行開發(fā)。Browser/Server 體系結構緊密的結合了 Internet/Intranet 技術,是技術發(fā)展的大勢所趨,它把應
20、用系統(tǒng)帶入了一個 嶄新的發(fā)展時代。數(shù)據(jù)庫服務器 SQL 數(shù)據(jù)庫,它能夠處理大量數(shù)據(jù),同時保持 數(shù)據(jù)的完整性并提供許多高級管理功能。它的靈活性、安全性和易用性為數(shù)據(jù) 庫編程提供了良好的條件。因此,系統(tǒng)的軟件開發(fā)平臺已成熟可行。硬件方面, 科技飛速發(fā)展的今天,硬件更新的速度越來越快,容量越來越大,可靠性越來 越高,價格越來越低,其硬件平臺完全能滿足此系統(tǒng)的需要。 綜上所述,此系統(tǒng)開發(fā)目標已明確,在技術和經濟等方面都可行,并且投 入少、見效快。因此該系統(tǒng)的開發(fā)是完全可行的。 2.2 數(shù)據(jù)庫需求分析 數(shù)據(jù)庫在零售藥店管理系統(tǒng)中占有極其重要的地位,數(shù)據(jù)庫結構設計的好 壞將直接對應用系統(tǒng)的效率以及實現(xiàn)的效
21、果產生影響。合理的數(shù)據(jù)庫結構設計 可以提高數(shù)據(jù)存儲的效率,保證數(shù)據(jù)的完整和一致。合理的數(shù)據(jù)庫也有利于程 序的實現(xiàn)。 設計數(shù)據(jù)庫系統(tǒng)時應首先充分了解用戶的各個方面的需求,包括現(xiàn)有的以 及將來可能增加的需求。 用戶的需求具體體現(xiàn)在對各種信息的提供、保存、更新和交流,這就要求 數(shù)據(jù)庫結構能充分滿足各種信息的輸出和輸入。 2.3 系統(tǒng)目標 我們一般設計系統(tǒng)都要完成以下的幾個要求,以便于用戶進行操作。這樣 才能使系統(tǒng)易學易用。 2.3.1 合理的設計數(shù)據(jù)庫 盡量合理地減少數(shù)據(jù)庫數(shù)據(jù)的冗余,使重復的數(shù)據(jù)保持在最小限度,這樣 將不必要的多占用存儲空間,減少產生混亂影響的危險,還能提高計算機的運 行速度。 2
22、.3.2 設計出友好的界面 界面的友好與否是用戶評價一個軟件優(yōu)劣的重要方面之一,使用戶有一個 良好的心情。 2.4 本系統(tǒng)所實現(xiàn)功能 本系統(tǒng)主要劃分為兩層用戶角色功能模塊,管理員、操作員;管理員主要 是對于系統(tǒng)的基本信息維護和綜合信息管理幾個模塊,主要功能包括:藥品類 別、藥品信息管理,藥品庫存設置管理以及藥品日常進貨和銷售查詢信息管理 等;操作員主要是管理藥店的日常藥品進貨和銷售工作,并可以根據(jù)庫存信息 及時的控制藥品的銷售和進貨,從而保證藥品流通正常運行的功能操作。 2.4.1 管理員管理模塊應實現(xiàn)的功能 (1)操作員信息管理:對操作員信息進行基本的維護,包括帳號,密碼等 多項信息,密碼導
23、師登陸系統(tǒng)以后自行修改,本模塊可以添加、修改以及刪除 操作員信息。 (2)藥品類別管理:對于藥店銷售的藥品類別進行綜合管理操作。 (3)藥品信息管理:管理藥店銷售的藥品信息,藥品信息主要包括藥品名 稱、廠家、拼音碼、有效期、批號、規(guī)格等多項信息,本模塊可以添加、修改 和刪除藥品信息。 (4)庫存信息設置:對于庫存的藥品信息可以進行庫存設置,例如設置庫 存的上限、下限以及當前庫存數(shù)值等功能。 (5)進貨查詢:查詢顯示藥品進貨信息以及進貨時間的相關內容 (6)藥品銷售日報表:查詢顯示藥品銷售的日常收銀信息。 (7)藥品銷售月報表:統(tǒng)計顯示各個月份的藥品銷售信息。 2.4.2 操作員管理模塊應實現(xiàn)的
24、功能 操作員管理模塊主要包括系統(tǒng)管理、日常業(yè)務管理、查詢統(tǒng)計管理等功能模塊, 具體描述如下: (1)藥品進貨管理:管理日常的藥品進貨信息,主要包括進貨時間、供應 商、進貨數(shù)量、單價、進貨金額等,對于進貨錯誤的進貨記錄可以進行作廢操 作。 (2)藥品收銀管理:藥品日常的收銀管理,主要內容包括日期、客戶、數(shù) 量、單價、金額、折扣以及實扣款等,收銀的藥品不提供任何作廢 退貨的操作。 (3)庫存信息查詢:查詢顯示藥品的庫存信息,庫存信息包括庫存商品的 保質期、庫存上限、庫存下限以及庫存量等內容。 (4)藥品信息查詢:查詢顯示藥品基本信息,包括保質期、藥品類別、規(guī) 格、批號等內容。 第 3 章 系統(tǒng)總體
25、分析 3.1 基本簡介 本系統(tǒng)主要通過維護藥品類別、藥品信息等功能,來進行藥品的日常進貨 和銷售操作,并管理藥品的庫存操作等。 3.2 運行環(huán)境 為了保證系統(tǒng)運行的效率和可靠性,系統(tǒng)服務器端應具有較高的軟硬件配 置,客戶端的要求不是很高。此應用程序可廣泛運行于國際互聯(lián)網(wǎng)即 Internet,也可適用于內部的局域網(wǎng)。其運行要求如下: 軟件環(huán)境: 客戶端: Windows95/98/2000/XP,Internet Explorer(IE)等 服務器端: Windows2000/XP,Internet Information Server (IIS)4.0 及其以上版本,IE 等。 數(shù)據(jù)庫:SQL
26、 server,運行于服務器端。 硬件環(huán)境: 服務器 CPU:PIII 500 以上 ,內存:256M 以上 客戶機 CPU:P200MMX 以上,內存:32M 以上 3.3 數(shù)據(jù)字典 操作員 序號字段名類型長度索引備注 1. 帳號 Varchar50P 2. 密碼 Varchar50 3. 姓名 Varchar50 4. 電話 Varchar50 5. 住址 Varchar50 6. 郵箱 Varchar50 7. 類別 Varchar50 管理員 操作員 藥品類別 序號字段名類型長度索引備注 1. 代碼 IntP 2. 類別名稱 Varchar50 藥品信息 序號字段名類型長度索引備注 1
27、. 代碼 IntP 不能重復 2. 藥品名稱 Varchar50 3. 廠家 Varchar50 4. 拼音碼 Varchar50 5. 單位 Varchar50 6. 有效期 Date 7. 批號 Varchar50 8. 規(guī)格 Varchar50 9. 進貨價格 Float 10. 銷售價格 Float 11. 備注 Varchar500 12. 類別代碼 Int 關聯(lián) 藥品類別 進貨單 序號字段名類型長度索引備注 1. 進貨單號 Varchar50PXYyyymmddhhmmss 2. 進貨時間 DateTime 3. 供應商 Varchar50 4. 藥品代碼 Int 關聯(lián) 藥品代碼
28、5. 進貨數(shù)量 Int 6. 單價 Float 7. 進貨金額 Float 8. 經辦人 Varchar50 9. 備注 Varchar500 庫存 序號字段名類型長度索引備注 1. 藥品代碼 Int 關聯(lián) 進貨單 2. 庫存數(shù)量 Float 3. 庫存上限 Int 4. 庫存下限 Int 收銀 序號字段名類型長度索引備注 1. 零售單號 Varchar50PXYyyymmddhhmmss 2. 日期 DateTime50 3. 藥品代碼 Int 4. 數(shù)量 Int 5. 金額 Float 6. 折扣 Float 7. 實收款 Float 8. 客戶 Varchar50 9. 備注 Varch
29、ar50 3.4 ER 圖 藥品類別藥品信息1包含N 進貨單 進貨 11 收銀 銷售 1 1 庫存1存儲1 圖 3.1 ER 圖 把概念結構設計轉化為邏輯結構設計為: 藥品信息實體屬性:代碼、藥品名稱、廠家、拼音碼、單位、有效期、批 號、規(guī)格、進貨價格、銷售價格、備注、類別代碼。 藥品信息實體屬性圖如圖所示 藥品信息 藥品名稱 廠家 拼音碼 單位 代碼 有效期 批號 進貨價格 規(guī)格銷售價格 備注類別代碼 圖 3.2 藥品信息實體屬性圖 收銀信息實體屬性:零售單號、日期、藥品代碼、數(shù)量、金額、折扣、實 收款、客戶、備注。 收銀屬性圖如圖所示 收銀 零售單號日期 藥品代碼 備注 數(shù)量 折扣 客戶
30、實收款 金額 圖 3.3 收銀實體屬性圖 其他的實體屬性再此不一一列出。 綜上所述,零售藥店管理系統(tǒng)功能需求可以通過圖 3.4 簡要表示。 藥品零售管理系統(tǒng) 系統(tǒng)管理 日常業(yè)務管理 基礎信息管理 系統(tǒng)管理 管理員模塊操作員模塊 查詢信息管理 庫存信息查詢 藥品信息查詢 業(yè)務信息管理 綜合信息管理 修改密碼 操作員管理 藥品類別管理 藥品信息管理 修改密碼 藥品進貨管理 藥品收銀管理 庫存信息設置 進貨信息查詢 銷售日報表 銷售月報表 圖 3.2 系統(tǒng)功能需求圖 3.5 主要模塊流程圖 3.5.1 操作員維護流程圖 操作員維護 添加操作 員 必須填入項 目是否為空 保存 否 是 新的操作員添 加
31、完成 修改操作 員 必須填入項 目是否為空 保存 否 操作員修改 完成 是 刪除操作 員 點操作員 名稱后邊 對應的刪 除按鈕 刪除該操 作員 圖 3.4 操作員維護流程圖 3.5.2 藥品信息管理流程圖 藥品信息維護 添加藥品 信息 必須填入 是否為空 保存 否 是 新的藥品信息 添加完成 修改藥品 信息 必須填入 是否為空 保存 否 藥品信息修 改完成 是 刪除藥品 信息 點藥品信 息名稱后 邊對應的 刪除按鈕 刪除該藥 品信息 搜索 顯示查詢結構 列表 圖 3.5 藥品信息管理流程圖 其他功能流程圖與之類似,不再一一闡述! 第 4 章 系統(tǒng)程序實現(xiàn) 4.1 login(系統(tǒng)主界面) 在
32、IE 里運行本系統(tǒng),出現(xiàn)系統(tǒng)的主界面,包括系統(tǒng)登陸、選擇角色。如圖: 圖 4.1 系統(tǒng)主界面 其實現(xiàn)相關代碼如下: protected void IbtDL_Click(object sender, ImageClickEventArgs e) DataTable dt = new DataTable(); switch (RadioButtonList1.SelectedValue) case “管理員“: dt = DataControl.GetData(“select * from 管理員 where 帳號=“ + txtUser.Text + “ and 密碼 =“ + txtPwd.
33、Text + “); if (dt.Rows.Count 0) this.drYPLB.SelectedValue = tmpda.Rows0“類 別代碼“.ToString(); this.txtYPMC.Text = tmpda.Rows0“藥品名稱“. ToString(); this.txtCJ.Text = tmpda.Rows0“廠家“. ToString(); this.txtPYM.Text = tmpda.Rows0“拼音碼“. ToString(); this.txtDW.Text = tmpda.Rows0“單位“. ToString(); this.txtYXQ.Tex
34、t = tmpda.Rows0“有效期“. ToString(); this.txtPH.Text = tmpda.Rows0“批號“. ToString(); this.txtGG.Text = tmpda.Rows0“規(guī)格“. ToString(); this.txtJHJG.Text = tmpda.Rows0“進貨價格“. ToString(); this.txtXSJG.Text = tmpda.Rows0“銷售價格“. ToString(); this.txtBZ.Text = tmpda.Rows0“備注“. ToString(); / / 保存 / / / protected
35、void btnAdd_Click(object sender, ImageClickEventArgs e) string strErr = “; if (this.txtYPMC.Text = “) strErr += “藥品名稱不能為空!n“; if (strErr != “) ResponseMessage(this, strErr); return; /根據(jù)標志判斷是添加還是修改的操作 保存商品信息 if (Request.QueryString“ID“ != null) DataControl.Execute(“UPDATE 藥品信息 set 藥品名稱 = “+txtYPMC.Te
36、xt+“,廠家 = “+txtCJ.Text+“,拼音碼 = “+txtPYM.Text+“,單位 = “+txtDW.Text+“,有效期 = “+txtYXQ.Text+“,批號 =“+txtPH.Text+“,規(guī)格 = “+txtGG.Text+“,進貨價格 = “+txtJHJG.Text+“,銷售價格 = “+txtXSJG.Text+“,備注 = “+txtBZ.Text+“,類別代碼 = “+drYPLB.SelectedValue+“ WHERE 代碼=“ + Request.QueryString“ID“ + “); else DataControl.Execute(“INS
37、ERT INTO 藥品信息 ( 藥品名 稱 ,廠家 ,拼音碼 ,單位 ,有效期 ,批號 ,規(guī)格 ,進貨價格 ,銷售價格 ,備注 ,類別代碼 ) VALUES (“+txtYPMC.Text+“,“+txtCJ.Text+“,“+txtPYM.Text+“,“+txtDW.Text+ “,“+txtYXQ.Text+“,“+txtPH.Text+“,“+txtGG.Text+“,“+txtJHJG.Text +“,“+txtXSJG.Text+“,“+txtBZ.Text+“,“+drYPLB.SelectedValue+“)“); Page.ClientScript.RegisterStart
38、upScript(this.GetType(), “info“, “alert(保存成功!); window.location.href=GZRYPXList.aspx;“); 4.2.3 庫存信息設置 此模塊主要設置藥品的庫存信息,可以設置藥品的庫存上限,下限以及庫 存數(shù)量等。如圖: 圖 4.6 庫存設置列表 圖 4.7 庫存設置頁面 其實現(xiàn)相關代碼如下: string strErr = “; if (this.txtYPMC.Text = “) strErr += “藥品名稱不能為空!n“; if (strErr != “) ResponseMessage(this, strErr); r
39、eturn; DataControl.Execute(“UPDATE 庫存 set 庫存數(shù)量 = “ + txtKCSL.Text + “,庫存上限 = “ + txtSX.Text + “,庫存下限 = “ + txtXX.Text + “ WHERE 藥品代碼=“ + Request.QueryString“ID“ + “); Page.ClientScript.RegisterStartupScript(this.GetType(), “info“, “alert(庫存調整完成!); window.location.href=KCList.aspx;“); 4.2.4 進貨信息查詢 此頁
40、面主要是查詢藥店的進貨信息,可以根據(jù)不同的條件查詢。如圖: 圖 4.8 進貨信息查詢 其實現(xiàn)相關代碼如下: protected void Page_Load(object sender, EventArgs e) if (!IsCallback) BindResult(); #region 數(shù)據(jù)綁定 / /綁定列表 / private void BindResult() /組合查詢條件 DataTable dt = DataControl.GetData(“select * from V_進貨 where 藥品名稱 like %“ + this.TextBox1.Text + “% and 進
41、貨單號 like %“+ TextBox2.Text +“% “); if (dt != null) this.gvData.DataKeyNames = new string “進貨單號“ ; this.gvData.DataSource = dt; this.gvData.DataBind(); ShowStats(dt.Rows.Count.ToString(); 4.2.5 藥品銷售日報表 此頁面是顯示銷售藥品的信息列表,可以根據(jù)條件查詢顯示銷售藥品信息。 如圖: 圖 4.9 藥品銷售日報表 其實現(xiàn)相關代碼如下: protected void Page_Load(object send
42、er, EventArgs e) if (!IsCallback) BindResult(); #region 數(shù)據(jù)綁定 / /綁定列表 / private void BindResult() /組合查詢條件 DataTable dt = DataControl.GetData(“select * from V_收銀 where 藥品名稱 like %“ + this.TextBox1.Text + “% and 零售單號 like %“+ TextBox2.Text +“% “); if (dt != null) this.gvData.DataKeyNames = new string “
43、零售單號“ ; this.gvData.DataSource = dt; this.gvData.DataBind(); ShowStats(dt.Rows.Count.ToString(); 4.3 操作員管理模塊 操作員主要功能是處理日常的進貨和收銀業(yè)務具體介紹如下: 4.3.1 藥品進貨管理 此頁面主要是登記日常的藥品進貨信息,藥品進貨單據(jù)主要包括進貨單號、 進貨時間、供應商、進貨數(shù)量、單價、進貨金額等內容。對于進貨錯誤的單據(jù) 提供刪除的功能。具體如圖: 圖 4.10 藥品進貨列表 圖 4.11 藥品進貨單據(jù) 其實現(xiàn)相關代碼如下: / / 保存 / / / protected void
44、btnAdd_Click(object sender, ImageClickEventArgs e) DataTable dt = new DataTable(); dt = DataControl.GetData(“select * from V_庫存 where 庫存上限 0) Page.ClientScript.RegisterStartupScript(this.GetType(), “info“, “alert(此藥品不允許進貨當前的數(shù)量,庫存上限超出!); “); return; DataControl.Execute(“INSERT INTO 進貨單 ( 進貨單號 ,進貨 時間
45、,供應商 ,藥品代碼 ,進貨數(shù)量 ,單價 ,進貨金額 ,經辦人 ,備注 ) VALUES (“+txtJHD.Text+“,“+txtJHSJ.Text+“,“+txtGYS.Text+“,“+drYP.Select edValue+“,“+txtJHSL.Text+“,“+txtDJ.Text+“,“+txtJE.Text+“,“+txtJBR.Te xt+“,“+txtBZ.Text+“)“); DataControl.Execute(“UPDATE 庫存 set 庫存數(shù)量 = 庫存數(shù)量 + “ + txtJHSL.Text + “ WHERE 藥品代碼=“ + drYP.Selected
46、Value + “); Page.ClientScript.RegisterStartupScript(this.GetType(), “info“, “alert(進貨完成!); window.location.href=SBBYList.aspx;“); protected void btnCancel_Click(object sender, ImageClickEventArgs e) Response.Redirect(“SBBYList.aspx“); protected void txtJHSL_TextChanged(object sender, EventArgs e) tr
47、y this.txtJE.Text = Convert.ToString(Convert.ToDecimal(this.txtDJ.Text) * (Convert.ToDecimal(this.txtJHSL.Text); catch this.txtJE.Text = “; protected void drYP_SelectedIndexChanged(object sender, EventArgs e) DataTable dt = new DataTable(); dt=DataControl.GetData(“select * from V_庫存 where 代碼 =“+drYP
48、.SelectedValue); if (dt.Rows.Count 0) this.txtDJ.Text = dt.Rows0“進貨價格“.ToString(); 4.3.2 藥品收銀管理 此頁面主要是登記日常的藥品收銀信息,藥品收銀單據(jù)主要包括零售單號、 日期、客戶、數(shù)量、單價、金額、折扣、實收款等內容。藥品屬于特殊商品, 因此系統(tǒng)沒有只做其他的退貨 換貨功能。具體如圖: 圖 4.12 藥品收銀管理 其實現(xiàn)相關代碼如下: protected void Page_Load(object sender, EventArgs e) / 在此處放置用戶代碼以初始化頁面 if (!Page.IsPo
49、stBack) /綁定類別列表 if (!Page.IsPostBack) /綁定類別列表 drYP.DataTextField = “藥品“; drYP.DataValueField = “代碼“; drYP.DataSource = DataControl.GetData(“select 代碼,藥 品名稱 + ( + 廠家 + ) as 藥品 from V_庫存“); drYP.DataBind(); this.txtLSDH.Text = Guid.NewGuid().ToString().Replace(“-“, “); / / 保存 / / / protected void btnA
50、dd_Click(object sender, ImageClickEventArgs e) DataTable dt = new DataTable(); dt = DataControl.GetData(“select * from V_庫存 where 庫存下限 庫存數(shù)量 - “ + Convert.ToDecimal(this.txtSL.Text) + “ and 代碼 =“ + drYP.SelectedValue); if (dt.Rows.Count 0) Page.ClientScript.RegisterStartupScript(this.GetType(), “info
51、“, “alert(此藥品銷售以后超出庫存下限,不能銷售!); “); return; DataControl.Execute(“INSERT INTO 收銀 ( 零售單號 ,日期 ,藥品代碼 ,數(shù)量 ,金額 ,折扣 ,實收款 ,客戶 ,備注 ) VALUES (“+txtLSDH.Text+“,“+txtRQ.Text+“,“+drYP.SelectedValue+“,“+txtSL.T ext+“,“+txtJE.Text+“,“+txtZK.Text+“,“+txtSSK.Text+“,“+txtKH.Text+“, “+txtBZ.Text+“)“); DataControl.Exec
52、ute(“UPDATE 庫存 set 庫存數(shù)量 = 庫存數(shù)量 - “ + txtSL.Text + “ WHERE 藥品代碼=“ + drYP.SelectedValue + “); Page.ClientScript.RegisterStartupScript(this.GetType(), “info“, “alert(收銀完成!); window.location.href=window.location.href;“); 第 5 章 軟件測試 測試是系統(tǒng)開發(fā)時期最后一個階段,是保證軟件質量的重要手段。軟件測 試就是在受控制的條件下對系統(tǒng)或應用程序進行操作并評價操作結果的過程,所 謂控制
53、條件應包括正常條件與非正常條件。軟件測試過程中應該故意地去促使 錯誤的發(fā)生,也就是事情在不該出現(xiàn)的時候出現(xiàn)或者在應該出現(xiàn)的時候沒有出 現(xiàn)。從本質上說,軟件測試是“探測“,在“探測“中發(fā)現(xiàn)軟件的毛病。 5.1 測試的概述 5.1.1 測試的概念及意義 測試的定義:程序測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程。測試(Testing) 的任務與目的可以描述為: 目的:發(fā)現(xiàn)程序的錯誤; 任務:通過在計算機上執(zhí)行程序,暴露程序中潛在的錯誤。 另一個預測是相關的術語叫糾錯(Debugging)。它的目的與任務可以規(guī)定為: 目的:定位和糾正錯誤; 任務:消除軟件故障,保證程序的可靠運行。測試與糾錯的關系,可以用
54、圖 6-1 的數(shù)據(jù)流圖來說明。圖中表明,每一次測試都要準備好若干必要的測試 數(shù)據(jù),與被測試程序一道送入計算機執(zhí)行。通常把一次程序執(zhí)行需要的測試數(shù) 據(jù),稱為一個“測試用例(Test Case)。每一個測試用例產生一個相應的“測試 結果” 。如果它與“期望結果”不想符合,便說明程序中存在錯誤,需要用糾錯 來改正。 圖 6.1 測試與糾錯信息流程 測 試 評 價 糾 錯 程序 測試數(shù)據(jù) 測試結果 錯誤信息 改正信息 期望結果 Fig6.1 test and error correction information flow 軟件危機曾經是軟件界甚至整個計算機界最熱門的話題。為了解決這場危 機,軟件從
55、業(yè)人員、專家和學者做出了大量的努力?,F(xiàn)在人們已經逐步認識到 所謂的軟件危機實際上僅是一種狀況,那就是軟件中有錯誤,正是這些錯誤導 致了軟件開發(fā)在成本、進度和質量上的失控。有錯是軟件的屬性,而且是無法 改變的,因為軟件是由人來完成的,所有由人做的工作都不會是完美無缺的。 問題在于我們如何去避免錯誤的產生和消除已經產生的錯誤,使程序中的錯誤 密度達到盡可能低的程度。 5.1.2 測試的特性 (1)挑剔性 測試是為了證明程序有錯,而不是證明程序無錯。因此,對于被測程序就 是要“純毛求疵” ,就是要“雞蛋里挑骨頭” 。只有抱著程序有錯的目的去測試, 才能八成序中潛在的大部分錯誤找出來。 (2)復雜性
56、測試儀程序則比較容易,這其實是一個誤區(qū)。設計測試用力是一項需要細 致和高度技巧的高能工作,稍有不慎就會顧此失彼,發(fā)生不應用得數(shù)樓。 (3)不徹底性 實際測試都是不徹底的,當然不能夠保證測試后的程序不存在遺漏的錯誤。 (4)經濟性 通場這種測試稱為“選擇測試(Selective Testing) ” 。為了降低測試成本, 選擇測試用力是應注意遵守“經濟性”的原則。 5.1.3 測試的重要性及范圍 軟件測試在軟件生命周期中占據(jù)重要的地位,在傳統(tǒng)的瀑布模型中,軟件 測試學僅處于運行維護階段之前,是軟件產品交付用戶使用之前保證軟件質量 的重要手段。近來,軟件工程界趨向于一種新的觀點,即認為軟件生命周期
57、每 一階段中都應包含測試,從而檢驗本階段的成果是否接近預期的目標,盡可能 早的發(fā)現(xiàn)錯誤并加以修正,如果不在早期階段進行測試,錯誤的延時擴散常常 會導致最后成品測試的巨大困難。 事實上,對于軟件來講,不論采用什么技術和什么方法,軟件中仍然會有 錯。采用新的語言、先進的開發(fā)方式、完善的開發(fā)過程,可以減少錯誤的引入, 但是不可能完全杜絕軟件中的錯誤,這些引入的錯誤需要測試來找出,軟件中 的錯誤密度也需要測試來進行估計。測試是所有工程學科的基本組成單元,是 軟件開發(fā)的重要部分。自有程序設計的那天起測試就一直伴隨著。統(tǒng)計表明, 在典型的軟件開發(fā)項目中,軟件測試工作量往往占軟件開發(fā)總工作量的 40以 上。
58、而在軟件開發(fā)的總成本中,用在測試上的開銷要占 30到 50。如果把維 護階段也考慮在內,討論整個軟件生存期時,測試的成本比例也許會有所降低, 但實際上維護工作相當于二次開發(fā),乃至多次開發(fā),其中必定還包含有許多測 試工作。 軟件測試貫穿于軟件定義與開發(fā)的整個周期 ,軟件的需求規(guī)格說明書 , 結構設計及程序編碼,都屬于軟件測試的對象。 5.2 系統(tǒng)測試 系統(tǒng)測試的方法,測試在軟件開發(fā)過程中一直都是備受關注的,即使在傳 統(tǒng)的軟件工程中,也有一個明確、獨立的測試階段。隨著軟件危機的頻頻出現(xiàn) 以及人們對于軟件本質的進一步認識,測試的地位得到了前所未有的提高。測 試已經不僅僅局限于系統(tǒng)開發(fā)中的一個階段,它
59、已經開始貫穿于整個系統(tǒng)開發(fā) 過程,人們已經開始認識到:測試開始的時間越早,測試執(zhí)行的越頻繁,所帶 來的整個軟件開發(fā)成本的下降就會越多。Extreme Programming 更是把測試推到 了極限的位置,一切軟件開發(fā)活動都要從首先編寫測試代碼開始。 為了使本軟件運行更加穩(wěn)定,我對它進行了全面的測試,測試分為二部分 來進行,一是:界面測試;二是功能測試。 首先是界面測試,為了使軟件在不同的的操作系統(tǒng)平臺上運行界面能保持 原來的風格。我把完整程序拷貝到 Windows 2000 Pro SP4 環(huán)境下,程序運行界 面正常,界面上的字體等設置都保持得相當好。沒有出現(xiàn)類似字體變形的情況! 二是進行功能
60、的測試。本系統(tǒng)測試采用了黑盒測試的方法。 經過測試,所有功能都能得以實現(xiàn),沒有任何變形。至此,在功能的測試 上也已經比較圓滿的完成了。 結論和總結 通過本次畢業(yè)設計我了解了 Web 開發(fā)模式,工作原理及發(fā)展的歷史,對 Web 數(shù)據(jù)庫的結構和 Web 服務器與數(shù)據(jù)庫的幾種互連技術有了全面的認識。 在幾個月的系統(tǒng)開發(fā)和論文撰寫過程中,通過查閱、研究大量的相關文獻,分 析相關領域的特色網(wǎng)站并結合實際,論文先論述了零售藥店系統(tǒng)的理論知識, 包括對它的定義,內涵,特點,功能,技術等方面的研究。然后按照軟件工程 的嚴格要求,對一個信息網(wǎng)進行了需求分析,概要設計,詳細設計,編碼與測 試等方面進行分析和討論,
61、初步建立了一個零售藥店管理系統(tǒng)。通過與數(shù)據(jù)庫 的連接,完成了藥品類別、信息的管理功能,運行本操作系統(tǒng)實現(xiàn)了藥品進貨 和日常銷售的功能。建立數(shù)據(jù)庫通過 SQL 語句對數(shù)據(jù)庫中的信息進行調用,以 及把系統(tǒng)信息及時的存儲入數(shù)據(jù)庫表單中。另外通過 C腳本語言實現(xiàn)對系統(tǒng) 的動態(tài)連接。 致謝 在本次畢業(yè)設計中,使我理會到軟件工程在項目開發(fā)中各個環(huán)節(jié)的具體應 用,并對使用 C#的 asp.Net 開發(fā)數(shù)據(jù)庫應用程序的方法和技巧有了更一步的掌 握。這一切的知識積累離不開指導老師認真負責的工作態(tài)度,嚴謹?shù)闹螌W精神 和深厚的理論水平,在此向他表示我深深的謝意,同時也感謝給過我支持、幫 助的同學。 最后借此機會也向
62、所有關心和指引我成長的老師致以崇高的敬意! 參考文獻 1 王昊亮,李剛,Visual C#程序設計教程M.北京:清華大學出版社,2003.9,1,4 2 鄭阿奇.SQL Server 實用教程M.北京:電子工業(yè)出版社,2005.7,13 3 袁寧,李勇,網(wǎng)上商店大制作J,重慶大學出版社, 2001,3 4 周學泳等,Asp+SQL Server 開發(fā)網(wǎng)上商店J,人民郵電出版社,2000,8 5 Ron Patton 美,軟件測試M.機械工業(yè)出版社,2000,3 6塞奎春主編,宋坤,李嚴,等編著. SQL Server 數(shù)據(jù)庫開發(fā)實例解析M. 北京:機械工 業(yè)出版社,2006.1 7 Eung
63、Jae Lee, Keun Ho Ryu.Design of Vehicle Information Management System for Effective Retrieving of Vehicle Location M.Lecture Notes in Computer Science, 2005, Volume 3481 8 余金山,林慧編著. SQL Server2000/2005 數(shù)據(jù)庫開發(fā)實例入門與提高M. 北京:電 子工業(yè)出版社,2005.11 9 (美)Powell.R. (美)Weeks.R.著. 袁鵬飛譯. C#和.NET 架構M. 北京:人民郵電出 版社,2002.4 10 薩師煊,王珊.數(shù)據(jù)庫系統(tǒng)概論(第三版)M.北京:高等教育出版社,2000.2 11 Jason Price 著,邱仲潘,等譯.C#數(shù)據(jù)庫編程從入門到精通M.北京:電子工業(yè)出版 社,2003.9 12 羅斌,等編著. Visual C#.NET 精彩編程實例集錦J. 北京:中國水力水電出版社, 2005. 13 張公忠主編. 現(xiàn)代網(wǎng)絡技術教程.第 2 版J. 北京:電子工業(yè)出版社,2004.1
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 蘇教版五上《小數(shù)乘整數(shù)》ppt課件
- 蘇教版一年級數(shù)學上冊《數(shù)一數(shù)》ppt課件
- 江南1優(yōu)秀課件
- 提高印字質量課件
- 服務分銷策略課件
- 數(shù)學必修蘇教版互斥事件課件3(共32張PPT)
- 第三章要素費用的核算PPT優(yōu)秀資料
- 元素的質量分數(shù)計算答案
- 圖形的欣賞與設計
- 八年級下期Uuit10SectionA課件
- 部編七年級語文下冊4孫權勸學課件
- 部編一年級語文下冊端午粽課件
- 超市防損的技能課件
- 表彰班會教學課件教學課件
- 第17講中考數(shù)學專題復習 函數(shù)的綜合應用中考數(shù)學專題復習課件課件各版通用