




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
年5月29日網上銷售訂單管理系統論文文檔僅供參考摘要隨著科學技術的不斷提高,其強大的功能已為人們深刻認識,”現代化管理”的理念隨之也成為企業發展的原動力。”現代化管理”手段具有檢索迅速、可靠性高、存儲量大、保密性好等優點。這些優點能夠極大的提高一個企業、公司銷售管理的效率。利用網絡和數據庫技術,基于B/S模式開發了網上銷售訂單管理系統這一ASP.NET應用程序。本系統開發平臺采用VisualStudio,開發語言采用C#,后臺數據庫采用SQLServer。本系統是一個典型的信息管理系統(MIS),它運用方便,操作簡單,效率很高,實現了對銷售訂單登記、訂單確認、貨物發送、訂單查詢及退貨結賬等功能。它取代了傳統的手工對訂單管理,從而減少了銷售數據誤差并實現了數據規范化,能夠滿足銷售單位高效管理要求。本文介紹了網上銷售訂單管理系統的開發工具、開發平臺;系統需求分析部分主要包括業務流程圖、數據流圖、功能需求等;系統設計部分主要介紹了系統功能設計、數據庫設計及代碼設計;系統實現部分說明了幾個主要模塊的算法,并附帶了一些主要的窗口和程序。關鍵詞銷售管理;訂單管理;結賬處理AbstractWiththecontinuousimprovementofthescience&technology,itsgreatfunctionhasbeenrecognizeddeeplybyhuman,alongwiththat”themodernmanagement”alsobecomesthemotilityofbusinessdevelopment.”Themodernmanagement”hassuchadvantageslikerapidsearching,highreliability,largestoragelevel,goodconfidentiality,andsoon.Theseadvantagescouldincreasetheefficiencyofabusinessorcompany’ssalesmanagementinalargeextent.Byuseoftheskillofnetworkanddatabase,wedeveloptheordercontrolofonlinemarketingwhichisanASP.NETapplicationprogramthatbaseonB/Smode.ThissystemdevelopmentplatformadoptsVisualStudio,thedevelopmentlanguageadoptsC#,thebackgrounddatabaseadoptstheSQLServer.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章緒論 11.1課題背景 11.2課題意義 11.3系統設計思想 21.3.1系統開發模式 21.3.2系統開發平臺 31.3.3系統運行環境 41.3.4系統設計原則 41.3.5系統設計目標 5第2章需求分析 72.1需求分析重要性 72.2可行性分析 72.2.1經濟可行性 82.2.2技術可行性 82.2.3運行可行性 92.3業務流程圖 92.4數據流圖 112.5數據字典 132.6本章小結 15第3章概要設計 163.1系統功能設計 163.2數據庫設計 173.2.1數據庫設計的特點 183.2.2數據庫設計基本步驟 183.2.3數據庫邏輯設計(E-R圖) 203.2.4數據庫表結構 213.3本章小結 23第4章詳細設計 244.1系統主界面設計 244.2基本信息管理功能設計 244.3商品進貨管理功能設計 264.4銷售訂單管理功能設計 274.5查詢統計功能設計 294.6賬務管理功能設計 314.7本章小結 32第5章系統實現與測試 335.1各個模塊功能實現 335.1.1基本信息管理模塊實現 335.1.2商品進貨管理模塊實現 355.1.3銷售訂單管理模塊實現 365.1.4查詢統計模塊實現 385.1.5賬務管理模塊實現 395.2軟件測試 415.2.1為什么要進行測試 415.2.2測試的基本概念 415.2.3系統測試 425.3本章小結 43第6章系統主要功能使用說明 446.1登錄系統 446.2基本信息管理 446.3銷售訂單管理 466.4查詢統計 476.5賬務管理 486.6本章小結 48結論 49致謝 50參考文獻 51附錄1 52附錄2 54附錄3 57第1章緒論1.1課題背景隨著科學技術與網絡技術的迅速發展,”現代化管理”的理念已成為企業發展的原動力。產品銷售管理歷來是企業管理中重要的組成部分,一個大型公司每天要完成的銷售訂單事務十分繁瑣復雜,而且業務涉及多個不同的客戶,但傳統的銷售管理是以人員管理為主,這種管理方式存在著許多缺點,因此銷售訂單管理系統對企業有著十分重要的意義。訂單管理系統(OMS)是物流管理系統的一部分,經過對客戶下達的訂單進行管理及跟蹤,動態掌握訂單的進展和完成情況,提升物流過程中的作業效率,從而節省運作時間和作業成本,提高物流企業的市場競爭力。訂單管理系統的主要功能是經過統一訂單提供用戶整合的一系列供應鏈服務,訂單管理以及訂單跟蹤管理能夠使用戶的物流服務得到全程的滿足。訂單管理系統是物流管理鏈條中的不可或缺的部分,經過對訂單的管理和分配,使倉儲管理和運輸管理有機的結合,穩定有效地實現物流管理中各個環節充分發揮作用,使倉儲、運輸、訂單成為一個有機整體,滿足物流系統信息化的需求。銷售訂單管理是對商戶下達的各種指令進行管理、查詢、修改等功能,同時將業務部門處理信息反饋至商戶。銷售訂單管理系統一般包括:訂單登記,訂單確認,訂單狀態管理等。”現代化管理”手段具有檢索迅速、可靠性高、存儲量大、保密性好等優點。這些優點能夠極大的提高一個企業、公司銷售管理的效率。現代市場要求一個企業、公司在瞬息萬變的商業領域內及時獲取全面具體信息,快速準確的地做出決策,因此對銷售訂單管理系統的開發與應用是必不可少的。1.2課題意義借助現代信息技術和管理理論,建立企業、公司管理信息系統是當今社會的重要趨勢。在企業、公司管理中,人力資源是企業最寶貴的資源,也是企業的”生命線”,而產品銷售管理又是企業、公司資源管理的重中之重。實行電子化的銷售信息管理,能夠讓銷售管理人員從繁重瑣碎的案頭工作解脫出來,去完成更重要的工作。銷售訂單管理系統它的開發意義在于:首先提高各廠商之間的合作效率,促進聯盟的建立,增強企業在市場上的競爭力;而且能夠使移動辦公的銷售人員能夠及時的遠程訪問公司發布的應用系統。其次銷售管理系統幫助用戶監督產品銷售的全過程。使用戶和銷售人員十分清晰的了解到企業內部的各個方面的信息。以銷售訂單為中心,動態跟蹤銷售訂單的執行情況,以及銷售訂單的賬款情況。經過交期回答功能,銷售人員能準確提供交貨日期及輕松掌握企業產品的銷售情況。經過與庫存管理、生產管理、財務管理等系統的無縫銜接,使企業生產的產品符合用戶、客戶的個性化要求。1.3系統設計思想1.3.1系統開發模式本系統采用B/S結構,即Browser/Server(瀏覽器/服務器)結構,是隨著Internet技術的興起,對C/S結構的一種變化或者改進的結構。在這種結構下,用戶界面完全經過WWW瀏覽器實現,一部分事務邏輯在前端實現,可是主要事務邏輯在服務器端實現。B/S結構,主要是利用不斷成熟的WWW瀏覽器技術,結合瀏覽器的多種Script語言(VBScript、JavaScript等)和ActiveX技術,用通用瀏覽器實現了原來需要復雜專用軟件才能實現的強大功能,并節約了開發成本,是一種全新的軟件系統構造技術。這種結構更成為當今應用軟件的首選體系結構。內容繁多的使用說明書和花費許多時間的培訓,并不能稱為”良好的售后服務”,真正好的產品的功能越來越復雜的同時應該使產品的使用越來越簡單。用瀏覽器作為軟件界面不但容易統一各種應用系統,也非常方便使用。無論用戶的規模有多大,有多少分支機構都不會增加任何維護升級的工作量,所有的操作只需要針對服務器進行,如果是異地只需要把服務器連接到網即可立即進行維護和升級,這對人力、時間、費用的節省是相當驚人的。使用B/S只需要管理服務器就行了,所謂的客戶端只是瀏覽器,根本不需要做任何的維護。因此客戶機越來越”瘦”,而服務器越來越”胖”是將來軟件的主流發展方向,這使得升級和維護越來越容易使用越來越簡單。根據上面的介紹,用Browser/Server結構來設計網上銷售訂單管理系統是合理可行的,而且是先進的。1.3.2系統開發平臺本系統開發平臺采用ASP.NET,它是微軟公司的應用開發平臺,是.NET框架中的一個核心部分,是當前流行的動態服務器主頁(ActiveServerPage,ASP)技術的下一代產品。ASP.NET是一個完整的、可擴展的Web
應用程序開發框架,它提出了一種用于創立內容豐富的動態網站、Web應用程序和XMLWeb服務的新編程模型。與以往的編程模型相比,這種新編程模型提供了基于組件的架構和開發的范型。ASP.NET繼承了.NET框架中的編程模型,這種新的應用開發平臺能夠把C++、Java等面向對象語言的特征與MicrosoftVisualBasic語言簡易開發的能力相互結合起來。.NET框架的特征是運行期執行環境和在其上層的豐富類庫。它對多語言的支持和豐富的自定義控件編制,這些都有利于程序的開發。雖然ASP與ASP.NET都用來開發Web應用程序,但ASP.NET運行的方式和ASP差異有天壤之別。當用戶發出一個ASPX網頁的要求后,ASP.NET引擎(xspisapi.dll)會將ASPX的網頁轉換成源程序代碼(SourceCode),然后編譯成一個DLL文件,接著將網頁當成一個類(Class),在內存中建立此對象的實體(ObjectInstance)并進行初始化操作。最后才將執行結果返回到客戶端。ASP.NET運行過程如圖1-1所示。圖1-1ASP.NET運行過程VisualStudio與ASP.NET2.0相結合增加了許多功能:1.ASP.NET2.0是編譯好的公共語言運行庫代碼,代碼運行在服務器上。它能夠利用早期綁定、實時編譯、本機優化服務,相當于在編碼前就提高了應用程序性能。2.ASP.NET2.0框架補充了VisualStudio集成開發環境中的大量工具箱和設計器。3.ASP.NET2.0執行常見任務變得容易,而且采用基于文本的分層配置系統,簡化了程序的開發過程。4.VisualStudio集成了大量的新增控件而且簡化了代碼的編寫,提高了編程效率,可靈活編寫用戶自定義控件,方便了編程。從技術的先進性、成熟性、程序執行效率來講采用ASP.NET技術都有利于程序開發。1.3.3系統運行環境1.軟件運行平臺本系統設計運行在Windows/NT/XP操作環境下,因為該系統界面友好,易學易用為大多數辦公人員所熟悉而且價格適中。系統軟件:Windows/NT/XP數據庫:SQLServerIIS:IIS5.0或IIS6.0瀏覽器:IE5.0以上版本2.硬件運行平臺本系統對服務器硬件的基本標準如下:CUP:P4或者更高級別的處理器內存:512MB以上硬盤空間:10G以上顯示器:普通彩色顯示器鍵盤:普通標準鍵盤鼠標:機械鼠1.3.4系統設計原則對于開發一個大型的計算機管理系統,特別是在企業銷售運作中扮演重要角色的銷售訂單管理系統,必須滿足企業銷售過程中管理上的要求。本系統考慮了最為普遍的銷售訂單管理需求,是針對一般銷售公司而設計,在考慮系統功能的同時也對操作界面的設計進行了統一規劃以使操作界面友好。采用B/S結構,用戶端只需要密碼登錄,不需要安裝程序,便于系統維護和保密。本系統的設計按照下述原則進行:1.實用性:系統以用戶需求為目標,以方便用戶為原則,同時融入先進的管理經驗。系統界面友好,操作簡單,企業的工作人員只需掌握一些基本電腦使用方面的知識,要求會打字,這樣簡單進行培訓能夠輕松使用本系統,無須企業花費多少財力物力來培訓員工。2.先進性:本設計將充分應用現有成熟的計算機技術、網絡技術、軟件開發技術,為用戶提供高性能的系統。數據庫采用SQLServer,開發平臺選用MicrosoftVisualStudio。3.高可靠性:一個實用的系統同時必須是可靠的,本設計經過合理而先進的網絡設計以及軟、硬件的優化選型,可保證系統的可靠性與容錯性。4.高安全性:在設計中,將充分利用網絡軟、硬件提供的各種安全措施,既能夠保證用戶共享資源,同時也可保證關鍵數據的安全性。系統將運用先進的B/S(瀏覽器/服務器)結構,為不同用戶設定不同權限,便于系統維護和保密。5.采用標準技術:本系統的所有設計遵循國際上現行的標準進行,以提高系統的開放性。6.可維護性:系統的設計要求方便維護,包括硬件的維護,軟件的維護(更改,升級等)和網絡的維護。7.可擴展性及靈活性:系統的設計以方便未來業務的擴展和系統擴充為目標,系統要求能夠方便的升級,充分保護系統的投資。8.智能性:系統在設計時,充分考慮系統運行的智能性,盡量的使程序智能化,在使用系統一段時間后,系統能夠和所處部門的業務相融合。1.3.5系統設計目標登錄系統的主要功能要求:1.歡迎頁面。2.功能登陸頁面及密碼驗證。網上銷售訂單的主要功能實現目標:1.利用Session對象對用戶進行驗證工作。2.能夠對客戶、供應商、商品進行添加與相應的管理,并在添加時對相應字段進行格式要求。3.能夠對訂單進行分類登記,若庫存不足時提示重新輸入值,根據數量與單價自動產生應付款值,根據應付款與已付款產生未付款值。4.對于已登記的銷售訂單轉入第二步處理:訂單確認。主要分為兩種確認方法,分別是發送電子郵件、通知客服。發送電子郵件時,能夠根據訂單信息顯示相應的郵件內容發送給客戶進行確認。5.確認完的銷售訂單轉入第三步處理:貨物發送。這一步主要是對銷售訂單發貨情況進行確認管理。6.各類訂單可根據訂單類型進行相應的付款結賬,在結賬時顯示未付款金額,可經過訂單號查看其詳細信息,每一次結賬細節都可查看其相應的結賬明細,支持多次付款。7.能夠對庫存商品的剩余量,銷售量進行查詢。可根據不同的條件對各種訂單進行查詢。從上面的分析能夠看出:系統設計必須從保證系統的可變更性入手,設計出一個易于理解,易于維護的系統。需要注意以下幾個問題:1.把系統劃分為一些部分,其中每一部分的功能簡單明確,內容簡明易懂,易于修改,我們把這樣的部分稱為模塊。2.系統分成模塊的工作按層次進行。首先把整個系統看成一個模塊按功能分解成若干個第一層模塊,這些模塊相互配合,共同完成整個系統的功能。然后按功能再分解第一層的各個模塊。依次下去,直到每一個模塊都十分簡單。3.每一個模塊應盡可能獨立,即盡可能減少模塊間的調用關系和數據交換關系。當然,系統中的模塊不可能與其它模塊沒有聯系,只是要求這種聯系盡可能少。4.模塊間的關系要闡明,這樣在修改時能夠追蹤和控制,總之一個易于修改的系統應該有一些相對獨立、功能單一的模塊按照層次結構組成。這些模塊之間不必要的聯系都已去掉,而且它們的功能及其相互關系都已闡明。這就是結構化設計的基本思想。第2章需求分析2.1需求分析重要性所謂管理信息系統(ManagementInformationSystem)系統,是一個由人、計算機及其它外圍設備等組成的能進行信息的收集、傳遞、存貯、加工、維護和使用的系統,是一門新興的科學,其主要任務是最大限度的利用現代計算機及網絡通訊技術加強企業的信息管理,經過對企業擁有的人力、物力、財力、設備、技術等資源的調查了解,建立正確的數據,加工處理并編制成各種信息資料及時提供給管理人員,以便進行正確的決策,不斷提高企業的管理水平和經濟效益。無論采用何種方法開發管理信息系統,系統分析工作都是十分重要的環節。軟件的需求分析是軟件生存周期中重要的一步,也是最為關鍵的一步。只有經過軟件需求分析,才能把軟件功能和性能的總體概念描述為具體的軟件需求規格說明,進而建立軟件開發的基礎。需求分析的任務是分析員經過需求分析提供一種可轉化為數據設計、結構設計和過程設計的數據與功能表示,在軟件完成后,需求分析階段研究的對象是軟件項目的用戶要求。軟件需求分析工作是軟件計劃階段完成之后開始的,其主要目的是:要綜合分析用戶對系統提出的一組需求(功能、性能、數據等方面)的基礎上,構造一個從抽象到具體的邏輯模型表示軟件將要實現的需求,并以”軟件需求規格說明書”的形式作為本階段工作的結果,為下一階段的軟件設計提供設計基礎。軟件需求分析階段,結合所用的開發工具:ASP.NET,SQLSever對問題進行了分析和深入的了解,建立了實現目標軟件邏輯模型與物理模型。2.2可行性分析可行性分析的目的就是用最小的代價在盡可能短的時間內確定問題是否可解決。可行性研究的目的不是解決問題,而是確定問題是否值得去解決。一般來說至少達到以下三個可行性:經濟可行性:本系統所帶來的經濟利益能否超過它的開發成本。技術可行性:使用現有的技術能否實現這個系統。運行可行性:系統的操作方式是否為用戶所接受。2.2.1經濟可行性經濟可行性研究主要進行成本效益分析,包括估計項目的開發成本,估算開發成本是否會高于項目預期的全部利潤,同時還要看此軟件是否能夠為用戶帶來經濟效益。由于ASP.NET程序設計采用結構化設計思想,且具有語言簡單易學、開發快捷等特點,因此用ASP.NET一些可預見的風險可降到最低,如技術問題,人員流失等,從而保證了項目的開發周期,節約了時間成本,也極大減少了對程序員的培訓資金;ASP.NET開發的應用程序易于維護,可降低產品后期的維護成本,提高項目利潤點,網上銷售訂單管理系統開發的目的是為了提高用戶工作效率,方便操作與管理而設計。開發此軟件并不需要大量的經費,而是個人獨立設計,因此從經濟角度來講,因此本系統的開發經濟上是完全可行的。2.2.2技術可行性根據該系統目標來衡量所需的技術是否具備,一般可從硬軟件的性能要求、環境條件、操作人員水平和數量等方面去考慮和分析。考慮到系統技術可行性,在軟件方面選擇了如今較流行的ASP.NET2.0來進行開發管理平臺的設計,使用SQLServer數據庫存儲數據。 Microsoft的動態服務器網頁ASP.NET技術,語法簡單,很容易被程序員所接受,且調試起來也比較容易。從B/S的開發模式,ASP.NET技術的先進性方面考慮,ASP.NET無非是一個最好的技術。微軟公司提供了豐富的ASP.NET技術資源庫,供程序員及用戶查詢,同時也有強大的技術服務中心,使技術風險降到最低,這是任何一門WEB語言在當前形勢下不可比擬的。與ASP.NET1.X相比,ASP.NET2.0中加入了更多的新特性,使得開發人員在工作效率、管理、擴展性和性能等方面均有了大幅度的提高。ASP.NET2.0引入了許多新的服務器控件,從而能夠為數據訪問、登錄安全、向導導航、菜單、樹視圖及門戶等提供功能強大的聲明性支持。因此在軟件方面,此系統是可行的。在硬件方面,則選擇空間較大,只要是P4系列及以上的計算機,內存在256M以上,硬盤在10G以上,都能夠滿足系統的開發需要。當然,硬件的配置越高,系統的開發與運行會更流暢。考慮到如今的家用或商用電腦硬件的整體配置水平,系統在硬件方面是完全可行的。2.2.3運行可行性管理形式的計算機網絡化是社會發展的必然趨勢,各種智能化的軟件層出不窮。本系統直接面向用戶,界面設計時充分考慮管理人員的習慣,使得操作簡單;數據錄入迅速、規范、可靠;統計準確;制表靈活;適應力強;容易擴充。對于初次使用本系統的用戶,不必經過復雜的培訓和學習就能夠掌握系統的操作流程。由此可見,開發此軟件在運行上是可行的。利用網絡和數據庫技術,基于B/S模式開發了網上銷售訂單管理系統這一ASP.NET應用程序。本系統開發平臺采用VisualStudio,開發語言采用C#,后臺數據庫采用SQLServer。它運用方便,操作簡單,效率很高,實現了對銷售訂單登記、訂單確認、貨物發送、訂單查詢及退貨結賬等功能。它取代了傳統的手工對訂單管理,從而減少了銷售數據誤差并實現了數據規范化,能夠滿足銷售單位高效管理要求,本系統具有一定的實際開發價值和使用價值。2.3業務流程圖管理業務流程圖是一種描述系統內各單位、人員之間業務關系、作業順序和管理信息流向的圖表,經過它能夠幫助分析人員找出業務流程中的不合理的流向。在業務流程圖中圓形代表系統中人員,矩形代表系統外實體,箭頭代表數據、報表賬目的流向。本系統主要是對銷售訂單進行管理,但在銷售這一環節的管理上與庫存有密切的聯系,因此對庫存的進貨訂單也有相應的管理。總體業務流程描述如下:1.銷售訂單登記:將每一筆銷售信息進行登記,以便財務進行賬款上的處理而且也便于對銷售統計的查詢。2.訂單確認:根據客戶的聯系方式將所接受的訂單具體信息與其進行確認。使客戶及時了解訂單處理狀態,也便于對訂單進行流程化管理。3.貨物發送:將與客戶確認過的訂單進行貨物上的發送。4.賬款結算:對于訂單賬款進行管理,對于每張訂單應付款、已付款、未付款及每次付款記錄都有詳細記載。其過程是:訂單管理員要對庫管部門的進貨訂單與進貨退貨訂單進行登記,再將訂單送財務部門供其賬款結算使用,財務部門將訂單賬款信息送訂單管理員,由訂單管理員對訂單付款信息進行更新。對于客戶的退貨信息由售后部門做出相關處理制定銷售退貨單送訂單管理員進行登記,再由財務部門對賬款進行管理。本系統業務流程圖如圖2-1所示。圖2-1系統業務流程圖當接收到客戶銷售訂單時,訂單操作人員要根據客戶相關信息來確認此訂單是否有效,若訂單有效則要判斷庫存量是否充分,對于不充分的情況要即時通知庫管部門,充分的情況下要經過相應聯系方式通知客戶其訂單已被受理。對于銷售出庫或銷售退貨要進行相關的減庫存或加庫存作業。銷售訂單處理步驟如圖2-2所示。圖2-2銷售訂單處理步驟2.4數據流圖在詳細描述系統功能時,使用數據流圖能清晰的描繪數據的流向以及整個系統工作的流程。數據流圖是表示系統邏輯模型的常見工具,圖中不存在任何具體的物理元素,只表示信息在系統中流動和處理的情況。數據流圖是邏輯系統的圖形化表示,因此,它是系統分析員與用戶進行交流的極好工具。同時也是系統分析員與系統設計人員之間的交流工具。在數據流圖中矩形代表數據輸入的源點和數據的匯點。圓形代表加工,輸入數據在此進行變換產生輸出數據。箭頭代表數據流,被加工的數據與流向。對于新客戶的銷售訂單先要向公司信息表中添加此客戶的相關基本信息如公司名稱、聯系方式等。對于所銷售的各類商品信息若沒有其相關記錄則要先進行添加如商品名稱、供應商、產地等信息。接收到客戶的銷售訂單時,訂單操作人員根據用戶的相關信息如聯系方式、預付款等條件判斷是否接受此訂單,即確定訂單是否有效,對于有效的訂單要將其轉入訂單流程化管理。訂單查詢支持多條件查詢如按照供應商、客戶、時間等,同時也將從結賬信息表中檢索其有關的結賬信息。賬務管理支持多次的結賬處理,每次結賬金額與時間有明確記錄。根據以上分析系統數據流圖如圖2-3所示。圖2-3系統數據流圖2.5數據字典數據字典是關于數據的信息的集合,也就是對數據流圖中的所有元素的定義的集合。數據字典的作用是在軟件分析和設計的過程中給人提供關于數據的描述信息。它主要是對數據流圖中的數據流、處理邏輯、外部實體、數據存儲和數據項等方面進行具體的定義。數據流程圖配以數據字典,就能夠從圖形和文字兩個方面對系統的邏輯模型進行完整的描述。1.數據項定義:對于本系統中所用到的數據項如表2-1所示。表2-1系統數據項定義編號名稱別名類型長度I01-01CompanyName公司名稱varchar50字節I01-02CompanyType公司類型varchar50字節I01-03CompanyShort公司簡稱varchar50字節I01-04CompanyAddress公司地址varchar50字節I01-05Postalcode郵政編碼varchar50字節I01-06Tel聯系電話varchar50字節I01-07Fax傳真varchar50字節I01-08Linkman聯系人varchar50字節I01-09Email電子郵件varchar50字節I01-10Bank開戶銀行varchar50字節I01-11BandAccounts銀行賬戶varchar50字節I01-12Username操作人varchar50字節I01-13AddTime添加日期varchar50字節I01-14CommodityName商品名稱varchar100字節I01-15ShortName商品簡稱varchar50字節I01-16ProducePlace產地varchar100字節I01-17Unit單位varchar20字節I01-18Specs規格varchar50字節I01-19PassNumber批號varchar50字節I01-20PassList批準文號varchar50字節I01-21CompanyId供應商IDint4字節續表2-1I01-22Remark備注varchar500字節I01-23total數量int4字節I01-24CommodityId商品IDint4字節I01-25Number數量int4字節I01-26Price單價decimal5字節I01-27StockDate日期datetime8字節I01-28SettlementType付款方式varchar50字節I01-29Payment應付金額decimal5字節I01-30FactPayment實付金額decimal5字節I01-31NotPayment未付金額decmial5字節2.數據流定義:系統數據流定義:數據流編號:D1-02數據流名稱:商品信息數據流來源:P1-01數據流去向:F1-02簡述:公司所銷售商品信息數據流組成:I01-14+I01-15+I01-16+I01-17+I01-18+I01-19+I01-20+I01-21+I01-22+I01-23數據流編號:D1-06數據流名稱:銷售訂單詳細信息數據流來源:P1-06數據流去向:F1-03簡述:有效的銷售訂單詳細信息數據流組成:I01-24+I01-21+I01-25+I01-26+I01-27+I01-28+I01-29+I01-30+I01-31+I01-32+I01-13+I01-21數據流編號:D1-15數據流名稱:訂單結賬信息數據流來源:P1-05數據流去向:F1-04簡述:各類訂單賬款支付信息數據流組成:I01-24+I01-35+I01-32+I01-36+I01-12+I01-132.6本章小結本章主要對網上銷售訂單管理系統進行了需求分析。需求分析是在可行性研究基礎上進行的,同時又描繪了本系統的業務流圖,在業務流圖的基礎上對銷售訂單處理步驟進行了分析。經過本系統數據字典與數據流圖的配合描述了系統邏輯模型。經過對本系統進行需求分析得到了用戶所要求實現的功能,也對后面將要進行的概要設計打下了良好的基礎。第3章概要設計問題定義、可行性研究和需求分析構成了了軟件分析階段,在這個階段確定了需要做什么和系統需求規格。而軟件開發階段的任務是概括地回答系統如何實現的問題。軟件開發階段包括概要設計、詳細設計、編碼和測試等。概要設計從概念上分為結構設計和詳細設計兩個階段。結構設計又稱為總體設計,其主要的任務是制訂系統實現方案和設計規范并合理確定軟件系統整體模塊結構及接口關系。詳細設計,也稱為模塊設計,其主要任務是詳細規定每個模塊功能的實現算法。本章將主要對軟件總體設計進行了相關描述。本軟件設計遵循以下幾個原則:1.將軟件劃分成若干個獨立成分的依據。2.表示不同的成分內的功能細節和數據結構。3.統一衡量軟件設計的技術質量。3.1系統功能設計利用層次方框圖來表示系統中各模塊之間的關系。層次方框圖用樹型結構一系列多層次的矩形框描述數據的層次結構。樹形結構的頂層是一個單獨的矩形框,它代表完整的數據結構,下面的各層矩形代表這個數據的子集,最底層的各個框代表組成這個數據的實際數據元素。隨著結構化的精細化,層次方框圖對數據結構也描繪得越來越細,這種模式非常適合于需求分析階段的需要。本系統一共分為五個模塊,每個模塊之間雖然在表面上是相互獨立的,可是在對數據庫的訪問上是緊密相連的,各個模塊訪問的是同一個數據庫,只是所訪問的表不同而已。每個模塊的功能都是按照在調研中搜集的資料進行編排制作的。依據上述功能的分析,系統中模塊分別為:基本信息管理、商品進貨管理、銷售訂單管理、查詢統計、賬務管理。各功能模塊的具體功能如下:1.基本信息管理:主要是對供應商、客戶、商品進行添加與管理。2.商品進貨管理:針對各類商品的進貨單進行登記,并對商品進貨中進貨退貨進行處理。3.銷售訂單管理:針對銷售訂單進行訂單登記、訂單確認、貨物發送及銷售退貨進行登記與處理,完成訂單一系列流程化的處理過程。4.查詢統計:可選擇不同的查詢條件,輸入不同的查詢值,主要是對商品庫存量及各類訂單信息進行查詢。5.賬務管理:主要是對各類訂單進行貨款上的結算,可支持多次付款結算,并可進行付款詳細信息查看。系統功能結構圖如圖3-1所示。圖3-1系統功能結構圖3.2數據庫設計數據庫設計是建立在數據庫及其應用系統的技術,是信息系統開發和建設中的核心技術,具體說,數據庫設計是指對于一個給定的應用環境,構造最優的數據庫模式,建立數據庫及其應用環境,使之能夠有效地存儲數據,滿足各種用戶的應用需求(信息要求和處理要求)。大型數據庫的開發是一項龐大的工程,其開發周期長,耗資多、涉及到多科學的綜合性技術。對于從事數據庫設計的人員來講應具備以下幾點:1.數據庫的基本知識和數據庫設計論述。2.計算機科學的基礎知識和程序設計的方法和技術。3.軟件工程的原理和方法。4.應用領域的知識。3.2.1數據庫設計的特點數據庫技術是應數據管理任務的需要而產生的。早期的數據庫設計中數據不具備獨立性而且不能共享,而且數據需要由應用程序自己管理,沒有相應的軟件系統負責數據的管理工作。早期人工管理階段,程序與數據之間是一對一的關系。傳統的軟件工程忽視對應用程序中數據語義的分析和抽象。數據模式是各應用程序共享的結構,是穩定的,永久的,不像以文件系統為基礎的應用系統,文件是某一應用程序私用的。數據庫設計的成功與否直接影響著系統中個處理過程的性能和質量。在進入數據庫系統階段時,數據具有了結構化、獨立性高的特點。在此階段數據與程序的獨立,把數據的定義從程序中分離出去,加上數據的存取又由DBMS負責,從而簡化了應用程序的編制,大大減少了應用程序的維護和修改。考慮應用環境要求與數據庫結構的關系,因此結構設計與行為設計是分離的。3.2.2數據庫設計基本步驟由于信息結構復雜,應用環境多樣,在相當長的一段時間內數據庫設計主要采用手工湊法。由于這種方法受到設計人員經驗和水平的影響,數據庫的設計成為了一種技藝而不是工程技術,缺乏科學理論和工程方法的支持,工程的質量難以保證,常常是數據庫運行一段時間后出現不同程度問題,增加了系統維護的代價。因此人們提出了各種數據庫設計方法、設計準則和規程。按照規范設計的方法,考慮數據庫及其應用系統開發全過程,將數據庫設計分為以下六個階:1.需求分析階段進行數據庫設計首先必須準確了解與分析用戶需求(包括數據與處理)。需求分析是整個設計過程的基礎,是最困難、最耗時間的一步。作為基礎的需求分析是否做得充分與準確,決定了在其上構建數據庫大廈的速度與質量。需求分析做得不好,甚至會導致整個數據庫設計返工重做。2.概念結構設計階段概念結構設計是整個數據庫設計的關鍵,它經過對用戶需求進行綜合、歸納與抽象,形成一個獨立于具體DBMS的概念模型。3.邏輯結構設計階段邏輯結構設計階段是將概念結構轉換為某個DBMS所支持的數據模型,并對其進行優化。4.數據庫物理設計階段數據庫的物理設計是為邏輯數據模型選取一個最適合應用環境的物理結構(包括存儲結構和存取方法)。5.數據庫實施階段數據庫實施階段,設計人員運用DBMS提供的數據語言及其宿主語言,根據邏輯設計和物理設計的結果建立數據庫,編制與調試應用程序,組織數據入庫,并進行試運行。6.數據庫運行和維護階段數據庫應用系統經過試運行后即可投入正式運行。在數據庫系統運行過程中必須不斷地對其進行評價、調整與修改。設計一個完善的數據庫應用系統是不可能一蹴而就的,它往往是上述六個階段的不斷重復。需要指出的是,這個設計步驟既是數據庫設計的過程,也包括了數據庫應用系統的設計過程。在設計過程中把數據庫的設計和對數據庫中數據處理的設計緊密結合起來,將這兩方面的需求分析、抽象、設計、實現在各個階段同時進行,相互參照,相互補充,以完善兩方面的設計。事實上,如果不了解應用環境對數據的處理要求,或者沒有考慮如何去實現這些處理要求,是不可能設計一個良好的數據庫結構的。因此本系統的數據庫設計嚴格按以上步驟進行,以確保數據庫設計的合理性與完善性。3.2.3數據庫邏輯設計(E-R圖)實體聯系模型反映的是現實世界中的事物及其相互關系。是一種用來在數據庫設計過程中表示數據庫系統結構的方法,它的主導思想是用實體,實體的屬性以及實體之間的關系來表示數據庫系統的結構。”實體”指現實世界中存在的對象或事物。”屬性”指實體具有的某種特性。為了簡化E-R圖的處理,現實世界的事物能作為屬性的對待的,盡量作為屬性對待。但實體與屬性之間并沒有形式上能夠截然劃分的界限,因此對屬性的劃分遵循以下兩個原則:1.作為”屬性”,不能再具有需要描述的性質。”屬性”必須是不可分的數據項,不能包含其它的屬性。2.”屬性”不能與其它實體具有聯系,即E-R圖中所表示的聯系是實體之間的聯系。每張訂單只能由一個管理員進行管理因此是一對一關系;每張訂單中商品有唯一的記錄與之對應因此是一對一關系;一個公司有多張訂單,多張訂單可屬于同一公司因此是多對多關系;每張訂單有多次支付記錄因此是一對多關系。根據以上分析本系統的E-R圖如圖3-2所示。圖3-2數據庫E-R圖3.2.4數據庫表結構根據本系統基本功能和所涉及人員對數據庫建立了若干表,其具體表結構如下所示。AdminInfo表用于存放系統管理員信息,其結構如表3-1所示。表3-1AdminInfo表結構字段名稱數據類型說明AdminNamevarchar(50)管理員ID(PK)AdminPwdvarchar(20)密碼TypeNamevarchar(50)昵稱Flagvarchar(50)級別標志Company表用于存放公司信息,其結構如表3-2所示。表3-2Company表結構字段名稱數據類型說明idint(4)公司ID(PK)CompanyNamevarchar(50)公司名稱CompanyTypevarchar(50)公司類型CompanyShortvarchar(50)公司簡稱CompanyAddressvarchar(50)公司地址Postalcodevarchar(50)郵政編碼Telvarchar(50)聯系電話Faxvarchar(50)傳真Linkmanvarchar(50)聯系人Emailvarchar(50)電子郵件Bankvarchar(50)開戶銀行BandAccountsvarchar(50)銀行賬戶Usernamevarchar(50)操作人AddTimevarchar(50)添加日期Commodity表用于存放所銷售商品信息,其結構如表3-3所示。表3-3Commodity表結構字段名稱數據類型說明idInt(4)商品ID(PK)CommodityNamevarchar(100)商品名稱ShortNamevarchar(50)商品簡稱ProducePlacevarchar(100)產地Unitvarchar(20)單位續表3-3Specsvarchar(50)規格PassNumbervarchar(50)批號PassListvarchar(50)批準文號CompanyIdint(4)供應商IDRemarkvarchar(500)備注Usrnamevarchar(50)操作人AddTimevarchar(50)添加日期Totalint(4)數量Stock表用于存放各種訂單信息,其結構如表3-4所示。表3-4Stock表結構字段名稱字段類型說明Idint(4)訂單ID(PK)CommodityIdint(4)商品IDCompanyIdint(4)公司IDNumberint(4)數量Pricedecimal(5)單價StockDatedatetime(8)日期SettlementTypevarchar(50)付款方式Paymentdecimal(5)應付金額FactPaymentdecimal(5)實付金額NotPaymentdecimal(5)未付金額ManageManvarchar(5)經手人Usernamevarchar(50)操作人AddTimevarchar(20)添加日期ClientIdint(4)客戶IDTypevarchar(10)訂單類型SendMailint(4)電子郵件標志Reckoning表用于存放訂單所付款信息,其結構如表3-5所示。表3-5Reckoning表結構字段名稱字段類型說明Idint(4)單據IDCommodityIdint(4)商品IDSettlementint(4)付款金額ManageManvarchar(50)經手人Datetimedatetime(8)結賬日期Usernamevarchar(50)操作人Addtimevarchar(50)添加日期3.3本章小結本章主要對概要計中涉及到的知識進行了分析,包括層次方框圖、數據庫E-R圖及表關系。同時對數據庫設計的特點進行了描述,本系統數據庫的設計嚴格按照數據庫設計標準的六個步驟來完成,以便更好的實現系統功能。由于數據庫在設計中有非常重要的作用,因此在開發過程中,在考慮數據庫上的時間較多。第4章詳細設計4.1系統主界面設計本系統的主界面整體結構為上左右結構,上面部分顯示當前登錄用戶名以及系統當前時間,左面部分采用了樹型層次結構羅列了系統的全部功能,右面部分為客戶區,顯示當前操作的使用窗口。系統主界面如圖4-1所示。圖4-1系統主界面1.實現目標:當選擇相應的菜單項時能夠正確的進入相應的界面,對于”返回首頁”與”注銷登錄”可成功轉到相應界面。2.實現過程:其主要功能是經過自定義控件實現,對控件中菜單層的展開、彈回及相應鏈接頁面進行了相應功能編碼。4.2基本信息管理功能設計1.實現目標:對于輸入的各種基本信息數據系統要對其進行驗證如格式、類型、長度。同時對于修改后的值要對數據庫進行更新。這樣輸出的數據將是規范化的,記錄都是最即時的。此模塊的界面如圖4-2所示。圖4-2基本信息管理2.實現過程:窗體名:Add_UserInfo.aspxAdd_Product.aspxMaster_UserInfo.aspxMaster_Product.aspx對于基本信息管理頁面中所用到各控件及其主要屬性設置如表4-1所示。表4-1基本信息管理主要控件信息列表控件名稱主要屬性設置作用Tableborder=1顯示邊框cellspacing=0單元格的距離為0Requirefieldvalidator1controltovalidator=CommodityName驗證的文本框名稱errormessage=商品名稱不能為空顯示的錯誤信息forecolor=red字體顏色為紅色display=Static靜態顯示Text1TextMode=SingleLine單行文本框Button1Click=Button1_Click()編寫單擊事件對于一家公司來說供應商與客戶都是工作時所要面正確對象,因此在記錄這些數據時使用一張表來記錄,只用字段Type來區分類型。對于供應商與客戶的添加使用同一界面樣式,為了區別是何種對象的添加,在程序設計中使設計的用戶自定義控件所鏈接的頁面地址添加了標志Flag,利用標志賦予不同的值區分是何種公司的添加。在CS文件中獲得當前頁面Flag值來確定記錄存入庫中時Type的值。利用Return_Title函數讓頁面標題顯示相應文字。4.3商品進貨管理功能設計1.實現目標:經過下拉列表框選擇商品名稱,在供應商文本框中自動顯示出其供應商,根據輸入的數量與單價自動生成應付金額,而且能夠根據已付金額自動生成未付金額。操作人員是當前系統登錄者姓名。結款方式有兩種分別是現金與支票,可經過下拉列表框進行選擇。各數據的格式錯誤時都有相應的提示信息,當訂單的添加成功時有相應的提示框彈出。此模塊界面如圖4-3所示。圖4-3商品進貨管理2.實現過程:窗體名:Add_Stock.aspxBack_Stock.aspx對于商品進貨管理頁面中所用到各控件及其主要屬性設置如表4-2所示。表4-2商品進貨管理主要控件信息列表控件名稱主要屬性設置作用Tableborder=1顯示邊框cellspacing=0單元格的距離為0Requirefieldvalidator1controltovalidator=CommodityName驗證的文本框名稱errormessage=商品名稱不能為空顯示的錯誤信息forecolor=red字體顏色為紅色display=Static靜態顯示CompareValidator1controltovalidator=Price驗證的文本框名稱forecolor=red字體顏色為紅色errormessage=單價格式添寫錯誤顯示的錯誤信息display=Dynamic動態顯示Text1TextMode=SingleLine單行文本框Button1Click=Button1_Click()編寫單擊事件對于各數據的值采用驗證控件進行格式控制,例如數量只能輸入為整數,當輸入為其它范圍的值系統都會提示錯誤。”添加”按鈕單擊事件主要是對文件框中數據的讀取,再經過SQL語句對數據庫進行相應操作,此操作的成功與否主要是經過SqlDataBase.cs類來實現。4.4銷售訂單管理功能設計1.實現目標:對于輸入的銷售訂單信息進行驗證如應付款、未付款、已付款進行格式上與數值上的驗證,然后將銷售訂單轉入一系列流程化的處理。包括對訂單的確認,通知客戶我公司已接收并同意訂單生意,發貨將訂單轉入下一個階段,等待對方的賬款信息。輸出的數據將以規范化格式顯示,而且在每一階段只顯示相應完成階段的訂單。銷售訂單管理模塊如圖4-4所示。圖4-4銷售訂單管理2.實現過程:窗體名:Add_Sell.aspxSend_Sell.aspxSend_Goods.aspxBack_Sell.aspx對于銷售訂單管理頁面中所用到各控件及其主要屬性設置如表4-3所示。表4-3銷售訂單管理主要控件信息列表控件名稱主要屬性設置作用Tableborder=1顯示邊框cellspacing=0單元格的距離為0Requirefieldvalidator1controltovalidator=CommodityName驗證的文本框名稱errormessage=商品名稱不能為空顯示的錯誤信息forecolor=red字體顏色為紅色display=Static靜態顯示CompareValidator1controltovalidator=Price驗證的文本框名稱forecolor=red字體顏色為紅色errormessage=單價格式添寫錯誤顯示的錯誤信息display=Dynamic動態顯示Text1TextMode=SingleLine單行文本框Button1Click=Button1_Click()編寫單擊事件SqlDataSource1Select語句編寫GridView顯示滿足條件記錄在訂單登記時需要添寫的項有商品名稱、客戶名稱、單價、數量、應付金額等。其中各數據的格式與不能為空的限制都用ASP.NET驗證控件來進行限制。對于商品名稱與客戶的添寫都使用下拉列表框進行選擇,當選擇商品時自動顯示其供應商。操作人員的值是經過使用函數獲取當前操作人員名稱并將其值賦給文本標簽,在將文本標簽的值寫到庫中。銷售訂單的登記完成后將轉入下一個步驟訂單確認。這一步顯示了相關訂單信息,對于記錄的選擇經過SqlDataSource中Select語句檢索出所有Mail
值為”1”的即”未被確認”的訂單。對于訂單的確認方法有兩種,一種是發送郵件確認另一種是人工通知確認。對于郵件的確認相關代碼編寫在類中與相應的CS文件中。當點擊發送郵件確認時讓Panel_SendMail控件處于可見狀態。經過類中函數QueryString.Get_Id、QueryString.Get_Flag、與相應sql語句檢索出要發送郵件訂單的具體信息,并將這些信息顯示在郵件控件上,作為郵件內容發送,郵件的發送主要是經過組件實現的。兩個組件分別是Interop.ADODB.dll與Interop.CDO.dll。對于組件相應調用代碼及基本變量設計都在SendMail.cs中進行了設置。對于發送郵件成功完成確認的訂單經過函數將其在數據庫中Mail值更新。發送貨物一經確認過的銷售訂單的狀態也將被更新。由于銷售出的貨物存在著不同原因上的銷售退貨情況,因此也設定了銷售退貨登記這一處理。4.5查詢統計功能設計1.實現目標:在查詢模塊中各查詢界面基本功能相同,只是各查詢條件的選擇不同而已,但基本操作一致。當進入查詢頁面后先對查詢條件進行選擇,查詢條件的選擇只需在相應復選框前打對號即可,再輸入相應查詢條件的值,對于相應值的輸入也進行了驗證。對于各類信息的檢索都用CS中的代碼來實現,輸出正確的顯示結果。查詢統計界面如圖4-5所示。圖4-5查詢統計2.實現過程:窗體名:Stock_Search.aspxSell_Search.aspxStockpile_Search.aspx對于查詢統計頁面中所用到各控件及其主要屬性設置如表4-4所示。表4-4查詢統計主要控件信息列表控件名稱主要屬性設置作用Tableborder=1顯示邊框cellspacing=0單元格的距離為0CompareValidator1controltovalidator=Price驗證的文本框名稱forecolor=red字體顏色為紅色errormessage=開始時間格式添寫錯誤顯示的錯誤信息display=Dynamic動態顯示CheckBox1Check=false初始化時為未選中狀態Text1TextMode=SingleLine單行文本框Button1Click=Button1_Click()編寫單擊事件查詢主要分為:商品庫存查詢、商品進貨查詢、進貨退貨查詢、商品銷售查詢、銷售退貨查詢。其中商品進貨查詢與進貨退貨查詢采用同一aspx界面,商品銷售查詢與銷售退貨查詢采用同一aspx界面。對于相應何種查詢的確定采用在鏈接頁后面加type,根據賦予type不同的值來確定是何種信息的查詢。用戶可選擇不同的查詢條件,如供應商、經手人、商品名稱、起止日期進行查詢。對于查詢條件的選擇采用復選框的形式,用戶只需要復選框前打上對號后再輸入相應條件的值點擊”查詢”按鈕即可顯示出滿足條件的所有訂單記錄。而且可經過GridView中”詳細信息”這一鏈接字段查看訂單的詳細內容。對于起止日期采用了ASP.NET中的驗證控件:CompareValidator、ValidationSummary進行格式上的限制與提示。4.6賬務管理功能設計1.實現目標:選擇相應的訂單,點擊其結賬按鈕彈出對應結賬窗口。在窗口中輸入此訂單相應的結賬金額信息,對于本次結賬的金額要進行其未付款金額上的更新處理,同時對于該訂單付款記錄將進行更新。輸出的將是訂單更新后準確的結賬信息。此模塊的界面如圖4-6所示。圖4-6賬務管理2.實現過程:窗體名:Recokoning.aspx主要運用控件
GridView,對其各列所要顯示的字段進行編碼,并對具有鏈接功能的列進行了設置,經過代碼與控件屬性相結合實現。對于所有的結賬頁面都采用同一個Reckonig.aspx頁面。根據獲取不同結賬類型值來使標題顯示相應的結賬類型。可點擊單據編號查看訂單詳細信息而且可顯示其相應的付款細節如第幾次付款、付款金額、付款時間等。當點擊GridView中的”結賬”按鈕將調用Jscript.cs類中OpenWebFormSize函數使結賬窗口按適當大小彈出。在結賬窗口中自動顯示未付金額,若付款大于未付款將給出提示”結款金額輸入錯誤”。同時各種數據的輸入與格式此頁面也用驗證控件進行控制。4.7本章小結本章從模塊具體功能上設計了網上銷售訂單管理系統。主要的模塊即基本信息管理、銷售訂單管理、查詢統計、賬務管理等模塊。在詳細設計中分析了各模塊的功能并對各模塊做了編程思路的闡述。能夠將系統分解成幾個功能模塊來分別設計,以模塊的設計和框架結構的思想來貫穿整個系統開發過程。本系統的設計完全按照以上的設計來進行,相信能夠完成功能上的需求。第5章系統實現與測試5.1各個模塊功能實現在程序設計時考慮到有許多代碼是需要重復編寫的,而且有些函數被多次調用,考慮到程序代碼的編輯量與程序的運行速度,決定對于重復編寫的代碼與多次被調用的函數都用類的形勢封裝。其中HeaderTextInfo.cs類主要功能是運行程序時窗口標題信息文字的顯示與相關函數的編寫。Jscript.cs主要是對程序運行中各類小的窗口,及轉向到相應URL地址的代碼編寫。PersonInfo.cs主要是對管理員登錄與管理管理員操作進行代碼與相關函數的編寫,包括添加新管理員判斷其用戶ID是否已存在與登錄時自動顯示其昵稱函數。QueryString.cs主要是對一些程序中用到的信息如Flag、Cid獲取函數的編寫。SendMail.cs主要功能是當訂單確認時發送電子郵件所需代碼編寫。SqlDataBase.cs主要是對數據庫各種操作其相應代碼的編寫,如DataSet表,DataView數據視圖代碼。stock.cs用于對庫存商品數量一些操作代碼的編寫,如計算進貨數量,計算銷售數量,計算當前庫存量函數。StringUtil.cs是對輸入的數據進行過濾如去掉其空格、按要求長度顯示代碼的編制。為了達到界面美觀統一,程序采用了樣式表、自定義控件與母版技術。5.1.1基本信息管理模塊實現首先對于輸入的基本信息數據程序要進行格式、類型、長度等的驗證,對于不正確的要重新輸入,正確時要讀取各數據的值存入相應的表中,對于存入時顯示失敗的數據要進行重新的讀取。基本信息管理模塊程序流程如圖5-1所示。圖5-1基本信息管理程序流程圖本模塊中各界面主要用到了文件框控件、驗證控件、按鈕控件及表格。其中取出各文本框所輸入的值并存到數據庫中表的代碼如下: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);//判斷添加后返回結果,如果正確則返回的是1if(YesNo){JScript.AlertAndRedirect("添加成功!","Add_UserInfo.aspx?Flag="+QueryString.Get_Flag+"");}else{JScript.GoHistory("添加失敗",-1);}}5.1.2首先輸入訂單數據,當驗證其格式等為正確時則要讀取所輸入的數據值,當保存成功時程序結束,否則程序重新讀取所輸入的值。商品進貨管理模塊程序流程圖如圖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);//判斷添加后返回結果,如果正確則返回的是1if(YesNo){JScript.AlertAndRedirect("添加成功!","Add_Stock.aspx");}else{JScript.GoHistory("添加失敗",-1);}5.1.3銷售訂單管理模塊實現程序首先從訂單表中讀取相應的銷售訂單數據,然后再從公司信息表中讀取客戶信息,根據客戶聯系方式發送電子郵件進行確認,對于發送完郵件確認的訂單進行貨物上發送處理并及時更新訂單狀態。銷售訂單管理模塊程序流程如圖5-3所示。圖5-3銷售訂單管理程序流程圖本模塊的界面主要用到了SqlDataSource控件、GridView控件、文本框控件,在電子郵件的發送上調用了組件Interop.ADODB.dll與Interop.CDO.dll。主要實現代碼如下: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()+",數量"+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);//更新訂單狀態}}}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查詢統計模塊實現輸入查詢條件,當查詢條件值輸入正確時則輸出所有滿足條件記錄。查詢統計模塊程序流程如圖5-4所示。圖5-4查詢統計程序流程圖查詢統計界面設計主要用到了復選框控件、文本框控件及SqlDataSourcet等控件。其主要實現代碼如下: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"];
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 項目管理師考試知識點試題及答案
- 大發現福建事業單位考試真相試題及答案
- 2024年微生物檢驗關鍵點試題及答案
- 2024年項目管理師職業發展規劃試題及答案
- 滌綸纖維在智能紡織品與可穿戴設備的應用與前景考核試卷
- 2024年新興項目管理理念試題及答案
- 屋面落水口拆除施工方案
- 棉織造行業大數據分析與商業決策考核試卷
- 2024年農藝師考試知識掌握與實戰應用的協同發展試題及答案
- 窗簾面料的耐光色牢度測試考核試卷
- 2025年廣西壯族自治區南寧市中考一模生物試題(含答案)
- 長江流域大水面生態漁業的發展現狀與發展潛力分析
- 撤資退股合同協議
- 上海市嘉定區聯考2023-2024學年五年級下學期期中數學試題(含答案)
- 賓館住房協議書范本
- 電視臺影視拍攝合同協議
- 統編版(2024)一年級語文下冊12荷葉圓圓 課件
- 免除責任協議書范文
- 人教版(2024)七年級下冊英語期中質量檢測試卷(含答案)
- 熱泵基礎知識培訓課件
- 防中暑課件部隊
評論
0/150
提交評論