VC++60+Access倉庫管理系統(tǒng)設(shè)計含源畢業(yè)設(shè)計論文.doc_第1頁
VC++60+Access倉庫管理系統(tǒng)設(shè)計含源畢業(yè)設(shè)計論文.doc_第2頁
VC++60+Access倉庫管理系統(tǒng)設(shè)計含源畢業(yè)設(shè)計論文.doc_第3頁
VC++60+Access倉庫管理系統(tǒng)設(shè)計含源畢業(yè)設(shè)計論文.doc_第4頁
VC++60+Access倉庫管理系統(tǒng)設(shè)計含源畢業(yè)設(shè)計論文.doc_第5頁
已閱讀5頁,還剩46頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、( 此文檔為 word 格式,下載后您可任意編輯修改!)優(yōu)秀論文審核通過未經(jīng)允許切勿外傳倉庫管理系統(tǒng)前言自 1946 年人類第一臺計算機(ENIAC )問世以來,50 多年過去了,計算機的軟硬件發(fā)展日新月異,突飛猛進。以個人電腦為例,硬件方面,以 CPU、內(nèi)存、硬盤為代表,CPU 已發(fā)展到當(dāng)今的 P4 2.8GHZ ,P和 P已淡出歷史舞臺,成為昨日黃花;256MDDR 內(nèi)存,80G 以上的 7200 轉(zhuǎn)硬盤已成為標(biāo)準(zhǔn)配置。如此高性能的配置,就是和 5年之前相比,也不知高出了多少倍。軟件方面,已經(jīng)從當(dāng)初晦澀難懂的機器語言、匯編語言過渡到今天的第四代語言甚至第五代語言,第四代語言(4GL)是完全

2、非過程化的語言,這種語言只要求用戶指明將要干什么,而無需指明怎么干,如何做這一工作,則完全交給軟件模塊來自動處理,大大提高了軟件的開發(fā)效率和軟件質(zhì)量,使軟件開發(fā)人員從繁重的腦力、體力勞動中解脫出來。伴隨著計算機軟硬件技術(shù)的發(fā)展,計算機的技術(shù)和應(yīng)用獲得了突飛猛進的發(fā)展,計算機已經(jīng)在大致如下的領(lǐng)域得到廣泛的應(yīng)用:1、科學(xué)計算:如在天文學(xué)、生物學(xué)、空氣動力學(xué)、核物理學(xué)、1地質(zhì)勘探、新材料的研制和天氣預(yù)報等領(lǐng)域中。2、數(shù)據(jù)處理:與科學(xué)計算不同,數(shù)據(jù)處理涉及的數(shù)據(jù)量大,但計算方法較簡單。3、過程控制:以下內(nèi)容略隨著計算機的普及和發(fā)展,人們開始利用計算機解決越來越多的實際問題,雖然現(xiàn)在軟件的數(shù)量如雨后春筍

3、,但依然不能滿足用戶的各種需要,尤其是用于特定教學(xué)管理方面的軟件。本文是針對我校學(xué)習(xí)成績管理方面的需求進行開發(fā)設(shè)計而形成一套適合自身應(yīng)用的計算機管理信息系統(tǒng)。論文對系統(tǒng)進行了較為全面的業(yè)務(wù)需求分析,并進行有針對性的系統(tǒng)設(shè)計,包括開發(fā)平臺和 工 具 選 型 、功 能 模 塊 設(shè) 計 、數(shù)據(jù) 庫 設(shè) 計 等 ,最 后 選 用 Visual C+ 6.0 和 Access 數(shù) 據(jù) 庫 進 行 了 系 統(tǒng)實 現(xiàn) ,并 進 行 了 相 應(yīng) 的 系 統(tǒng) 測 試和 調(diào) 試隨著當(dāng)代計算機技術(shù)的發(fā)展,硬件運行速度的不斷提高,軟件功能越來越多,越來越完善,它的應(yīng)用范圍也就不斷地擴大,已被廣泛地應(yīng)用于科研部門,金融

