某公司辦公用品管理系統課程_第1頁
某公司辦公用品管理系統課程_第2頁
某公司辦公用品管理系統課程_第3頁
某公司辦公用品管理系統課程_第4頁
某公司辦公用品管理系統課程_第5頁
已閱讀5頁,還剩43頁未讀, 繼續免費閱讀

某公司辦公用品管理系統課程.doc 免費下載

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

文檔簡介

48/48餐管理系統摘要本設計的越野車公司辦公用品管理系統是為了更好,更方便的讓公司辦公辦公用品的采購發放等信息。此系統主要包括用品采購,用品管理,報表查詢,參數設置,系統管理等幾個大模塊。每個大模塊又分成了幾個小的模塊,此系統的與眾不同之處在于其擁有強大的報表查詢打印統計功能,運用了rdlc作為報表開發報表。rdlc具有方便性和靈活性的特點,能開發出各種不同形式的報表。使用rdlc這也大大降低了程序的開發成本。在開發此系統時首先對所要設計的容作了詳細的準備,分析系統功能,確定基本框架。再建立相應數據庫表結構,最后再開始編碼。系統功能的實現,大大提高了公司辦公用品管理的合理性以與效率性。經過分析,我們使用MICROSOFT公司的MicrosoftVisualStudio2010作為開發工具和SqlServer2005作為數據庫,使用其中的c#語言作為編程語言。MicrosoftVisualStudio提供了非常方便的編程方式.c#作為一門面向對象的編程語言,總結起來其主要特點可以是,簡單、現代、面向對象、類型安全、版本控制、兼容、靈活。關鍵詞:越野車公司辦公用品管理系統;辦公用品管理系統;Off-roadvehicles,officesuppliesmanagementsystemAbstractThedesignofoff-roadvehicles,officesuppliesmanagementsysteminordertobetterandmoreconvenientforthecompany'sofficeofficesuppliesprocurementissuedinformation.Thissystemmainlyincludestheprocurementofsupplies,suppliesmanagement,reports,queries,parametersettings,systemmanagement,andseveralothermodule.Eachmoduleisdividedintoseveralsmallmodules,thissystemuniqueisitspowerfulreportqueryprintstatisticalfunctions,usingrdlcreportdevelopmentreport.rdlchasthecharacteristicsoftheconvenienceandflexibility,abletodevelopvariousformsofstatements.Userdlcalsogreatlyreducethedevelopmentcostsoftheprogram.Firstinthedevelopmentofthissystemtodesignthecontentsofdetailedpreparation,analysisofsystemfunctionstodeterminethebasicframework.Thecorrespondingdatabasetablestructure,andfinallystartcoding.Realizationofsystemfunctions,greatlyimprovingtherationalityandefficiencyofthecompany'sofficesuppliesmanagement.Afteranalysis,weusetheMICROSOFTCORPORATIONMicrosoftVisualStudio2010asadevelopmenttoolandtheSqlServer2005database,usethec#languageasaprogramminglanguage.ProvidesaveryconvenientwaytoprogramminginMicrosoftVisualStudioC#asanobject-orientedprogramminglanguage,summedupitsmainfeaturescanbesimple,modern,object-oriented,type-safe,versioncontrol,compatibleandflexible.Keywords:off-roadvehiclecompanyofficesuppliesmanagementsystem;officesuppliesmanagementsystem;第一章緒論31.1研究背景31.1.1信息系統的概念31.1.2信息系統的重要性41.2辦公用品管理信息系統51.3本課題研究意義6第二章系統開發相關技術介紹62.1c#概述62.3SQLSERVER2005概述72.4開發工具的和運行環境8第三章系統分析93.1需求分析93.1.1系統整體需求93.1.2具體功能需求103.1.3系統開發目標113.2系統可行性分析123.2.1技術可行性123.2.2操作可行性123.2.3社會可行性12第四章系統設計與編程實現134.1系統概要設計134.2數據庫設計144.3登陸模塊模塊(界面設計,同時給出關鍵代碼)184.3.1登陸184.4采購計劃模塊194.4.1填寫計劃204.4.2審批計劃214.5用品管理模塊224.5.1用品入庫224.5.2用品領用254.5.3用品庫存查詢294.6報表查詢模塊304.6.1入庫報表查詢304.6.2領用報表查詢314.7系統管理324.7.1用戶管理324.7.2密碼修改36第五章系統測試385.1測試環境385.2測試方案395.3測試結果396結束語45參考文獻47致47第一章緒論1.1研究背景1.1.1信息系統的概念從技術角度對信息系統的定義是:為了支持組織決策和管理而進行信息收集、處理、存儲和傳遞的一組相互關聯的組成部分。除了支持決策、協調和管理,信息系統還可以幫助經理和員工們分析問題,觀察復雜的事情和創造新產品。管理信息系統是一個一體化系統或集成系統,這就是說管理信息系統進行企業的信息管理是從總體出發,全面考慮,保證各種職能部門共享數據,減少數據的冗余度,保證數據的兼容性和一致性。具有統一規劃的數據庫是管理信息系統成熟的重要標志,它象征著管理信息系統是經過周密的設計而建立的,它標志著信息已集中成為資源,為各種用戶所共享。數據庫有自己功能完善的數據庫管理系統,管理者數據的組織、數據的輸入、數據的存取,使數據為多種用戶服務。管理信息系統用數學模型分析數據,輔助決策。只提供原始數據或者總結綜合數據對管理者來說往往感到不滿足,管理者希望直接給出決策的數據。為得到這種數據往往需要利用數學模型,例如聯系于資源消耗的投資決策模型,聯系于生產調度的調度模型等。模型可以用來發現問題,尋找可行解、非劣解和最優解。在高級的管理信息系統中,系統備有各種模型,供各種不同的子系統使用,這些模型的集合叫模型庫。管理信息系統的概念是發展的。最初許多倡議者設想管理信息系統是一個耽擱的高度一體化系統,它能處理所有的組織功能。也有一些人懷疑,再先進的計算機系統能否解決定義不清楚的管理判斷過程。隨著時間的推移,這種高度一體化的單個系統顯得過于復雜,并難以實現。管理信息系統的概念轉向各子系統的聯合,按照總體計劃、標準和程序,根據需要,開發和實現一個個子系統。這樣,一個組織不是只有一個包羅萬象的大系統,而是一些相關的信息系統的集合。有些組織所用的信息系統可能只是相關的小系統,它們均屬于管理信息系統的疇,但不是管理信息系統的全部,例如:(l)統計系統(2)數據更新系統(3)狀態報告系統(4)數據處理系統(5)辦公自動化系統(6)決策支持系統1.1.2信息系統的重要性80年代以前,經理們一般不需要太多有關組織信息是怎么樣收集、處理和傳遞的,并且很少涉與到技術。信息本身沒有被認為是公司的重要資產。管理過程被認為是面對個人藝術而不是遍布各地的全球性協調過程。而如今沒有哪個經理敢忽視其組織是如何處理信息的。如今信息系統受到管理者的重視有兩個方面的原因。一是信息技術的廣泛應用己深入到組織的基本活動中,信息技術對組織的生存和繁榮越來越大;二是企業對信息系統的投資像其資美國微軟公司一樣成為企業經營的必要條件,而且在這方面的投資比例呈現上升的趨勢。對資產的管理本來就是經理的天職。在中國步入市場經濟時代,企業對信息技術應用的動力由政府旨意轉向市場驅動,企業對信息技術的投資來源由國家財政大蛋糕轉變為企業自己的錢柜。經理人員只有熟悉有關信息系統的知識,才能使在這方面的投資獲得預期的回報。世界圍發生的三種巨變改變了經營環境。第一是全球經濟的出現和壯大;第二是工業經濟和社會向基于知識和信息服務的經濟轉化;第三是企業的轉變。(1)全球經濟的出現美國經濟增長率不斷提高依靠進出口,歐洲和亞洲的發達工業經濟增長也是這樣。對外貿易,包括進口和出口,占美國提供商品和服務的25%還多,對像日本和德國這樣的國家其比例還要高。將來這個百分比還將增長。今天和未來企業的成功取決于其全球經營能力。世界工業經濟的全球化極大的增加了信息對企業的價值,并提供了交換機的經營機遇。當今,信息系統為企業提供了全球貿易和管理所需要的通信和分析能力。為了協調世界圍的分銷網絡,像嫩膚(NuskinInternational)這樣的公司不得不開發全球信息系統來跟蹤訂單、發貨和付款,與分銷商和供貨商聯絡,一天24小時在不同的環境中經營,滿足國與國際管理報表的需要。簡而言之,管理相距遙遠的跨國公司是經營上主要的挑戰,它需要強大的信息系統配合。全球化和信息技術給國企業帶來了新的威脅:由于全球通信和管理系統能可靠的獲得價格和質量的信息,如今顧客一天24小時能在世界圍市場上求得生存和發展。因此企業需要強大的信息系統和通信系統。(2)工業化經濟的轉變美國、日本、德國和其它主要工業大國正經歷第三次經濟革命。在第一次革命中,美國于1890年已從殖民園地變為能供養世界大量人口的農業巨人。在第二次革命,美國于1920年從19世紀的農業社會變為頭等工業強國。在目前正進行的第三次革命中,美國正把自身轉變為知識服務和信息服務經濟。知識和信息革命發生于20世紀之交,并且己逐漸加速。以美國為例,到1976年,工作在辦公室里的白領工人數量超過了農場工人、服務工人和制造業中藍領工人的數目。今天大多數人不再在農場或工廠里工作而是就業于銷售、教育、保健、銀行、保險公司和律師業;他們也提供復印、計算機軟件或送貨這類商業服務。這類職業主要涉與新知識和信息的使用、傳播或創造。事實上,知識和信息工作現已明顯創造了美國國生產總值的60%,使用了全部勞動力的55%。在知識和信息經濟中,信息技術和信息系統變得十分重要。比方說,在像金融,保險和房地產這樣的服務業中,信息技術在投入的資本構成上超過70%。這意味著對許多經理,或許多大多數經理來說,關于信息技術的決策將是為通常的投資決策。由于雇員的生產率取決于為之服務的信息系統的質量,所以關于信息技術的管理決策對企業的繁榮和生產是至關重要的。此外,越來越大的信息技術能力使具有巨大經濟價值的新型技術成為可能。信用卡,包裹快遞和遍地世界的定票系統都是新信息技術的例子。提供新型服務的信息和信息技術己成為企業和其經理們的關鍵戰略資源。(3)企業的轉變經營環境中第三個主要的變化是組織和管理的性質上的。組織和管理轉變的可能性己經存在。有些企業已經開始利用這些新的可能性。企業的目的是體現利潤。根據資源成本低于產品和服務價格的原則,企業靠生產產品和提供服務來創造價值因而盈利。管理的用途是做計劃,是組織,協調和領導企業的成員來取得獲利的價值創造。信息技術已經改變了企業的創造價值的方式,改變了經理們的管理方法。傳統的企業曾是,并且現在仍是等級森嚴,集權的,有明確的專業人員構成的組織結構,它主要依靠固定的一套標準工作程序來提供規模生產的產品(或服務)。企業的新形式是扁平的(等級較少),分權的,通才人員的靈活組成,他們依靠實時(接近隨時)信息來提供竟適合專門市場或顧客的,規?;ㄖ伯a品和服務。但這種新型組織還沒有形成,正處于演變階段。不管怎樣,發展方向是明確的,沒有信息技術這一發展方向也許將是不可非議的。傳統的管理集團過去和現在都依賴正式計劃,僵化的分工,正式的規章和借助忠誠來保證企業的正常運轉。新型經理依靠非正式的承諾和網絡(不靠正式計劃)來設立目標,以任務組工作方式靈活的安排個人和集體,以一切為客戶的原則協調員工活動,借助專業技能和知識來取保企業的正常運轉。同樣的,仍然是信息技術使這種管理方式具有可能。信息技術導致組織變化,這種變化使企業比過去更加依賴雇員個人的知識,學習和決定。1.2辦公用品管理信息系統隨著改革和經濟發展,我國企業的市場意識和對市場的適應能力增強,企業管理水平不斷提高,但與國際企業相比仍然存在較大差距,隨著公司的不斷發展和壯大,公司辦公用品的采購和使用的需求量越來越大,而如何合理的管理這一系列工作中的流程呢?于是我們的辦公用品管理系統就應運而生了,其主要特點如下:(1).用品的采購審批,大大的降低了公司因用品計劃的不合理以帶來了不必要的損失,從數量和金額上控制用品的采購,減少了以往在采購中的一些人為的因素而給企業帶來的損失.(2).用品的入庫領用,能很淺析的知道企業辦公用品的庫存量,用品的使用地方。(3).庫存的查詢以與庫存的報警,能讓企業負責用品采購的人員,提前的知曉所需用品是否還有庫存,以便于在與時使用用品的時候帶來時間來的節約。(4)報表的統計打印,能清楚知道辦公用品的歷史采購,歷史信用消耗記錄,以方便企業對用品的管理的決策起到參考作用。1.3本課題研究意義現階段,雖然許多用品管理系統能夠實現信息化管理,但我國一些企業仍然停留在傳統的管理方式,即以、與書信形式為主要聯絡手段,人工處理日常業務,例如采購計劃,采購,領用,統計等。這種落后的管理方式造成低效率、高成本,更重要的是管理層對關鍵信息的掌握力不從心。而相關企業的信息化大多只限于會計電算化、辦公自動化等初級階段。隨著企業規模的擴大和業務的發展,原有的管理模式無法實現企業部之間與時的傳遞信息,難以與時反饋企業的運轉情況,無法輔助管理人員掌握確實的企業辦公用品情況和制定合適的采購計劃。因此,開發一套新的基于C/S模式的越野車公司辦公用品管理系統具有很高的實用價值和重要意義。第二章系統開發相關技術介紹2.1c#概述C#是Microsoft公司設計的一種編程語言。它松散地基于C/C++,并且有很多方面和Java類似。Microsoft是這樣描述C#的:“C#是從C和C++派生來的一種簡單、現代、面向對象和類型安全的編程語言。C#(讀做‘Csharp’)主要是從C/C++編程語言家族移植過來的,C和C++的程序員會馬上熟悉它。C#試圖結合VisualBasic的快速開發能力和C++的強大靈活的能力?!庇捎?NET與以前的技術有著極大的差異,微軟特意為.NET平臺開發了一種新的編程語言--C#(讀做"CSharp")。C#的核心語法和Java的語法很相似。然而,并不能說C#抄襲了Java。C#和Java都屬于C語言系列(包括C、ObjectiveC、C++等),它們有類似的語法。正如Java在許多方面是C++的提煉版一樣,C#也可以視為Java的提煉版。實際上,C#的許多語法結構與VB6.0和C++的很多方面都有淵源。例如,與VB6類似,C#支持正式的類型屬性(property)的概念(與傳統的獲取方法和設置方法相反),且支持方法帶有不定數目的參數(使用參數數組)。與C++類似,C#允許重載運算符,且支持創建結構、枚舉和回調函數(使用委托)。C#3.0引入了各種函數式語言(如LISP或Haskell)中的很多結構。此外,由于LINQ的出現(見第14章和第24章),C#支持很多編程結構,在編程語言中顯得非常獨特。盡管如此,C#的核心始終受到C系列語言的影響。C#是多種語言的混合體,因此它像Java一樣語法簡潔,像VB6一樣使用簡單,像C++一樣功能強大和靈活(C#沒有像C++那樣麻煩的位操作)。以下是C#核心特征的一部分,其部分特點也是其他支持.NET的程序語言所共有的特征。不需要指針!C#程序通常不需要直接對指針進行操作(盡管在絕對必要時也能自由地進行底層操作)。垃圾收集器能夠自動管理存。因此,C#不支持delete關鍵字。類、接口枚舉、結構和委托都有正式的語法結構。具有與C++類似的功能,可以簡單地重載運算符為自定義類型(例如,不需要操心確保"返回*this以能夠")。支持基于特性的編程。這種方式的開發允許我們注釋類型與其成員來進一步限定其行為。隨著.NET2.0的發布(大約在2005年),C#編程語言得到了更新以支持很多花哨的東西,主要是以下幾項。構建泛型類型和泛型成員的能力。使用泛型,我們可以構建非常高效的并且類型安全的代碼,在和泛型項交互的時候可以定義很多"占位符"。支持匿名方法,它允許我們在任何需要委托類型的地方提供聯函數。很多委托事件模型的簡化,包括協變、逆變以與方法組轉換。使用partial關鍵字跨多個代碼文件定義單個類型的能力(或者如果有必要的話,可以作為存中的表示)。你也可能猜到了,.NET3.5為C#編程語言(更確切地說是C#3.0)增加了更多功能,包括如下特性。支持強類型的查詢(就像LINQ,即集成查詢語言),可用于和各種形式的數據進行交互。支持匿名類型,它允許我們建模一個類型的"形"(shape)而不是其行為。使用擴展方法擴展既有類型功能的能力。包含了Lambda運算符(=>),它可以進一步簡化.NET委托類型的使用。新的對象初始化語法,它允許我們在對象創建時設置屬性的值。關于C#語言,要理解的最重要的一點可能是,它生成的代碼只能在.NET運行庫中執行(你不能用C#來構建本機的COM服務器或非托管的Win32API應用程序)。正式的說法是,這種必須在.NET運行庫下執行的代碼稱為托管代碼(managedcode)。這些包含托管代碼的二進制單元可以稱為程序集(assembly)(程序集的詳情稍后在1.5節中再講)。反之,不能直接在.NET運行庫承載(host)的代碼稱為非托管代碼(unmanagedcode)。2.3SQLSERVER2005概述本系統將采用MicrosoftSQLServer2005作為系統的DBMS支撐,SQLServer2005是能夠支持企業級關系型數據庫的管理系統,它能與Windows操作系統緊密集成,具有方便易用的圖形管理界面,其用戶界面風格與Windows一樣非常友好。SQLServer2005在存儲大容量數據方面,在數據的安全性和完整性方面,在分布式處理等都是適合于企業級應用的。而其相對Oracle,DB/2等大型數據庫來說,學習更為容易,應用成本也相對較低。采用SQLServer2005+ASP.NET開發本系統是一個較為理想的組合。SQLServer2005的新特點:動態的自我管理:SQLServer2005運行時動態配置運行環境,優化并簡化了許多服務器配置選項,可隨用戶增多或者減少動態地請求追加或者釋放資源,并可隨數據的增減自動改變數據庫大小。豐富的管理工具:SQLServer2005提供了許多數據庫系統管理工具。系統管理員可以在運行SQLServerEnterpriseManager的中央控制臺上,管理和監視服務器運行性能和企業數據庫。可編程的管理:SQL分布式對象可用于編寫應用程序,這就可以使應用程序數據包透明地將SQLServer2005嵌入應用程序中。也可以使用SQL-DMO為不同站點的通用的管理任務建立應用程序。可能收縮性和高可能性:SQLServer2005數據庫引擎可以幾乎所有Windows平臺上運行,是可管理上千萬個用戶的大型數據庫。同時其還具有動態自我調解的特性,能有效地在筆記本或者PC上運行。支持數據倉庫:SQLServer2005支持數據倉庫。系統訪問Internet集成:SQLServer2005與其他產品一起為Internet或Intranet系統形成一個穩定的安全的數據存儲;可為運行在IIS下的Web應用程序提供一個高性能的數據存儲服務;此外,SQLServer2005數據庫引擎還包括了對XML的本地支持,Transact-SQL結果可以作為XML文檔返回給使用OLEBD和ADOAPI的應用程序,XML文檔還可以添加到SQLServer2005中。綜上所述,在開發本系統時,采用SQLServer2005作為數據庫管理系統。2.4開發工具的和運行環境在開發工具上,我選擇VisualStudio.NET。VisualStudio.NET是一套完整的開發工具,用于生成ASPWeb應用程序、XMLWebservices、桌面應用程序和移動應用程序。VisualBasic.NET、VisualC++.NET、VisualC#.NET和VisualJ#.NET全都使用一樣的集成開發環境(IDE),該環境允許它們共享工具并有助于創建混合語言解決方案。另外,這些語言利用了.NETFramework的功能,此框架提供對簡化ASPWeb應用程序和XMLWebservices開發的關鍵技術的訪問。VisualStudio.NET是用于快速生成企業級ASP.NETWeb應用程序和高性能桌面應用程序的工具。VisualStudio包含基于組件的開發工具(如VisualC#、VisualJ#、VisualBasic和VisualC++),以與許多用于簡化基于小組的解決方案的設計、開發和部署的其他技術。VisualStudio支持Microsoft.NETFramework,該框架提供公共語言運行庫和統一編程類;Winform.NET使用這些組件來創建C#應用程序.C/S結構,即Client/Server(客戶機/服務器)結構,是大家熟知的軟件系統體系結構,通過將任務合理分配到Client端和Server端,降低了系統的通訊開銷,可以充分利用兩端硬件環境的優勢。早期的軟件系統多以此作為首選設計標準。服務器通常采用高性能的PC、工作站或小型機,并采用大型數據庫系統,如Oracle、Sybase、Informix或SQLServer??蛻舳诵枰惭b專用的客戶端軟件。C/S的優點是能充分發揮客戶端PC的處理能力,很多工作可以在客戶端處理后再提交給服務器。對應的優點就是客戶端響應速度快。該運行環境的規定是保證本需求說明的功能得到實際真正體現的基礎。(1)服務器端運行環境支持軟件服務器端軟件:Windows2005Server或更高版本的操作系統,推薦Windows2003EnterpriseEdition數據庫系統:SQLServer2005或更高版本的數據服務器Web服務器:MicrosoftIIS6.0.NETFrameworkv1.1或更高版本的Web應用支持(2)用戶端PC軟件Windows98或更高版本操作系統(安裝有IE5.0以上版本)或其它98年以后發布的帶有Internet瀏覽器軟件的圖形UI操作系統操作系統:windows,Linux等(3)開發環境:操作系統:Win7EnterpriseEdition開發工具:MicrosoftVisualStudio.NET2010,AdobePhotoshopCS數據庫系統:MicrosoftSqlServer2005CPU:IntelPentium(R)42.8CHz存:1GB第三章系統分析3.1需求分析3.1.1系統整體需求從總體上看,本系統需要為不同的業務人員提供不同的操作功能。一般用戶主要是負責對辦公用品進行采購計劃制定,以與對辦公用品的領用,只需要登陸上報采購計劃以與對自己需要使用的辦公用品進行領用,其操作流程如下圖所示:圖3.1普通用戶登陸系統操作圖管理員可以對用品的采購入庫,庫存查詢,庫存報警參數設置,報表統計查詢,用品入庫管理流程如下:圖3.2用品入庫流程圖相關決策人員可以查看用品報表。最后,系統管理員需要對整個系統的人員進行管理,可以增加、刪除用戶,修改用戶信息,調整角色權限等等。用戶管理的基本流程如下:圖3.3用戶管理基本流程3.1.2具體功能需求(1)用品采購計劃當某些用品庫存不足的時候,就需要對應這些用品進行采購.采購計劃由各部門人員登陸系統進行計劃的添加,主要包括用品的編號、用品名字、規格、數量、金額等。相關的管理人員再登陸系統對用品計劃進行審核。(2)用品信息管理當有新用品入庫時,應能夠與時的錄入用品的基本信息,主要包括用品品編號、用品品名稱、用品單價、用品的庫存量。當用品被領用出去時,應能夠與時對該用品的庫存量進行修改。如果某種藥品不再生產或者被禁止銷售,則需要對該品種藥品信息進行刪除,以減輕數據庫的運行負擔,提高處理速度。(3)用品領用主要提供給用品需求人員進行方便快捷的領用操作。用品領用過程中,領用人員首先需要了解該用品庫存是否足夠,當庫存不足的時候就會提示當前庫存已經不足了,不能領用,然后提醒相關人員進行用品的采購。(3)報表查詢主要對用品采購領用情況進行查詢。生成相應的統計報表。并且可以對其理行統計,查詢打印等。(4)報警參數設置主要對用品庫存的報警值進行相關的設置,當庫存的用品達到這個值時,就會提醒當前庫存不足。(5)系統管理系統管理功能對于任何計算機系統來說都是必備的且十分重要的。根據本系統的功能特點,由于需要對不同的人員給予不同的權限,所以需要實現角色權限管理功能。系統還需要對所存在的用戶進行管理,包括刪除已經辭退的員工賬戶,或者修改某個員工賬戶的角色以適應員工職務的更改。3.1.3系統開發目標(1)節約傳統模式下企業對用品管理所損耗的大量人力物力資源,提高企業辦公用品采購使用與管理的精確度,與時性,有效性。本系統能減少很多不必要的資源浪費,不用象以前那樣用冗余的紙式的管理,大大節省了企業開支。并且,計算機的存儲與快速查詢功能大大提高了大量藥品管理的效率,避免了人工操作所容易出現的錯誤。(2)方便快速操作,精減人員,節約開支。方便快速的操作,可提高企業管理的效率,又減少因工作的冗余出現的錯誤。與此同時,信息化的系統可減少許多不很必要的人員,這無論從物質上還是工作人員的工資上都為企業節約了開支,為企業的快速發展減輕了負擔。3.2系統可行性分析3.2.1技術可行性本系統采用C/S體系結構。利用Winform.NET4.0技術開發,以MicrosoftVisualStudio2010作為開發平臺,采用MicrosoftSQLServer2005數據庫來對數據庫進行開發與設計,所以在技術上是可行的。3.2.2操作可行性系統采用MicrosoftVisualStudio2010加SQLServer2005其穩定性很強。從用戶的角度來講,系統可單機安裝,要求用戶計算機的配置低,系統界面簡潔易懂,十分方便。所以,系統有較強的操作可行性,無須更多的專業培訓,只要普通的管理人員就可以勝任。3.2.3社會可行性本系統的開發成本和運維成本都不高,然而該系統的應用可以使得企業辦公用品聽管理工作過程實現信息化,成倍的提高工作效率和工作質量,節約大量人力成本和管理成本,對企業的發展起到十分有力的推進作用。故該系統具備很強的社會可行性。第四章系統設計與編程實現4.1系統概要設計本系統總共劃分為5個模塊:采購計劃、用品管理、報警參數設置和報表查詢,系統管理。如下圖所示:圖4.1系統總體功能模塊圖采購計劃分為二塊:一塊是制定計劃,二是審批計劃。其中制定計劃,由各部門普通人員進行計劃的添加,也可以刪除計劃,然后由企業相關的管理人員對計劃進行審核。用品管理分為三塊:用品入庫、用品領用、用品庫存查詢,用品入庫是對新到用品進行統一入庫,當是以前庫存里面沒有的就直接添加到庫存。如果是以前已有的用品就只需要更新庫存,此塊為管理員所有。用品領用,用戶根據自身需求對相關用品進行領用,普通用戶和管理員都可以操作,只是普通用戶不能刪除用品領用信息。用品庫存查詢,此塊可以查詢到用品的庫存情況,庫存不足的用品系統會用紅色顯示其信息,管理員可以操作這一功能。報警參數設置:設置用品庫存的報警值,當用品達到這一報警值后,就自動提示庫存已經不足。報表查詢模塊,根據條件對采購領用數據庫進行查詢、統計打印。報表中列出用品詳細采購信息以與領用總量、等情況,以便于進行企業分析決策。系統管理模塊又分為二個子模塊:用戶管理、密碼修改。因為系統并不允許公開注冊,所以添加用戶模塊用于為新員工根據其職能類型添加系統賬號。用戶管理是對系統中的所有賬號進行管理,可以修改賬號的屬性,甚至對其進行刪除。系統管理模塊為系統管理員所特有。4.2數據庫設計數據庫設計是所有管理信息系統中的重要環節,本系統也不例外。為了使得越野車公司辦公用品管理系統中各部分的數據一目了然、避免冗余,必須對系統的數據庫進行E-R圖設計。本系統中,主要的實體是計劃、用品入庫、庫存、領用、用戶和參數設置。分別列出對應的E-R圖如下:計劃計劃自動id自動id時間狀態時間狀態用品名用品名計劃人金額數量規格計劃人金額數量規格圖4.1計劃E-R圖入庫操作人用品名單價數量規格自動id時間編號入庫操作人用品名單價數量規格自動id時間編號圖4.2入庫E-R圖用品名數量規格自動id庫存用品名數量規格自動id庫存編號編號金額金額圖4.3庫存E-R圖時間狀態用品名數量規格自動id領用時間狀態用品名數量規格自動id領用領用人領用人圖4.4領用E-R圖用戶名自動id用戶用戶名自動id用戶權限權限登陸名密碼登陸名密碼圖4.5用戶E-R圖報警參數報警參數參數參數圖4.6報警參數根據以上E-R圖,可以方便的進行數據表的設計。(1)計劃表Plan,包含的屬性有ID,材料名字、規格、數量、金額、計劃人、計劃時間。計劃表如表3.1所示:表3.1計劃表Plan序號列名數據類型長度小數位標識主鍵允許空默認值說明1IDint40是是否2MaterialNamevarchar1000是材料名稱3Specificationvarchar1000是規格4Quantityfloat80是數量5Moneydecimal92是金額6Peoplevarchar500是申請人7Statusvarchar500是'未審核'狀態8Timdatetime83是getdate時間(2)用戶表User,包含的屬性為用戶id,登錄名,密碼,員工名和角色。如表3.2所示:表3.2用戶表User序號列名數據類型長度小數位標識主鍵允許空默認值說明1IDint40是是否2UserNamevarchar5000是3UserLoginvarchar5000是4UserPassvarchar5000是5UserRolevarchar500是'管理員'(3)庫存表Stock,屬性有:id,操作人、編號、名稱、價格、庫存數量、入庫時間、,詳見表3.3。表3.3庫存表Stock序號列名數據類型長度小數位標識主鍵允許空默認值說明1IDint40是是否2Codevarchar500是用品編號3MaterialNamevarchar1000是用品名稱4Specificationvarchar1000是規格5Quantityfloat80是數量6UnitPricesdecimal92是單價(4)入庫表Storage,包含屬性:id、編號、單價、數量、時間等,如表3.4所示:表3.4入庫表Storage序號列名數據類型長度小數位標識主鍵允許空默認值說明1IDint40是是否2Codevarchar500是用品編號3MaterialNamevarchar1000是用品名稱4Specificationvarchar1000是規格5Quantityfloat80是數量6UnitPricesdecimal92是單價7Peoplevarchar500是操作人員8Timdatetime83是getdate(5)領用表Consuming,包含屬性:id、編號、數量、時間等,如表3.5所示:表3.5領用表Consuming序號列名數據類型長度小數位標識主鍵允許空默認值說明1IDint40是是否2Codevarchar500是用品編號3MaterialNamevarchar1000是用品名稱4Specificationvarchar1000是規格5Quantityfloat80是數量6ConsumingPeoplevarchar500是領用人7Timdatetime83是getdate(6)參數表AlarmSet,包含屬性:參數,如表36所示:表3.6參數表AlarmSet序號列名數據類型長度小數位標識主鍵允許空默認值說明1Alarmint40是報警參數4.3登陸模塊模塊(界面設計,同時給出關鍵代碼)對用戶登陸進行驗證,判斷登陸用戶是管理員還是一般用戶.4.3.1登陸如圖4.7所示:圖4.7登陸頁面此塊的關鍵代碼如下:if(txtLogin.Text.Trim()==""){MessageBox.Show("用戶名為空!");return;}if(txtPass.Text.Trim()==""){MessageBox.Show("密碼為空!");return;}Data.DUserbll=new越野車公司用品管理系統.Data.DUser();DataTabledt=bll.GetList("UserLogin='"+txtLogin.Text.Trim()+"'andUserPass='"+StrMd5(txtPass.Text.Trim())+"'").Tables[0];if(dt.Rows.Count!=0){this.Close();UserName=dt.Rows[0]["UserName"].ToString();UserID=int.Parse(dt.Rows[0]["ID"].ToString());Pass=dt.Rows[0]["UserPass"].ToString();role=dt.Rows[0]["UserRole"].ToString();this.DialogResult=DialogResult.Yes;}else{MessageBox.Show("用戶或者密碼錯誤!");txtPass.Text="";return;}4.4采購計劃模塊采購計劃管理,主要是對采購進行計劃填寫,對計劃進行審核。4.4.1填寫計劃如圖4.8所示:圖4.8采購計劃操作人員在此模塊上錄入相應的數據點擊保存后就可以將相應數據增加到計劃表中,這里同時也可以修改查刪除計劃數據。其關鍵代碼如下:privatevoidbind(){DataTabledt=DBUtility.DbHelperSQL.Query("select*from[Plan]wherePeople='"+Login.UserName+"'").Tables[0];dataGridView1.AutoGenerateColumns=false;dataGridView1.DataSource=dt;}if(txtName.Text.Trim()==""){MessageBox.Show("用品名不能為空");return;}if(txtQuantity.Text.Trim()==""){MessageBox.Show("數量不能為空");return;}if(txtMoney.Text.Trim()==""){MessageBox.Show("金額不能為空");return;}DBUtility.DbHelperSQL.ExecuteSql("Insertinto[Plan](MaterialName,Specification,Quantity,Money,People)values('"+txtName.Text+"','"+txtSpecification.Text+"','"+txtQuantity.Text+"','"+txtMoney.Text+"','"+txtPeople.Text+"')");MessageBox.Show("添加成功");bind();4.4.2審批計劃如圖4.9所示:圖4.9審批計劃操作人員在此模塊對上報的用品計劃數據進行審核。其關鍵代碼如下:privatevoidbind(){DataTabledt=DBUtility.DbHelperSQL.Query("select*from[Plan]whereStatus='未審核'").Tables[0];dataGridView1.AutoGenerateColumns=false;dataGridView1.DataSource=dt;}foreach(DataGridViewRowgvindataGridView1.Rows){if(gv.IsNewRow)return;if((bool)gv.Cells[7].FormattedValue){DBUtility.DbHelperSQL.ExecuteSql("update[Plan]setStatus='通過'whereID="+gv.Cells[6].Value+"");}}MessageBox.Show("審核成功");bind();4.5用品管理模塊4.5.1用品入庫通過主菜單進入用品管理模塊,然后點擊用品入庫。如圖4.10所示:圖4.10用品入庫此塊的關鍵代碼如下:privatevoidbind(){DataTabledt=DBUtility.DbHelperSQL.Query("select*from[Storage]").Tables[0];dataGridView1.AutoGenerateColumns=false;dataGridView1.DataSource=dt;}privatevoidbutton2_Click(objectsender,EventArgse){if(txtCode.Text.Trim()==""){MessageBox.Show("編號不能為空");return;}if(txtName.Text.Trim()==""){MessageBox.Show("用品名不能為空");return;}if(txtQuantity.Text.Trim()==""){MessageBox.Show("數量不能為空");return;}if(txtUnitPrices.Text.Trim()==""){MessageBox.Show("單價不能為空");return;}DBUtility.DbHelperSQL.ExecuteSql("Insertinto[Storage](Code,MaterialName,Specification,Quantity,UnitPrices,People)values('"+txtCode.Text+"','"+txtName.Text+"','"+txtSpecification.Text+"','"+txtQuantity.Text+"','"+txtUnitPrices.Text+"','"+txtPeople.Text+"')");DataTabledt=DBUtility.DbHelperSQL.Query("select*from[Stock]whereCode='"+txtCode.Text+"'").Tables[0];if(dt.Rows.Count>0){DBUtility.DbHelperSQL.ExecuteSql("update[Stock]setQuantity=Quantity+"+txtQuantity.Text+"whereCode='"+txtCode.Text+"'");}else{DBUtility.DbHelperSQL.ExecuteSql("Insertinto[Stock](Code,MaterialName,Specification,Quantity,UnitPrices)values('"+txtCode.Text+"','"+txtName.Text+"','"+txtSpecification.Text+"','"+txtQuantity.Text+"','"+txtUnitPrices.Text+"')");}MessageBox.Show("添加成功");bind();}privatevoidbutton1_Click(objectsender,EventArgse){if(dataGridView1[0,dataGridView1.CurrentCell.RowIndex].Value.ToString()!=""){MessageBoxButtonsbuttons=MessageBoxButtons.YesNo;DialogResultresult;result=MessageBox.Show(this,"是否刪除當前數據!","警告!",buttons);if(result==DialogResult.Yes){DataTabledt=DBUtility.DbHelperSQL.Query("select*from[Stock]whereCode='"+txtCode.Text+"'").Tables[0];if(dt.Rows.Count>0){if(decimal.Parse(dt.Rows[0]["Quantity"].ToString())<decimal.Parse(dataGridView1[3,dataGridView1.CurrentCell.RowIndex].Value.ToString())){MessageBox.Show("不能刪除,當前入庫數據已經被出庫!");return;}}DBUtility.DbHelperSQL.ExecuteSql("deletefrom[Storage]whereID="+dataGridView1[6,dataGridView1.CurrentCell.RowIndex].Value+"");DBUtility.DbHelperSQL.ExecuteSql("update[Stock]setQuantity=Quantity-"+dataGridView1[3,dataGridView1.CurrentCell.RowIndex].Value+"whereCode='"+dataGridView1[0,dataGridView1.CurrentCell.RowIndex].Value+"'");MessageBox.Show("刪除成功!");bind();}}}4.5.2用品領用通過主菜單進入用品管理模塊,然后點擊用品領用,如圖4.11所示:圖4.11用品領用此塊提供對用品進行領用的操作,輸入用品編號,點擊查詢就可以查詢出庫存中的用品,然后點擊領用就可以完成用品的領用,同時也可以刪除領用數據。其關鍵代碼如下:privatevoidbutton2_Click(objectsender,EventArgse){if(txtCode.Text.Trim()==""){MessageBox.Show("編號不能為空");return;}if(txtName.Text.Trim()==""){MessageBox.Show("用品名不能為空");return;}if(txtQuantity.Text.Trim()==""){MessageBox.Show("數量不能為空");return;}if(txtConsumingPeople.Text.Trim()==""){MessageBox.Show("領用人不能為空");return;}DataTabledt=DBUtility.DbHelperSQL.Query("select*from[Stock]whereCode='"+txtCode.Text+"'").Tables[0];if(dt.Rows.Count>0){if(decimal.Parse(dt.Rows[0]["Quantity"].ToString())<decimal.Parse(txtQuantity.Text)){MessageBox.Show("當前領用數量大于庫存數量!");return;}DBUtility.DbHelperSQL.ExecuteSql("Insertinto[Consuming](Code,MaterialName,Specification,Quantity,ConsumingPeople)values('"+txtCode.Text+"','"+txtName.Text+"','"+txtSpecification.Text+"','"+txtQuantity.Text+"','"+txtConsumingPeople.Text+"')");DBUtility.DbHelperSQL.ExecuteSql("update[Stock]setQuantity=Quantity-"+txtQuantity.Text+"whereCode='"+txtCode.Text+"'");bind();MessageBox.Show("領用成功!");}else{MessageBox.Show("倉庫不存在當前編碼的用品!");return;}}privatevoidbutton3_Click(objectsender,EventArgse){if(txtCode.Text.Trim()==""){MessageBox.Show("請輸入編號!");return;}DataTabledt=DBUtility.DbHelperSQL.Query("select*from[Stock]whereCode='"+txtCode.Text+"'").Tables[0];if(dt.Rows.Count>0){if(decimal.Parse(dt.Rows[0]["Quantity"].ToString())>0){DataTabledtt=DBUtility.DbHelperSQL.Query("select*from[AlarmSet]").Tables[0];if(decimal.Parse(dt.Rows[0]["Quantity"].ToString())<=decimal.Parse(dtt.Rows[0][0].ToString())){MessageBox.Show("當前庫存數量已經小于或等于預警庫存,請與時采購!");}txtName.Text=dt.Rows[0]["MaterialName"].ToString();txtSpecification.Text=dt.Rows[0]["Specification"].ToString();txtQuantity.Text=dt.Rows[0]["Quantity"].ToString();}}else{MessageBox.Show("不存在此編號的物品!");return;}}privatevoidbutton1_Click(objectsender,EventArgse){if(Login.role!="管理員"){MessageBox.Show("只有管理員才能操作!");return;}if(dataGridView1[0,dataGridView1.CurrentCell.RowIndex].Value.ToString()!=""){MessageBoxButtonsbuttons=MessageBoxButtons.YesNo;DialogResultresult;result=MessageBox.Show(this,"是否刪除當前數據!","警告!",buttons);if(result==DialogResult.Yes){DBUtility.DbHelperSQL.ExecuteSql("deletefrom[Consuming]whereID="+dataGridView1[5,dataGridView1.CurrentCell.RowIndex].Value+"");DBUtility.DbHelperSQL.ExecuteSql("update[Stock]setQuantity=Quantity+"+dataGridView1[3,dataGridView1.CurrentCell.RowIndex].Value+"whereCode='"+dataGridView1[0,dataGridView1.CurrentCell.RowIndex].Value+"'");MessageBox.Show("刪除成功!");bind();}}}privatevoidbind(){DataTabledt=DBUtility.DbHelperSQL.Query("select*from[Consuming]").Tables[0];dataGridView1.AutoGenerateColumns=false;dataGridView1.DataSource=dt;}4.5.3用品庫存查詢通過主菜單進入用品管理模塊,然后點擊庫存查詢,如圖4.12所示:圖4.12用品庫存查詢此塊提供對用品進行庫存情況進行查詢。其關鍵代碼如下:privatevoidbutton1_Click(objectsender,EventArgse){DataTabledt=DBUtility.DbHelperSQL.Query("select*from[Stock]whereCodelike'%"+textBox1.Text+"%'orMaterialNamelike'%"+textBox1.Text+"%'orSpecificationlike'%"+textBox1.Text+"%'").Tables[0];dataGridView1.AutoGenerateColumns=false;dataGridView1.DataSource=dt;}privatevoidStock_Load(objectsender,EventArgse){DataTabledt=DBUtility.DbHelperSQL.Query("select*from[Stock]").Tables[0];dataGridView1.AutoGenerateColumns=false;dataGridView1.DataSource=dt;}privatevoidd

溫馨提示

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

評論

0/150

提交評論