網(wǎng)上銷售訂單管理系統(tǒng)論文_第1頁
網(wǎng)上銷售訂單管理系統(tǒng)論文_第2頁
網(wǎng)上銷售訂單管理系統(tǒng)論文_第3頁
網(wǎng)上銷售訂單管理系統(tǒng)論文_第4頁
網(wǎng)上銷售訂單管理系統(tǒng)論文_第5頁
已閱讀5頁,還剩77頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

摘要隨著科學技術的不斷提高,其強大的功能已為人們深刻認識,“現(xiàn)代化管理”的理念隨之也成為企業(yè)發(fā)展的原動力?!艾F(xiàn)代化管理”手段具有檢索迅速、可靠性高、存儲量大、保密性好等優(yōu)點。這些優(yōu)點能夠極大的提高一個企業(yè)、公司銷售管理的效率。利用網(wǎng)絡和數(shù)據(jù)庫技術,基于B/S模式開發(fā)了網(wǎng)上銷售訂單管理系統(tǒng)這一ASP.NET應用程序。本系統(tǒng)開發(fā)平臺采用VisualStudio2005,開發(fā)語言采用C#,后臺數(shù)據(jù)庫采用SQLServer2005。本系統(tǒng)是一個典型的信息管理系統(tǒng)(MIS),它運用方便,操作簡單,效率很高,實現(xiàn)了對銷售訂單登記、訂單確認、貨物發(fā)送、訂單查詢及退貨結(jié)賬等功能。它取代了傳統(tǒng)的手工對訂單管理,從而減少了銷售數(shù)據(jù)誤差并實現(xiàn)了數(shù)據(jù)規(guī)范化,能夠滿足銷售單位高效管理要求。本文介紹了網(wǎng)上銷售訂單管理系統(tǒng)的開發(fā)工具、開發(fā)平臺;系統(tǒng)需求分析部分主要包括業(yè)務流程圖、數(shù)據(jù)流圖、功能需求等;系統(tǒng)設計部分主要介紹了系統(tǒng)功能設計、數(shù)據(jù)庫設計及代碼設計;系統(tǒng)實現(xiàn)部分說明了幾個主要模塊的算法,并附帶了一些主要的窗口和程序。關鍵詞銷售管理;訂單管理;結(jié)賬處理AbstractWiththecontinuousimprovementofthescience&technology,itsgreatfunctionhasbeenrecognizeddeeplybyhuman,alongwiththat“themodernmanagement”alsobecomesthemotilityofbusinessdevelopment.“Themodernmanagement”hassuchadvantageslikerapidsearching,highreliability,largestoragelevel,goodconfidentiality,andsoon.Theseadvantagescouldincreasetheefficiencyofabusinessorcompany’ssalesmanagementinalargeextent.Byuseoftheskillofnetworkanddatabase,wedeveloptheordercontrolofonlinemarketingwhichisanASP.NETapplicationprogramthatbaseonB/Smode.ThissystemdevelopmentplatformadoptsVisualStudio2005,thedevelopmentlanguageadoptsC#,thebackgrounddatabaseadoptstheSQLServer2005.ThissystemisatypicalManagementInformationSystem(MIS)thatisveryconvenienttohandle,easytooperate,highefficiency,couldcarryouttheregistrationofsalesorder,confirmationoforder,deliveryofgoods,orderinquires,goodsreturnedandsettleaccount,andsoonfunctions.Ittakestheplaceofthetraditionalhandworkordercontrol,thusreducesthesalesdataerrorandcompletesthedata’sstandardization,couldsatisfytherequirementabouthighefficiencymanagementofmarketingunit.Thisarticleintroducesthedevelopmentinstrumentanddevelopmentlatformoftheordercontrolofonlinemarketing;systemrequirementsanalysiscontainsoperationflowchart,dataflowchart,functionalrequirements;systemdesignmainlyintroducesthesystemfunctionaldesign,databasedesignandcodedesign;systemimplementationexplainsthealgorithmaboutsomemajormodule,andwithsomemainwindowsandprograms.Keywordssalesmanagementordercontrolsettleaccount

目錄TOC\o"1-3"\u摘要 IAbstract II第1章緒論 頁第1章緒論1.1課題背景隨著科學技術與網(wǎng)絡技術的迅速發(fā)展,“現(xiàn)代化管理”的理念已成為企業(yè)發(fā)展的原動力。產(chǎn)品銷售管理歷來是企業(yè)管理中重要的組成部分,一個大型公司每天要完成的銷售訂單事務十分繁瑣復雜,并且業(yè)務涉及多個不同的客戶,但傳統(tǒng)的銷售管理是以人員管理為主,這種管理方式存在著許多缺點,因此銷售訂單管理系統(tǒng)對企業(yè)有著十分重要的意義。訂單管理系統(tǒng)(OMS)是物流管理系統(tǒng)的一部分,通過對客戶下達的訂單進行管理及跟蹤,動態(tài)掌握訂單的進展和完成情況,提升物流過程中的作業(yè)效率,從而節(jié)省運作時間和作業(yè)成本,提高物流企業(yè)的市場競爭力。訂單管理系統(tǒng)的主要功能是通過統(tǒng)一訂單提供用戶整合的一系列供應鏈服務,訂單管理以及訂單跟蹤管理能夠使用戶的物流服務得到全程的滿足。訂單管理系統(tǒng)是物流管理鏈條中的不可或缺的部分,通過對訂單的管理和分配,使倉儲管理和運輸管理有機的結(jié)合,穩(wěn)定有效地實現(xiàn)物流管理中各個環(huán)節(jié)充分發(fā)揮作用,使倉儲、運輸、訂單成為一個有機整體,滿足物流系統(tǒng)信息化的需求。銷售訂單管理是對商戶下達的各種指令進行管理、查詢、修改等功能,同時將業(yè)務部門處理信息反饋至商戶。銷售訂單管理系統(tǒng)一般包括:訂單登記,訂單確認,訂單狀態(tài)管理等。“現(xiàn)代化管理”手段具有檢索迅速、可靠性高、存儲量大、保密性好等優(yōu)點。這些優(yōu)點能夠極大的提高一個企業(yè)、公司銷售管理的效率?,F(xiàn)代市場要求一個企業(yè)、公司在瞬息萬變的商業(yè)領域內(nèi)及時獲取全面具體信息,快速準確的地做出決策,因此對銷售訂單管理系統(tǒng)的開發(fā)與應用是必不可少的。1.2課題意義借助現(xiàn)代信息技術和管理理論,建立企業(yè)、公司管理信息系統(tǒng)是當今社會的重要趨勢。在企業(yè)、公司管理中,人力資源是企業(yè)最寶貴的資源,也是企業(yè)的“生命線”,而產(chǎn)品銷售管理又是企業(yè)、公司資源管理的重中之重。實行電子化的銷售信息管理,可以讓銷售管理人員從繁重瑣碎的案頭工作解脫出來,去完成更重要的工作。銷售訂單管理系統(tǒng)它的開發(fā)意義在于:首先提高各廠商之間的合作效率,促進聯(lián)盟的建立,增強企業(yè)在市場上的競爭力;而且可以使移動辦公的銷售人員能夠及時的遠程訪問公司發(fā)布的應用系統(tǒng)。其次銷售管理系統(tǒng)幫助用戶監(jiān)督產(chǎn)品銷售的全過程。使用戶和銷售人員十分清晰的了解到企業(yè)內(nèi)部的各個方面的信息。以銷售訂單為中心,動態(tài)跟蹤銷售訂單的執(zhí)行情況,以及銷售訂單的賬款情況。通過交期回答功能,銷售人員能準確提供交貨日期及輕松掌握企業(yè)產(chǎn)品的銷售情況。通過與庫存管理、生產(chǎn)管理、財務管理等系統(tǒng)的無縫銜接,使企業(yè)生產(chǎn)的產(chǎn)品符合用戶、客戶的個性化要求。1.3系統(tǒng)設計思想1.3.1系統(tǒng)開發(fā)模式本系統(tǒng)采用B/S結(jié)構,即Browser/Server(瀏覽器/服務器)結(jié)構,是隨著Internet技術的興起,對C/S結(jié)構的一種變化或者改進的結(jié)構。在這種結(jié)構下,用戶界面完全通過WWW瀏覽器實現(xiàn),一部分事務邏輯在前端實現(xiàn),但是主要事務邏輯在服務器端實現(xiàn)。B/S結(jié)構,主要是利用不斷成熟的WWW瀏覽器技術,結(jié)合瀏覽器的多種Script語言(VBScript、JavaScript等)和ActiveX技術,用通用瀏覽器實現(xiàn)了原來需要復雜專用軟件才能實現(xiàn)的強大功能,并節(jié)約了開發(fā)成本,是一種全新的軟件系統(tǒng)構造技術。這種結(jié)構更成為當今應用軟件的首選體系結(jié)構。內(nèi)容繁多的使用說明書和花費許多時間的培訓,并不能稱為“良好的售后服務”,真正好的產(chǎn)品的功能越來越復雜的同時應該使產(chǎn)品的使用越來越簡單。用瀏覽器作為軟件界面不但容易統(tǒng)一各種應用系統(tǒng),也非常方便使用。無論用戶的規(guī)模有多大,有多少分支機構都不會增加任何維護升級的工作量,所有的操作只需要針對服務器進行,如果是異地只需要把服務器連接到網(wǎng)即可立即進行維護和升級,這對人力、時間、費用的節(jié)省是相當驚人的。使用B/S只需要管理服務器就行了,所謂的客戶端只是瀏覽器,根本不需要做任何的維護。所以客戶機越來越“瘦”,而服務器越來越“胖”是將來軟件的主流發(fā)展方向,這使得升級和維護越來越容易使用越來越簡單。根據(jù)上面的介紹,用Browser/Server結(jié)構來設計網(wǎng)上銷售訂單管理系統(tǒng)是合理可行的,而且是先進的。1.3.2系統(tǒng)開發(fā)平臺本系統(tǒng)開發(fā)平臺采用ASP.NET,它是微軟公司的應用開發(fā)平臺,是.NET框架中的一個核心部分,是目前流行的動態(tài)服務器主頁(ActiveServerPage,ASP)技術的下一代產(chǎn)品。ASP.NET是一個完整的、可擴展的Web