4、系統(tǒng)、工廠、學(xué)校,直至進入千家萬戶。用手工來完成物資管理系統(tǒng)是一個較煩瑣的過程,既費時、費力,又不利于一個月或更久時間的結(jié)算,而進行計算機管理可以大大提高工作效率,而且數(shù)據(jù)處理也更為精確。本文用 Visual c+6.0 設(shè)計用戶界面 , access 97 做數(shù)據(jù)庫摘要:倉庫管理系統(tǒng)是信息管理系統(tǒng) (MIS), 其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應(yīng)用程序的開發(fā)兩個方面。 對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的庫。而對于后者則要求應(yīng)用程序功能完備,易使用等特點。經(jīng)過分析 ,使用 MICROSOFT公司的 VISUALc+開發(fā)工具 ,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具

5、,尤其是數(shù)據(jù)窗口這一能方便而簡潔操縱數(shù)據(jù)庫的智能化對象 ,首先在短時間內(nèi)建立系統(tǒng)應(yīng)用原型 ,然后 ,對初始原型系統(tǒng)進行需求迭代 ,不斷修正和改進 ,直到形成用戶滿意的可行系統(tǒng)。物資管理是一般工業(yè) ,商業(yè)企業(yè)生產(chǎn)管理環(huán)節(jié)中重要的一環(huán),需要對物資基本信息管理,物資調(diào)配信息等內(nèi)容進行完整的監(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è)計介紹1.1系統(tǒng)功能分析系統(tǒng)開發(fā)的總體任務(wù)就是實現(xiàn)倉庫管理的信息的系統(tǒng)化、規(guī)范化和自動化。隨著電腦誕生以來,人類聰明的頭腦總是想:“要做的事簡單化“。因此在我們大、中、小賓館,其繁重信息管理使他們聰明的頭腦想到:”由電腦來管理這些事務(wù),又簡單又省事。所以人們常說:“計算機已經(jīng)成為我們學(xué)習(xí)和工作的得力助手了,少了它生命中沒有了陽光!“。今天,計算機的價格已經(jīng)十分低廉,性能卻有了長足的進步。 它已經(jīng)被應(yīng)用于許多領(lǐng)域,計算機之所以如此流行的原因主要有以下幾個方面:首先,計算機可以代替人工進行許多繁雜的勞動;

11、其次,計算機可以節(jié)省許多資源;第三,計算機可以大大的提高人們的工作效率;第四,計算機可以使敏感文檔更加安全,等等??梢姡_發(fā)一套物資信息管理系統(tǒng)已經(jīng)是必要的了。倉庫管理是企業(yè)管理的一個重要內(nèi)容。 隨著時代的進步,企業(yè)也逐漸變的龐大起來。如何管理好企業(yè)內(nèi)物資的信息, 成為企業(yè)管理中的一個重要問題。在這種情況下,一個可以規(guī)范化,自動化的物資系統(tǒng)就顯的非常重要。最初的倉庫管理,都是靠人力來完成。當(dāng)企業(yè)規(guī)模比較小的時候,人力可以完成。隨著企業(yè)規(guī)模越來越大, 企業(yè)的物資數(shù)量越來越多,依然維持著人力進管理必然會造成工作效率底,工作錯誤曾高等問題。管 理信 息系 統(tǒng) ( 簡 稱 MIS) 是介于信息論,經(jīng)濟

12、管理理論,統(tǒng)計學(xué)與運籌學(xué)及計算機科學(xué)之間的一門邊緣性,綜合性,系統(tǒng)性的交叉科學(xué),它是隨著管理科學(xué),信息技術(shù),計算機技術(shù)等的發(fā)展而產(chǎn)生和發(fā)展起來的。XXX 管理系統(tǒng)是典型的信息管理系統(tǒng),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端的應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立數(shù)據(jù)的一致性和完整性,對于后者則要求應(yīng)用程序功能的完備,易用等的特點?;谏鲜隹紤]本系統(tǒng)主要利用 VC6.0作前 端的 應(yīng)用 開發(fā) 工具 ,利用 Sql 或 Acess 作為 后臺 的數(shù) 據(jù)庫 ,利用 WINDOWS作為系統(tǒng)平臺開發(fā)的 XXXX管理系統(tǒng)。另外本 XXX 管理系統(tǒng)利用軟件工程化思想和方法,總體上是采用結(jié)構(gòu)化生命法進

