




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、( 此文檔為 word 格式,下載后您可任意編輯修改!)優(yōu)秀論文審核通過未經(jīng)允許切勿外傳倉(cāng)庫(kù)管理系統(tǒng)前言自 1946 年人類第一臺(tái)計(jì)算機(jī)(ENIAC )問世以來,50 多年過去了,計(jì)算機(jī)的軟硬件發(fā)展日新月異,突飛猛進(jìn)。以個(gè)人電腦為例,硬件方面,以 CPU、內(nèi)存、硬盤為代表,CPU 已發(fā)展到當(dāng)今的 P4 2.8GHZ ,P和 P已淡出歷史舞臺(tái),成為昨日黃花;256MDDR 內(nèi)存,80G 以上的 7200 轉(zhuǎn)硬盤已成為標(biāo)準(zhǔn)配置。如此高性能的配置,就是和 5年之前相比,也不知高出了多少倍。軟件方面,已經(jīng)從當(dāng)初晦澀難懂的機(jī)器語言、匯編語言過渡到今天的第四代語言甚至第五代語言,第四代語言(4GL)是完全
2、非過程化的語言,這種語言只要求用戶指明將要干什么,而無需指明怎么干,如何做這一工作,則完全交給軟件模塊來自動(dòng)處理,大大提高了軟件的開發(fā)效率和軟件質(zhì)量,使軟件開發(fā)人員從繁重的腦力、體力勞動(dòng)中解脫出來。伴隨著計(jì)算機(jī)軟硬件技術(shù)的發(fā)展,計(jì)算機(jī)的技術(shù)和應(yīng)用獲得了突飛猛進(jìn)的發(fā)展,計(jì)算機(jī)已經(jīng)在大致如下的領(lǐng)域得到廣泛的應(yīng)用:1、科學(xué)計(jì)算:如在天文學(xué)、生物學(xué)、空氣動(dòng)力學(xué)、核物理學(xué)、1地質(zhì)勘探、新材料的研制和天氣預(yù)報(bào)等領(lǐng)域中。2、數(shù)據(jù)處理:與科學(xué)計(jì)算不同,數(shù)據(jù)處理涉及的數(shù)據(jù)量大,但計(jì)算方法較簡(jiǎn)單。3、過程控制:以下內(nèi)容略隨著計(jì)算機(jī)的普及和發(fā)展,人們開始利用計(jì)算機(jī)解決越來越多的實(shí)際問題,雖然現(xiàn)在軟件的數(shù)量如雨后春筍
3、,但依然不能滿足用戶的各種需要,尤其是用于特定教學(xué)管理方面的軟件。本文是針對(duì)我校學(xué)習(xí)成績(jī)管理方面的需求進(jìn)行開發(fā)設(shè)計(jì)而形成一套適合自身應(yīng)用的計(jì)算機(jī)管理信息系統(tǒng)。論文對(duì)系統(tǒng)進(jìn)行了較為全面的業(yè)務(wù)需求分析,并進(jìn)行有針對(duì)性的系統(tǒng)設(shè)計(jì),包括開發(fā)平臺(tái)和 工 具 選 型 、功 能 模 塊 設(shè) 計(jì) 、數(shù)據(jù) 庫(kù) 設(shè) 計(jì) 等 ,最 后 選 用 Visual C+ 6.0 和 Access 數(shù) 據(jù) 庫(kù) 進(jìn) 行 了 系 統(tǒng)實(shí) 現(xiàn) ,并 進(jìn) 行 了 相 應(yīng) 的 系 統(tǒng) 測(cè) 試和 調(diào) 試隨著當(dāng)代計(jì)算機(jī)技術(shù)的發(fā)展,硬件運(yùn)行速度的不斷提高,軟件功能越來越多,越來越完善,它的應(yīng)用范圍也就不斷地?cái)U(kuò)大,已被廣泛地應(yīng)用于科研部門,金融
4、系統(tǒng)、工廠、學(xué)校,直至進(jìn)入千家萬戶。用手工來完成物資管理系統(tǒng)是一個(gè)較煩瑣的過程,既費(fèi)時(shí)、費(fèi)力,又不利于一個(gè)月或更久時(shí)間的結(jié)算,而進(jìn)行計(jì)算機(jī)管理可以大大提高工作效率,而且數(shù)據(jù)處理也更為精確。本文用 Visual c+6.0 設(shè)計(jì)用戶界面 , access 97 做數(shù)據(jù)庫(kù)摘要:倉(cāng)庫(kù)管理系統(tǒng)是信息管理系統(tǒng) (MIS), 其開發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個(gè)方面。 對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫(kù)。而對(duì)于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。經(jīng)過分析 ,使用 MICROSOFT公司的 VISUALc+開發(fā)工具 ,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具
5、,尤其是數(shù)據(jù)窗口這一能方便而簡(jiǎn)潔操縱數(shù)據(jù)庫(kù)的智能化對(duì)象 ,首先在短時(shí)間內(nèi)建立系統(tǒng)應(yīng)用原型 ,然后 ,對(duì)初始原型系統(tǒng)進(jìn)行需求迭代 ,不斷修正和改進(jìn) ,直到形成用戶滿意的可行系統(tǒng)。物資管理是一般工業(yè) ,商業(yè)企業(yè)生產(chǎn)管理環(huán)節(jié)中重要的一環(huán),需要對(duì)物資基本信息管理,物資調(diào)配信息等內(nèi)容進(jìn)行完整的監(jiān)控,這樣才能更有效地利用物資管理.。關(guān)鍵詞: ADO, 面向?qū)ο?, 信息管理系統(tǒng)ABSTRACTThe warehouse management systemdevelops and includes backstagesupporter foundation and maintain and front de
6、velopment two of application program of data base mainly. Demand and set up data consistencyand integrality strong, data security kind storehouse as to the former. Require to the latter that the function of the application program is complete, apt characteristic of using etc. Through analyse , use M
7、ICROSOFT + developing instrument, c of VISUAL, of Company , utilize various kinds of that offer it face developing instrument of marriage partner, Data window this can convenient succinct to carry on to initial prototype system demand changes and takes the place of within short time at first, Revise
8、 and improve constantly,2until forming users satisfied feasible system. The important ring in the production management of merchandising concern link, Need to goods and materials basic information management, goods and materials allocate information,etc. content go on intact control, Could utilize t
9、his way. This text introduction make with interface and make the data base with vc + with database sql sever 2000.Keywords: ADO,FACE TO OBJECT,MIS Management Information System1.2.2,31.1,.31.2,.5,.52.12.22.3,.553.1,.63.2.63.3.63.4.6,64.1VC+,104.2ACCESS ,.104.3- material_mis,124.4,124.5,.13,14,.186.1
10、,.196.2,236.3,.266.4,266.5,.29.303031:313第一章系統(tǒng)設(shè)計(jì)介紹1.1系統(tǒng)功能分析系統(tǒng)開發(fā)的總體任務(wù)就是實(shí)現(xiàn)倉(cāng)庫(kù)管理的信息的系統(tǒng)化、規(guī)范化和自動(dòng)化。隨著電腦誕生以來,人類聰明的頭腦總是想:“要做的事簡(jiǎn)單化“。因此在我們大、中、小賓館,其繁重信息管理使他們聰明的頭腦想到:”由電腦來管理這些事務(wù),又簡(jiǎn)單又省事。所以人們常說:“計(jì)算機(jī)已經(jīng)成為我們學(xué)習(xí)和工作的得力助手了,少了它生命中沒有了陽光!“。今天,計(jì)算機(jī)的價(jià)格已經(jīng)十分低廉,性能卻有了長(zhǎng)足的進(jìn)步。 它已經(jīng)被應(yīng)用于許多領(lǐng)域,計(jì)算機(jī)之所以如此流行的原因主要有以下幾個(gè)方面:首先,計(jì)算機(jī)可以代替人工進(jìn)行許多繁雜的勞動(dòng);
11、其次,計(jì)算機(jī)可以節(jié)省許多資源;第三,計(jì)算機(jī)可以大大的提高人們的工作效率;第四,計(jì)算機(jī)可以使敏感文檔更加安全,等等??梢姡_發(fā)一套物資信息管理系統(tǒng)已經(jīng)是必要的了。倉(cāng)庫(kù)管理是企業(yè)管理的一個(gè)重要內(nèi)容。 隨著時(shí)代的進(jìn)步,企業(yè)也逐漸變的龐大起來。如何管理好企業(yè)內(nèi)物資的信息, 成為企業(yè)管理中的一個(gè)重要問題。在這種情況下,一個(gè)可以規(guī)范化,自動(dòng)化的物資系統(tǒng)就顯的非常重要。最初的倉(cāng)庫(kù)管理,都是靠人力來完成。當(dāng)企業(yè)規(guī)模比較小的時(shí)候,人力可以完成。隨著企業(yè)規(guī)模越來越大, 企業(yè)的物資數(shù)量越來越多,依然維持著人力進(jìn)管理必然會(huì)造成工作效率底,工作錯(cuò)誤曾高等問題。管 理信 息系 統(tǒng) ( 簡(jiǎn) 稱 MIS) 是介于信息論,經(jīng)濟(jì)
12、管理理論,統(tǒng)計(jì)學(xué)與運(yùn)籌學(xué)及計(jì)算機(jī)科學(xué)之間的一門邊緣性,綜合性,系統(tǒng)性的交叉科學(xué),它是隨著管理科學(xué),信息技術(shù),計(jì)算機(jī)技術(shù)等的發(fā)展而產(chǎn)生和發(fā)展起來的。XXX 管理系統(tǒng)是典型的信息管理系統(tǒng),其開發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端的應(yīng)用程序的開發(fā)兩個(gè)方面。對(duì)于前者要求建立數(shù)據(jù)的一致性和完整性,對(duì)于后者則要求應(yīng)用程序功能的完備,易用等的特點(diǎn)。基于上述考慮本系統(tǒng)主要利用 VC6.0作前 端的 應(yīng)用 開發(fā) 工具 ,利用 Sql 或 Acess 作為 后臺(tái) 的數(shù) 據(jù)庫(kù) ,利用 WINDOWS作為系統(tǒng)平臺(tái)開發(fā)的 XXXX管理系統(tǒng)。另外本 XXX 管理系統(tǒng)利用軟件工程化思想和方法,總體上是采用結(jié)構(gòu)化生命法進(jìn)
13、行系統(tǒng)分析和設(shè)計(jì)的,而系統(tǒng)實(shí)現(xiàn)等步驟則采用了原型法和面對(duì)對(duì)象的方向倉(cāng)庫(kù)管理系統(tǒng)就是把分散的企業(yè)物資信息實(shí)行統(tǒng)一,集中,規(guī)范的收集管理。建立分類編號(hào)管理,電腦存貯查詢以及防火,防潮,防盜等現(xiàn)代化,專4業(yè)化的管理系統(tǒng)。為企事業(yè)的管理解除了后顧之憂。系統(tǒng)功能分析是在系統(tǒng)開發(fā)總體任務(wù)的基礎(chǔ)上進(jìn)行的。 本系統(tǒng)中的倉(cāng)庫(kù)管理信息系統(tǒng)需要完成的主要功能有:有關(guān)物資基本信息的輸入,包括物資編號(hào)、物資名稱、規(guī)格型號(hào)、種類和計(jì)量單位等。物資基本信息的查詢。物資基本信息的修改。入庫(kù)物資基本信息的輸入。入庫(kù)物資基本信息的查詢。入庫(kù)物資基本信息的修改。出庫(kù)物資基本信息的輸入。出庫(kù)物資基本信息的查詢。出庫(kù)物資基本信息的修改
14、。物資余額信息的查詢。物資余額信息的瀏覽1.2系統(tǒng)功能模塊設(shè)計(jì)對(duì)上述的功能進(jìn)行集中, 分塊和分析, 按照結(jié)構(gòu)化程序設(shè)計(jì)的要求,得到下圖倉(cāng)庫(kù)管理信息系統(tǒng)圖( 1)系統(tǒng)功能模塊圖第二章數(shù)據(jù)庫(kù)設(shè)計(jì)設(shè)計(jì)數(shù)據(jù)庫(kù)系統(tǒng)時(shí)應(yīng)該首先充分了解用戶的各個(gè)方面的需要,包括現(xiàn)有的以及將來可能增加的需求。數(shù)據(jù)庫(kù)設(shè)計(jì)一般包括如下幾個(gè)步驟:數(shù)據(jù)庫(kù)需求分析。數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)。數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)。第三章數(shù)據(jù)庫(kù)結(jié)構(gòu)的實(shí)現(xiàn)Access2000就是關(guān)系數(shù)據(jù)庫(kù)開發(fā)工具, 數(shù)據(jù)庫(kù)能匯集各種信息以供查詢、存儲(chǔ)和檢索。 Access 的優(yōu)點(diǎn)在于它能使用數(shù)據(jù)表示圖或自定義窗體收集信息。數(shù)據(jù)表示圖提供了一種類似于Excel 的電子表格,可以使數(shù)
15、據(jù)庫(kù)一目了然。另外, Access 允許創(chuàng)建自定義報(bào)表用于打印或輸出數(shù)據(jù)庫(kù)中的信息。 Access 也提供了數(shù)據(jù)存儲(chǔ)庫(kù), 可以使用桌面數(shù)據(jù)庫(kù)文件把數(shù)據(jù)庫(kù)文件置于網(wǎng)絡(luò)文件服務(wù)器,與其他網(wǎng)絡(luò)用戶共享數(shù)據(jù)庫(kù)。 Access 是一種關(guān)系數(shù)據(jù)庫(kù)工具,關(guān)系數(shù)據(jù)庫(kù)是已開發(fā)的最通用的數(shù)據(jù)庫(kù)之一。如上所述, Access 作為關(guān)系數(shù)據(jù)庫(kù)開發(fā)具備了許多優(yōu)點(diǎn), 可以在一個(gè)數(shù)據(jù)包中同時(shí)擁有桌面數(shù)據(jù)庫(kù)的便利和關(guān)系數(shù)據(jù)庫(kù)的強(qiáng)大功能。 經(jīng)前面的系統(tǒng)需求分析和概念結(jié)構(gòu)設(shè)計(jì)以后, 得到數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)?,F(xiàn)在就可以在 access 2000 ,實(shí)現(xiàn)上面設(shè)計(jì)的數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu) , 然后轉(zhuǎn)化為 access97. 下面給出創(chuàng)建這些表格的
16、清單。3.1創(chuàng)建系統(tǒng)用戶表格user_info用戶名稱用戶密碼53.2創(chuàng)建物資基本信息表格material物資編號(hào)物資名稱物資規(guī)格類別 計(jì)量單位3.3 創(chuàng)建入庫(kù)物資信息表格msave入庫(kù)編號(hào) 入庫(kù)物資編號(hào) 物資名稱 規(guī)格型號(hào) 種類 單位 數(shù)量 單價(jià)金額 入庫(kù)時(shí)間 經(jīng)辦人 保管人 倉(cāng)庫(kù) 備注3.4創(chuàng)建出庫(kù)物資信息表格muse出庫(kù)編號(hào) 出庫(kù)物資編號(hào) 物資名稱 規(guī)格型號(hào) 種類 單位 數(shù)量 單價(jià) 金額 入庫(kù)時(shí)間 領(lǐng)用人 經(jīng)辦人 倉(cāng)庫(kù) 備注3.5 創(chuàng)建物資余額信息表格msurplus物資編號(hào)物資名稱規(guī)格型號(hào)類別 計(jì)量單位數(shù)量 金額倉(cāng)庫(kù) 備注第四章物資管理信息系統(tǒng)主窗體的創(chuàng)建4.1使用工具 VC+的介紹所
17、用開發(fā)語言簡(jiǎn)介4.1.1 VC+ 的特點(diǎn)VisualC+是功能最為強(qiáng)大可視化開發(fā)工具,它不僅支持傳統(tǒng)的軟件開發(fā)方法,更重要的是它能支持面向?qū)ο蟆⒖梢暬拈_發(fā)風(fēng)格。因此Visual C+又稱作是一個(gè)集成開發(fā)工具, 它提供了軟件代碼自動(dòng)生成和可視化的資源編輯功能。Visual C+具有的優(yōu)點(diǎn):提供了面向?qū)ο蟮膽?yīng)用程序框架 MFC( Microsoft Foundation Class ), 簡(jiǎn)化了程序員的編程工作,提高了模塊的可重用性;提供了基于CASE 技術(shù)的可視化軟件的自動(dòng)生成和維護(hù)工具AppWizard 、ClassWizard 、VisualStudio 、WizardBar 等,實(shí)現(xiàn)了直
18、觀、可視的程序設(shè)計(jì)風(fēng)格,方便地編和管理各種類,維護(hù)程序的源代碼;封裝了Windows 的 API函數(shù)、 USER、KERNEL、GDI 函數(shù),簡(jiǎn)化了編程時(shí)創(chuàng)建、維護(hù)窗口的許多復(fù)雜的工作。4.1.2 本程序中使用的VC+控件及其屬性簡(jiǎn)介(1)CStatic(靜態(tài)控件 ) :顯示一些幾乎固定不變的文字或圖形描述。(2)CButton (按鈕控件):產(chǎn)生某些命令或改變某些選項(xiàng)設(shè)置。(3)CEdit (編輯框控件):完成文字的輸入輸出雙向操作,查看并編輯文字。(4)CListBox (列表框控件):顯示一個(gè)列表,讓用戶從中選取一個(gè)或多個(gè)項(xiàng)。(5)CComboBox(組合框):將列表框和編輯框有機(jī)地組合
19、在一起,可選擇列表中已有的項(xiàng),還可以編輯出新的項(xiàng)。microsoft visual c+6.0 提供了良好的集成開發(fā)環(huán)境 , 在這一環(huán)境下用戶可以輸入自己的程序 , 調(diào)試并運(yùn)行 . 為了方便用戶快速開發(fā)程序 , visual c+6不僅編譯代碼 , 而且產(chǎn)生代碼 . 可以在幾分鐘之內(nèi)就可以生成一個(gè) windows 應(yīng)用程序 , 所要做的只是告訴 appwizard 生成一個(gè)具有模板代碼的 起始應(yīng)用程序 .appwizard 是一個(gè)非常有效的輔助開發(fā)工具 , 能生成許多種應(yīng)用程序 , 但對(duì)于大多數(shù)的人來說 , 想要的是可執(zhí)行程序 .appwizard 不僅能夠生成可執(zhí)行程序, 而且它還生成了每個(gè)
20、程序所必要的模板代碼-類, 對(duì)象和函數(shù) .(1)appwizard 提供了三種可選擇的應(yīng)用程序類型 , 并為每一種類型生成不同的代碼和類 . 三種可選擇的程序類型如下:1, 單文檔界面應(yīng)用程序邏輯這種應(yīng)用程序一次只能打開一個(gè)文檔: 當(dāng)選擇 file菜單的 open 或 new時(shí), 當(dāng)前打開的文件在新文件打開或建立前被關(guān)閉 . 在 windows 中 notepad 應(yīng)用程序就是這種文檔的典型代表 .2 多文檔界應(yīng)用程序 多文檔應(yīng)用程序一次可以打開多個(gè)文檔 ( 通常是多個(gè)文件 ), 在菜單欄上有 Windows 菜單并且在 File 菜單上有 close 先項(xiàng) . 同時(shí)打開的多個(gè)文檔可以通過 c
21、lose 命令進(jìn)行有選擇地關(guān)閉 . 在Windows中如果希望一個(gè)文檔有多個(gè)視圖 , 則必須建立多文檔視圖 .Windows 中的 Word或 Excel 都是多文檔的例子 .3 基于對(duì)話框的應(yīng)用程序 在這一種應(yīng)用程序中 , 它沒有文檔也沒有菜單 , 整個(gè)程序看起來就是一個(gè)對(duì)話框 .Windows 的磁盤掃描應(yīng)用程序就是一個(gè)基于對(duì)話框的應(yīng)用程序例子.(2)AppWizard允許用戶選擇是否需要文檔視圖結(jié)構(gòu)支持 . 如果需要 AppWizard 就在應(yīng)用程序中自動(dòng)生成了基于 CDocument類的文檔視圖結(jié)構(gòu) , 否則生成沒有文檔視圖結(jié)構(gòu)的應(yīng)用程序 ( 在這種情況下 , 多一個(gè)磁盤文件打開一個(gè)文
22、檔視圖時(shí)將不包含MFC支持 ). (3)AppWizard 生成可執(zhí)行應(yīng)用程序允許用戶選擇是否支持?jǐn)?shù)據(jù)庫(kù) ( 在后面的任務(wù)中將詳細(xì)介紹對(duì)數(shù)據(jù)庫(kù)的支持 ). 有關(guān)數(shù)據(jù)庫(kù)支持的選項(xiàng)一共有四個(gè) .4 None 不是編寫數(shù)據(jù)庫(kù)應(yīng)用程序 . 5 Header files only 不從 CForm View 派生自己的視圖或有一個(gè) Record 菜單 . 6 Database iew without file support從 CForm View 派生自己的視圖并有一個(gè) Record 菜單 , 但不需要對(duì)文檔進(jìn)行序列化 , 從而可以借助 CRecordset 類更新數(shù)據(jù)庫(kù)記錄 .7 Database
23、iew with file support 從 CFormView 派生自己的視圖并有一個(gè) Record 菜單 , 同時(shí)又需要對(duì)文檔進(jìn)行序列化 .(4)AppWizard 提供了確定應(yīng)用程序界面外觀的選項(xiàng) . 影響界面外觀的選項(xiàng)有 :8 Docking Toolbar AppWizard為用戶創(chuàng)建了工具欄 , 用戶在以后可以利用Resource View 對(duì)它進(jìn)行編輯 . 如: 刪除不要的按鈕 , 增加新的按鈕 .9 Initial status bar AppWizard生成了初始狀態(tài)欄以顯示菜單提示和其它消息 , 用戶可以在以后對(duì)狀態(tài)欄進(jìn)行編程以顯示自己所需要顯示的信息 . 用戶要以在狀態(tài)
24、欄上增加指示器或其它組件 .下面開始使用visual c+6.0來編寫數(shù)據(jù)庫(kù)系統(tǒng)的客戶端程序。所用開發(fā)語言簡(jiǎn)介VC+的特點(diǎn)VisualC+是功能最為強(qiáng)大可視化開發(fā)工具,它不僅支持傳統(tǒng)的軟件開發(fā)方法,更重要的是它能支持面向?qū)ο?、可視化的開發(fā)風(fēng)格。因此Visual C+7又稱作是一個(gè)集成開發(fā)工具, 它提供了軟件代碼自動(dòng)生成和可視化的資源編輯功能。Visual C+具有的優(yōu)點(diǎn):提供了面向?qū)ο蟮膽?yīng)用程序框架 MFC( Microsoft Foundation Class ), 簡(jiǎn)化了程序員的編程工作,提高了模塊的可重用性;提供了基于CASE 技術(shù)的可視化軟件的自動(dòng)生成和維護(hù)工具AppWizard 、C
25、lassWizard 、VisualStudio 、WizardBar 等,實(shí)現(xiàn)了直觀、可視的程序設(shè)計(jì)風(fēng)格,方便地編和管理各種類,維護(hù)程序的源代碼;封裝了Windows 的 API函數(shù)、 USER、KERNEL、GDI 函數(shù),簡(jiǎn)化了編程時(shí)創(chuàng)建、維護(hù)窗口的許多復(fù)雜的工作。3.1.2本程序中使用的VC+控件及其屬性簡(jiǎn)介(1)CStatic(靜態(tài)控件 ) :顯示一些幾乎固定不變的文字或圖形描述。(2)CButton (按鈕控件):產(chǎn)生某些命令或改變某些選項(xiàng)設(shè)置。(3)CEdit (編輯框控件):完成文字的輸入輸出雙向操作,查看并編輯文字。(4)CListBox(列表框控件):顯示一個(gè)列表,讓用戶從中
26、選取一個(gè)或多個(gè)項(xiàng)。(5)CComboBox(組合框):將列表框和編輯框有機(jī)地組合在一起,可選擇列表中已有的項(xiàng),還可以編輯出新的項(xiàng)。系統(tǒng)數(shù)據(jù)訪問接口的選擇Visual C+ 中可用的數(shù)據(jù)訪問對(duì)象接口有三種:ODBC( Open DatabaseConnectity,開發(fā)數(shù)據(jù)庫(kù)連接)、 DAO(Data Access Objects,數(shù)據(jù)訪問對(duì)象 ) 及OLE DB(OLE data Base ,OLE數(shù)據(jù)庫(kù) ) 。1ODBC(Open Database Connectity,開發(fā)數(shù)據(jù)庫(kù)連接)ODBC提供了應(yīng)用程序接口( API),使得任何一個(gè)數(shù)據(jù)庫(kù)都可以通過 ODBC 驅(qū)動(dòng)器與指定 DBMC相聯(lián)
27、,用戶的程序就可以通過調(diào)用 ODBC驅(qū)動(dòng)管理器中相應(yīng)的驅(qū)動(dòng)程序達(dá)到管理數(shù)據(jù)庫(kù)的目的。作為 Microsoft WindowsOpenStandards Architecture(WOSA,Windows 開放式服務(wù)體系結(jié)構(gòu) ) 的主要組成部分, ODBC一直沿用至今。2.DAO(Data Access Objects,數(shù)據(jù)訪問對(duì)象 )DAO 提供了一種通過程序代碼創(chuàng)建和操縱數(shù)據(jù)庫(kù)的機(jī)制。多個(gè)DAO對(duì)象構(gòu)成了一個(gè)體系結(jié)構(gòu),在這個(gè)結(jié)構(gòu)里,各個(gè)DAO 對(duì)象協(xié)同工作,通過Microsoft Jet 數(shù)據(jù)庫(kù)訪問數(shù)據(jù)庫(kù)中的數(shù)據(jù)和數(shù)據(jù)庫(kù)的結(jié)構(gòu)定義。 可以訪問的數(shù)據(jù)庫(kù)類型主要有: Microsoft Jet
28、數(shù)據(jù)庫(kù)、 ODBC數(shù)據(jù)源、可安裝的 ISAM 數(shù)據(jù)庫(kù)。DAO 是我們可以通過程序訪問和操縱本地的或遠(yuǎn)程的數(shù)據(jù)和數(shù)據(jù)定義, 管理數(shù)據(jù)庫(kù)中的對(duì)象或結(jié)構(gòu)。 DAO 支持兩種不同的數(shù)據(jù)庫(kù)環(huán)境稱為工作區(qū)( Workspace).8Microsoft Jet Workspace這是一種使用Microsoft Jet數(shù)據(jù)庫(kù)引擎來訪問數(shù)據(jù)源的工作區(qū)。ODBC Direct Workspace這是一種使用ODBC Direct來直接訪問一個(gè)ODBC數(shù)據(jù)源,并繞過Microsoft Jet數(shù)據(jù)庫(kù)引擎的工作區(qū)??赏ㄟ^ODBC訪問數(shù)據(jù)庫(kù)服務(wù)器,而無須安裝Microsoft Jet數(shù)據(jù)庫(kù)引擎。3OLE DB(OLE d
29、ata Base, OLE數(shù)據(jù)庫(kù) ) 。OLE DB 試圖提高一種統(tǒng)一的數(shù)據(jù)訪問接口, 并能處理除了標(biāo)準(zhǔn)的關(guān)系型數(shù)據(jù)庫(kù)中的數(shù)據(jù)之外,還能處理包括郵件數(shù)據(jù)、 Web 上的文本或圖形、目錄服務(wù)( Directory Services),以及主機(jī)系統(tǒng)中的 IMS 和 VSAM 數(shù)據(jù)。 OLE DB 提供一個(gè)數(shù)據(jù)庫(kù)編程 COM (組件對(duì)象模型)接口,使得數(shù)據(jù)的使用者(應(yīng)用程序)可以使用同樣的方法訪問各種數(shù)據(jù), 而不用考慮數(shù)據(jù)的具體存儲(chǔ)地點(diǎn)、 格式或類型。這個(gè) COM 接口與 ODBC 相比,其健壯性和靈活性要高的多。但是,由于 OLE DB 的程序比較復(fù)雜,因而對(duì)于一般用戶來說使用ODBC 和 DAO
30、方式已能滿足一般數(shù)據(jù)庫(kù)處理的需要Access 介紹Access 是 Microsoft Office 辦公套件中一個(gè)極為重要的組成部分。剛開始時(shí)微軟公司是將 Access 單獨(dú)作為一個(gè)產(chǎn)品進(jìn)行銷售的,后來微軟發(fā)現(xiàn)如果將 Access 捆綁在 OFFICE中一起發(fā)售,將帶來更加可觀的利潤(rùn), 于是第一次將 Access 捆綁到 OFFICE97中,成為 OFFICE套件中的一個(gè)重要成員。現(xiàn)在它已經(jīng)成為 Office 辦公套件中不可缺少的部件了。自從 1992 年開始銷售以來, Access 已經(jīng)賣出了超過 6000 萬份,現(xiàn)在它已經(jīng)成為世界上最流行的桌面數(shù)據(jù)庫(kù)管理系統(tǒng)。后來微軟公司通過大量地改進(jìn),
31、將 Access 的新版本功能變得更加強(qiáng)大。不管是處理公司的客戶訂單數(shù)據(jù); 管理自己的個(gè)人通訊錄; 還是大量科研數(shù)據(jù)的記錄和處理,人們都可以利用它來解決大量數(shù)據(jù)的管理工作。建立一個(gè)數(shù)據(jù)庫(kù)我們有多種選擇,現(xiàn)在市場(chǎng)上有各種各樣的數(shù)據(jù)庫(kù), 而且每一種數(shù)據(jù)庫(kù)都有其自身的特點(diǎn), 不能說哪一種更好, 只能在其中尋找一種能更好地適應(yīng)系統(tǒng)需求、 更好地滿足用戶的要求以及適應(yīng)開發(fā)人員的習(xí)慣。 在本系統(tǒng)中,做為圖書倉(cāng)庫(kù)管理系統(tǒng)是一個(gè)比較小的應(yīng)用系統(tǒng), 它所產(chǎn)生和處理的數(shù)據(jù)量也比較小。 因此,沒有必要使用像 SQL Server 和 Oracle 這樣的大型數(shù)據(jù)庫(kù)。我首先想到的數(shù)據(jù)庫(kù)是Borland 公司的Para
32、dox 數(shù)據(jù)庫(kù)。另外,Microsoft Office 中的 Access數(shù)據(jù)庫(kù)在計(jì)算機(jī)上的應(yīng)用比較普及,是開發(fā)小型數(shù)據(jù)庫(kù)系統(tǒng)的比較理想的選擇,所以,在本系統(tǒng)中我選擇了Access數(shù)據(jù)庫(kù)。Access做為一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng),它被集成在Microsoft Office 中。Access數(shù)據(jù)庫(kù)處理的基本結(jié)構(gòu), 采取關(guān)系型數(shù)據(jù)庫(kù)模式。 與其他的數(shù)據(jù)庫(kù)系統(tǒng)相比,Access更加簡(jiǎn)單易學(xué),一個(gè)普通的計(jì)算機(jī)用戶可以很快地掌握它。 Access2000 的功能十分強(qiáng)大,利用它可以方便地實(shí)現(xiàn)對(duì)信息保存、維護(hù)、查詢、統(tǒng)計(jì)、打印、交流、發(fā)布,而且它可以十分方便地與Office 其他組件交流數(shù)據(jù),9這些功能對(duì)一個(gè)一
33、般用戶而言已經(jīng)足夠了。4.1 創(chuàng)建工程項(xiàng)目 -material_mis啟動(dòng) visual c+6.0后,從“ file”菜單中選“ new”命令,然后,單擊 “new” 對(duì) 話 框中 的 “projects” 選項(xiàng) 卡 , 選擇 工程 模 板中 的 “mfcappwizard(exe)” 選 項(xiàng) , 并 在 “project_name ” 中 輸 入 工 程 的 名 稱 :material_mis,在 location 中選擇保存這個(gè)工程的位置: c:vc,其他使用系統(tǒng)提供的默認(rèn)選項(xiàng),單擊“ OK”按鈕,就會(huì)進(jìn)入 mfc appwizard,這個(gè)向?qū)б还灿?6 步, step1對(duì)話框中選中“
34、single document”選項(xiàng)。單擊“ next ”按鈕,進(jìn)入 step 2 of6 對(duì)話框,這一步要選擇需要的數(shù)據(jù)庫(kù),因?yàn)樯婕暗綌?shù)據(jù)庫(kù)的使用,所以在這里選中“”對(duì)話框,確認(rèn)信息無誤后,單擊“ok”按鈕 , 完成創(chuàng)建 material_mis工程。4.2 創(chuàng)建主窗體菜單完成上面的工作后, 在“ workspace”中選擇“ recourceview ”命令, 然后雙擊 menu文件夾,再雙擊“ idr_mainframe ”項(xiàng)目, 單擊右邊窗口中的“文件”菜單,雙擊“文件”或者敲 enter 鍵,就會(huì)出現(xiàn)“ menuitem properties ” 對(duì)話框,在這個(gè)對(duì)話框中更改菜單項(xiàng)的內(nèi)
35、容, 更改后的內(nèi)容如圖 2 示,第一級(jí)菜單的設(shè)置都 和圖 3 中的設(shè)置方法相同,二級(jí)菜單的設(shè)置方法如圖 3.圖 2圖 3使用上面所講述的設(shè)置方法,最終創(chuàng)建出如表4 的菜單結(jié)構(gòu)。表 4菜單結(jié)構(gòu)菜單名稱id系統(tǒng)10修改密碼ID_MAINMENU_CHANGEPWD添加用戶ID_MAINMENU_APPENDACCOUNT退出系統(tǒng)ID_APP_EXIT物資基本信息管理添加物資基本信息管理ID_MENU_ADDBASICINFO修改物資基本信息管理ID_MENU_ALTERBASICINFO刪除物資基本信息管理ID_MENU_DELBASICINFO查詢物資基本信息管理ID_MENU_SEARCHBA
36、SICINFO物資入庫(kù)信息管理添加物資入庫(kù)信息ID_MENU_ADDININFO修改物資入庫(kù)信息ID_MENU_ALTERININFO刪除物資入庫(kù)信息ID_MENU_DELININFO查詢物資入庫(kù)信息ID_MENU_SEARCHININFO物資出庫(kù)信息管理添加物資出庫(kù)信息ID_MENU_ADDOUTINFO修改物資出庫(kù)信息ID_MENU_ALTEROUTINFO刪除物資出庫(kù)信息ID_MENU_DELOUTINFO查詢物資出庫(kù)信息ID_MENU_SEARCHOUTINFO物資余額信息管理查詢物資余額信息ID_MENU_SEARCHSURPLUSINFO幫助關(guān)于4.3 創(chuàng)建公用模塊在這個(gè)系統(tǒng)中,頻
37、繁地使用到了對(duì)數(shù)據(jù)庫(kù)的訪問,修改等操作,所以把針對(duì)數(shù)據(jù)庫(kù)的一些公共操作集中起來,可以使代碼更加規(guī)范和容易維護(hù)。在 classview 中,利用鼠標(biāo)右鍵單擊“ cmaterial_misapp ”項(xiàng)目,選擇“ add member variable ”選項(xiàng),然后依次添加這個(gè)工程中要使用到的變量:public:11CString m_sCurrentUser;int m_iLoginCount;_RecordsetPtr m_pADOSet;private:_ConnectionPtrADOConn;定義 ado 數(shù)據(jù)庫(kù)連接對(duì)象指針選擇 add member function添加函數(shù)bool AD
38、OExecute(_RecordsetPtr&ADOSet,_variant_&strSQL);最后手工添加一個(gè)外部變量的聲明:extern Cmaterial_MISApp theApp;在 visual c+ 中進(jìn)行數(shù)據(jù)庫(kù)操作一定要引進(jìn) ado 類,所在把下面這段代 碼 添 加 到 這 個(gè) 工 程 中 的 stdafx. filesSystemadomsado15.dll no_namespace rename(EOF,EndOfFile) rename(LockTypeEnum,newLockTypeEnum)rename(DataTypeEnum,newDataTypeEnum) re
39、name(FieldAttributeEnum,newFieldAttributeEnum)rename(EditModeEnum,newEditModeEnum) rename(RecordStatusEnum,newRecordStatusEnum)rename(ParameterDirectionEnum,newParameterDirectionEnum)在 cmaterial_misapp類的 initistance()函數(shù)中添加如下代碼:m_iLoginCount = 0;創(chuàng)建 ADO連接對(duì)象if( FAILED(:CoInitialize(NULL) )AfxMessageBox
40、(ADO Init failed);return false;tryADOConn.CreateInstance(_uuidof(Connection); ADOConn-Open(_bstr_t(Provider=Microsoft.Jet.OLEDB.4.0;DataSource=+GetCurDir()+ylz.mdb),_bstr_t(),_bstr_t(),adModeUnkn own);捕捉例外catch(_com_error &e)CString err;err.Format(%s, (char*)(e.Description() );12AfxMessageBox(err);c
41、atch(.)AfxMessageBox(Unknown Error.);初始化 ADO記錄集添加以上代碼后,就完成了打開數(shù)據(jù)庫(kù)的工作,同時(shí)添加下面的代碼,來設(shè)置窗口的名稱:m_pMainWnd-SetWindowText(_T(物資管理信息系統(tǒng) );在 函 數(shù) 中boolADOExecute(_RecordsetPtr&ADOSet, _variant_t&strSQL) 中添加如下代碼:boolCMaterial_MISApp:ADOExecute(_RecordsetPtr&ADOSet,_variant_t &strSQL)if ( ADOSet-State = adStateOpen
42、)ADOSet-Close();tryADOSet-Open(strSQL, ADOConn.GetInterfacePtr(), adOpenStatic, adLockOptimistic, adCmdUnknown);return true;catch(_com_error &e)CString err;err.Format(ADO Error: %s,(char*)e.Description(); AfxMessageBox(err);return false;最后添加關(guān)閉數(shù)據(jù)庫(kù)連接的函數(shù)。選擇 ADDVirtual Function 添加一個(gè)虛函數(shù),重載系統(tǒng)提供的 ExitInsta
43、nce() 函數(shù),填寫代碼如下:int CMaterial_MISApp:ExitInstance()TODO:Addyourspecializedcode=ADOConn-State)ADOConn-Close();ADOConn.Release();釋放 ADO記錄集if(adStateOpen=m_pADOSet-State) m_pADOSet-Close(); m_pADOSet.Release();13return CWinApp:ExitInstance();通過以上的編寫,完成了對(duì)數(shù)據(jù)庫(kù)的基本操作,為下面的工作提供了最基本的功能。第五章系統(tǒng)用戶管理模塊的創(chuàng)建用戶管理模塊主要實(shí)現(xiàn)
44、:5.1 用戶登錄該窗口中放置了三個(gè)靜態(tài)文本框(Static)控件,在窗口的相應(yīng)位置顯示文字。放置了 2 個(gè)編輯框( Edit),一個(gè)供用戶輸入登錄的用戶名 ( m_username),另一個(gè)供用戶輸入口令(m_passward),這個(gè)編輯框的屬性要設(shè)成password。輸入的值存放在編輯框控件對(duì)應(yīng)的變量中,另外還放置了兩個(gè)按鈕控件( Button)。如圖 5 所示。5.2 添加用戶為了數(shù)據(jù)庫(kù)使用的安全,允許的用戶和口令都預(yù)先存在數(shù)據(jù)庫(kù)中,如果要加入新的用戶,必須修改數(shù)據(jù)庫(kù)中對(duì)應(yīng)的表。5.3 修改用戶密碼為了保證數(shù)據(jù)庫(kù)的安全, 有時(shí)候需要經(jīng)常修改用戶的口令。 本系統(tǒng)可以在應(yīng)用程序執(zhí)行過程中修改
45、當(dāng)前用戶的口令。程序清單 :CLoginDLG:CLoginDLG(CWnd* pParent *=NULL*): CDialog(CLoginDLG:IDD, pParent)AFX_DATA_INIT(CLoginDLG)14m_sPWD = _T();m_sUSER = _T(Administrator);AFX_DATA_INITvoid CLoginDLG:DoDataExchange(CDataExchange* pDX)CDialog:DoDataExchange(pDX);AFX_DATA_MAP(CLoginDLG)DDX_Text(pDX, IDC_LOGIN_PWD, m
46、_sPWD);DDX_Text(pDX, IDC_LOGIN_USER, m_sUSER);AFX_DATA_MAPBEGIN_MESSAGE_MAP(CLoginDLG , CDialog)AFX_MSG_MAP(CLoginDLG)ON_BN_CLICKED(IDC_LOGIN_CAPTION, OnLoginCaption)AFX_MSG_MAPEND_MESSAGE_MAP()CLoginDLG message ;_variant_t Holder, strQuery;strQuery = select user_ID, user_PWD from user_Info where us
47、er_ID=+m_sUSER+;theApp.ADOExecute(theApp.m_pADOSet, strQuery);int iCount = theApp.m_pADOSet-GetRecordCount();if ( 0=iCount )theApp.m_iLoginCount+;if ( theApp.m_iLoginCount2 )AfxMessageBox(沒有這個(gè)用戶 n 三次輸入均不正確, 請(qǐng)核對(duì)后再來 , MB_ICONEXCLAMATION);CDialog:OnCancel();return;AfxMessageBox(沒 有 這 個(gè) 用 戶 , 請(qǐng) 重 新 輸 入
48、用 戶 名 ,MB_ICONEXCLAMATION);return;CString sPWD;theApp.m_pADOSet-MoveFirst();Holder = theApp.m_pADOSet-GetCollect(user_PWD); sPWD = Holder.vt=VT_NULL?:(char*)(_bstr_t)Holder;15if ( 0!=sPWDpare(m_sPWD) )theApp.m_iLoginCount+;if ( theApp.m_iLoginCount2 )AfxMessageBox(輸入密碼不正確 n 三次輸入均不正確, 請(qǐng)核對(duì)后再來 , MB_ICONEXCLAMATION);CDialog:OnCancel();return;AfxMessageBox( 輸 入 密 碼 不 正 確 , 請(qǐng) 重 新 輸 入 ,MB_IC
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 抵押機(jī)動(dòng)車借款合同書
- 公司品牌服務(wù)合同
- 工業(yè)園物業(yè)委托管理合同
- 口罩機(jī)居間服務(wù)協(xié)議
- 環(huán)境保護(hù)工程設(shè)備供應(yīng)協(xié)議
- 關(guān)于個(gè)人借款的合同5篇
- 汽車銷售入股合同范本
- 白糖批發(fā)銷售合同范本
- 專業(yè)咨詢服務(wù)產(chǎn)業(yè)分析報(bào)告
- 離子交換樹脂戰(zhàn)略市場(chǎng)規(guī)劃報(bào)告
- 2025年春季學(xué)期教導(dǎo)處工作計(jì)劃及安排表
- DL-T5002-2021地區(qū)電網(wǎng)調(diào)度自動(dòng)化設(shè)計(jì)規(guī)程
- 2024年個(gè)人信用報(bào)告(個(gè)人簡(jiǎn)版)樣本(帶水印-可編輯)
- 16J914-1 公用建筑衛(wèi)生間
- 第二章政府審計(jì)組織與審計(jì)法律規(guī)范
- 楚才辦公室裝修設(shè)計(jì)方案20140315
- 人教版八年級(jí)(上冊(cè))物理習(xí)題全集(附答案)
- 電影院影務(wù)崗位工作流程
- 衛(wèi)生責(zé)任區(qū)域劃分表
- 《感染性腹瀉》PPT課件.ppt
- 計(jì)數(shù)的基本原理說課
評(píng)論
0/150
提交評(píng)論