應用程序開發(fā)框架,它提出了一種用于創(chuàng)建內(nèi)容豐富的動態(tài)網(wǎng)站、Web應用程序和XMLWeb服務的新編程模型。與以往的編程模型相比,這種新編程模型提供了基于組件的架構和開發(fā)的范型。ASP.NET繼承了.NET框架中的編程模型,這種新的應用開發(fā)平臺可以把C++、Java等面向?qū)ο笳Z言的特征與MicrosoftVisualBasic語言簡易開發(fā)的能力相互結(jié)合起來。.NET框架的特征是運行期執(zhí)行環(huán)境和在其上層的豐富類庫。它對多語言的支持和豐富的自定義控件編制,這些都有利于程序的開發(fā)。雖然ASP與ASP.NET都用來開發(fā)Web應用程序,但ASP.NET運行的方式和ASP差異有天壤之別。當用戶發(fā)出一個ASPX網(wǎng)頁的要求后,ASP.NET引擎(xspisapi.dll)會將ASPX的網(wǎng)頁轉(zhuǎn)換成源程序代碼(SourceCode),然后編譯成一個DLL文件,接著將網(wǎng)頁當成一個類(Class),在內(nèi)存中建立此對象的實體(ObjectInstance)并進行初始化操作。最后才將執(zhí)行結(jié)果返回到客戶端。ASP.NET運行過程如圖1-1所示。圖1-1ASP.NET運行過程VisualStudio2005與ASP.NET2.0相結(jié)合增加了許多功能:1.ASP.NET2.0是編譯好的公共語言運行庫代碼,代碼運行在服務器上。它可以利用早期綁定、實時編譯、本機優(yōu)化服務,相當于在編碼前就提高了應用程序性能。2.ASP.NET2.0框架補充了VisualStudio2005集成開發(fā)環(huán)境中的大量工具箱和設計器。3.ASP.NET2.0執(zhí)行常見任務變得容易,并且采用基于文本的分層配置系統(tǒng),簡化了程序的開發(fā)過程。4.VisualStudio2005集成了大量的新增控件并且簡化了代碼的編寫,提高了編程效率,可靈活編寫用戶自定義控件,方便了編程。從技術的先進性、成熟性、程序執(zhí)行效率來講采用ASP.NET技術都有利于程序開發(fā)。1.3.3系統(tǒng)運行環(huán)境1.軟件運行平臺本系統(tǒng)設計運行在Windows2000/NT/XP操作環(huán)境下,因為該系統(tǒng)界面友好,易學易用為大多數(shù)辦公人員所熟悉并且價格適中。系統(tǒng)軟件:Windows2000/NT/XP數(shù)據(jù)庫:SQLServer2005IIS:IIS5.0或IIS6.0瀏覽器:IE5.0以上版本2.硬件運行平臺本系統(tǒng)對服務器硬件的基本標準如下:CUP:P4或者更高級別的處理器內(nèi)存:512MB以上硬盤空間:10G以上顯示器:普通彩色顯示器鍵盤:普通標準鍵盤鼠標:機械鼠1.3.4系統(tǒng)設計原則對于開發(fā)一個大型的計算機管理系統(tǒng),尤其是在企業(yè)銷售運作中扮演重要角色的銷售訂單管理系統(tǒng),必須滿足企業(yè)銷售過程中管理上的要求。本系統(tǒng)考慮了最為普遍的銷售訂單管理需求,是針對一般銷售公司而設計,在考慮系統(tǒng)功能的同時也對操作界面的設計進行了統(tǒng)一規(guī)劃以使操作界面友好。采用B/S結(jié)構,用戶端只需要密碼登錄,不需要安裝程序,便于系統(tǒng)維護和保密。本系統(tǒng)的設計按照下述原則進行:1.實用性:系統(tǒng)以用戶需求為目標,以方便用戶為原則,同時融入先進的管理經(jīng)驗。系統(tǒng)界面友好,操作簡單,企業(yè)的工作人員只需掌握一些基本電腦使用方面的知識,要求會打字,這樣簡單進行培訓能夠輕松使用本系統(tǒng),無須企業(yè)花費多少財力物力來培訓員工。2.先進性:本設計將充分應用現(xiàn)有成熟的計算機技術、網(wǎng)絡技術、軟件開發(fā)技術,為用戶提供高性能的系統(tǒng)。數(shù)據(jù)庫采用SQLServer2005,開發(fā)平臺選用MicrosoftVisualStudio2005。3.高可靠性:一個實用的系統(tǒng)同時必須是可靠的,本設計通過合理而先進的網(wǎng)絡設計以及軟、硬件的優(yōu)化選型,可保證系統(tǒng)的可靠性與容錯性。4.高安全性:在設計中,將充分利用網(wǎng)絡軟、硬件提供的各種安全措施,既可以保證用戶共享資源,同時也可保證關鍵數(shù)據(jù)的安全性。系統(tǒng)將運用先進的B/S(瀏覽器/服務器)結(jié)構,為不同用戶設定不同權限,便于系統(tǒng)維護和保密。5.采用標準技術:本系統(tǒng)的所有設計遵循國際上現(xiàn)行的標準進行,以提高系統(tǒng)的開放性。6.可維護性:系統(tǒng)的設計要求方便維護,包括硬件的維護,軟件的維護(更改,升級等)和網(wǎng)絡的維護。7.可擴展性及靈活性:系統(tǒng)的設計以方便未來業(yè)務的擴展和系統(tǒng)擴充為目標,系統(tǒng)要求能夠方便的升級,充分保護系統(tǒng)的投資。8.智能性:系統(tǒng)在設計時,充分考慮系統(tǒng)運行的智能性,盡量的使程序智能化,在使用系統(tǒng)一段時間后,系統(tǒng)可以和所處部門的業(yè)務相融合。1.3.5系統(tǒng)設計目標登錄系統(tǒng)的主要功能要求:1.歡迎頁面。2.功能登陸頁面及密碼驗證。網(wǎng)上銷售訂單的主要功能實現(xiàn)目標:1.利用Session對象對用戶進行驗證工作。2.能夠?qū)蛻簟⒐?、商品進行添加與相應的管理,并在添加時對相應字段進行格式要求。3.能夠?qū)τ唵芜M行分類登記,若庫存不足時提示重新輸入值,根據(jù)數(shù)量與單價自動產(chǎn)生應付款值,根據(jù)應付款與已付款產(chǎn)生未付款值。4.對于已登記的銷售訂單轉(zhuǎn)入第二步處理:訂單確認。主要分為兩種確認方法,分別是發(fā)送電子郵件、通知客服。發(fā)送電子郵件時,能夠根據(jù)訂單信息顯示相應的郵件內(nèi)容發(fā)送給客戶進行確認。5.確認完的銷售訂單轉(zhuǎn)入第三步處理:貨物發(fā)送。這一步主要是對銷售訂單發(fā)貨情況進行確認管理。6.各類訂單可根據(jù)訂單類型進行相應的付款結(jié)賬,在結(jié)賬時顯示未付款金額,可通過訂單號查看其詳細信息,每一次結(jié)賬細節(jié)都可查看其相應的結(jié)賬明細,支持多次付款。7.可以對庫存商品的剩余量,銷售量進行查詢??筛鶕?jù)不同的條件對各種訂單進行查詢。從上面的分析可以看出:系統(tǒng)設計必須從保證系統(tǒng)的可變更性入手,設計出一個易于理解,易于維護的系統(tǒng)。需要注意以下幾個問題:1.把系統(tǒng)劃分為一些部分,其中每一部分的功能簡單明確,內(nèi)容簡明易懂,易于修改,我們把這樣的部分稱為模塊。2.系統(tǒng)分成模塊的工作按層次進行。首先把整個系統(tǒng)看成一個模塊按功能分解成若干個第一層模塊,這些模塊相互配合,共同完成整個系統(tǒng)的功能。然后按功能再分解第一層的各個模塊。依次下去,直到每一個模塊都十分簡單。3.每一個模塊應盡可能獨立,即盡可能減少模塊間的調(diào)用關系和數(shù)據(jù)交換關系。當然,系統(tǒng)中的模塊不可能與其它模塊沒有聯(lián)系,只是要求這種聯(lián)系盡可能少。4.模塊間的關系要闡明,這樣在修改時可以追蹤和控制,總之一個易于修改的系統(tǒng)應該有一些相對獨立、功能單一的模塊按照層次結(jié)構組成。這些模塊之間不必要的聯(lián)系都已去掉,而且它們的功能及其相互關系都已闡明。這就是結(jié)構化設計的基本思想。第2章需求分析2.1需求分析重要性所謂管理信息系統(tǒng)(ManagementInformationSystem)系統(tǒng),是一個由人、計算機及其他外圍設備等組成的能進行信息的收集、傳遞、存貯、加工、維護和使用的系統(tǒng),是一門新興的科學,其主要任務是最大限度的利用現(xiàn)代計算機及網(wǎng)絡通訊技術加強企業(yè)的信息管理,通過對企業(yè)擁有的人力、物力、財力、設備、技術等資源的調(diào)查了解,建立正確的數(shù)據(jù),加工處理并編制成各種信息資料及時提供給管理人員,以便進行正確的決策,不斷提高企業(yè)的管理水平和經(jīng)濟效益。無論采用何種方法開發(fā)管理信息系統(tǒng),系統(tǒng)分析工作都是十分重要的環(huán)節(jié)。軟件的需求分析是軟件生存周期中重要的一步,也是最為關鍵的一步。只有通過軟件需求分析,才能把軟件功能和性能的總體概念描述為具體的軟件需求規(guī)格說明,進而建立軟件開發(fā)的基礎。需求分析的任務是分析員通過需求分析提供一種可轉(zhuǎn)化為數(shù)據(jù)設計、結(jié)構設計和過程設計的數(shù)據(jù)與功能表示,在軟件完成后,需求分析階段研究的對象是軟件項目的用戶要求。軟件需求分析工作是軟件計劃階段完成之后開始的,其主要目的是:要綜合分析用戶對系統(tǒng)提出的一組需求(功能、性能、數(shù)據(jù)等方面)的基礎上,構造一個從抽象到具體的邏輯模型表達軟件將要實現(xiàn)的需求,并以“軟件需求規(guī)格說明書”的形式作為本階段工作的結(jié)果,為下一階段的軟件設計提供設計基礎。軟件需求分析階段,結(jié)合所用的開發(fā)工具:ASP.NET,SQLSever對問題進行了分析和深入的了解,建立了實現(xiàn)目標軟件邏輯模型與物理模型。2.2可行性分析可行性分析的目的就是用最小的代價在盡可能短的時間內(nèi)確定問題是否可解決??尚行匝芯康哪康牟皇墙鉀Q問題,而是確定問題是否值得去解決。一般來說至少達到以下三個可行性:經(jīng)濟可行性:本系統(tǒng)所帶來的經(jīng)濟利益能否超過它的開發(fā)成本。技術可行性:使用現(xiàn)有的技術能否實現(xiàn)這個系統(tǒng)。運行可行性:系統(tǒng)的操作方式是否為用戶所接受。2.2.1經(jīng)濟可行性經(jīng)濟可行性研究主要進行成本效益分析,包括估計項目的開發(fā)成本,估算開發(fā)成本是否會高于項目預期的全部利潤,同時還要看此軟件是否能夠為用戶帶來經(jīng)濟效益。由于ASP.NET程序設計采用結(jié)構化設計思想,且具有語言簡單易學、開發(fā)快捷等特點,所以用ASP.NET一些可預見的風險可降到最低,如技術問題,人員流失等,從而保證了項目的開發(fā)周期,節(jié)約了時間成本,也極大減少了對程序員的培訓資金;ASP.NET開發(fā)的應用程序易于維護,可降低產(chǎn)品后期的維護成本,提高項目利潤點,網(wǎng)上銷售訂單管理系統(tǒng)開發(fā)的目的是為了提高用戶工作效率,方便操作與管理而設計。開發(fā)此軟件并不需要大量的經(jīng)費,而是個人獨立設計,所以從經(jīng)濟角度來講,所以本系統(tǒng)的開發(fā)經(jīng)濟上是完全可行的。2.2.2技術可行性根據(jù)該系統(tǒng)目標來衡量所需的技術是否具備,一般可從硬軟件的性能要求、環(huán)境條件、操作人員水平和數(shù)量等方面去考慮和分析??紤]到系統(tǒng)技術可行性,在軟件方面選擇了如今較流行的ASP.NET2.0來進行開發(fā)管理平臺的設計,使用SQLServer2005數(shù)據(jù)庫存儲數(shù)據(jù)。 Microsoft的動態(tài)服務器網(wǎng)頁ASP.NET技術,語法簡單,很容易被程序員所接受,且調(diào)試起來也比較容易。從B/S的開發(fā)模式,ASP.NET技術的先進性方面考慮,ASP.NET無非是一個最好的技術。微軟公司提供了豐富的ASP.NET技術資源庫,供程序員及用戶查詢,同時也有強大的技術服務中心,使技術風險降到最低,這是任何一門WEB語言在目前形勢下不可比擬的。與ASP.NET1.X相比,ASP.NET2.0中加入了更多的新特性,使得開發(fā)人員在工作效率、管理、擴展性和性能等方面均有了大幅度的提高。ASP.NET2.0引入了許多新的服務器控件,從而能夠為數(shù)據(jù)訪問、登錄安全、向?qū)Ш健⒉藛?、樹視圖及門戶等提供功能強大的聲明性支持。因此在軟件方面,此系統(tǒng)是可行的。在硬件方面,則選擇空間較大,只要是P4系列及以上的計算機,內(nèi)存在256M以上,硬盤在10G以上,都可以滿足系統(tǒng)的開發(fā)需要。當然,硬件的配置越高,系統(tǒng)的開發(fā)與運行會更流暢??紤]到如今的家用或商用電腦硬件的整體配置水平,系統(tǒng)在硬件方面是完全可行的。2.2.3運行可行性管理形式的計算機網(wǎng)絡化是社會發(fā)展的必然趨勢,各種智能化的軟件層出不窮。本系統(tǒng)直接面向用戶,界面設計時充分考慮管理人員的習慣,使得操作簡單;數(shù)據(jù)錄入迅速、規(guī)范、可靠;統(tǒng)計準確;制表靈活;適應力強;容易擴充。對于初次使用本系統(tǒng)的用戶,不必經(jīng)過復雜的培訓和學習就可以掌握系統(tǒng)的操作流程。由此可見,開發(fā)此軟件在運行上是可行的。利用網(wǎng)絡和數(shù)據(jù)庫技術,基于B/S模式開發(fā)了網(wǎng)上銷售訂單管理系統(tǒng)這一ASP.NET應用程序。本系統(tǒng)開發(fā)平臺采用VisualStudio2005,開發(fā)語言采用C#,后臺數(shù)據(jù)庫采用SQLServer2005。它運用方便,操作簡單,效率很高,實現(xiàn)了對銷售訂單登記、訂單確認、貨物發(fā)送、訂單查詢及退貨結(jié)賬等功能。它取代了傳統(tǒng)的手工對訂單管理,從而減少了銷售數(shù)據(jù)誤差并實現(xiàn)了數(shù)據(jù)規(guī)范化,能夠滿足銷售單位高效管理要求,本系統(tǒng)具有一定的實際開發(fā)價值和使用價值。2.3業(yè)務流程圖管理業(yè)務流程圖是一種描述系統(tǒng)內(nèi)各單位、人員之間業(yè)務關系、作業(yè)順序和管理信息流向的圖表,通過它可以幫助分析人員找出業(yè)務流程中的不合理的流向。在業(yè)務流程圖中圓形代表系統(tǒng)中人員,矩形代表系統(tǒng)外實體,箭頭代表數(shù)據(jù)、報表賬目的流向。本系統(tǒng)主要是對銷售訂單進行管理,但在銷售這一環(huán)節(jié)的管理上與庫存有密切的聯(lián)系,所以對庫存的進貨訂單也有相應的管理??傮w業(yè)務流程描述如下:1.銷售訂單登記:將每一筆銷售信息進行登記,以便財務進行賬款上的處理并且也便于對銷售統(tǒng)計的查詢。2.訂單確認:根據(jù)客戶的聯(lián)系方式將所接受的訂單具體信息與其進行確認。使客戶及時了解訂單處理狀態(tài),也便于對訂單進行流程化管理。3.貨物發(fā)送:將與客戶確認過的訂單進行貨物上的發(fā)送。4.賬款結(jié)算:對于訂單賬款進行管理,對于每張訂單應付款、已付款、未付款及每次付款記錄都有詳細記載。其過程是:訂單管理員要對庫管部門的進貨訂單與進貨退貨訂單進行登記,再將訂單送財務部門供其賬款結(jié)算使用,財務部門將訂單賬款信息送訂單管理員,由訂單管理員對訂單付款信息進行更新。對于客戶的退貨信息由售后部門做出相關處理制定銷售退貨單送訂單管理員進行登記,再由財務部門對賬款進行管理。本系統(tǒng)業(yè)務流程圖如圖2-1所示。圖2-1系統(tǒng)業(yè)務流程圖當接收到客戶銷售訂單時,訂單操作人員要根據(jù)客戶相關信息來確認此訂單是否有效,若訂單有效則要判斷庫存量是否充足,對于不充足的情況要即時通知庫管部門,充足的情況下要通過相應聯(lián)系方式通知客戶其訂單已被受理。對于銷售出庫或銷售退貨要進行相關的減庫存或加庫存作業(yè)。銷售訂單處理步驟如圖2-2所示。圖2-2銷售訂單處理步驟2.4數(shù)據(jù)流圖在詳細描述系統(tǒng)功能時,使用數(shù)據(jù)流圖能清晰的描繪數(shù)據(jù)的流向以及整個系統(tǒng)工作的流程。數(shù)據(jù)流圖是表示系統(tǒng)邏輯模型的常用工具,圖中不存在任何具體的物理元素,只表示信息在系統(tǒng)中流動和處理的情況。數(shù)據(jù)流圖是邏輯系統(tǒng)的圖形化表示,因此,它是系統(tǒng)分析員與用戶進行交流的極好工具。同時也是系統(tǒng)分析員與系統(tǒng)設計人員之間的交流工具。在數(shù)據(jù)流圖中矩形代表數(shù)據(jù)輸入的源點和數(shù)據(jù)的匯點。圓形代表加工,輸入數(shù)據(jù)在此進行變換產(chǎn)生輸出數(shù)據(jù)。箭頭代表數(shù)據(jù)流,被加工的數(shù)據(jù)與流向。對于新客戶的銷售訂單先要向公司信息表中添加此客戶的相關基本信息如公司名稱、聯(lián)系方式等。對于所銷售的各類商品信息若沒有其相關記錄則要先進行添加如商品名稱、供應商、產(chǎn)地等信息。接收到客戶的銷售訂單時,訂單操作人員根據(jù)用戶的相關信息如聯(lián)系方式、預付款等條件判斷是否接受此訂單,即確定訂單是否有效,對于有效的訂單要將其轉(zhuǎn)入訂單流程化管理。訂單查詢支持多條件查詢?nèi)绨凑展?、客戶、時間等,同時也將從結(jié)賬信息表中檢索其有關的結(jié)賬信息。賬務管理支持多次的結(jié)賬處理,每次結(jié)賬金額與時間有明確記錄。根據(jù)以上分析系統(tǒng)數(shù)據(jù)流圖如圖2-3所示。圖2-3系統(tǒng)數(shù)據(jù)流圖2.5數(shù)據(jù)字典數(shù)據(jù)字典是關于數(shù)據(jù)的信息的集合,也就是對數(shù)據(jù)流圖中的所有元素的定義的集合。數(shù)據(jù)字典的作用是在軟件分析和設計的過程中給人提供關于數(shù)據(jù)的描述信息。它主要是對數(shù)據(jù)流圖中的數(shù)據(jù)流、處理邏輯、外部實體、數(shù)據(jù)存儲和數(shù)據(jù)項等方面進行具體的定義。數(shù)據(jù)流程圖配以數(shù)據(jù)字典,就可以從圖形和文字兩個方面對系統(tǒng)的邏輯模型進行完整的描述。1.數(shù)據(jù)項定義:對于本系統(tǒng)中所用到的數(shù)據(jù)項如表2-1所示。表2-1系統(tǒng)數(shù)據(jù)項定義編號名稱別名類型長度I01-01CompanyName公司名稱varchar50字節(jié)I01-02CompanyType公司類型varchar50字節(jié)I01-03CompanyShort公司簡稱varchar50字節(jié)I01-04CompanyAddress公司地址varchar50字節(jié)I01-05Postalcode郵政編碼varchar50字節(jié)I01-06Tel聯(lián)系電話varchar50字節(jié)I01-07Fax傳真varchar50字節(jié)I01-08Linkman聯(lián)系人varchar50字節(jié)I01-09Email電子郵件varchar50字節(jié)I01-10Bank開戶銀行varchar50字節(jié)I01-11BandAccounts銀行賬戶varchar50字節(jié)I01-12Username操作人varchar50字節(jié)I01-13AddTime添加日期varchar50字節(jié)I01-14CommodityName商品名稱varchar100字節(jié)I01-15ShortName商品簡稱varchar50字節(jié)I01-16ProducePlace產(chǎn)地varchar100字節(jié)I01-17Unit單位varchar20字節(jié)I01-18Specs規(guī)格varchar50字節(jié)I01-19PassNumber批號varchar50字節(jié)I01-20PassList批準文號varchar50字節(jié)I01-21CompanyId供應商IDint4字節(jié)續(xù)表2-1I01-22Remark備注varchar500字節(jié)I01-23total數(shù)量int4字節(jié)I01-24CommodityId商品IDint4字節(jié)I01-25Number數(shù)量int4字節(jié)I01-26Price單價decimal5字節(jié)I01-27StockDate日期datetime8字節(jié)I01-28SettlementType付款方式varchar50字節(jié)I01-29Payment應付金額decimal5字節(jié)I01-30FactPayment實付金額decimal5字節(jié)I01-31NotPayment未付金額decmial5字節(jié)2.數(shù)據(jù)流定義:系統(tǒng)數(shù)據(jù)流定義:數(shù)據(jù)流編號:D1-02數(shù)據(jù)流名稱:商品信息數(shù)據(jù)流來源:P1-01數(shù)據(jù)流去向:F1-02簡述:公司所銷售商品信息數(shù)據(jù)流組成:I01-14+I01-15+I01-16+I01-17+I01-18+I01-19+I01-20+I01-21+I01-22+I01-23數(shù)據(jù)流編號:D1-06數(shù)據(jù)流名稱:銷售訂單詳細信息數(shù)據(jù)流來源:P1-06數(shù)據(jù)流去向:F1-03簡述:有效的銷售訂單詳細信息數(shù)據(jù)流組成:I01-24+I01-21+I01-25+I01-26+I01-27+I01-28+I01-29+I01-30+I01-31+I01-32+I01-13+I01-21數(shù)據(jù)流編號:D1-15數(shù)據(jù)流名稱:訂單結(jié)賬信息數(shù)據(jù)流來源:P1-05數(shù)據(jù)流去向:F1-04簡述:各類訂單賬款支付信息數(shù)據(jù)流組成:I01-24+I01-35+I01-32+I01-36+I01-12+I01-132.6本章小結(jié)本章主要對網(wǎng)上銷售訂單管理系統(tǒng)進行了需求分析。需求分析是在可行性研究基礎上進行的,同時又描繪了本系統(tǒng)的業(yè)務流圖,在業(yè)務流圖的基礎上對銷售訂單處理步驟進行了分析。通過本系統(tǒng)數(shù)據(jù)字典與數(shù)據(jù)流圖的配合描述了系統(tǒng)邏輯模型。通過對本系統(tǒng)進行需求分析得到了用戶所要求實現(xiàn)的功能,也對后面將要進行的概要設計打下了良好的基礎。第3章概要設計問題定義、可行性研究和需求分析構成了了軟件分析階段,在這個階段確定了需要做什么和系統(tǒng)需求規(guī)格。而軟件開發(fā)階段的任務是概括地回答系統(tǒng)如何實現(xiàn)的問題。軟件開發(fā)階段包括概要設計、詳細設計、編碼和測試等。概要設計從概念上分為結(jié)構設計和詳細設計兩個階段。結(jié)構設計又稱為總體設計,其主要的任務是制訂系統(tǒng)實現(xiàn)方案和設計規(guī)范并合理確定軟件系統(tǒng)整體模塊結(jié)構及接口關系。詳細設計,也稱為模塊設計,其主要任務是詳細規(guī)定每個模塊功能的實現(xiàn)算法。本章將主要對軟件總體設計進行了相關描述。本軟件設計遵循以下幾個原則:1.將軟件劃分成若干個獨立成分的依據(jù)。2.表示不同的成分內(nèi)的功能細節(jié)和數(shù)據(jù)結(jié)構。3.統(tǒng)一衡量軟件設計的技術質(zhì)量。3.1系統(tǒng)功能設計利用層次方框圖來表示系統(tǒng)中各模塊之間的關系。層次方框圖用樹型結(jié)構一系列多層次的矩形框描述數(shù)據(jù)的層次結(jié)構。樹形結(jié)構的頂層是一個單獨的矩形框,它代表完整的數(shù)據(jù)結(jié)構,下面的各層矩形代表這個數(shù)據(jù)的子集,最底層的各個框代表組成這個數(shù)據(jù)的實際數(shù)據(jù)元素。隨著結(jié)構化的精細化,層次方框圖對數(shù)據(jù)結(jié)構也描繪得越來越細,這種模式非常適合于需求分析階段的需要。本系統(tǒng)一共分為五個模塊,每個模塊之間雖然在表面上是相互獨立的,但是在對數(shù)據(jù)庫的訪問上是緊密相連的,各個模塊訪問的是同一個數(shù)據(jù)庫,只是所訪問的表不同而已。每個模塊的功能都是按照在調(diào)研中搜集的資料進行編排制作的。依據(jù)上述功能的分析,系統(tǒng)中模塊分別為:基本信息管理、商品進貨管理、銷售訂單管理、查詢統(tǒng)計、賬務管理。各功能模塊的具體功能如下:1.基本信息管理:主要是對供應商、客戶、商品進行添加與管理。2.商品進貨管理:針對各類商品的進貨單進行登記,并對商品進貨中進貨退貨進行處理。3.銷售訂單管理:針對銷售訂單進行訂單登記、訂單確認、貨物發(fā)送及銷售退貨進行登記與處理,完成訂單一系列流程化的處理過程。4.查詢統(tǒng)計:可選擇不同的查詢條件,輸入不同的查詢值,主要是對商品庫存量及各類訂單信息進行查詢。5.賬務管理:主要是對各類訂單進行貨款上的結(jié)算,可支持多次付款結(jié)算,并可進行付款詳細信息查看。系統(tǒng)功能結(jié)構圖如圖3-1所示。圖3-1系統(tǒng)功能結(jié)構圖3.2數(shù)據(jù)庫設計數(shù)據(jù)庫設計是建立在數(shù)據(jù)庫及其應用系統(tǒng)的技術,是信息系統(tǒng)開發(fā)和建設中的核心技術,具體說,數(shù)據(jù)庫設計是指對于一個給定的應用環(huán)境,構造最優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應用環(huán)境,使之能夠有效地存儲數(shù)據(jù),滿足各種用戶的應用需求(信息要求和處理要求)。大型數(shù)據(jù)庫的開發(fā)是一項龐大的工程,其開發(fā)周期長,耗資多、涉及到多科學的綜合性技術。對于從事數(shù)據(jù)庫設計的人員來講應具備以下幾點:1.數(shù)據(jù)庫的基本知識和數(shù)據(jù)庫設計論述。2.計算機科學的基礎知識和程序設計的方法和技術。3.軟件工程的原理和方法。4.應用領域的知識。3.2.1數(shù)據(jù)庫設計的特點數(shù)據(jù)庫技術是應數(shù)據(jù)管理任務的需要而產(chǎn)生的。早期的數(shù)據(jù)庫設計中數(shù)據(jù)不具備獨立性而且不能共享,而且數(shù)據(jù)需要由應用程序自己管理,沒有相應的軟件系統(tǒng)負責數(shù)據(jù)的管理工作。早期人工管理階段,程序與數(shù)據(jù)之間是一對一的關系。傳統(tǒng)的軟件工程忽視對應用程序中數(shù)據(jù)語義的分析和抽象。數(shù)據(jù)模式是各應用程序共享的結(jié)構,是穩(wěn)定的,永久的,不像以文件系統(tǒng)為基礎的應用系統(tǒng),文件是某一應用程序私用的。數(shù)據(jù)庫設計的成功與否直接影響著系統(tǒng)中個處理過程的性能和質(zhì)量。在進入數(shù)據(jù)庫系統(tǒng)階段時,數(shù)據(jù)具有了結(jié)構化、獨立性高的特點。在此階段數(shù)據(jù)與程序的獨立,把數(shù)據(jù)的定義從程序中分離出去,加上數(shù)據(jù)的存取又由DBMS負責,從而簡化了應用程序的編制,大大減少了應用程序的維護和修改??紤]應用環(huán)境要求與數(shù)據(jù)庫結(jié)構的關系,因此結(jié)構設計與行為設計是分離的。3.2.2數(shù)據(jù)庫設計基本步驟由于信息結(jié)構復雜,應用環(huán)境多樣,在相當長的一段時間內(nèi)數(shù)據(jù)庫設計主要采用手工湊法。由于這種方法受到設計人員經(jīng)驗和水平的影響,數(shù)據(jù)庫的設計成為了一種技藝而不是工程技術,缺乏科學理論和工程方法的支持,工程的質(zhì)量難以保證,常常是數(shù)據(jù)庫運行一段時間后出現(xiàn)不同程度問題,增加了系統(tǒng)維護的代價。所以人們提出了各種數(shù)據(jù)庫設計方法、設計準則和規(guī)程。按照規(guī)范設計的方法,考慮數(shù)據(jù)庫及其應用系統(tǒng)開發(fā)全過程,將數(shù)據(jù)庫設計分為以下六個階:1.需求分析階段進行數(shù)據(jù)庫設計首先必須準確了解與分析用戶需求(包括數(shù)據(jù)與處理)。需求分析是整個設計過程的基礎,是最困難、最耗時間的一步。作為基礎的需求分析是否做得充分與準確,決定了在其上構建數(shù)據(jù)庫大廈的速度與質(zhì)量。需求分析做得不好,甚至會導致整個數(shù)據(jù)庫設計返工重做。2.概念結(jié)構設計階段概念結(jié)構設計是整個數(shù)據(jù)庫設計的關鍵,它通過對用戶需求進行綜合、歸納與抽象,形成一個獨立于具體DBMS的概念模型。3.邏輯結(jié)構設計階段邏輯結(jié)構設計階段是將概念結(jié)構轉(zhuǎn)換為某個DBMS所支持的數(shù)據(jù)模型,并對其進行優(yōu)化。4.數(shù)據(jù)庫物理設計階段數(shù)據(jù)庫的物理設計是為邏輯數(shù)據(jù)模型選取一個最適合應用環(huán)境的物理結(jié)構(包括存儲結(jié)構和存取方法)。5.數(shù)據(jù)庫實施階段數(shù)據(jù)庫實施階段,設計人員運用DBMS提供的數(shù)據(jù)語言及其宿主語言,根據(jù)邏輯設計和物理設計的結(jié)果建立數(shù)據(jù)庫,編制與調(diào)試應用程序,組織數(shù)據(jù)入庫,并進行試運行。6.數(shù)據(jù)庫運行和維護階段數(shù)據(jù)庫應用系統(tǒng)經(jīng)過試運行后即可投入正式運行。在數(shù)據(jù)庫系統(tǒng)運行過程中必須不斷地對其進行評價、調(diào)整與修改。設計一個完善的數(shù)據(jù)庫應用系統(tǒng)是不可能一蹴而就的,它往往是上述六個階段的不斷反復。需要指出的是,這個設計步驟既是數(shù)據(jù)庫設計的過程,也包括了數(shù)據(jù)庫應用系統(tǒng)的設計過程。在設計過程中把數(shù)據(jù)庫的設計和對數(shù)據(jù)庫中數(shù)據(jù)處理的設計緊密結(jié)合起來,將這兩方面的需求分析、抽象、設計、實現(xiàn)在各個階段同時進行,相互參照,相互補充,以完善兩方面的設計。事實上,如果不了解應用環(huán)境對數(shù)據(jù)的處理要求,或者沒有考慮如何去實現(xiàn)這些處理要求,是不可能設計一個良好的數(shù)據(jù)庫結(jié)構的。因此本系統(tǒng)的數(shù)據(jù)庫設計嚴格按以上步驟進行,以確保數(shù)據(jù)庫設計的合理性與完善性。3.2.3數(shù)據(jù)庫邏輯設計(E-R圖)實體聯(lián)系模型反映的是現(xiàn)實世界中的事物及其相互關系。是一種用來在數(shù)據(jù)庫設計過程中表示數(shù)據(jù)庫系統(tǒng)結(jié)構的方法,它的主導思想是用實體,實體的屬性以及實體之間的關系來表示數(shù)據(jù)庫系統(tǒng)的結(jié)構?!皩嶓w”指現(xiàn)實世界中存在的對象或事物。“屬性”指實體具有的某種特性。為了簡化E-R圖的處置,現(xiàn)實世界的事物能作為屬性的對待的,盡量作為屬性對待。但實體與屬性之間并沒有形式上可以截然劃分的界限,所以對屬性的劃分遵循以下兩個原則:1.作為“屬性”,不能再具有需要描述的性質(zhì)。“屬性”必須是不可分的數(shù)據(jù)項,不能包含其他的屬性。2.“屬性”不能與其他實體具有聯(lián)系,即E-R圖中所表示的聯(lián)系是實體之間的聯(lián)系。每張訂單只能由一個管理員進行管理所以是一對一關系;每張訂單中商品有唯一的記錄與之對應所以是一對一關系;一個公司有多張訂單,多張訂單可屬于同一公司所以是多對多關系;每張訂單有多次支付記錄所以是一對多關系。根據(jù)以上分析本系統(tǒng)的E-R圖如圖3-2所示。圖3-2數(shù)據(jù)庫E-R圖3.2.4數(shù)據(jù)庫表結(jié)構根據(jù)本系統(tǒng)基本功能和所涉及人員對數(shù)據(jù)庫建立了若干表,其具體表結(jié)構如下所示。AdminInfo表用于存放系統(tǒng)管理員信息,其結(jié)構如表3-1所示。表3-1AdminInfo表結(jié)構字段名稱數(shù)據(jù)類型說明AdminNamevarchar(50)管理員ID(PK)AdminPwdvarchar(20)密碼TypeNamevarchar(50)昵稱Flagvarchar(50)級別標志Company表用于存放公司信息,其結(jié)構如表3-2所示。表3-2Company表結(jié)構字段名稱數(shù)據(jù)類型說明idint(4)公司ID(PK)CompanyNamevarchar(50)公司名稱CompanyTypevarchar(50)公司類型CompanyShortvarchar(50)公司簡稱CompanyAddressvarchar(50)公司地址Postalcodevarchar(50)郵政編碼Telvarchar(50)聯(lián)系電話Faxvarchar(50)傳真Linkmanvarchar(50)聯(lián)系人Emailvarchar(50)電子郵件Bankvarchar(50)開戶銀行BandAccountsvarchar(50)銀行賬戶Usernamevarchar(50)操作人AddTimevarchar(50)添加日期Commodity表用于存放所銷售商品信息,其結(jié)構如表3-3所示。表3-3Commodity表結(jié)構字段名稱數(shù)據(jù)類型說明idInt(4)商品ID(PK)CommodityNamevarchar(100)商品名稱ShortNamevarchar(50)商品簡稱ProducePlacevarchar(100)產(chǎn)地Unitvarchar(20)單位續(xù)表3-3Specsvarchar(50)規(guī)格PassNumbervarchar(50)批號PassListvarchar(50)批準文號CompanyIdint(4)供應商IDRemarkvarchar(500)備注Usrnamevarchar(50)操作人AddTimevarchar(50)添加日期Totalint(4)數(shù)量Stock表用于存放各種訂單信息,其結(jié)構如表3-4所示。表3-4Stock表結(jié)構字段名稱字段類型說明Idint(4)訂單ID(PK)CommodityIdint(4)商品IDCompanyIdint(4)公司IDNumberint(4)數(shù)量Pricedecimal(5)單價StockDatedatetime(8)日期SettlementTypevarchar(50)付款方式Paymentdecimal(5)應付金額FactPaymentdecimal(5)實付金額NotPaymentdecimal(5)未付金額ManageManvarchar(5)經(jīng)手人Usernamevarchar(50)操作人AddTimevarchar(20)添加日期ClientIdint(4)客戶IDTypevarchar(10)訂單類型SendMailint(4)電子郵件標志Reckoning表用于存放訂單所付款信息,其結(jié)構如表3-5所示。表3-5Reckoning表結(jié)構字段名稱字段類型說明Idint(4)單據(jù)IDCommodityIdint(4)商品IDSettlementint(4)付款金額ManageManvarchar(50)經(jīng)手人Datetimedatetime(8)結(jié)賬日期Usernamevarchar(50)操作人Addtimevarchar(50)添加日期3.3本章小結(jié)本章主要對概要計中涉及到的知識進行了分析,包括層次方框圖、數(shù)據(jù)庫E-R圖及表關系。同時對數(shù)據(jù)庫設計的特點進行了描述,本系統(tǒng)數(shù)據(jù)庫的設計嚴格按照數(shù)據(jù)庫設計標準的六個步驟來完成,以便更好的實現(xiàn)系統(tǒng)功能。由于數(shù)據(jù)庫在設計中有非常重要的作用,所以在開發(fā)過程中,在考慮數(shù)據(jù)庫上的時間較多。第4章詳細設計4.1系統(tǒng)主界面設計本系統(tǒng)的主界面整體結(jié)構為上左右結(jié)構,上面部分顯示當前登錄用戶名以及系統(tǒng)當前時間,左面部分采用了樹型層次結(jié)構羅列了系統(tǒng)的全部功能,右面部分為客戶區(qū),顯示當前操作的使用窗口。系統(tǒng)主界面如圖4-1所示。圖4-1系統(tǒng)主界面1.實現(xiàn)目標:當選擇相應的菜單項時能夠正確的進入相應的界面,對于“返回首頁”與“注銷登錄”可成功轉(zhuǎn)到相應界面。2.實現(xiàn)過程:其主要功能是通過自定義控件實現(xiàn),對控件中菜單層的展開、彈回及相應鏈接頁面進行了相應功能編碼。4.2基本信息管理功能設計1.實現(xiàn)目標:對于輸入的各種基本信息數(shù)據(jù)系統(tǒng)要對其進行驗證如格式、類型、長度。同時對于修改后的值要對數(shù)據(jù)庫進行更新。這樣輸出的數(shù)據(jù)將是規(guī)范化的,記錄都是最即時的。此模塊的界面如圖4-2所示。圖4-2基本信息管理2.實現(xiàn)過程:窗體名:Add_UserInfo.aspxAdd_Product.aspxMaster_UserInfo.aspxMaster_Product.aspx對于基本信息管理頁面中所用到各控件及其主要屬性設置如表4-1所示。表4-1基本信息管理主要控件信息列表控件名稱主要屬性設置作用Tableborder=1顯示邊框cellspacing=0單元格的距離為0Requirefieldvalidator1controltovalidator=CommodityName驗證的文本框名稱errormessage=商品名稱不能為空顯示的錯誤信息forecolor=red字體顏色為紅色display=Static靜態(tài)顯示Text1TextMode=SingleLine單行文本框Button1Click=Button1_Click()編寫單擊事件對于一家公司來說供應商與客戶都是工作時所要面對的對象,因此在記錄這些數(shù)據(jù)時使用一張表來記錄,只用字段Type來區(qū)分類型。對于供應商與客戶的添加使用同一界面樣式,為了區(qū)別是何種對象的添加,在程序設計中使設計的用戶自定義控件所鏈接的頁面地址添加了標志Flag,利用標志賦予不同的值區(qū)分是何種公司的添加。在CS文件中獲得當前頁面Flag值來確定記錄存入庫中時Type的值。利用Return_Title函數(shù)讓頁面標題顯示相應文字。4.3商品進貨管理功能設計1.實現(xiàn)目標:通過下拉列表框選擇商品名稱,在供應商文本框中自動顯示出其供應商,根據(jù)輸入的數(shù)量與單價自動生成應付金額,并且能夠根據(jù)已付金額自動生成未付金額。操作人員是當前系統(tǒng)登錄者姓名。結(jié)款方式有兩種分別是現(xiàn)金與支票,可通過下拉列表框進行選擇。各數(shù)據(jù)的格式錯誤時都有相應的提示信息,當訂單的添加成功時有相應的提示框彈出。此模塊界面如圖4-3所示。圖4-3商品進貨管理2.實現(xiàn)過程:窗體名:Add_Stock.aspxBack_Stock.aspx對于商品進貨管理頁面中所用到各控件及其主要屬性設置如表4-2所示。表4-2商品進貨管理主要控件信息列表控件名稱主要屬性設置作用Tableborder=1顯示邊框cellspacing=0單元格的距離為0Requirefieldvalidator1controltovalidator=CommodityName驗證的文本框名稱errormessage=商品名稱不能為空顯示的錯誤信息forecolor=red字體顏色為紅色display=Static靜態(tài)顯示CompareValidator1controltovalidator=Price驗證的文本框名稱forecolor=red字體顏色為紅色errormessage=單價格式添寫錯誤顯示的錯誤信息display=Dynamic動態(tài)顯示Text1TextMode=SingleLine單行文本框Button1Click=Button1_Click()編寫單擊事件對于各數(shù)據(jù)的值采用驗證控件進行格式控制,例如數(shù)量只能輸入為整數(shù),當輸入為其他范圍的值系統(tǒng)都會提示錯誤?!疤砑印卑粹o單擊事件主要是對文件框中數(shù)據(jù)的讀取,再通過SQL語句對數(shù)據(jù)庫進行相應操作,此操作的成功與否主要是通過SqlDataBase.cs類來實現(xiàn)。4.4銷售訂單管理功能設計1.實現(xiàn)目標:對于輸入的銷售訂單信息進行驗證如應付款、未付款、已付款進行格式上與數(shù)值上的驗證,然后將銷售訂單轉(zhuǎn)入一系列流程化的處理。包括對訂單的確認,通知客戶我公司已接收并同意訂單生意,發(fā)貨將訂單轉(zhuǎn)入下一個階段,等待對方的賬款信息。輸出的數(shù)據(jù)將以規(guī)范化格式顯示,并且在每一階段只顯示相應完成階段的訂單。銷售訂單管理模塊如圖4-4所示。圖4-4銷售訂單管理2.實現(xiàn)過程:窗體名:Add_Sell.aspxSend_Sell.aspxSend_Goods.aspxBack_Sell.aspx對于銷售訂單管理頁面中所用到各控件及其主要屬性設置如表4-3所示。表4-3銷售訂單管理主要控件信息列表控件名稱主要屬性設置作用Tableborder=1顯示邊框cellspacing=0單元格的距離為0Requirefieldvalidator1controltovalidator=CommodityName驗證的文本框名稱errormessage=商品名稱不能為空顯示的錯誤信息forecolor=red字體顏色為紅色display=Static靜態(tài)顯示CompareValidator1controltovalidator=Price驗證的文本框名稱forecolor=red字體顏色為紅色errormessage=單價格式添寫錯誤顯示的錯誤信息display=Dynamic動態(tài)顯示Text1TextMode=SingleLine單行文本框Button1Click=Button1_Click()編寫單擊事件SqlDataSource1Select語句編寫GridView顯示滿足條件記錄在訂單登記時需要添寫的項有商品名稱、客戶名稱、單價、數(shù)量、應付金額等。其中各數(shù)據(jù)的格式與不能為空的限制都用ASP.NET驗證控件來進行限制。對于商品名稱與客戶的添寫都使用下拉列表框進行選擇,當選擇商品時自動顯示其供應商。操作人員的值是通過使用函數(shù)獲取當前操作人員名稱并將其值賦給文本標簽,在將文本標簽的值寫到庫中。銷售訂單的登記完成后將轉(zhuǎn)入下一個步驟訂單確認。這一步顯示了相關訂單信息,對于記錄的選擇通過SqlDataSource中Select語句檢索出所有Mail