13、行系統(tǒng)分析和設(shè)計的,而系統(tǒng)實現(xiàn)等步驟則采用了原型法和面對對象的方向倉庫管理系統(tǒng)就是把分散的企業(yè)物資信息實行統(tǒng)一,集中,規(guī)范的收集管理。建立分類編號管理,電腦存貯查詢以及防火,防潮,防盜等現(xiàn)代化,專4業(yè)化的管理系統(tǒng)。為企事業(yè)的管理解除了后顧之憂。系統(tǒng)功能分析是在系統(tǒng)開發(fā)總體任務(wù)的基礎(chǔ)上進行的。 本系統(tǒng)中的倉庫管理信息系統(tǒng)需要完成的主要功能有:有關(guān)物資基本信息的輸入,包括物資編號、物資名稱、規(guī)格型號、種類和計量單位等。物資基本信息的查詢。物資基本信息的修改。入庫物資基本信息的輸入。入庫物資基本信息的查詢。入庫物資基本信息的修改。出庫物資基本信息的輸入。出庫物資基本信息的查詢。出庫物資基本信息的修改

14、。物資余額信息的查詢。物資余額信息的瀏覽1.2系統(tǒng)功能模塊設(shè)計對上述的功能進行集中, 分塊和分析, 按照結(jié)構(gòu)化程序設(shè)計的要求,得到下圖倉庫管理信息系統(tǒng)圖( 1)系統(tǒng)功能模塊圖第二章數(shù)據(jù)庫設(shè)計設(shè)計數(shù)據(jù)庫系統(tǒng)時應(yīng)該首先充分了解用戶的各個方面的需要,包括現(xiàn)有的以及將來可能增加的需求。數(shù)據(jù)庫設(shè)計一般包括如下幾個步驟:數(shù)據(jù)庫需求分析。數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計。數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計。第三章數(shù)據(jù)庫結(jié)構(gòu)的實現(xiàn)Access2000就是關(guān)系數(shù)據(jù)庫開發(fā)工具, 數(shù)據(jù)庫能匯集各種信息以供查詢、存儲和檢索。 Access 的優(yōu)點在于它能使用數(shù)據(jù)表示圖或自定義窗體收集信息。數(shù)據(jù)表示圖提供了一種類似于Excel 的電子表格,可以使數(shù)

15、據(jù)庫一目了然。另外, Access 允許創(chuàng)建自定義報表用于打印或輸出數(shù)據(jù)庫中的信息。 Access 也提供了數(shù)據(jù)存儲庫, 可以使用桌面數(shù)據(jù)庫文件把數(shù)據(jù)庫文件置于網(wǎng)絡(luò)文件服務(wù)器,與其他網(wǎng)絡(luò)用戶共享數(shù)據(jù)庫。 Access 是一種關(guān)系數(shù)據(jù)庫工具,關(guān)系數(shù)據(jù)庫是已開發(fā)的最通用的數(shù)據(jù)庫之一。如上所述, Access 作為關(guān)系數(shù)據(jù)庫開發(fā)具備了許多優(yōu)點, 可以在一個數(shù)據(jù)包中同時擁有桌面數(shù)據(jù)庫的便利和關(guān)系數(shù)據(jù)庫的強大功能。 經(jīng)前面的系統(tǒng)需求分析和概念結(jié)構(gòu)設(shè)計以后, 得到數(shù)據(jù)庫邏輯結(jié)構(gòu)?,F(xiàn)在就可以在 access 2000 ,實現(xiàn)上面設(shè)計的數(shù)據(jù)庫邏輯結(jié)構(gòu) , 然后轉(zhuǎn)化為 access97. 下面給出創(chuàng)建這些表格的

