版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
48/48餐管理系統(tǒng)摘要本設(shè)計(jì)的越野車公司辦公用品管理系統(tǒng)是為了更好,更方便的讓公司辦公辦公用品的采購(gòu)發(fā)放等信息。此系統(tǒng)主要包括用品采購(gòu),用品管理,報(bào)表查詢,參數(shù)設(shè)置,系統(tǒng)管理等幾個(gè)大模塊。每個(gè)大模塊又分成了幾個(gè)小的模塊,此系統(tǒng)的與眾不同之處在于其擁有強(qiáng)大的報(bào)表查詢打印統(tǒng)計(jì)功能,運(yùn)用了rdlc作為報(bào)表開發(fā)報(bào)表。rdlc具有方便性和靈活性的特點(diǎn),能開發(fā)出各種不同形式的報(bào)表。使用rdlc這也大大降低了程序的開發(fā)成本。在開發(fā)此系統(tǒng)時(shí)首先對(duì)所要設(shè)計(jì)的容作了詳細(xì)的準(zhǔn)備,分析系統(tǒng)功能,確定基本框架。再建立相應(yīng)數(shù)據(jù)庫(kù)表結(jié)構(gòu),最后再開始編碼。系統(tǒng)功能的實(shí)現(xiàn),大大提高了公司辦公用品管理的合理性以與效率性。經(jīng)過分析,我們使用MICROSOFT公司的MicrosoftVisualStudio2010作為開發(fā)工具和SqlServer2005作為數(shù)據(jù)庫(kù),使用其中的c#語(yǔ)言作為編程語(yǔ)言。MicrosoftVisualStudio提供了非常方便的編程方式.c#作為一門面向?qū)ο蟮木幊陶Z(yǔ)言,總結(jié)起來其主要特點(diǎn)可以是,簡(jiǎn)單、現(xiàn)代、面向?qū)ο?、類型安全、版本控制、兼容、靈活。關(guān)鍵詞:越野車公司辦公用品管理系統(tǒng);辦公用品管理系統(tǒng);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信息系統(tǒng)的概念31.1.2信息系統(tǒng)的重要性41.2辦公用品管理信息系統(tǒng)51.3本課題研究意義6第二章系統(tǒng)開發(fā)相關(guān)技術(shù)介紹62.1c#概述62.3SQLSERVER2005概述72.4開發(fā)工具的和運(yùn)行環(huán)境8第三章系統(tǒng)分析93.1需求分析93.1.1系統(tǒng)整體需求93.1.2具體功能需求103.1.3系統(tǒng)開發(fā)目標(biāo)113.2系統(tǒng)可行性分析123.2.1技術(shù)可行性123.2.2操作可行性123.2.3社會(huì)可行性12第四章系統(tǒng)設(shè)計(jì)與編程實(shí)現(xiàn)134.1系統(tǒng)概要設(shè)計(jì)134.2數(shù)據(jù)庫(kù)設(shè)計(jì)144.3登陸模塊模塊(界面設(shè)計(jì),同時(shí)給出關(guān)鍵代碼)184.3.1登陸184.4采購(gòu)計(jì)劃模塊194.4.1填寫計(jì)劃204.4.2審批計(jì)劃214.5用品管理模塊224.5.1用品入庫(kù)224.5.2用品領(lǐng)用254.5.3用品庫(kù)存查詢294.6報(bào)表查詢模塊304.6.1入庫(kù)報(bào)表查詢304.6.2領(lǐng)用報(bào)表查詢314.7系統(tǒng)管理324.7.1用戶管理324.7.2密碼修改36第五章系統(tǒng)測(cè)試385.1測(cè)試環(huán)境385.2測(cè)試方案395.3測(cè)試結(jié)果396結(jié)束語(yǔ)45參考文獻(xiàn)47致47第一章緒論1.1研究背景1.1.1信息系統(tǒng)的概念從技術(shù)角度對(duì)信息系統(tǒng)的定義是:為了支持組織決策和管理而進(jìn)行信息收集、處理、存儲(chǔ)和傳遞的一組相互關(guān)聯(lián)的組成部分。除了支持決策、協(xié)調(diào)和管理,信息系統(tǒng)還可以幫助經(jīng)理和員工們分析問題,觀察復(fù)雜的事情和創(chuàng)造新產(chǎn)品。管理信息系統(tǒng)是一個(gè)一體化系統(tǒng)或集成系統(tǒng),這就是說管理信息系統(tǒng)進(jìn)行企業(yè)的信息管理是從總體出發(fā),全面考慮,保證各種職能部門共享數(shù)據(jù),減少數(shù)據(jù)的冗余度,保證數(shù)據(jù)的兼容性和一致性。具有統(tǒng)一規(guī)劃的數(shù)據(jù)庫(kù)是管理信息系統(tǒng)成熟的重要標(biāo)志,它象征著管理信息系統(tǒng)是經(jīng)過周密的設(shè)計(jì)而建立的,它標(biāo)志著信息已集中成為資源,為各種用戶所共享。數(shù)據(jù)庫(kù)有自己功能完善的數(shù)據(jù)庫(kù)管理系統(tǒng),管理者數(shù)據(jù)的組織、數(shù)據(jù)的輸入、數(shù)據(jù)的存取,使數(shù)據(jù)為多種用戶服務(wù)。管理信息系統(tǒng)用數(shù)學(xué)模型分析數(shù)據(jù),輔助決策。只提供原始數(shù)據(jù)或者總結(jié)綜合數(shù)據(jù)對(duì)管理者來說往往感到不滿足,管理者希望直接給出決策的數(shù)據(jù)。為得到這種數(shù)據(jù)往往需要利用數(shù)學(xué)模型,例如聯(lián)系于資源消耗的投資決策模型,聯(lián)系于生產(chǎn)調(diào)度的調(diào)度模型等。模型可以用來發(fā)現(xiàn)問題,尋找可行解、非劣解和最優(yōu)解。在高級(jí)的管理信息系統(tǒng)中,系統(tǒng)備有各種模型,供各種不同的子系統(tǒng)使用,這些模型的集合叫模型庫(kù)。管理信息系統(tǒng)的概念是發(fā)展的。最初許多倡議者設(shè)想管理信息系統(tǒng)是一個(gè)耽擱的高度一體化系統(tǒng),它能處理所有的組織功能。也有一些人懷疑,再先進(jìn)的計(jì)算機(jī)系統(tǒng)能否解決定義不清楚的管理判斷過程。隨著時(shí)間的推移,這種高度一體化的單個(gè)系統(tǒng)顯得過于復(fù)雜,并難以實(shí)現(xiàn)。管理信息系統(tǒng)的概念轉(zhuǎn)向各子系統(tǒng)的聯(lián)合,按照總體計(jì)劃、標(biāo)準(zhǔn)和程序,根據(jù)需要,開發(fā)和實(shí)現(xiàn)一個(gè)個(gè)子系統(tǒng)。這樣,一個(gè)組織不是只有一個(gè)包羅萬象的大系統(tǒng),而是一些相關(guān)的信息系統(tǒng)的集合。有些組織所用的信息系統(tǒng)可能只是相關(guān)的小系統(tǒng),它們均屬于管理信息系統(tǒng)的疇,但不是管理信息系統(tǒng)的全部,例如:(l)統(tǒng)計(jì)系統(tǒng)(2)數(shù)據(jù)更新系統(tǒng)(3)狀態(tài)報(bào)告系統(tǒng)(4)數(shù)據(jù)處理系統(tǒng)(5)辦公自動(dòng)化系統(tǒng)(6)決策支持系統(tǒng)1.1.2信息系統(tǒng)的重要性80年代以前,經(jīng)理們一般不需要太多有關(guān)組織信息是怎么樣收集、處理和傳遞的,并且很少涉與到技術(shù)。信息本身沒有被認(rèn)為是公司的重要資產(chǎn)。管理過程被認(rèn)為是面對(duì)個(gè)人藝術(shù)而不是遍布各地的全球性協(xié)調(diào)過程。而如今沒有哪個(gè)經(jīng)理敢忽視其組織是如何處理信息的。如今信息系統(tǒng)受到管理者的重視有兩個(gè)方面的原因。一是信息技術(shù)的廣泛應(yīng)用己深入到組織的基本活動(dòng)中,信息技術(shù)對(duì)組織的生存和繁榮越來越大;二是企業(yè)對(duì)信息系統(tǒng)的投資像其資美國(guó)微軟公司一樣成為企業(yè)經(jīng)營(yíng)的必要條件,而且在這方面的投資比例呈現(xiàn)上升的趨勢(shì)。對(duì)資產(chǎn)的管理本來就是經(jīng)理的天職。在中國(guó)步入市場(chǎng)經(jīng)濟(jì)時(shí)代,企業(yè)對(duì)信息技術(shù)應(yīng)用的動(dòng)力由政府旨意轉(zhuǎn)向市場(chǎng)驅(qū)動(dòng),企業(yè)對(duì)信息技術(shù)的投資來源由國(guó)家財(cái)政大蛋糕轉(zhuǎn)變?yōu)槠髽I(yè)自己的錢柜。經(jīng)理人員只有熟悉有關(guān)信息系統(tǒng)的知識(shí),才能使在這方面的投資獲得預(yù)期的回報(bào)。世界圍發(fā)生的三種巨變改變了經(jīng)營(yíng)環(huán)境。第一是全球經(jīng)濟(jì)的出現(xiàn)和壯大;第二是工業(yè)經(jīng)濟(jì)和社會(huì)向基于知識(shí)和信息服務(wù)的經(jīng)濟(jì)轉(zhuǎn)化;第三是企業(yè)的轉(zhuǎn)變。(1)全球經(jīng)濟(jì)的出現(xiàn)美國(guó)經(jīng)濟(jì)增長(zhǎng)率不斷提高依靠進(jìn)出口,歐洲和亞洲的發(fā)達(dá)工業(yè)經(jīng)濟(jì)增長(zhǎng)也是這樣。對(duì)外貿(mào)易,包括進(jìn)口和出口,占美國(guó)提供商品和服務(wù)的25%還多,對(duì)像日本和德國(guó)這樣的國(guó)家其比例還要高。將來這個(gè)百分比還將增長(zhǎng)。今天和未來企業(yè)的成功取決于其全球經(jīng)營(yíng)能力。世界工業(yè)經(jīng)濟(jì)的全球化極大的增加了信息對(duì)企業(yè)的價(jià)值,并提供了交換機(jī)的經(jīng)營(yíng)機(jī)遇。當(dāng)今,信息系統(tǒng)為企業(yè)提供了全球貿(mào)易和管理所需要的通信和分析能力。為了協(xié)調(diào)世界圍的分銷網(wǎng)絡(luò),像嫩膚(NuskinInternational)這樣的公司不得不開發(fā)全球信息系統(tǒng)來跟蹤訂單、發(fā)貨和付款,與分銷商和供貨商聯(lián)絡(luò),一天24小時(shí)在不同的環(huán)境中經(jīng)營(yíng),滿足國(guó)與國(guó)際管理報(bào)表的需要。簡(jiǎn)而言之,管理相距遙遠(yuǎn)的跨國(guó)公司是經(jīng)營(yíng)上主要的挑戰(zhàn),它需要強(qiáng)大的信息系統(tǒng)配合。全球化和信息技術(shù)給國(guó)企業(yè)帶來了新的威脅:由于全球通信和管理系統(tǒng)能可靠的獲得價(jià)格和質(zhì)量的信息,如今顧客一天24小時(shí)能在世界圍市場(chǎng)上求得生存和發(fā)展。因此企業(yè)需要強(qiáng)大的信息系統(tǒng)和通信系統(tǒng)。(2)工業(yè)化經(jīng)濟(jì)的轉(zhuǎn)變美國(guó)、日本、德國(guó)和其它主要工業(yè)大國(guó)正經(jīng)歷第三次經(jīng)濟(jì)革命。在第一次革命中,美國(guó)于1890年已從殖民園地變?yōu)槟芄B(yǎng)世界大量人口的農(nóng)業(yè)巨人。在第二次革命,美國(guó)于1920年從19世紀(jì)的農(nóng)業(yè)社會(huì)變?yōu)轭^等工業(yè)強(qiáng)國(guó)。在目前正進(jìn)行的第三次革命中,美國(guó)正把自身轉(zhuǎn)變?yōu)橹R(shí)服務(wù)和信息服務(wù)經(jīng)濟(jì)。知識(shí)和信息革命發(fā)生于20世紀(jì)之交,并且己逐漸加速。以美國(guó)為例,到1976年,工作在辦公室里的白領(lǐng)工人數(shù)量超過了農(nóng)場(chǎng)工人、服務(wù)工人和制造業(yè)中藍(lán)領(lǐng)工人的數(shù)目。今天大多數(shù)人不再在農(nóng)場(chǎng)或工廠里工作而是就業(yè)于銷售、教育、保健、銀行、保險(xiǎn)公司和律師業(yè);他們也提供復(fù)印、計(jì)算機(jī)軟件或送貨這類商業(yè)服務(wù)。這類職業(yè)主要涉與新知識(shí)和信息的使用、傳播或創(chuàng)造。事實(shí)上,知識(shí)和信息工作現(xiàn)已明顯創(chuàng)造了美國(guó)國(guó)生產(chǎn)總值的60%,使用了全部勞動(dòng)力的55%。在知識(shí)和信息經(jīng)濟(jì)中,信息技術(shù)和信息系統(tǒng)變得十分重要。比方說,在像金融,保險(xiǎn)和房地產(chǎn)這樣的服務(wù)業(yè)中,信息技術(shù)在投入的資本構(gòu)成上超過70%。這意味著對(duì)許多經(jīng)理,或許多大多數(shù)經(jīng)理來說,關(guān)于信息技術(shù)的決策將是為通常的投資決策。由于雇員的生產(chǎn)率取決于為之服務(wù)的信息系統(tǒng)的質(zhì)量,所以關(guān)于信息技術(shù)的管理決策對(duì)企業(yè)的繁榮和生產(chǎn)是至關(guān)重要的。此外,越來越大的信息技術(shù)能力使具有巨大經(jīng)濟(jì)價(jià)值的新型技術(shù)成為可能。信用卡,包裹快遞和遍地世界的定票系統(tǒng)都是新信息技術(shù)的例子。提供新型服務(wù)的信息和信息技術(shù)己成為企業(yè)和其經(jīng)理們的關(guān)鍵戰(zhàn)略資源。(3)企業(yè)的轉(zhuǎn)變經(jīng)營(yíng)環(huán)境中第三個(gè)主要的變化是組織和管理的性質(zhì)上的。組織和管理轉(zhuǎn)變的可能性己經(jīng)存在。有些企業(yè)已經(jīng)開始利用這些新的可能性。企業(yè)的目的是體現(xiàn)利潤(rùn)。根據(jù)資源成本低于產(chǎn)品和服務(wù)價(jià)格的原則,企業(yè)靠生產(chǎn)產(chǎn)品和提供服務(wù)來創(chuàng)造價(jià)值因而盈利。管理的用途是做計(jì)劃,是組織,協(xié)調(diào)和領(lǐng)導(dǎo)企業(yè)的成員來取得獲利的價(jià)值創(chuàng)造。信息技術(shù)已經(jīng)改變了企業(yè)的創(chuàng)造價(jià)值的方式,改變了經(jīng)理們的管理方法。傳統(tǒng)的企業(yè)曾是,并且現(xiàn)在仍是等級(jí)森嚴(yán),集權(quán)的,有明確的專業(yè)人員構(gòu)成的組織結(jié)構(gòu),它主要依靠固定的一套標(biāo)準(zhǔn)工作程序來提供規(guī)模生產(chǎn)的產(chǎn)品(或服務(wù))。企業(yè)的新形式是扁平的(等級(jí)較少),分權(quán)的,通才人員的靈活組成,他們依靠實(shí)時(shí)(接近隨時(shí))信息來提供竟適合專門市場(chǎng)或顧客的,規(guī)模化定植產(chǎn)品和服務(wù)。但這種新型組織還沒有形成,正處于演變階段。不管怎樣,發(fā)展方向是明確的,沒有信息技術(shù)這一發(fā)展方向也許將是不可非議的。傳統(tǒng)的管理集團(tuán)過去和現(xiàn)在都依賴正式計(jì)劃,僵化的分工,正式的規(guī)章和借助忠誠(chéng)來保證企業(yè)的正常運(yùn)轉(zhuǎn)。新型經(jīng)理依靠非正式的承諾和網(wǎng)絡(luò)(不靠正式計(jì)劃)來設(shè)立目標(biāo),以任務(wù)組工作方式靈活的安排個(gè)人和集體,以一切為客戶的原則協(xié)調(diào)員工活動(dòng),借助專業(yè)技能和知識(shí)來取保企業(yè)的正常運(yùn)轉(zhuǎn)。同樣的,仍然是信息技術(shù)使這種管理方式具有可能。信息技術(shù)導(dǎo)致組織變化,這種變化使企業(yè)比過去更加依賴雇員個(gè)人的知識(shí),學(xué)習(xí)和決定。1.2辦公用品管理信息系統(tǒng)隨著改革和經(jīng)濟(jì)發(fā)展,我國(guó)企業(yè)的市場(chǎng)意識(shí)和對(duì)市場(chǎng)的適應(yīng)能力增強(qiáng),企業(yè)管理水平不斷提高,但與國(guó)際企業(yè)相比仍然存在較大差距,隨著公司的不斷發(fā)展和壯大,公司辦公用品的采購(gòu)和使用的需求量越來越大,而如何合理的管理這一系列工作中的流程呢?于是我們的辦公用品管理系統(tǒng)就應(yīng)運(yùn)而生了,其主要特點(diǎn)如下:(1).用品的采購(gòu)審批,大大的降低了公司因用品計(jì)劃的不合理以帶來了不必要的損失,從數(shù)量和金額上控制用品的采購(gòu),減少了以往在采購(gòu)中的一些人為的因素而給企業(yè)帶來的損失.(2).用品的入庫(kù)領(lǐng)用,能很淺析的知道企業(yè)辦公用品的庫(kù)存量,用品的使用地方。(3).庫(kù)存的查詢以與庫(kù)存的報(bào)警,能讓企業(yè)負(fù)責(zé)用品采購(gòu)的人員,提前的知曉所需用品是否還有庫(kù)存,以便于在與時(shí)使用用品的時(shí)候帶來時(shí)間來的節(jié)約。(4)報(bào)表的統(tǒng)計(jì)打印,能清楚知道辦公用品的歷史采購(gòu),歷史信用消耗記錄,以方便企業(yè)對(duì)用品的管理的決策起到參考作用。1.3本課題研究意義現(xiàn)階段,雖然許多用品管理系統(tǒng)能夠?qū)崿F(xiàn)信息化管理,但我國(guó)一些企業(yè)仍然停留在傳統(tǒng)的管理方式,即以、與書信形式為主要聯(lián)絡(luò)手段,人工處理日常業(yè)務(wù),例如采購(gòu)計(jì)劃,采購(gòu),領(lǐng)用,統(tǒng)計(jì)等。這種落后的管理方式造成低效率、高成本,更重要的是管理層對(duì)關(guān)鍵信息的掌握力不從心。而相關(guān)企業(yè)的信息化大多只限于會(huì)計(jì)電算化、辦公自動(dòng)化等初級(jí)階段。隨著企業(yè)規(guī)模的擴(kuò)大和業(yè)務(wù)的發(fā)展,原有的管理模式無法實(shí)現(xiàn)企業(yè)部之間與時(shí)的傳遞信息,難以與時(shí)反饋企業(yè)的運(yùn)轉(zhuǎn)情況,無法輔助管理人員掌握確實(shí)的企業(yè)辦公用品情況和制定合適的采購(gòu)計(jì)劃。因此,開發(fā)一套新的基于C/S模式的越野車公司辦公用品管理系統(tǒng)具有很高的實(shí)用價(jià)值和重要意義。第二章系統(tǒng)開發(fā)相關(guān)技術(shù)介紹2.1c#概述C#是Microsoft公司設(shè)計(jì)的一種編程語(yǔ)言。它松散地基于C/C++,并且有很多方面和Java類似。Microsoft是這樣描述C#的:“C#是從C和C++派生來的一種簡(jiǎn)單、現(xiàn)代、面向?qū)ο蠛皖愋桶踩木幊陶Z(yǔ)言。C#(讀做‘Csharp’)主要是從C/C++編程語(yǔ)言家族移植過來的,C和C++的程序員會(huì)馬上熟悉它。C#試圖結(jié)合VisualBasic的快速開發(fā)能力和C++的強(qiáng)大靈活的能力?!庇捎?NET與以前的技術(shù)有著極大的差異,微軟特意為.NET平臺(tái)開發(fā)了一種新的編程語(yǔ)言--C#(讀做"CSharp")。C#的核心語(yǔ)法和Java的語(yǔ)法很相似。然而,并不能說C#抄襲了Java。C#和Java都屬于C語(yǔ)言系列(包括C、ObjectiveC、C++等),它們有類似的語(yǔ)法。正如Java在許多方面是C++的提煉版一樣,C#也可以視為Java的提煉版。實(shí)際上,C#的許多語(yǔ)法結(jié)構(gòu)與VB6.0和C++的很多方面都有淵源。例如,與VB6類似,C#支持正式的類型屬性(property)的概念(與傳統(tǒng)的獲取方法和設(shè)置方法相反),且支持方法帶有不定數(shù)目的參數(shù)(使用參數(shù)數(shù)組)。與C++類似,C#允許重載運(yùn)算符,且支持創(chuàng)建結(jié)構(gòu)、枚舉和回調(diào)函數(shù)(使用委托)。C#3.0引入了各種函數(shù)式語(yǔ)言(如LISP或Haskell)中的很多結(jié)構(gòu)。此外,由于LINQ的出現(xiàn)(見第14章和第24章),C#支持很多編程結(jié)構(gòu),在編程語(yǔ)言中顯得非常獨(dú)特。盡管如此,C#的核心始終受到C系列語(yǔ)言的影響。C#是多種語(yǔ)言的混合體,因此它像Java一樣語(yǔ)法簡(jiǎn)潔,像VB6一樣使用簡(jiǎn)單,像C++一樣功能強(qiáng)大和靈活(C#沒有像C++那樣麻煩的位操作)。以下是C#核心特征的一部分,其部分特點(diǎn)也是其他支持.NET的程序語(yǔ)言所共有的特征。不需要指針!C#程序通常不需要直接對(duì)指針進(jìn)行操作(盡管在絕對(duì)必要時(shí)也能自由地進(jìn)行底層操作)。垃圾收集器能夠自動(dòng)管理存。因此,C#不支持delete關(guān)鍵字。類、接口枚舉、結(jié)構(gòu)和委托都有正式的語(yǔ)法結(jié)構(gòu)。具有與C++類似的功能,可以簡(jiǎn)單地重載運(yùn)算符為自定義類型(例如,不需要操心確保"返回*this以能夠")。支持基于特性的編程。這種方式的開發(fā)允許我們注釋類型與其成員來進(jìn)一步限定其行為。隨著.NET2.0的發(fā)布(大約在2005年),C#編程語(yǔ)言得到了更新以支持很多花哨的東西,主要是以下幾項(xiàng)。構(gòu)建泛型類型和泛型成員的能力。使用泛型,我們可以構(gòu)建非常高效的并且類型安全的代碼,在和泛型項(xiàng)交互的時(shí)候可以定義很多"占位符"。支持匿名方法,它允許我們?cè)谌魏涡枰蓄愋偷牡胤教峁┞?lián)函數(shù)。很多委托事件模型的簡(jiǎn)化,包括協(xié)變、逆變以與方法組轉(zhuǎn)換。使用partial關(guān)鍵字跨多個(gè)代碼文件定義單個(gè)類型的能力(或者如果有必要的話,可以作為存中的表示)。你也可能猜到了,.NET3.5為C#編程語(yǔ)言(更確切地說是C#3.0)增加了更多功能,包括如下特性。支持強(qiáng)類型的查詢(就像LINQ,即集成查詢語(yǔ)言),可用于和各種形式的數(shù)據(jù)進(jìn)行交互。支持匿名類型,它允許我們建模一個(gè)類型的"形"(shape)而不是其行為。使用擴(kuò)展方法擴(kuò)展既有類型功能的能力。包含了Lambda運(yùn)算符(=>),它可以進(jìn)一步簡(jiǎn)化.NET委托類型的使用。新的對(duì)象初始化語(yǔ)法,它允許我們?cè)趯?duì)象創(chuàng)建時(shí)設(shè)置屬性的值。關(guān)于C#語(yǔ)言,要理解的最重要的一點(diǎn)可能是,它生成的代碼只能在.NET運(yùn)行庫(kù)中執(zhí)行(你不能用C#來構(gòu)建本機(jī)的COM服務(wù)器或非托管的Win32API應(yīng)用程序)。正式的說法是,這種必須在.NET運(yùn)行庫(kù)下執(zhí)行的代碼稱為托管代碼(managedcode)。這些包含托管代碼的二進(jìn)制單元可以稱為程序集(assembly)(程序集的詳情稍后在1.5節(jié)中再講)。反之,不能直接在.NET運(yùn)行庫(kù)承載(host)的代碼稱為非托管代碼(unmanagedcode)。2.3SQLSERVER2005概述本系統(tǒng)將采用MicrosoftSQLServer2005作為系統(tǒng)的DBMS支撐,SQLServer2005是能夠支持企業(yè)級(jí)關(guān)系型數(shù)據(jù)庫(kù)的管理系統(tǒng),它能與Windows操作系統(tǒng)緊密集成,具有方便易用的圖形管理界面,其用戶界面風(fēng)格與Windows一樣非常友好。SQLServer2005在存儲(chǔ)大容量數(shù)據(jù)方面,在數(shù)據(jù)的安全性和完整性方面,在分布式處理等都是適合于企業(yè)級(jí)應(yīng)用的。而其相對(duì)Oracle,DB/2等大型數(shù)據(jù)庫(kù)來說,學(xué)習(xí)更為容易,應(yīng)用成本也相對(duì)較低。采用SQLServer2005+ASP.NET開發(fā)本系統(tǒng)是一個(gè)較為理想的組合。SQLServer2005的新特點(diǎn):動(dòng)態(tài)的自我管理:SQLServer2005運(yùn)行時(shí)動(dòng)態(tài)配置運(yùn)行環(huán)境,優(yōu)化并簡(jiǎn)化了許多服務(wù)器配置選項(xiàng),可隨用戶增多或者減少動(dòng)態(tài)地請(qǐng)求追加或者釋放資源,并可隨數(shù)據(jù)的增減自動(dòng)改變數(shù)據(jù)庫(kù)大小。豐富的管理工具:SQLServer2005提供了許多數(shù)據(jù)庫(kù)系統(tǒng)管理工具。系統(tǒng)管理員可以在運(yùn)行SQLServerEnterpriseManager的中央控制臺(tái)上,管理和監(jiān)視服務(wù)器運(yùn)行性能和企業(yè)數(shù)據(jù)庫(kù)。可編程的管理:SQL分布式對(duì)象可用于編寫應(yīng)用程序,這就可以使應(yīng)用程序數(shù)據(jù)包透明地將SQLServer2005嵌入應(yīng)用程序中。也可以使用SQL-DMO為不同站點(diǎn)的通用的管理任務(wù)建立應(yīng)用程序??赡苁湛s性和高可能性:SQLServer2005數(shù)據(jù)庫(kù)引擎可以幾乎所有Windows平臺(tái)上運(yùn)行,是可管理上千萬個(gè)用戶的大型數(shù)據(jù)庫(kù)。同時(shí)其還具有動(dòng)態(tài)自我調(diào)解的特性,能有效地在筆記本或者PC上運(yùn)行。支持?jǐn)?shù)據(jù)倉(cāng)庫(kù):SQLServer2005支持?jǐn)?shù)據(jù)倉(cāng)庫(kù)。系統(tǒng)訪問Internet集成:SQLServer2005與其他產(chǎn)品一起為Internet或Intranet系統(tǒng)形成一個(gè)穩(wěn)定的安全的數(shù)據(jù)存儲(chǔ);可為運(yùn)行在IIS下的Web應(yīng)用程序提供一個(gè)高性能的數(shù)據(jù)存儲(chǔ)服務(wù);此外,SQLServer2005數(shù)據(jù)庫(kù)引擎還包括了對(duì)XML的本地支持,Transact-SQL結(jié)果可以作為XML文檔返回給使用OLEBD和ADOAPI的應(yīng)用程序,XML文檔還可以添加到SQLServer2005中。綜上所述,在開發(fā)本系統(tǒng)時(shí),采用SQLServer2005作為數(shù)據(jù)庫(kù)管理系統(tǒng)。2.4開發(fā)工具的和運(yùn)行環(huán)境在開發(fā)工具上,我選擇VisualStudio.NET。VisualStudio.NET是一套完整的開發(fā)工具,用于生成ASPWeb應(yīng)用程序、XMLWebservices、桌面應(yīng)用程序和移動(dòng)應(yīng)用程序。VisualBasic.NET、VisualC++.NET、VisualC#.NET和VisualJ#.NET全都使用一樣的集成開發(fā)環(huán)境(IDE),該環(huán)境允許它們共享工具并有助于創(chuàng)建混合語(yǔ)言解決方案。另外,這些語(yǔ)言利用了.NETFramework的功能,此框架提供對(duì)簡(jiǎn)化ASPWeb應(yīng)用程序和XMLWebservices開發(fā)的關(guān)鍵技術(shù)的訪問。VisualStudio.NET是用于快速生成企業(yè)級(jí)ASP.NETWeb應(yīng)用程序和高性能桌面應(yīng)用程序的工具。VisualStudio包含基于組件的開發(fā)工具(如VisualC#、VisualJ#、VisualBasic和VisualC++),以與許多用于簡(jiǎn)化基于小組的解決方案的設(shè)計(jì)、開發(fā)和部署的其他技術(shù)。VisualStudio支持Microsoft.NETFramework,該框架提供公共語(yǔ)言運(yùn)行庫(kù)和統(tǒng)一編程類;Winform.NET使用這些組件來創(chuàng)建C#應(yīng)用程序.C/S結(jié)構(gòu),即Client/Server(客戶機(jī)/服務(wù)器)結(jié)構(gòu),是大家熟知的軟件系統(tǒng)體系結(jié)構(gòu),通過將任務(wù)合理分配到Client端和Server端,降低了系統(tǒng)的通訊開銷,可以充分利用兩端硬件環(huán)境的優(yōu)勢(shì)。早期的軟件系統(tǒng)多以此作為首選設(shè)計(jì)標(biāo)準(zhǔn)。服務(wù)器通常采用高性能的PC、工作站或小型機(jī),并采用大型數(shù)據(jù)庫(kù)系統(tǒng),如Oracle、Sybase、Informix或SQLServer??蛻舳诵枰惭b專用的客戶端軟件。C/S的優(yōu)點(diǎn)是能充分發(fā)揮客戶端PC的處理能力,很多工作可以在客戶端處理后再提交給服務(wù)器。對(duì)應(yīng)的優(yōu)點(diǎn)就是客戶端響應(yīng)速度快。該運(yùn)行環(huán)境的規(guī)定是保證本需求說明的功能得到實(shí)際真正體現(xiàn)的基礎(chǔ)。(1)服務(wù)器端運(yùn)行環(huán)境支持軟件服務(wù)器端軟件:Windows2005Server或更高版本的操作系統(tǒng),推薦Windows2003EnterpriseEdition數(shù)據(jù)庫(kù)系統(tǒng):SQLServer2005或更高版本的數(shù)據(jù)服務(wù)器Web服務(wù)器:MicrosoftIIS6.0.NETFrameworkv1.1或更高版本的Web應(yīng)用支持(2)用戶端PC軟件Windows98或更高版本操作系統(tǒng)(安裝有IE5.0以上版本)或其它98年以后發(fā)布的帶有Internet瀏覽器軟件的圖形UI操作系統(tǒng)操作系統(tǒng):windows,Linux等(3)開發(fā)環(huán)境:操作系統(tǒng):Win7EnterpriseEdition開發(fā)工具:MicrosoftVisualStudio.NET2010,AdobePhotoshopCS數(shù)據(jù)庫(kù)系統(tǒng):MicrosoftSqlServer2005CPU:IntelPentium(R)42.8CHz存:1GB第三章系統(tǒng)分析3.1需求分析3.1.1系統(tǒng)整體需求從總體上看,本系統(tǒng)需要為不同的業(yè)務(wù)人員提供不同的操作功能。一般用戶主要是負(fù)責(zé)對(duì)辦公用品進(jìn)行采購(gòu)計(jì)劃制定,以與對(duì)辦公用品的領(lǐng)用,只需要登陸上報(bào)采購(gòu)計(jì)劃以與對(duì)自己需要使用的辦公用品進(jìn)行領(lǐng)用,其操作流程如下圖所示:圖3.1普通用戶登陸系統(tǒng)操作圖管理員可以對(duì)用品的采購(gòu)入庫(kù),庫(kù)存查詢,庫(kù)存報(bào)警參數(shù)設(shè)置,報(bào)表統(tǒng)計(jì)查詢,用品入庫(kù)管理流程如下:圖3.2用品入庫(kù)流程圖相關(guān)決策人員可以查看用品報(bào)表。最后,系統(tǒng)管理員需要對(duì)整個(gè)系統(tǒng)的人員進(jìn)行管理,可以增加、刪除用戶,修改用戶信息,調(diào)整角色權(quán)限等等。用戶管理的基本流程如下:圖3.3用戶管理基本流程3.1.2具體功能需求(1)用品采購(gòu)計(jì)劃當(dāng)某些用品庫(kù)存不足的時(shí)候,就需要對(duì)應(yīng)這些用品進(jìn)行采購(gòu).采購(gòu)計(jì)劃由各部門人員登陸系統(tǒng)進(jìn)行計(jì)劃的添加,主要包括用品的編號(hào)、用品名字、規(guī)格、數(shù)量、金額等。相關(guān)的管理人員再登陸系統(tǒng)對(duì)用品計(jì)劃進(jìn)行審核。(2)用品信息管理當(dāng)有新用品入庫(kù)時(shí),應(yīng)能夠與時(shí)的錄入用品的基本信息,主要包括用品品編號(hào)、用品品名稱、用品單價(jià)、用品的庫(kù)存量。當(dāng)用品被領(lǐng)用出去時(shí),應(yīng)能夠與時(shí)對(duì)該用品的庫(kù)存量進(jìn)行修改。如果某種藥品不再生產(chǎn)或者被禁止銷售,則需要對(duì)該品種藥品信息進(jìn)行刪除,以減輕數(shù)據(jù)庫(kù)的運(yùn)行負(fù)擔(dān),提高處理速度。(3)用品領(lǐng)用主要提供給用品需求人員進(jìn)行方便快捷的領(lǐng)用操作。用品領(lǐng)用過程中,領(lǐng)用人員首先需要了解該用品庫(kù)存是否足夠,當(dāng)庫(kù)存不足的時(shí)候就會(huì)提示當(dāng)前庫(kù)存已經(jīng)不足了,不能領(lǐng)用,然后提醒相關(guān)人員進(jìn)行用品的采購(gòu)。(3)報(bào)表查詢主要對(duì)用品采購(gòu)領(lǐng)用情況進(jìn)行查詢。生成相應(yīng)的統(tǒng)計(jì)報(bào)表。并且可以對(duì)其理行統(tǒng)計(jì),查詢打印等。(4)報(bào)警參數(shù)設(shè)置主要對(duì)用品庫(kù)存的報(bào)警值進(jìn)行相關(guān)的設(shè)置,當(dāng)庫(kù)存的用品達(dá)到這個(gè)值時(shí),就會(huì)提醒當(dāng)前庫(kù)存不足。(5)系統(tǒng)管理系統(tǒng)管理功能對(duì)于任何計(jì)算機(jī)系統(tǒng)來說都是必備的且十分重要的。根據(jù)本系統(tǒng)的功能特點(diǎn),由于需要對(duì)不同的人員給予不同的權(quán)限,所以需要實(shí)現(xiàn)角色權(quán)限管理功能。系統(tǒng)還需要對(duì)所存在的用戶進(jìn)行管理,包括刪除已經(jīng)辭退的員工賬戶,或者修改某個(gè)員工賬戶的角色以適應(yīng)員工職務(wù)的更改。3.1.3系統(tǒng)開發(fā)目標(biāo)(1)節(jié)約傳統(tǒng)模式下企業(yè)對(duì)用品管理所損耗的大量人力物力資源,提高企業(yè)辦公用品采購(gòu)使用與管理的精確度,與時(shí)性,有效性。本系統(tǒng)能減少很多不必要的資源浪費(fèi),不用象以前那樣用冗余的紙式的管理,大大節(jié)省了企業(yè)開支。并且,計(jì)算機(jī)的存儲(chǔ)與快速查詢功能大大提高了大量藥品管理的效率,避免了人工操作所容易出現(xiàn)的錯(cuò)誤。(2)方便快速操作,精減人員,節(jié)約開支。方便快速的操作,可提高企業(yè)管理的效率,又減少因工作的冗余出現(xiàn)的錯(cuò)誤。與此同時(shí),信息化的系統(tǒng)可減少許多不很必要的人員,這無論從物質(zhì)上還是工作人員的工資上都為企業(yè)節(jié)約了開支,為企業(yè)的快速發(fā)展減輕了負(fù)擔(dān)。3.2系統(tǒng)可行性分析3.2.1技術(shù)可行性本系統(tǒng)采用C/S體系結(jié)構(gòu)。利用Winform.NET4.0技術(shù)開發(fā),以MicrosoftVisualStudio2010作為開發(fā)平臺(tái),采用MicrosoftSQLServer2005數(shù)據(jù)庫(kù)來對(duì)數(shù)據(jù)庫(kù)進(jìn)行開發(fā)與設(shè)計(jì),所以在技術(shù)上是可行的。3.2.2操作可行性系統(tǒng)采用MicrosoftVisualStudio2010加SQLServer2005其穩(wěn)定性很強(qiáng)。從用戶的角度來講,系統(tǒng)可單機(jī)安裝,要求用戶計(jì)算機(jī)的配置低,系統(tǒng)界面簡(jiǎn)潔易懂,十分方便。所以,系統(tǒng)有較強(qiáng)的操作可行性,無須更多的專業(yè)培訓(xùn),只要普通的管理人員就可以勝任。3.2.3社會(huì)可行性本系統(tǒng)的開發(fā)成本和運(yùn)維成本都不高,然而該系統(tǒng)的應(yīng)用可以使得企業(yè)辦公用品聽管理工作過程實(shí)現(xiàn)信息化,成倍的提高工作效率和工作質(zhì)量,節(jié)約大量人力成本和管理成本,對(duì)企業(yè)的發(fā)展起到十分有力的推進(jìn)作用。故該系統(tǒng)具備很強(qiáng)的社會(huì)可行性。第四章系統(tǒng)設(shè)計(jì)與編程實(shí)現(xiàn)4.1系統(tǒng)概要設(shè)計(jì)本系統(tǒng)總共劃分為5個(gè)模塊:采購(gòu)計(jì)劃、用品管理、報(bào)警參數(shù)設(shè)置和報(bào)表查詢,系統(tǒng)管理。如下圖所示:圖4.1系統(tǒng)總體功能模塊圖采購(gòu)計(jì)劃分為二塊:一塊是制定計(jì)劃,二是審批計(jì)劃。其中制定計(jì)劃,由各部門普通人員進(jìn)行計(jì)劃的添加,也可以刪除計(jì)劃,然后由企業(yè)相關(guān)的管理人員對(duì)計(jì)劃進(jìn)行審核。用品管理分為三塊:用品入庫(kù)、用品領(lǐng)用、用品庫(kù)存查詢,用品入庫(kù)是對(duì)新到用品進(jìn)行統(tǒng)一入庫(kù),當(dāng)是以前庫(kù)存里面沒有的就直接添加到庫(kù)存。如果是以前已有的用品就只需要更新庫(kù)存,此塊為管理員所有。用品領(lǐng)用,用戶根據(jù)自身需求對(duì)相關(guān)用品進(jìn)行領(lǐng)用,普通用戶和管理員都可以操作,只是普通用戶不能刪除用品領(lǐng)用信息。用品庫(kù)存查詢,此塊可以查詢到用品的庫(kù)存情況,庫(kù)存不足的用品系統(tǒng)會(huì)用紅色顯示其信息,管理員可以操作這一功能。報(bào)警參數(shù)設(shè)置:設(shè)置用品庫(kù)存的報(bào)警值,當(dāng)用品達(dá)到這一報(bào)警值后,就自動(dòng)提示庫(kù)存已經(jīng)不足。報(bào)表查詢模塊,根據(jù)條件對(duì)采購(gòu)領(lǐng)用數(shù)據(jù)庫(kù)進(jìn)行查詢、統(tǒng)計(jì)打印。報(bào)表中列出用品詳細(xì)采購(gòu)信息以與領(lǐng)用總量、等情況,以便于進(jìn)行企業(yè)分析決策。系統(tǒng)管理模塊又分為二個(gè)子模塊:用戶管理、密碼修改。因?yàn)橄到y(tǒng)并不允許公開注冊(cè),所以添加用戶模塊用于為新員工根據(jù)其職能類型添加系統(tǒng)賬號(hào)。用戶管理是對(duì)系統(tǒng)中的所有賬號(hào)進(jìn)行管理,可以修改賬號(hào)的屬性,甚至對(duì)其進(jìn)行刪除。系統(tǒng)管理模塊為系統(tǒng)管理員所特有。4.2數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)是所有管理信息系統(tǒng)中的重要環(huán)節(jié),本系統(tǒng)也不例外。為了使得越野車公司辦公用品管理系統(tǒng)中各部分的數(shù)據(jù)一目了然、避免冗余,必須對(duì)系統(tǒng)的數(shù)據(jù)庫(kù)進(jìn)行E-R圖設(shè)計(jì)。本系統(tǒng)中,主要的實(shí)體是計(jì)劃、用品入庫(kù)、庫(kù)存、領(lǐng)用、用戶和參數(shù)設(shè)置。分別列出對(duì)應(yīng)的E-R圖如下:計(jì)劃計(jì)劃自動(dòng)id自動(dòng)id時(shí)間狀態(tài)時(shí)間狀態(tài)用品名用品名計(jì)劃人金額數(shù)量規(guī)格計(jì)劃人金額數(shù)量規(guī)格圖4.1計(jì)劃E-R圖入庫(kù)操作人用品名單價(jià)數(shù)量規(guī)格自動(dòng)id時(shí)間編號(hào)入庫(kù)操作人用品名單價(jià)數(shù)量規(guī)格自動(dòng)id時(shí)間編號(hào)圖4.2入庫(kù)E-R圖用品名數(shù)量規(guī)格自動(dòng)id庫(kù)存用品名數(shù)量規(guī)格自動(dòng)id庫(kù)存編號(hào)編號(hào)金額金額圖4.3庫(kù)存E-R圖時(shí)間狀態(tài)用品名數(shù)量規(guī)格自動(dòng)id領(lǐng)用時(shí)間狀態(tài)用品名數(shù)量規(guī)格自動(dòng)id領(lǐng)用領(lǐng)用人領(lǐng)用人圖4.4領(lǐng)用E-R圖用戶名自動(dòng)id用戶用戶名自動(dòng)id用戶權(quán)限權(quán)限登陸名密碼登陸名密碼圖4.5用戶E-R圖報(bào)警參數(shù)報(bào)警參數(shù)參數(shù)參數(shù)圖4.6報(bào)警參數(shù)根據(jù)以上E-R圖,可以方便的進(jìn)行數(shù)據(jù)表的設(shè)計(jì)。(1)計(jì)劃表Plan,包含的屬性有ID,材料名字、規(guī)格、數(shù)量、金額、計(jì)劃人、計(jì)劃時(shí)間。計(jì)劃表如表3.1所示:表3.1計(jì)劃表Plan序號(hào)列名數(shù)據(jù)類型長(zhǎng)度小數(shù)位標(biāo)識(shí)主鍵允許空默認(rèn)值說明1IDint40是是否2MaterialNamevarchar1000是材料名稱3Specificationvarchar1000是規(guī)格4Quantityfloat80是數(shù)量5Moneydecimal92是金額6Peoplevarchar500是申請(qǐng)人7Statusvarchar500是'未審核'狀態(tài)8Timdatetime83是getdate時(shí)間(2)用戶表User,包含的屬性為用戶id,登錄名,密碼,員工名和角色。如表3.2所示:表3.2用戶表User序號(hào)列名數(shù)據(jù)類型長(zhǎng)度小數(shù)位標(biāo)識(shí)主鍵允許空默認(rèn)值說明1IDint40是是否2UserNamevarchar5000是3UserLoginvarchar5000是4UserPassvarchar5000是5UserRolevarchar500是'管理員'(3)庫(kù)存表Stock,屬性有:id,操作人、編號(hào)、名稱、價(jià)格、庫(kù)存數(shù)量、入庫(kù)時(shí)間、,詳見表3.3。表3.3庫(kù)存表Stock序號(hào)列名數(shù)據(jù)類型長(zhǎng)度小數(shù)位標(biāo)識(shí)主鍵允許空默認(rèn)值說明1IDint40是是否2Codevarchar500是用品編號(hào)3MaterialNamevarchar1000是用品名稱4Specificationvarchar1000是規(guī)格5Quantityfloat80是數(shù)量6UnitPricesdecimal92是單價(jià)(4)入庫(kù)表Storage,包含屬性:id、編號(hào)、單價(jià)、數(shù)量、時(shí)間等,如表3.4所示:表3.4入庫(kù)表Storage序號(hào)列名數(shù)據(jù)類型長(zhǎng)度小數(shù)位標(biāo)識(shí)主鍵允許空默認(rèn)值說明1IDint40是是否2Codevarchar500是用品編號(hào)3MaterialNamevarchar1000是用品名稱4Specificationvarchar1000是規(guī)格5Quantityfloat80是數(shù)量6UnitPricesdecimal92是單價(jià)7Peoplevarchar500是操作人員8Timdatetime83是getdate(5)領(lǐng)用表Consuming,包含屬性:id、編號(hào)、數(shù)量、時(shí)間等,如表3.5所示:表3.5領(lǐng)用表Consuming序號(hào)列名數(shù)據(jù)類型長(zhǎng)度小數(shù)位標(biāo)識(shí)主鍵允許空默認(rèn)值說明1IDint40是是否2Codevarchar500是用品編號(hào)3MaterialNamevarchar1000是用品名稱4Specificationvarchar1000是規(guī)格5Quantityfloat80是數(shù)量6ConsumingPeoplevarchar500是領(lǐng)用人7Timdatetime83是getdate(6)參數(shù)表AlarmSet,包含屬性:參數(shù),如表36所示:表3.6參數(shù)表AlarmSet序號(hào)列名數(shù)據(jù)類型長(zhǎng)度小數(shù)位標(biāo)識(shí)主鍵允許空默認(rèn)值說明1Alarmint40是報(bào)警參數(shù)4.3登陸模塊模塊(界面設(shè)計(jì),同時(shí)給出關(guān)鍵代碼)對(duì)用戶登陸進(jìn)行驗(yàn)證,判斷登陸用戶是管理員還是一般用戶.4.3.1登陸如圖4.7所示:圖4.7登陸頁(yè)面此塊的關(guān)鍵代碼如下:if(txtLogin.Text.Trim()==""){MessageBox.Show("用戶名為空!");return;}if(txtPass.Text.Trim()==""){MessageBox.Show("密碼為空!");return;}Data.DUserbll=new越野車公司用品管理系統(tǒng).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("用戶或者密碼錯(cuò)誤!");txtPass.Text="";return;}4.4采購(gòu)計(jì)劃模塊采購(gòu)計(jì)劃管理,主要是對(duì)采購(gòu)進(jìn)行計(jì)劃填寫,對(duì)計(jì)劃進(jìn)行審核。4.4.1填寫計(jì)劃如圖4.8所示:圖4.8采購(gòu)計(jì)劃操作人員在此模塊上錄入相應(yīng)的數(shù)據(jù)點(diǎn)擊保存后就可以將相應(yīng)數(shù)據(jù)增加到計(jì)劃表中,這里同時(shí)也可以修改查刪除計(jì)劃數(shù)據(jù)。其關(guān)鍵代碼如下: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("數(shù)量不能為空");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審批計(jì)劃如圖4.9所示:圖4.9審批計(jì)劃操作人員在此模塊對(duì)上報(bào)的用品計(jì)劃數(shù)據(jù)進(jìn)行審核。其關(guān)鍵代碼如下: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用品入庫(kù)通過主菜單進(jìn)入用品管理模塊,然后點(diǎn)擊用品入庫(kù)。如圖4.10所示:圖4.10用品入庫(kù)此塊的關(guān)鍵代碼如下: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("編號(hào)不能為空");return;}if(txtName.Text.Trim()==""){MessageBox.Show("用品名不能為空");return;}if(txtQuantity.Text.Trim()==""){MessageBox.Show("數(shù)量不能為空");return;}if(txtUnitPrices.Text.Trim()==""){MessageBox.Show("單價(jià)不能為空");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,"是否刪除當(dāng)前數(shù)據(jù)!","警告!",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("不能刪除,當(dāng)前入庫(kù)數(shù)據(jù)已經(jīng)被出庫(kù)!");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用品領(lǐng)用通過主菜單進(jìn)入用品管理模塊,然后點(diǎn)擊用品領(lǐng)用,如圖4.11所示:圖4.11用品領(lǐng)用此塊提供對(duì)用品進(jìn)行領(lǐng)用的操作,輸入用品編號(hào),點(diǎn)擊查詢就可以查詢出庫(kù)存中的用品,然后點(diǎn)擊領(lǐng)用就可以完成用品的領(lǐng)用,同時(shí)也可以刪除領(lǐng)用數(shù)據(jù)。其關(guān)鍵代碼如下:privatevoidbutton2_Click(objectsender,EventArgse){if(txtCode.Text.Trim()==""){MessageBox.Show("編號(hào)不能為空");return;}if(txtName.Text.Trim()==""){MessageBox.Show("用品名不能為空");return;}if(txtQuantity.Text.Trim()==""){MessageBox.Show("數(shù)量不能為空");return;}if(txtConsumingPeople.Text.Trim()==""){MessageBox.Show("領(lǐng)用人不能為空");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("當(dāng)前領(lǐng)用數(shù)量大于庫(kù)存數(shù)量!");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("領(lǐng)用成功!");}else{MessageBox.Show("倉(cāng)庫(kù)不存在當(dāng)前編碼的用品!");return;}}privatevoidbutton3_Click(objectsender,EventArgse){if(txtCode.Text.Trim()==""){MessageBox.Show("請(qǐng)輸入編號(hào)!");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("當(dāng)前庫(kù)存數(shù)量已經(jīng)小于或等于預(yù)警庫(kù)存,請(qǐng)與時(shí)采購(gòu)!");}txtName.Text=dt.Rows[0]["MaterialName"].ToString();txtSpecification.Text=dt.Rows[0]["Specification"].ToString();txtQuantity.Text=dt.Rows[0]["Quantity"].ToString();}}else{MessageBox.Show("不存在此編號(hào)的物品!");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,"是否刪除當(dāng)前數(shù)據(jù)!","警告!",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用品庫(kù)存查詢通過主菜單進(jìn)入用品管理模塊,然后點(diǎn)擊庫(kù)存查詢,如圖4.12所示:圖4.12用品庫(kù)存查詢此塊提供對(duì)用品進(jìn)行庫(kù)存情況進(jìn)行查詢。其關(guān)鍵代碼如下: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等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度土地租賃保證金合同范本3篇
- 審準(zhǔn)答題區(qū)域高考語(yǔ)文
- 畫世界畫人物課程設(shè)計(jì)
- 2024年單位跨區(qū)域物資運(yùn)輸合同范本2篇
- 新生代表發(fā)言稿(集合15篇)
- 2024年度保密協(xié)議書范本:保密協(xié)議的保密期限3篇
- 注射成型課程設(shè)計(jì)
- 搬遷方案集錦五篇
- 海報(bào)課程設(shè)計(jì)報(bào)告
- 游園湯顯祖課程設(shè)計(jì)
- 邏輯樹的類型及應(yīng)用舉例
- 山東省建筑工程消耗量定額計(jì)算規(guī)則及定額解釋樣本
- 義務(wù)教育科學(xué)課程標(biāo)準(zhǔn)(2022年版)解讀
- 新建南通至寧波高速鐵路站前Ⅲ標(biāo)二分部出海棧橋及綜合碼頭(自用)工程海域使用論證報(bào)告表
- 2023-2024學(xué)年廣東省東莞市七年級(jí)上期末數(shù)學(xué)試卷附答案
- 檢察機(jī)關(guān)的體制與組織機(jī)構(gòu)課件
- 常用光電傳感器介紹課件
- 山東省濰坊市濰城區(qū)2023-2024學(xué)年六年級(jí)上學(xué)期期末語(yǔ)文試題
- 電玩城崗位流程培訓(xùn)方案
- 會(huì)計(jì)師事務(wù)所保密制度
- 復(fù)合機(jī)器人行業(yè)分析
評(píng)論
0/150
提交評(píng)論