值為“1”的即“未被確認”的訂單。對于訂單的確認方法有兩種,一種是發(fā)送郵件確認另一種是人工通知確認。對于郵件的確認相關代碼編寫在類中與相應的CS文件中。當點擊發(fā)送郵件確認時讓Panel_SendMail控件處于可見狀態(tài)。通過類中函數(shù)QueryString.Get_Id、QueryString.Get_Flag、與相應sql語句檢索出要發(fā)送郵件訂單的具體信息,并將這些信息顯示在郵件控件上,作為郵件內(nèi)容發(fā)送,郵件的發(fā)送主要是通過組件實現(xiàn)的。兩個組件分別是Interop.ADODB.dll與Interop.CDO.dll。對于組件相應調(diào)用代碼及基本變量設計都在SendMail.cs中進行了設置。對于發(fā)送郵件成功完成確認的訂單通過函數(shù)將其在數(shù)據(jù)庫中Mail值更新。發(fā)送貨物一經(jīng)確認過的銷售訂單的狀態(tài)也將被更新。由于銷售出的貨物存在著不同原因上的銷售退貨情況,因此也設定了銷售退貨登記這一處理。4.5查詢統(tǒng)計功能設計1.實現(xiàn)目標:在查詢模塊中各查詢界面基本功能相同,只是各查詢條件的選擇不同而已,但基本操作一致。當進入查詢頁面后先對查詢條件進行選擇,查詢條件的選擇只需在相應復選框前打?qū)μ柤纯?,再輸入相應查詢條件的值,對于相應值的輸入也進行了驗證。對于各類信息的檢索都用CS中的代碼來實現(xiàn),輸出正確的顯示結(jié)果。查詢統(tǒng)計界面如圖4-5所示。圖4-5查詢統(tǒng)計2.實現(xiàn)過程:窗體名:Stock_Search.aspxSell_Search.aspxStockpile_Search.aspx對于查詢統(tǒng)計頁面中所用到各控件及其主要屬性設置如表4-4所示。表4-4查詢統(tǒng)計主要控件信息列表控件名稱主要屬性設置作用Tableborder=1顯示邊框cellspacing=0單元格的距離為0CompareValidator1controltovalidator=Price驗證的文本框名稱forecolor=red字體顏色為紅色errormessage=開始時間格式添寫錯誤顯示的錯誤信息display=Dynamic動態(tài)顯示CheckBox1Check=false初始化時為未選中狀態(tài)Text1TextMode=SingleLine單行文本框Button1Click=Button1_Click()編寫單擊事件查詢主要分為:商品庫存查詢、商品進貨查詢、進貨退貨查詢、商品銷售查詢、銷售退貨查詢。其中商品進貨查詢與進貨退貨查詢采用同一aspx界面,商品銷售查詢與銷售退貨查詢采用同一aspx界面。對于相應何種查詢的確定采用在鏈接頁后面加type,根據(jù)賦予type不同的值來確定是何種信息的查詢。用戶可選擇不同的查詢條件,如供應商、經(jīng)手人、商品名稱、起止日期進行查詢。對于查詢條件的選擇采用復選框的形式,用戶只需要復選框前打上對號后再輸入相應條件的值點擊“查詢”按鈕即可顯示出滿足條件的所有訂單記錄。并且可通過GridView中“詳細信息”這一鏈接字段查看訂單的詳細內(nèi)容。對于起止日期采用了ASP.NET中的驗證控件:CompareValidator、ValidationSummary進行格式上的限制與提示。4.6賬務管理功能設計1.實現(xiàn)目標:選擇相應的訂單,點擊其結(jié)賬按鈕彈出對應結(jié)賬窗口。在窗口中輸入此訂單相應的結(jié)賬金額信息,對于本次結(jié)賬的金額要進行其未付款金額上的更新處理,同時對于該訂單付款記錄將進行更新。輸出的將是訂單更新后準確的結(jié)賬信息。此模塊的界面如圖4-6所示。圖4-6賬務管理2.實現(xiàn)過程:窗體名:Recokoning.aspx主要運用控件