16、清單。3.1創(chuàng)建系統(tǒng)用戶表格user_info用戶名稱用戶密碼53.2創(chuàng)建物資基本信息表格material物資編號物資名稱物資規(guī)格類別 計量單位3.3 創(chuàng)建入庫物資信息表格msave入庫編號 入庫物資編號 物資名稱 規(guī)格型號 種類 單位 數(shù)量 單價金額 入庫時間 經(jīng)辦人 保管人 倉庫 備注3.4創(chuàng)建出庫物資信息表格muse出庫編號 出庫物資編號 物資名稱 規(guī)格型號 種類 單位 數(shù)量 單價 金額 入庫時間 領(lǐng)用人 經(jīng)辦人 倉庫 備注3.5 創(chuàng)建物資余額信息表格msurplus物資編號物資名稱規(guī)格型號類別 計量單位數(shù)量 金額倉庫 備注第四章物資管理信息系統(tǒng)主窗體的創(chuàng)建4.1使用工具 VC+的介紹所

17、用開發(fā)語言簡介4.1.1 VC+ 的特點VisualC+是功能最為強大可視化開發(fā)工具,它不僅支持傳統(tǒng)的軟件開發(fā)方法,更重要的是它能支持面向?qū)ο?、可視化的開發(fā)風(fēng)格。因此Visual C+又稱作是一個集成開發(fā)工具, 它提供了軟件代碼自動生成和可視化的資源編輯功能。Visual C+具有的優(yōu)點:提供了面向?qū)ο蟮膽?yīng)用程序框架 MFC( Microsoft Foundation Class ), 簡化了程序員的編程工作,提高了模塊的可重用性;提供了基于CASE 技術(shù)的可視化軟件的自動生成和維護工具AppWizard 、ClassWizard 、VisualStudio 、WizardBar 等,實現(xiàn)了直

18、觀、可視的程序設(shè)計風(fēng)格,方便地編和管理各種類,維護程序的源代碼;封裝了Windows 的 API函數(shù)、 USER、KERNEL、GDI 函數(shù),簡化了編程時創(chuàng)建、維護窗口的許多復(fù)雜的工作。4.1.2 本程序中使用的VC+控件及其屬性簡介(1)CStatic(靜態(tài)控件 ) :顯示一些幾乎固定不變的文字或圖形描述。(2)CButton (按鈕控件):產(chǎn)生某些命令或改變某些選項設(shè)置。(3)CEdit (編輯框控件):完成文字的輸入輸出雙向操作,查看并編輯文字。(4)CListBox (列表框控件):顯示一個列表,讓用戶從中選取一個或多個項。(5)CComboBox(組合框):將列表框和編輯框有機地組合

19、在一起,可選擇列表中已有的項,還可以編輯出新的項。microsoft visual c+6.0 提供了良好的集成開發(fā)環(huán)境 , 在這一環(huán)境下用戶可以輸入自己的程序 , 調(diào)試并運行 . 為了方便用戶快速開發(fā)程序 , visual c+6不僅編譯代碼 , 而且產(chǎn)生代碼 . 可以在幾分鐘之內(nèi)就可以生成一個 windows 應(yīng)用程序 , 所要做的只是告訴 appwizard 生成一個具有模板代碼的 起始應(yīng)用程序 .appwizard 是一個非常有效的輔助開發(fā)工具 , 能生成許多種應(yīng)用程序 , 但對于大多數(shù)的人來說 , 想要的是可執(zhí)行程序 .appwizard 不僅能夠生成可執(zhí)行程序, 而且它還生成了每個

20、程序所必要的模板代碼-類, 對象和函數(shù) .(1)appwizard 提供了三種可選擇的應(yīng)用程序類型 , 并為每一種類型生成不同的代碼和類 . 三種可選擇的程序類型如下:1, 單文檔界面應(yīng)用程序邏輯這種應(yīng)用程序一次只能打開一個文檔: 當(dāng)選擇 file菜單的 open 或 new時, 當(dāng)前打開的文件在新文件打開或建立前被關(guān)閉 . 在 windows 中 notepad 應(yīng)用程序就是這種文檔的典型代表 .2 多文檔界應(yīng)用程序 多文檔應(yīng)用程序一次可以打開多個文檔 ( 通常是多個文件 ), 在菜單欄上有 Windows 菜單并且在 File 菜單上有 close 先項 . 同時打開的多個文檔可以通過 c

21、lose 命令進行有選擇地關(guān)閉 . 在Windows中如果希望一個文檔有多個視圖 , 則必須建立多文檔視圖 .Windows 中的 Word或 Excel 都是多文檔的例子 .3 基于對話框的應(yīng)用程序 在這一種應(yīng)用程序中 , 它沒有文檔也沒有菜單 , 整個程序看起來就是一個對話框 .Windows 的磁盤掃描應(yīng)用程序就是一個基于對話框的應(yīng)用程序例子.(2)AppWizard允許用戶選擇是否需要文檔視圖結(jié)構(gòu)支持 . 如果需要 AppWizard 就在應(yīng)用程序中自動生成了基于 CDocument類的文檔視圖結(jié)構(gòu) , 否則生成沒有文檔視圖結(jié)構(gòu)的應(yīng)用程序 ( 在這種情況下 , 多一個磁盤文件打開一個文

22、檔視圖時將不包含MFC支持 ). (3)AppWizard 生成可執(zhí)行應(yīng)用程序允許用戶選擇是否支持?jǐn)?shù)據(jù)庫 ( 在后面的任務(wù)中將詳細介紹對數(shù)據(jù)庫的支持 ). 有關(guān)數(shù)據(jù)庫支持的選項一共有四個 .4 None 不是編寫數(shù)據(jù)庫應(yīng)用程序 . 5 Header files only 不從 CForm View 派生自己的視圖或有一個 Record 菜單 . 6 Database iew without file support從 CForm View 派生自己的視圖并有一個 Record 菜單 , 但不需要對文檔進行序列化 , 從而可以借助 CRecordset 類更新數(shù)據(jù)庫記錄 .7 Database

23、iew with file support 從 CFormView 派生自己的視圖并有一個 Record 菜單 , 同時又需要對文檔進行序列化 .(4)AppWizard 提供了確定應(yīng)用程序界面外觀的選項 . 影響界面外觀的選項有 :8 Docking Toolbar AppWizard為用戶創(chuàng)建了工具欄 , 用戶在以后可以利用Resource View 對它進行編輯 . 如: 刪除不要的按鈕 , 增加新的按鈕 .9 Initial status bar AppWizard生成了初始狀態(tài)欄以顯示菜單提示和其它消息 , 用戶可以在以后對狀態(tài)欄進行編程以顯示自己所需要顯示的信息 . 用戶要以在狀態(tài)

24、欄上增加指示器或其它組件 .下面開始使用visual c+6.0來編寫數(shù)據(jù)庫系統(tǒng)的客戶端程序。所用開發(fā)語言簡介VC+的特點VisualC+是功能最為強大可視化開發(fā)工具,它不僅支持傳統(tǒng)的軟件開發(fā)方法,更重要的是它能支持面向?qū)ο?、可視化的開發(fā)風(fēng)格。因此Visual C+7又稱作是一個集成開發(fā)工具, 它提供了軟件代碼自動生成和可視化的資源編輯功能。Visual C+具有的優(yōu)點:提供了面向?qū)ο蟮膽?yīng)用程序框架 MFC( Microsoft Foundation Class ), 簡化了程序員的編程工作,提高了模塊的可重用性;提供了基于CASE 技術(shù)的可視化軟件的自動生成和維護工具AppWizard 、C

25、lassWizard 、VisualStudio 、WizardBar 等,實現(xiàn)了直觀、可視的程序設(shè)計風(fēng)格,方便地編和管理各種類,維護程序的源代碼;封裝了Windows 的 API函數(shù)、 USER、KERNEL、GDI 函數(shù),簡化了編程時創(chuàng)建、維護窗口的許多復(fù)雜的工作。3.1.2本程序中使用的VC+控件及其屬性簡介(1)CStatic(靜態(tài)控件 ) :顯示一些幾乎固定不變的文字或圖形描述。(2)CButton (按鈕控件):產(chǎn)生某些命令或改變某些選項設(shè)置。(3)CEdit (編輯框控件):完成文字的輸入輸出雙向操作,查看并編輯文字。(4)CListBox(列表框控件):顯示一個列表,讓用戶從中