GridView,對其各列所要顯示的字段進行編碼,并對具有鏈接功能的列進行了設置,通過代碼與控件屬性相結(jié)合實現(xiàn)。對于所有的結(jié)賬頁面都采用同一個Reckonig.aspx頁面。根據(jù)獲取不同結(jié)賬類型值來使標題顯示相應的結(jié)賬類型??牲c擊單據(jù)編號查看訂單詳細信息并且可顯示其相應的付款細節(jié)如第幾次付款、付款金額、付款時間等。當點擊GridView中的“結(jié)賬”按鈕將調(diào)用Jscript.cs類中OpenWebFormSize函數(shù)使結(jié)賬窗口按適當大小彈出。在結(jié)賬窗口中自動顯示未付金額,若付款大于未付款將給出提示“結(jié)款金額輸入錯誤”。同時各種數(shù)據(jù)的輸入與格式此頁面也用驗證控件進行控制。4.7本章小結(jié)本章從模塊具體功能上設計了網(wǎng)上銷售訂單管理系統(tǒng)。主要的模塊即基本信息管理、銷售訂單管理、查詢統(tǒng)計、賬務管理等模塊。在詳細設計中分析了各模塊的功能并對各模塊做了編程思路的闡述??梢詫⑾到y(tǒng)分解成幾個功能模塊來分別設計,以模塊的設計和框架結(jié)構的思想來貫穿整個系統(tǒng)開發(fā)過程。本系統(tǒng)的設計完全按照以上的設計來進行,相信能夠完成功能上的需求。第5章系統(tǒng)實現(xiàn)與測試5.1各個模塊功能實現(xiàn)在程序設計時考慮到有許多代碼是需要重復編寫的,并且有些函數(shù)被多次調(diào)用,考慮到程序代碼的編輯量與程序的運行速度,決定對于重復編寫的代碼與多次被調(diào)用的函數(shù)都用類的形勢封裝。其中HeaderTextInfo.cs類主要功能是運行程序時窗口標題信息文字的顯示與相關函數(shù)的編寫。Jscript.cs主要是對程序運行中各類小的窗口,及轉(zhuǎn)向到相應URL地址的代碼編寫。PersonInfo.cs主要是對管理員登錄與管理管理員操作進行代碼與相關函數(shù)的編寫,包括添加新管理員判斷其用戶ID是否已存在與登錄時自動顯示其昵稱函數(shù)。QueryString.cs主要是對一些程序中用到的信息如Flag、Cid獲取函數(shù)的編寫。SendMail.cs主要功能是當訂單確認時發(fā)送電子郵件所需代碼編寫。SqlDataBase.cs主要是對數(shù)據(jù)庫各種操作其相應代碼的編寫,如DataSet表,DataView數(shù)據(jù)視圖代碼。stock.cs用于對庫存商品數(shù)量一些操作代碼的編寫,如計算進貨數(shù)量,計算銷售數(shù)量,計算當前庫存量函數(shù)。StringUtil.cs是對輸入的數(shù)據(jù)進行過濾如去掉其空格、按要求長度顯示代碼的編制。為了達到界面美觀統(tǒng)一,程序采用了樣式表、自定義控件與母版技術。5.1.1基本信息管理模塊實現(xiàn)首先對于輸入的基本信息數(shù)據(jù)程序要進行格式、類型、長度等的驗證,對于不正確的要重新輸入,正確時要讀取各數(shù)據(jù)的值存入相應的表中,對于存入時顯示失敗的數(shù)據(jù)要進行重新的讀取。基本信息管理模塊程序流程如圖5-1所示。圖5-1基本信息管理程序流程圖本模塊中各界面主要用到了文件框控件、驗證控件、按鈕控件及表格。其中取出各文本框所輸入的值并存到數(shù)據(jù)庫中表的代碼如下:protectedvoidButton1_Click(objectsender,EventArgse){//取出對應的文本框stringCompanyType=Return_Title();stringCompanyName=this.CompanyName.Text.ToString();stringCompanyShort=this.CompanyShort.Text.ToString();stringCompanyAddress=this.CompanyAddress.Text.ToString();stringPostalcode=this.Postalcode.Text.ToString();stringTel=this.Tel.Text.ToString();stringFax=this.Fax.Text.ToString();stringLinkman=this.Linkman.Text.ToString();stringEmail=this.Email.Text.ToString();boolYesNo=newSqlDataBase().RunSql_Return_Bool(CmdTxt);//判斷添加后返回結(jié)果,如果正確則返回的是1if(YesNo){JScript.AlertAndRedirect("添加成功!","Add_UserInfo.aspx?Flag="+QueryString.Get_Flag+"");}else{JScript.GoHistory("添加失敗",-1);}}5.1.2商品進貨管理模塊實現(xiàn)首先輸入訂單數(shù)據(jù),當驗證其格式等為正確時則要讀取所輸入的數(shù)據(jù)值,當保存成功時程序結(jié)束,否則程序重新讀取所輸入的值。商品進貨管理模塊程序流程圖如圖5-2所示。

圖5-2商品進貨管理程序流程圖本模塊的界面主要用到驗證控件、文本框控件、日歷控件、按鈕等。其主要代碼如下://計算輸入的金額是否正確if(Number*Pirce<Payment){Response.Write("<script>alert('應付金額填寫錯誤');history.back()</script>");Response.End();}stringCmdTxt="insertintoStock(CommodityId,CompanyId,Number,Pirce,StockDate,SettlementType,Payment,FactPayment,NotPayment,ManageMan,Username,AddTime,Type)values('"+CommodityId+"','"+CompanyId+"','"+Number+"','"+Pirce+"','"+StockDate+"','"+SettlementType+"','"+Payment+"','"+FactPayment+"','"+NotPayment+"','"+ManageMan+"','"+Username+"','"+AddTime+"','"+Type+"')";boolYesNo=newSqlDataBase().RunSql_Return_Bool(CmdTxt);//判斷添加后返回結(jié)果,如果正確則返回的是1if(YesNo){JScript.AlertAndRedirect("添加成功!","Add_Stock.aspx");}else{JScript.GoHistory("添加失敗",-1);}5.1.3銷售訂單管理模塊實現(xiàn)程序首先從訂單表中讀取相應的銷售訂單數(shù)據(jù),然后再從公司信息表中讀取客戶信息,根據(jù)客戶聯(lián)系方式發(fā)送電子郵件進行確認,對于發(fā)送完郵件確認的訂單進行貨物上發(fā)送處理并及時更新訂單狀態(tài)。銷售訂單管理模塊程序流程如圖5-3所示。圖5-3銷售訂單管理程序流程圖本模塊的界面主要用到了SqlDataSource控件、GridView控件、文本框控件,在電子郵件的發(fā)送上調(diào)用了組件Interop.ADODB.dll與Interop.CDO.dll。主要實現(xiàn)代碼如下:publicvoidIsPage_Bind(){if(QueryString.Get_Id!=null&&QueryString.Get_Flag!=null){if(QueryString.Get_Flag.ToString()=="1"){Panel_SendMail.Visible=true;stringCmdTxt="SELECTCommodityName,Number,Pirce,StockDate,SettlementType,Payment,FactPayment,NotPayment,EmailFROMsellWhereid="+QueryString.Get_Id+"";SqlDataReadersdr=newSqlDataBase().GetDataReader(CmdTxt);if(sdr.Read()){txt_Title.Text="關于貴公司購買我司“"+sdr["CommodityName"].ToString()+"”的確認通知";txt_Email.Text=sdr["Email"].ToString();txt_Body.Text="貴方于"+sdr["StockDate"].ToString()+",采購我司“"+sdr["CommodityName"].ToString()+"”,付款方式:"+sdr["SettlementType"].ToString()+",數(shù)量"+sdr["Number"].ToString()+",單價:"+sdr["Pirce"].ToString()+",應付:"+sdr["Payment"].ToString()+",已支付:"+sdr["FactPayment"].ToString()+",未支付:"+sdr["NotPayment"].ToString()+"。\n請貴公司核對!\n恭祝商祺!";}sdr.Close();sdr.Dispose();}else{newSendMail().Update_Stock_Email(QueryString.Get_Id);//更新訂單狀態(tài)}}}publicvoidToSend(){SendMailSM=newSendMail();SM.To=txt_Title.Text.Trim();SM.Subject=txt_Title.Text.Trim();SM.Body=txt_Body.Text.Trim().Replace("\n","<br/>");SM.Id=QueryString.Get_Id;SM.GoSend(SM);}protectedvoidbtnAdd_Click(objectsender,EventArgse){ToSend();}5.1.4查詢統(tǒng)計模塊實現(xiàn)輸入查詢條件,當查詢條件值輸入正確時則輸出所有滿足條件記錄。查詢統(tǒng)計模塊程序流程如圖5-4所示。圖5-4查詢統(tǒng)計程序流程圖查詢統(tǒng)計界面設計主要用到了復選框控件、文本框控件及SqlDataSourcet等控件。其主要實現(xiàn)代碼如下:publicvoidbind(){stringstrsql,type;if(Request["type"]=="se"){type="銷售信息";}else{type="銷售退貨";}Label1.Text=type;strsql="select*fromsellwheretype='"+type+"'"+Session["sql"]+"orderbyiddesc";SqlConnectionstrcon=newSqlConnection(ConfigurationManager.ConnectionStrings["SellOrder_ConnectionString"].ConnectionString);strcon.Open();SqlDataAdaptersda=newSqlDataAdapter(strsql,strcon);DataSetds=newDataSet();sda.Fill(ds,"search");GridView1.DataSource=ds.Tables["search"];GridView1.DataKeyNames=newstring[]{"id"};GridView1.DataBind();}5.1.5賬務管理模塊實現(xiàn)從訂單表中讀取相應訂單記錄,再對其結(jié)款信息進行輸入,最后進行賬款上的更新。賬務管理模塊程序流程如圖5-5所示。圖5-5賬務管理程序流程圖此模塊界面主要用了GridView控件,在其各單元顯示相應單據(jù)編號及結(jié)賬按鈕的代碼如下:stringid=e.Row.Cells[3].Text.ToString();stockClasssc=newstockClass();intnot=sc.not(id);if(not==0){e.Row.Cells[3].Text="<fontcolor=red>已結(jié)款</font>";((Button)(e.Row.Cells[6].Controls[0])).Enabled=false;}else{e.Row.Cells[3].Text=Convert.ToString(not);}//單據(jù)編號stringmonth=Convert.ToDateTime(((HyperLink)(e.Row.Cells[5].Controls[0])).Text).Month.ToString();if(month.Length<2){

溫馨提示

  • 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

提交評論