26、選取一個或多個項。(5)CComboBox(組合框):將列表框和編輯框有機地組合在一起,可選擇列表中已有的項,還可以編輯出新的項。系統(tǒng)數(shù)據(jù)訪問接口的選擇Visual C+ 中可用的數(shù)據(jù)訪問對象接口有三種:ODBC( Open DatabaseConnectity,開發(fā)數(shù)據(jù)庫連接)、 DAO(Data Access Objects,數(shù)據(jù)訪問對象 ) 及OLE DB(OLE data Base ,OLE數(shù)據(jù)庫 ) 。1ODBC(Open Database Connectity,開發(fā)數(shù)據(jù)庫連接)ODBC提供了應(yīng)用程序接口( API),使得任何一個數(shù)據(jù)庫都可以通過 ODBC 驅(qū)動器與指定 DBMC相聯(lián)

27、,用戶的程序就可以通過調(diào)用 ODBC驅(qū)動管理器中相應(yīng)的驅(qū)動程序達到管理數(shù)據(jù)庫的目的。作為 Microsoft WindowsOpenStandards Architecture(WOSA,Windows 開放式服務(wù)體系結(jié)構(gòu) ) 的主要組成部分, ODBC一直沿用至今。2.DAO(Data Access Objects,數(shù)據(jù)訪問對象 )DAO 提供了一種通過程序代碼創(chuàng)建和操縱數(shù)據(jù)庫的機制。多個DAO對象構(gòu)成了一個體系結(jié)構(gòu),在這個結(jié)構(gòu)里,各個DAO 對象協(xié)同工作,通過Microsoft Jet 數(shù)據(jù)庫訪問數(shù)據(jù)庫中的數(shù)據(jù)和數(shù)據(jù)庫的結(jié)構(gòu)定義。 可以訪問的數(shù)據(jù)庫類型主要有: Microsoft Jet

28、數(shù)據(jù)庫、 ODBC數(shù)據(jù)源、可安裝的 ISAM 數(shù)據(jù)庫。DAO 是我們可以通過程序訪問和操縱本地的或遠程的數(shù)據(jù)和數(shù)據(jù)定義, 管理數(shù)據(jù)庫中的對象或結(jié)構(gòu)。 DAO 支持兩種不同的數(shù)據(jù)庫環(huán)境稱為工作區(qū)( Workspace).8Microsoft Jet Workspace這是一種使用Microsoft Jet數(shù)據(jù)庫引擎來訪問數(shù)據(jù)源的工作區(qū)。ODBC Direct Workspace這是一種使用ODBC Direct來直接訪問一個ODBC數(shù)據(jù)源,并繞過Microsoft Jet數(shù)據(jù)庫引擎的工作區(qū)??赏ㄟ^ODBC訪問數(shù)據(jù)庫服務(wù)器,而無須安裝Microsoft Jet數(shù)據(jù)庫引擎。3OLE DB(OLE d

29、ata Base, OLE數(shù)據(jù)庫 ) 。OLE DB 試圖提高一種統(tǒng)一的數(shù)據(jù)訪問接口, 并能處理除了標(biāo)準(zhǔn)的關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù)之外,還能處理包括郵件數(shù)據(jù)、 Web 上的文本或圖形、目錄服務(wù)( Directory Services),以及主機系統(tǒng)中的 IMS 和 VSAM 數(shù)據(jù)。 OLE DB 提供一個數(shù)據(jù)庫編程 COM (組件對象模型)接口,使得數(shù)據(jù)的使用者(應(yīng)用程序)可以使用同樣的方法訪問各種數(shù)據(jù), 而不用考慮數(shù)據(jù)的具體存儲地點、 格式或類型。這個 COM 接口與 ODBC 相比,其健壯性和靈活性要高的多。但是,由于 OLE DB 的程序比較復(fù)雜,因而對于一般用戶來說使用ODBC 和 DAO

30、方式已能滿足一般數(shù)據(jù)庫處理的需要Access 介紹Access 是 Microsoft Office 辦公套件中一個極為重要的組成部分。剛開始時微軟公司是將 Access 單獨作為一個產(chǎn)品進行銷售的,后來微軟發(fā)現(xiàn)如果將 Access 捆綁在 OFFICE中一起發(fā)售,將帶來更加可觀的利潤, 于是第一次將 Access 捆綁到 OFFICE97中,成為 OFFICE套件中的一個重要成員?,F(xiàn)在它已經(jīng)成為 Office 辦公套件中不可缺少的部件了。自從 1992 年開始銷售以來, Access 已經(jīng)賣出了超過 6000 萬份,現(xiàn)在它已經(jīng)成為世界上最流行的桌面數(shù)據(jù)庫管理系統(tǒng)。后來微軟公司通過大量地改進,

31、將 Access 的新版本功能變得更加強大。不管是處理公司的客戶訂單數(shù)據(jù); 管理自己的個人通訊錄; 還是大量科研數(shù)據(jù)的記錄和處理,人們都可以利用它來解決大量數(shù)據(jù)的管理工作。建立一個數(shù)據(jù)庫我們有多種選擇,現(xiàn)在市場上有各種各樣的數(shù)據(jù)庫, 而且每一種數(shù)據(jù)庫都有其自身的特點, 不能說哪一種更好, 只能在其中尋找一種能更好地適應(yīng)系統(tǒng)需求、 更好地滿足用戶的要求以及適應(yīng)開發(fā)人員的習(xí)慣。 在本系統(tǒng)中,做為圖書倉庫管理系統(tǒng)是一個比較小的應(yīng)用系統(tǒng), 它所產(chǎn)生和處理的數(shù)據(jù)量也比較小。 因此,沒有必要使用像 SQL Server 和 Oracle 這樣的大型數(shù)據(jù)庫。我首先想到的數(shù)據(jù)庫是Borland 公司的Para

32、dox 數(shù)據(jù)庫。另外,Microsoft Office 中的 Access數(shù)據(jù)庫在計算機上的應(yīng)用比較普及,是開發(fā)小型數(shù)據(jù)庫系統(tǒng)的比較理想的選擇,所以,在本系統(tǒng)中我選擇了Access數(shù)據(jù)庫。Access做為一個數(shù)據(jù)庫管理系統(tǒng),它被集成在Microsoft Office 中。Access數(shù)據(jù)庫處理的基本結(jié)構(gòu), 采取關(guān)系型數(shù)據(jù)庫模式。 與其他的數(shù)據(jù)庫系統(tǒng)相比,Access更加簡單易學(xué),一個普通的計算機用戶可以很快地掌握它。 Access2000 的功能十分強大,利用它可以方便地實現(xiàn)對信息保存、維護、查詢、統(tǒng)計、打印、交流、發(fā)布,而且它可以十分方便地與Office 其他組件交流數(shù)據(jù),9這些功能對一個一

33、般用戶而言已經(jīng)足夠了。4.1 創(chuàng)建工程項目 -material_mis啟動 visual c+6.0后,從“ file”菜單中選“ new”命令,然后,單擊 “new” 對 話 框中 的 “projects” 選項 卡 , 選擇 工程 模 板中 的 “mfcappwizard(exe)” 選 項 , 并 在 “project_name ” 中 輸 入 工 程 的 名 稱 :material_mis,在 location 中選擇保存這個工程的位置: c:vc,其他使用系統(tǒng)提供的默認選項,單擊“ OK”按鈕,就會進入 mfc appwizard,這個向?qū)б还灿?6 步, step1對話框中選中“

34、single document”選項。單擊“ next ”按鈕,進入 step 2 of6 對話框,這一步要選擇需要的數(shù)據(jù)庫,因為涉及到數(shù)據(jù)庫的使用,所以在這里選中“”對話框,確認信息無誤后,單擊“ok”按鈕 , 完成創(chuàng)建 material_mis工程。4.2 創(chuàng)建主窗體菜單完成上面的工作后, 在“ workspace”中選擇“ recourceview ”命令, 然后雙擊 menu文件夾,再雙擊“ idr_mainframe ”項目, 單擊右邊窗口中的“文件”菜單,雙擊“文件”或者敲 enter 鍵,就會出現(xiàn)“ menuitem properties ” 對話框,在這個對話框中更改菜單項的內(nèi)

35、容, 更改后的內(nèi)容如圖 2 示,第一級菜單的設(shè)置都 和圖 3 中的設(shè)置方法相同,二級菜單的設(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物資入庫信息管理添加物資入庫信息ID_MENU_ADDININFO修改物資入庫信息ID_MENU_ALTERININFO刪除物資入庫信息ID_MENU_DELININFO查詢物資入庫信息ID_MENU_SEARCHININFO物資出庫信息管理添加物資出庫信息ID_MENU_ADDOUTINFO修改物資出庫信息ID_MENU_ALTEROUTINFO刪除物資出庫信息ID_MENU_DELOUTINFO查詢物資出庫信息ID_MENU_SEARCHOUTINFO物資余額信息管理查詢物資余額信息ID_MENU_SEARCHSURPLUSINFO幫助關(guān)于4.3 創(chuàng)建公用模塊在這個系統(tǒng)中,頻

37、繁地使用到了對數(shù)據(jù)庫的訪問,修改等操作,所以把針對數(shù)據(jù)庫的一些公共操作集中起來,可以使代碼更加規(guī)范和容易維護。在 classview 中,利用鼠標(biāo)右鍵單擊“ cmaterial_misapp ”項目,選擇“ add member variable ”選項,然后依次添加這個工程中要使用到的變量:public:11CString m_sCurrentUser;int m_iLoginCount;_RecordsetPtr m_pADOSet;private:_ConnectionPtrADOConn;定義 ado 數(shù)據(jù)庫連接對象指針選擇 add member function添加函數(shù)bool AD

38、OExecute(_RecordsetPtr&ADOSet,_variant_&strSQL);最后手工添加一個外部變量的聲明:extern Cmaterial_MISApp theApp;在 visual c+ 中進行數(shù)據(jù)庫操作一定要引進 ado 類,所在把下面這段代 碼 添 加 到 這 個 工 程 中 的 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連接對象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ù)庫的工作,同時添加下面的代碼,來設(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ù)庫連接的函數(shù)。選擇 ADDVirtual Function 添加一個虛函數(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();通過以上的編寫,完成了對數(shù)據(jù)庫的基本操作,為下面的工作提供了最基本的功能。第五章系統(tǒng)用戶管理模塊的創(chuàng)建用戶管理模塊主要實現(xiàn)

44、:5.1 用戶登錄該窗口中放置了三個靜態(tài)文本框(Static)控件,在窗口的相應(yīng)位置顯示文字。放置了 2 個編輯框( Edit),一個供用戶輸入登錄的用戶名 ( m_username),另一個供用戶輸入口令(m_passward),這個編輯框的屬性要設(shè)成password。輸入的值存放在編輯框控件對應(yīng)的變量中,另外還放置了兩個按鈕控件( Button)。如圖 5 所示。5.2 添加用戶為了數(shù)據(jù)庫使用的安全,允許的用戶和口令都預(yù)先存在數(shù)據(jù)庫中,如果要加入新的用戶,必須修改數(shù)據(jù)庫中對應(yīng)的表。5.3 修改用戶密碼為了保證數(shù)據(jù)庫的安全, 有時候需要經(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(沒有這個用戶 n 三次輸入均不正確, 請核對后再來 , MB_ICONEXCLAMATION);CDialog:OnCancel();return;AfxMessageBox(沒 有 這 個 用 戶 , 請 重 新 輸 入

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 三次輸入均不正確, 請核對后再來 , MB_ICONEXCLAMATION);CDialog:OnCancel();return;AfxMessageBox( 輸 入 密 碼 不 正 確 , 請 重 新 輸 入 ,MB_IC

溫馨提示

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

評論

0/150

提交評論