合同管理系統(tǒng)設(shè)計(jì)-VB編程畢業(yè)設(shè)計(jì)_第1頁(yè)
合同管理系統(tǒng)設(shè)計(jì)-VB編程畢業(yè)設(shè)計(jì)_第2頁(yè)
合同管理系統(tǒng)設(shè)計(jì)-VB編程畢業(yè)設(shè)計(jì)_第3頁(yè)
合同管理系統(tǒng)設(shè)計(jì)-VB編程畢業(yè)設(shè)計(jì)_第4頁(yè)
合同管理系統(tǒng)設(shè)計(jì)-VB編程畢業(yè)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩42頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1 畢畢業(yè)業(yè)設(shè)設(shè)計(jì)計(jì)(論論文文) 中中文文題題目目: 合同管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 英英文文題題目目: 學(xué)學(xué) 院:院: 專專 業(yè):業(yè):計(jì)算機(jī)科學(xué)與技術(shù) 學(xué)生姓名:學(xué)生姓名: 學(xué)學(xué) 號(hào):號(hào): 指導(dǎo)教師:指導(dǎo)教師: 年年 月月 日日 2 摘摘 要要 在 21 世紀(jì),隨著計(jì)算機(jī)科學(xué)的發(fā)展,數(shù)據(jù)庫(kù)技術(shù)在人們?nèi)粘9ぷ?中的應(yīng)用越來(lái)越廣泛,為廣大用戶提供了更加周到和人性化的服務(wù)。 數(shù)據(jù)庫(kù)技術(shù)已逐漸成為當(dāng)今計(jì)算機(jī)應(yīng)用的潮流。本文主要是通過(guò)制作 一款數(shù)據(jù)庫(kù)軟件即“合同管理系統(tǒng)”來(lái)介紹數(shù)據(jù)庫(kù)技術(shù)在人們?nèi)粘?生活和工作中的應(yīng)用。 本論文所做的主要工作如下: (1)介紹了 Visualbasic6.0 軟件開(kāi)發(fā)工具和利

2、用 Delphi7.0 和 Ado 技術(shù)操作數(shù)據(jù)庫(kù)的一般原理。 (2)闡述整個(gè)“合同管理系統(tǒng)”的系統(tǒng)結(jié)構(gòu)及工作原理;分析了系 統(tǒng)實(shí)現(xiàn)中的特殊性、難點(diǎn)。 (3)設(shè)計(jì)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的操作功能、數(shù)據(jù)庫(kù)查詢功能、數(shù)據(jù)庫(kù)打印 功能。 (4)分析并解決實(shí)現(xiàn)中的若干技術(shù)問(wèn)題。 (5)建立完整的“合同管理系統(tǒng)” ,進(jìn)行測(cè)試并分析結(jié)果。 關(guān)鍵字關(guān)鍵字 數(shù)據(jù)庫(kù)技術(shù) Ado 合同管理系統(tǒng) 3 Abstract At the 21th century ,With the development of computer science, Database technology is widely used in the

3、peoples life and work. This makes users can enjoy more convenient and individual services. Database technology is the trend of todays computer applications. In this work, we study the technique to build a software named Contract Stat System in order to introduce the applications of database technolo

4、gy in the peoples life and work. The main work of this paper are : (1) Introduces the Visual Basic6.0 software development tool and introduces the method how to use the software and Ado technology to operate the database. (2) Investigates the system structure and working principle of the Contract St

5、at System. Analyses the particularity and difficulty of the system. (3) Analyses and resolves the technical problems in implementation. (4) Establishes a test software and analyses the result after testing on it. Key Words Database technology Ado Contract Stat System 4 目錄 第 1 章 緒論 .5 第 2 章 概述 .6 2.1

6、 編程軟件介紹及數(shù)據(jù)庫(kù)概述.6 2.2 訪問(wèn)數(shù)據(jù)庫(kù)的方法.8 第 3 章 系統(tǒng)分析與設(shè)計(jì) .12 3.1 需求分析.12 3.2.模塊設(shè)計(jì).13 第 4 章 合同管理系統(tǒng)的實(shí)現(xiàn) .14 4.1 軟件流程圖.14 4.2 分析與創(chuàng)建數(shù)據(jù)庫(kù).15 4.3 系統(tǒng)各模塊的設(shè)計(jì)與實(shí)現(xiàn).18 4.3.1 用戶登錄管理模塊的設(shè)計(jì).18 4.3.2 合同基本信息錄入模塊設(shè)計(jì).21 4.3.3 用戶密碼修改模塊.26 4.3.4 合同統(tǒng)計(jì)模塊的設(shè)計(jì).29 4.3.5 收款模塊的設(shè)計(jì).36 4.3.6 合同信息查找模塊的設(shè)計(jì).40 第五章 系統(tǒng)性能測(cè)試 .43 總結(jié) .44 致 謝 .45 參考文獻(xiàn) .46 5

7、第第 1 1 章章 緒論緒論 本論文描述了一個(gè)使用 VB 技術(shù)來(lái)實(shí)現(xiàn)創(chuàng)建一個(gè)基于本地?cái)?shù)據(jù)庫(kù)技 術(shù)的合同管理系統(tǒng)的實(shí)例該系統(tǒng)主要面向合同信息處理的單機(jī)服務(wù), 整個(gè)系統(tǒng)共有幾個(gè)部分來(lái)實(shí)現(xiàn)不同的功能: 用戶登錄管理。只有有權(quán)限的用戶才能進(jìn)入本系統(tǒng),沒(méi)有權(quán)限 的用戶或非法用戶不能進(jìn)入本系統(tǒng),從而有效地保證系統(tǒng)的安 全。 合同基本信息錄入。能夠?qū)贤幕拘畔⑦M(jìn)入錄入,包括合 同的編號(hào)、合同的類別、合同名稱、合同部門(mén)、所屬部門(mén)、合 同開(kāi)始日期、合同結(jié)束日期、合同額等。 合同信息的查找。能夠?qū)贤木唧w信息進(jìn)行查找。可以提供 按時(shí)間范圍查找、按所屬部門(mén)查找、按合同編號(hào)查找、按客戶 名稱查找、按合同類別查找

8、、按模糊條件查找。 對(duì)用戶密碼進(jìn)行修改。為了保證軟件的安全,用戶需要定期修 改密碼。用戶在登錄后要能對(duì)自己的密碼進(jìn)行修改。 合同統(tǒng)計(jì)。通過(guò)它首先可以瀏覽所有合同的具體信息,還能添 加、刪除、修改、保存合同信息。同時(shí),作為操作本軟件的主 要平臺(tái),通過(guò)它能夠訪問(wèn)其它的單元。 收款。可以對(duì)合同的收款的情況信息進(jìn)行管理,包括對(duì)收款信 息的錄入、刪除、修改、保存等。 整個(gè)系統(tǒng)簡(jiǎn)單劃分為以上 6 個(gè)部分 6 第第 2 2 章章 概述概述 2.1 編程軟件介紹及數(shù)據(jù)庫(kù)概述 Visual Basic 是由微軟公司推出的一套完整的 Windows 系統(tǒng)軟 件開(kāi)發(fā)工具,可用于開(kāi)發(fā) Windows 環(huán)境下的各類應(yīng)用

9、程序,是一種可 視化、真正面向?qū)ο?、采用事件?qū)動(dòng)方式的結(jié)構(gòu)化高級(jí)程序設(shè)計(jì)語(yǔ)言 和工具的完美集成。它編程簡(jiǎn)單、方便、功能強(qiáng)大,具有與其它語(yǔ)言 及環(huán)境的良好接口,不需要編程開(kāi)發(fā)人員具備 C/C+或者 Turbo Pascal 語(yǔ)言知識(shí)和特別高深的專業(yè)知識(shí),只要懂得 Windows 的界面及 其基本操作,就可以迅速上手,而 VB 在程序界面設(shè)計(jì)、多媒體開(kāi)發(fā)方 面更是獨(dú)具優(yōu)勢(shì)。 自 1991 年 Visual Basic1.0 推出以來(lái),Visual Basic 版本不斷 得到更新,功能不斷得到增強(qiáng),現(xiàn)在的最新版本是 Visual Basic 6.0。為了滿足不同的開(kāi)發(fā)需要,Visual Basic

10、6.0 本身又分為學(xué)習(xí)版、 專業(yè)版。Visual Basic 6.0 對(duì)已有功能進(jìn)行完善,同時(shí)增加了許多新 的功能。 新的數(shù)據(jù)訪問(wèn)特性 在數(shù)據(jù)訪問(wèn)技術(shù)方面 Visual Basic 6.0 比起 Visual Basic 5.0 有了極大的增強(qiáng): 新的數(shù)據(jù)訪問(wèn)接口 ADO:Visual Basic 6.0 支持的數(shù)據(jù)訪問(wèn)接口有 ADO(ActiveX 數(shù)據(jù)對(duì)象)、RDO(遠(yuǎn)程數(shù)據(jù)對(duì)象)和 DAO(數(shù)據(jù)訪問(wèn)對(duì)象), 每個(gè)接口都代表了數(shù)據(jù)訪問(wèn)技術(shù)的不同發(fā)展階段,最新的接口是 ADO。ADO 是比 RDO 和 DAO 更加簡(jiǎn)單、更加靈活的對(duì)象模型,它是為 7 OLE DB 而設(shè)計(jì)的。OLDDB 是新

11、的低層 COM 接口,可以為任何數(shù)據(jù)源 提供高性能的訪問(wèn)。這些數(shù)據(jù)源包括關(guān)系和非關(guān)系數(shù)據(jù)庫(kù)、電子郵件 和文件系統(tǒng)、文本和圖形、自定義業(yè)務(wù)對(duì)象等。ADO 封裝并實(shí)現(xiàn)了 OLDDB 的所有功能,它將全面取代 DAO 和 RDO,成為數(shù)據(jù)訪問(wèn)接口的主 流。 新的數(shù)據(jù)源:除了已有的 Data 和 Remote Data 控件外,Visual Basic 6.0 引入了幾種新的數(shù)據(jù)源,包括數(shù)據(jù)識(shí)別的類模塊和用戶控件、 數(shù)據(jù)環(huán)境、ADO 記錄集和 ADOData 控件等。ADOData 控件的功能與 Data 和 Remote Data 控件十分相似,都允許編程人員用最少的代碼來(lái) 創(chuàng)建數(shù)據(jù)庫(kù)應(yīng)用程序。 新

12、的數(shù)據(jù)庫(kù)綁定控件:Visual Basic 6.0 新增加了為數(shù)不少的數(shù) 據(jù)綁定控件,包括 DataGrid, Datalist, DataCombo, Hierarchical FlexGrid 和 DataRepeater 等。 集成的可視化數(shù)據(jù)庫(kù)工具:包括查詢?cè)O(shè)計(jì)器和數(shù)據(jù)庫(kù)設(shè)計(jì)器,提 供了可視地查看并操作表、視圖、存儲(chǔ)過(guò)程和數(shù)據(jù)庫(kù)結(jié)構(gòu)的功能。 數(shù)據(jù)環(huán)境設(shè)計(jì)器:允許編程人員可視化地創(chuàng)建和操作 ADO 對(duì)象, 為編程人員操縱數(shù)據(jù)源提供了極大的方便。 數(shù)據(jù)報(bào)表設(shè)計(jì)器:允許編程人員利用拖放技術(shù)來(lái)快速地從任何記 錄集創(chuàng)建報(bào)表。 新的 Internet 特性 Visual Basic 6.0 提供了

13、多種不同的途徑,來(lái)幫助編程人員開(kāi)發(fā) 出動(dòng)態(tài)的、功能強(qiáng)大的 Internet 應(yīng)用程序: IIS 應(yīng)用程序:可以直接 Visual Basic 6.0 來(lái)創(chuàng)建 IIS 應(yīng)用程序 8 (服務(wù)器端 Internet 應(yīng)用程序),響應(yīng)瀏覽器用戶的請(qǐng)求。 對(duì)下載 ActiveX 文檔的支持:在 Internet Explorer 中下載 ActiveX 文檔與下載 ActiveX 控件的方法相同。 除了新的數(shù)據(jù)訪問(wèn)特性和新的 Internet 特性外,Visual Basic 6.0 在其余方面也都做了重大改進(jìn),包括新的或增強(qiáng)的控件,新的或增 強(qiáng)的語(yǔ)言特性,以及新的或增強(qiáng)的向?qū)АK羞@些都使得 Visu

14、al Basic 6.0 功能更為強(qiáng)大??傊?,無(wú)論是開(kāi)發(fā)小型應(yīng)用系統(tǒng),還是大型 企業(yè)應(yīng)用系統(tǒng),甚至開(kāi)發(fā)功能強(qiáng)大的 Internet 應(yīng)用程序,Visual Basic 6.0 都能勝任。 22 訪問(wèn)數(shù)據(jù)庫(kù)的方法 Visuai Basic 6.0 的數(shù)據(jù)訪問(wèn)功能比起 Visual Basic 5.O 有了極大的 增強(qiáng)。除了支持 DAO(數(shù)據(jù)訪問(wèn)對(duì)象)和 RDO(遠(yuǎn)程數(shù)據(jù)對(duì)象)外,Visual Basic 6.0 還提供了新的 ADO 和 RDO 更加簡(jiǎn)單、更加靈活的數(shù)據(jù)訪問(wèn) 接口。此外,Visual Basic 6.0 還提供了新的數(shù)據(jù)源、新的數(shù)據(jù)綁定控件、 新的可視化數(shù)據(jù)庫(kù)工具、新的數(shù)據(jù)環(huán)境設(shè)

15、計(jì)器以及新的數(shù)據(jù)報(bào)表設(shè)計(jì) 器。 1.數(shù)據(jù)訪問(wèn)對(duì)象(DAO)控件 數(shù)據(jù)訪問(wèn)對(duì)象(DAO)是 Jet 引擎的面向?qū)ο蟮木幊探涌凇et 引擎 使最終用戶與正在訪問(wèn)的特定數(shù)據(jù)庫(kù)無(wú)關(guān)。Jet 引擎駐留在(動(dòng)態(tài)連接庫(kù))文 件中,運(yùn)行時(shí)將應(yīng)用程序的請(qǐng)求翻譯成對(duì)數(shù)據(jù)庫(kù)的物理操作。Jet 引擎真 正讀取、寫(xiě)入和修改數(shù)據(jù)庫(kù),并處理所有的內(nèi)部的事務(wù)。Jet 引擎介于用 戶界面和數(shù)據(jù)倉(cāng)庫(kù)之間。 通過(guò)數(shù)據(jù)訪問(wèn)對(duì)象和 Jet 引擎可以識(shí)別以下三類數(shù)據(jù)庫(kù):Visual 9 Basic 數(shù)據(jù)庫(kù);外部數(shù)據(jù)庫(kù);ODBC 數(shù)據(jù)庫(kù)。 雖然可以直接使用數(shù)據(jù)訪問(wèn)對(duì)象來(lái)編程,但 Data 控件作為一個(gè)圖 形控件,具有易于使用的界面,它的

16、最大優(yōu)點(diǎn)就是只需少量代碼或根本不 用代碼就可以創(chuàng)建應(yīng)用程序來(lái)顯示。 2.運(yùn)程數(shù)據(jù)對(duì)象和 Remtoe Data 控件 遠(yuǎn)程數(shù)據(jù)訪問(wèn)對(duì)象是位于 ODBC API 和驅(qū)動(dòng)程序管理器之上的對(duì) 象模型,它提供了一系列的對(duì)象來(lái)滿足遠(yuǎn)程數(shù)據(jù)訪問(wèn)的特殊要求。盡管 RDO 在訪問(wèn) Jet 或 ISAM 數(shù)據(jù)庫(kù)時(shí)受到限制,而且只能通過(guò)現(xiàn)存的 ODBC 驅(qū)動(dòng)程序來(lái)訪問(wèn)關(guān)系數(shù)據(jù)庫(kù)。但 RDO 能訪問(wèn)任何的 ODBC 數(shù) 據(jù)源,特別適用于智能的數(shù)據(jù)庫(kù)服務(wù)器(如 SOL Server 和 Oracle 等)。 Remote Data 與 Data 控件基本類似,都提供了對(duì)數(shù)據(jù)庫(kù)的無(wú)縫訪 問(wèn),用戶不必編寫(xiě)任何代碼就可以創(chuàng)

17、建數(shù)據(jù)識(shí)別的應(yīng)用程序,區(qū)別在于: Remite Data 控件是通過(guò)使用 RDO 來(lái)實(shí)現(xiàn)數(shù)據(jù)訪問(wèn),而 Data 控件則通過(guò) 使用 DAO 來(lái)連接到 Jet 引擎。 3.ActiveX 數(shù)據(jù)對(duì)象和 ADO Data 控件 OLE DB 是一種統(tǒng)一的數(shù)據(jù)訪問(wèn)接口,它能夠訪問(wèn)各種 DBMS 和非 DBMS 數(shù)據(jù)源。DBMS 數(shù)據(jù)源包括主機(jī)數(shù)據(jù)庫(kù)(如 IMS 和 DB2、服務(wù) 器數(shù)據(jù)庫(kù)(如 Oracle 和 SQL Sereer)以及桌面數(shù)據(jù)庫(kù)(如(Micromft Access); 非 DBMS 數(shù)據(jù)源包括存放在 Windows 和 UNIX 文件系統(tǒng)中的信息、電 子郵件、電子表格、web 上的文件

18、或圖形以及目錄服務(wù)等。OLE DB 使 得數(shù)據(jù)消費(fèi)者(應(yīng)用程序)可以使用相同的方法訪問(wèn)各種數(shù)據(jù),而不用考 慮數(shù)據(jù)的具體存儲(chǔ)地點(diǎn)、格式及類型。ADO(ActiveX 數(shù)據(jù)對(duì)象)是 DAO、RDO 的后繼產(chǎn)物,更簡(jiǎn)單和靈活。它擴(kuò)展了 DAO 和 RDO 所 使用的對(duì)象模型,包含較少的對(duì)象,更多的屬性、方法和事件。ADO 10 是為 OLE DB 而設(shè)計(jì)的,它封裝并實(shí)現(xiàn)了 OLE DB 的所有功能。 ADO Data 控件,也就是 Adodc,是 Visual Basic 6.0 新引進(jìn)的數(shù) 據(jù)訪問(wèn)控件,它使用 ADO 來(lái)快速建立數(shù)據(jù)綁定控件和數(shù)據(jù)提供者之間 的連接,它使編程者使用最少的代碼來(lái)創(chuàng)建數(shù)

19、據(jù)庫(kù)應(yīng)用程序。當(dāng)然, 用 ADO Data 控件進(jìn)行訪問(wèn)數(shù)據(jù)時(shí)必須為待訪問(wèn)的數(shù)據(jù)庫(kù)創(chuàng)建 OLE DB 數(shù)據(jù)連接。本畢業(yè)設(shè)計(jì)就是采用這種先進(jìn)的數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)訪問(wèn)數(shù)據(jù) 庫(kù)的。 4.數(shù)據(jù)環(huán)境設(shè)計(jì)器和數(shù)據(jù)報(bào)表設(shè)計(jì)器 數(shù)據(jù)環(huán)境設(shè)計(jì)器用于在設(shè)計(jì)時(shí)創(chuàng)建 ADO 對(duì)象,它為數(shù)據(jù)庫(kù)訪問(wèn) 提供了一個(gè)交互式環(huán)境。 在編程時(shí),可以使用數(shù)據(jù)環(huán)境設(shè)計(jì)器創(chuàng)建連接、命令和其他 ADO 對(duì)象,使用 ADO 對(duì)象的方法和屬性,執(zhí)行命令和操作記錄集等。 在數(shù)據(jù)環(huán)境設(shè)計(jì)器中創(chuàng)建連接和命令對(duì)象之后,數(shù)據(jù)環(huán)境設(shè)計(jì)器 在設(shè)計(jì)時(shí)創(chuàng)建了 DataEnvieonmwnr 對(duì)象以及從屬的 ADO 對(duì)象。當(dāng)連接 和命令對(duì)象的數(shù)據(jù)源可用時(shí),可以在程序

20、運(yùn)行時(shí)直接訪問(wèn)數(shù)據(jù)環(huán)境設(shè) 計(jì)器創(chuàng)建的 Command、Connection 和 Recordset 對(duì)象,好像這些對(duì)象 是直接通過(guò) ADO 創(chuàng)建的一樣。例如,可以在運(yùn)行時(shí)用代碼將數(shù)據(jù)識(shí)別 控件綁定到一個(gè)命令對(duì)象或命令對(duì)象中的字段,也可以在對(duì)象關(guān)閉時(shí) 動(dòng)態(tài)地設(shè)置 ADO Connection 和 Recordset 對(duì)象的屬性,并在數(shù)據(jù)綁定 前設(shè)置參數(shù)值。 Microsoft 數(shù)據(jù)報(bào)表設(shè)計(jì)器(Micromft Data Report designer)是 Visual Bmic6.0 提供的新的報(bào)表設(shè)計(jì)器,和 Visual Basic 中已有提供數(shù)據(jù)源的 對(duì)象(如數(shù)據(jù)環(huán)境設(shè)計(jì)器)一起使用,通過(guò)鼠

21、標(biāo)的拖放操作,可以方便的 創(chuàng)建復(fù)雜的報(bào)表。DataReport 設(shè)計(jì)器創(chuàng)建的報(bào)表可以直接打印,也可 11 以將報(bào)表導(dǎo)出到 HTML 或文本文件中。 數(shù)據(jù)庫(kù)最主要的功能是存儲(chǔ)數(shù)據(jù)和提供信息。數(shù)據(jù)報(bào)表的作用就 是將數(shù)據(jù)從數(shù)據(jù)庫(kù)中檢索到的數(shù)據(jù),以用戶自定義的格式打印出來(lái)或 是顯示在計(jì)算機(jī)屏幕上。使用報(bào)表可以解決數(shù)據(jù)庫(kù)打印格式的特殊要 求,也可以解決大量重復(fù)性的勞動(dòng)。在具體的數(shù)據(jù)庫(kù)應(yīng)用程序中,報(bào) 表可以解決各種各樣的實(shí)際問(wèn)題。例如:當(dāng)建成一個(gè)完整的數(shù)據(jù)庫(kù)系 統(tǒng)后,用戶可以通過(guò) SQL 語(yǔ)句,或事先定義好的查詢來(lái)檢索數(shù)據(jù)庫(kù)中 的信息。 通過(guò)比較可以發(fā)現(xiàn): ADO(ActiveX Data Object,

22、ActiveX 數(shù)據(jù)對(duì)象)是微軟提出的新 標(biāo)準(zhǔn),它使得客戶端應(yīng)用程序能夠通過(guò)任何 OLEDB 提供者來(lái)訪問(wèn)和 操作數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù),而不必進(jìn)行 ODBC 配置。 ADO 有兩個(gè)主要優(yōu)點(diǎn):其一是易于使用、速度快、內(nèi)存支出少和 磁盤(pán)遺跡小。其二是“遠(yuǎn)程數(shù)據(jù)訪問(wèn)” ,能夠通過(guò)一個(gè)來(lái)回的傳輸將數(shù) 據(jù)從服務(wù)器移動(dòng)到客戶端應(yīng)用程序或 Web 中,然后在客戶端對(duì)數(shù)據(jù)進(jìn) 行操作,最后將更新數(shù)據(jù)返回服務(wù)器。 由于 ADO 操作數(shù)據(jù)庫(kù)有著其他方法操作數(shù)據(jù)庫(kù)無(wú)法比擬的優(yōu)點(diǎn), 所以本畢業(yè)設(shè)計(jì)選擇使用 ADO 操作數(shù)據(jù)庫(kù)。 12 第第 3 3 章章 系統(tǒng)分析與設(shè)計(jì)系統(tǒng)分析與設(shè)計(jì) 3.1 需求分析 為了更好地適應(yīng)工作

23、人員對(duì)合同管理系統(tǒng)的需求,緩解手工管理 存在的弊端,開(kāi)發(fā)合同管理系統(tǒng)。合同管理系統(tǒng)向用戶提供的服務(wù)將 在傳統(tǒng)的“錄入-修改-刪除-查找”基礎(chǔ)上,進(jìn)一步提供全方位的信息 服務(wù)。它具有以下幾個(gè)特點(diǎn): (1)可以存儲(chǔ)所有合同的資料,具有安全、高效的特性; (2)只需 1 名合同信息錄入人員即可操作本合同管理系統(tǒng),可以節(jié) 省大量的人力和物力。 (3)可以通過(guò)查詢系統(tǒng)迅速查到所需要的信息。 在對(duì)合同管理系統(tǒng)的流程進(jìn)行認(rèn)真系統(tǒng)的分析后,我認(rèn)為本系統(tǒng) 用戶的需求可以分為 3 個(gè)方面:第 1 方面是用戶登錄管理。只有有權(quán) 限的用戶才能進(jìn)入本系統(tǒng),沒(méi)有權(quán)限的用戶或非法用戶不能進(jìn)入本系 統(tǒng),從而有效地保證系統(tǒng)的安

24、全。第 2 方面是合同信息的查找。能夠 對(duì)合同的具體信息進(jìn)行查找??梢蕴峁┌磿r(shí)間范圍查找、按所屬部門(mén) 查找、按合同編號(hào)查找、按客戶名稱查找、按合同類別查找、按模糊 條件查找。第 3 方面也是合同管理系統(tǒng)的核心工作,即合同基本信息 錄入。能夠?qū)贤幕拘畔⑦M(jìn)入錄入,包括合同的編號(hào)、合同的類 13 別、合同名稱、合同部門(mén)、所屬部門(mén)、合同開(kāi)始日期、合同結(jié)束日期、 合同額等。 3.2.模塊設(shè)計(jì) 根據(jù)需求分析的結(jié)果,我將本系統(tǒng)主要弄分為 6 個(gè)子模塊:用戶 登錄、圖書(shū)管理、圖書(shū)查詢、借閱查詢、借閱管理、基礎(chǔ)維護(hù)。 系統(tǒng)各模塊的主要功能如下: (1) 用戶登錄管理模塊。本模塊的主要功能是對(duì)系統(tǒng)的操作進(jìn)行

25、限 制;只有有權(quán)限的用戶才能進(jìn)入本系統(tǒng),沒(méi)有權(quán)限的用戶或非法用戶 不能進(jìn)入本系統(tǒng),從而有效地保證系統(tǒng)的安全。 (2) 合同基本信息錄入模塊。本模塊的主要功能是能夠?qū)贤?基本信息進(jìn)入錄入,包括合同的編號(hào)、合同的類別、合同名稱、合同 部門(mén)、所屬部門(mén)、合同開(kāi)始日期、合同結(jié)束日期、合同額等。 (3) 用戶密碼修改模塊。本模塊的主功能是為了保證軟件的安全, 用戶需要定期修改密碼。用戶在登錄后要能對(duì)自己的密碼進(jìn)行修改。 (4)合同統(tǒng)計(jì)模塊。本模塊的主要功能是首先是通過(guò)本模塊可以瀏 覽到數(shù)據(jù)庫(kù)內(nèi)所有合同的具體信息,還能添加、刪除、修改、保存合 同信息。同時(shí),作為操作本軟件的主要平臺(tái),通過(guò)它能夠訪問(wèn)其它的

26、 模塊,如用戶修改模塊、收款模塊等。 (5)收款模塊。本模塊的主要功能是對(duì)合同的收款的情況信息進(jìn)行 管理,包括對(duì)收款信息的錄入、刪除、修改、保存等。 14 第第 4 4 章章 合同管理系統(tǒng)的實(shí)現(xiàn)合同管理系統(tǒng)的實(shí)現(xiàn) 4.1 軟件流程圖 用 戶 密 碼 修 改 模 塊 合同模塊(主窗體) 合 同 信 息 錄 入 模 塊 合 同 模 塊 收 款 模 塊 基 礎(chǔ) 維 護(hù) 模 塊 用戶登錄模塊 15 4.2 分析與創(chuàng)建數(shù)據(jù)庫(kù) 運(yùn)行 Microsoft 公司的 Office2000 辦公軟件中的 Access 數(shù)據(jù)庫(kù)軟 件。 1點(diǎn)擊菜單“文件” ,在出現(xiàn)的菜單項(xiàng)中選擇“新建”菜單項(xiàng)。 2然后點(diǎn)擊“空數(shù)據(jù)庫(kù)

27、” ,在彈出的“文件新建數(shù)據(jù)庫(kù)”對(duì)話框中鍵 入數(shù)據(jù)庫(kù)的名稱,本軟件中應(yīng)寫(xiě)入:database.mdb。 3這時(shí)系統(tǒng)將會(huì)自動(dòng)進(jìn)入詳細(xì)的數(shù)據(jù)庫(kù)設(shè)計(jì)窗體。我們選擇“使用設(shè) 計(jì)器”創(chuàng)建表。 4在彈出的“表 1”設(shè)計(jì)窗體中,依次寫(xiě)入各個(gè)字段名以及他們相對(duì) 應(yīng)的數(shù)據(jù)類型和說(shuō)明事項(xiàng)。在本數(shù)據(jù)庫(kù)中他們依次是: 字段名稱字段名稱數(shù)據(jù)類型數(shù)據(jù)類型字段大小字段大小作用作用 Dbname文本20用戶名 Dbpassword文本50密碼 Dbbranch文本50部門(mén) 權(quán)限文本50權(quán)限 5設(shè)計(jì)好字段名后,關(guān)閉并保存表為“l(fā)ogin,即“用戶登錄信息”表 。 6雙擊“l(fā)ogin”表,然后在彈出的數(shù)據(jù)錄入窗體中錄入數(shù)據(jù),并保

28、存。 因?yàn)檐浖行枰齻€(gè)數(shù)據(jù)庫(kù)表,所以還要在數(shù)據(jù)庫(kù)中新建一個(gè) “基本資料”表、 “收款信息”表。下面就用表格的形式分別列出這二 個(gè)表的字段名稱和數(shù)據(jù)類型。 基本資料表 16 字段名稱字段名稱數(shù)據(jù)類型數(shù)據(jù)類型字段大小字段大小作用作用 合同編號(hào)文本50合同編號(hào) 客戶名稱文本50客戶名稱 合同類別文本50合同類別 所屬部門(mén)文本50所屬部門(mén) 合同開(kāi)始日期日期/時(shí)間合同開(kāi)始日期 合同額貨幣合同額 已收款貨幣已收款 成本貨幣成本 已付成本貨幣已付成本 應(yīng)付稅金貨幣應(yīng)付稅金 已付稅金貨幣已付稅金 未收余額貨幣未收余額 未付成本貨幣未付成本 未付稅金貨幣未付稅金 項(xiàng)目毛利貨幣項(xiàng)目毛利 可分配毛利貨幣可分配毛利

29、 收款計(jì)劃貨幣收款計(jì)劃 合同結(jié)束日期日期/時(shí)間合同結(jié)束日期 收款信息表 字段名稱字段名稱數(shù)據(jù)類型數(shù)據(jù)類型字段大小字段大小作用作用 收款 id文本50收款 id 合同編號(hào)文本50合同編號(hào) 17 客戶名稱文本50客戶名稱 合同類別文本50合同類別 所屬部門(mén)文本50所屬部門(mén) 合同期日期/時(shí)間合同期 收款時(shí)間日期/時(shí)間收款時(shí)間 下一期收款時(shí)間日期/時(shí)間 下一期收款時(shí) 間 合同額貨幣合同額 本期收款貨幣本期收款 成本貨幣成本 本期付成本貨幣本期付成本 應(yīng)付稅金貨幣應(yīng)付稅金 本期付稅金貨幣本期付稅金 未收余額貨幣未收余額 未付成本貨幣未付成本 未付稅金貨幣未付稅金 項(xiàng)目毛利貨幣項(xiàng)目毛利 可分配毛利貨幣可分

30、配毛利 收款計(jì)劃貨幣收款計(jì)劃 收款人文本50收款人 18 4.3 系統(tǒng)各模塊的設(shè)計(jì)與實(shí)現(xiàn) 4.3.1 用戶登錄管理模塊的設(shè)計(jì) 1. 用戶登錄管理模塊的主要功能是對(duì)系統(tǒng)的操作進(jìn)行限制;只有 有權(quán)限的用戶才能進(jìn)入本系統(tǒng),沒(méi)有權(quán)限的用戶或非法用戶不能進(jìn)入 本系統(tǒng),從而有效地保證系統(tǒng)的安全。 2.界面設(shè)計(jì): 新建一個(gè)窗體,然后在上面加上各種必須的控件,運(yùn)行圖如下所 示: 2.本模塊的核心代碼及解釋: (1)系統(tǒng)顯示時(shí)自動(dòng)在用戶名的下拉列表里列出所有目前數(shù)據(jù)庫(kù)里 用戶的用戶名,供工作人員選擇,即代碼如下: Private Sub Form_Load() 連接 Dim ADORecordset As Ne

31、w ADODB.Recordset 19 mycon.Open Provider=Microsoft.Jet.OLEDB.4.0;Data Source= _ Persist Security Info=False 打開(kāi)表 With ADORecordset .CursorType = adOpenKeyset .LockType = adLockOptimistic .Open login, mycon, , , adCmdTable End With 向用戶名中填加記錄 If Not (ADORecordset.BOF = True And ADORecordset.EOF = True)

32、 Then Do Until ADORecordset.EOF = True cobName.AddItem IIf(IsNull(ADORecordSet.Fields(Name).Value), _ , ADORecordSet.Fields(Name).Value) cobName.AddItem IIf(IsNull(ADORecordset.Fields(DBName).Value), _ , ADORecordset.Fields(DBName).Value) ADORecordset.MoveNext Loop 20 End If cobName.Text = cobName.L

33、ist(0) ADORecordset.Close txtName.Enabled = False End Sub (2)用戶選擇用戶名并輸入密碼后,按“確定”按鈕觸發(fā)的事件代 碼如下: Private Sub cmdOk_Click() Dim ADOmrc As ADODB.Recordset strtxtSQL = select * from login where DBpassword = & Trim(txtPassword.Text) & and DBName= & Trim(cobName.Text) & Set ADOmrc = ExecuteSQL(strtxtSQL) If

34、 ADOmrc.EOF = True Then MsgBox 密碼錯(cuò)誤!, vbExclamation + vbOKOnly, 警告 txtPassword.SetFocus txtPassword.SelStart = 0 txtPassword.SelLength = Len(txtPassword.Text) Exit Sub Else 用戶權(quán)限 = IIf(IsNull(ADOmrc.Fields(權(quán)限).Value), _ , ADOmrc.Fields(權(quán)限).Value) 所屬部門(mén) = IIf(IsNull(ADOmrc.Fields(DBBranch).Value), , AD

35、Omrc.Fields(DBBranch).Value) End If 21 Set ADOmrc = Nothing Unload Me Load 合同管理系統(tǒng) 合同管理系統(tǒng).Show vbModal End Sub 4.3.2 合同基本信息錄入模塊設(shè)計(jì) 1. 合同基本信息錄入模塊的主要功能是能夠?qū)贤幕拘畔⑦M(jìn) 入錄入,包括合同的編號(hào)、合同的類別、合同名稱、合同部門(mén)、所屬 部門(mén)、合同開(kāi)始日期、合同結(jié)束日期、合同額等。 從嚴(yán)格意義上來(lái)說(shuō)本模塊是合同統(tǒng)計(jì)模塊中的一個(gè)小模塊,這實(shí) 現(xiàn)合同統(tǒng)計(jì)模塊中的合同信息錄入的功能。 2.窗體界面的設(shè)計(jì): 新建一個(gè)窗體,然后在上面加上各種必須的控件,運(yùn)行圖如

36、下所 示: 22 3.核心代碼及解釋如下: 在輸入正確的合同信息后,按“確定”按鈕觸發(fā)的事件代碼如下 所示:Private Sub comOK_Click() Dim strtxtSQL As String If txtID.Text = Or txtName.Text = Then MsgBox 合同編號(hào)不能為空 txtID.SetFocus Exit Sub 23 End If 計(jì)算已收款 If Val(txtPactMoney.Text) Val(txtEndMoney.Text) Then MsgBox 已收金額不能大于合同金額 txtEndMoney.SetFocus Exit Su

37、b End If txtNotMoney.Text = Val(txtPactMoney.Text) - Val(txtEndMoney.Text) 計(jì)算未付成本 If Val(txtCost.Text) Val(txtEndCost.Text) Then MsgBox 已付成本不能小于成本 txtEndCost.SetFocus Exit Sub End If txtNotCost.Text = Val(txtCost.Text) - Val(txtEndCost.Text) 計(jì)算未付稅金 If Val(txtTax.Text) Val(txtEndTax.Text) Then MsgBox

38、 已付稅金不能小于應(yīng)付稅金 txtEndTax.SetFocus Exit Sub End If 24 txtNotTax.Text = Val(txtTax.Text) - Val(txtEndTax.Text) 計(jì)算項(xiàng)目毛利 If Val(txtPactMoney.Text) Val(txtCost.Text) + Val(txtTax.Text) Then MsgBox 成本+應(yīng)付稅金不能大于合同額 txtTax.SetFocus Exit Sub End If txtGrossProfit.Text = Val(txtPactMoney.Text) - Val(txtCost.Text

39、) - Val(txtTax.Text) 計(jì)算可分配毛利 If Val(txtPactMoney.Text) Val(txtEndCost.Text) + Val(txtEndTax.Text) Then MsgBox 已付成本+已付稅不能大于已收款 txtEndTax.SetFocus Exit Sub End If txtAssignGrossPprofit.Text = Val(txtEndMoney.Text) - Val(txtEndCost.Text) - Val(txtEndTax.Text) mycon.ConnectionString = ConnString mycon.O

40、pen 25 strtxtSQL = select * from 基本資料 order by 合同編號(hào) Set ADORecordset = ExecuteSQL(strtxtSQL) 打開(kāi)基本資料表 ADORecordset.AddNew ADORecordset!合同編號(hào) = txtID.Text ADORecordset!客戶名稱 = txtName.Text ADORecordset!合同類別 = txtSort.Text ADORecordset!所屬部門(mén) = txtBranch.Text ADORecordset!合同開(kāi)始日期 = DTPicker1 txtDate.Text AD

41、ORecordset!合同結(jié)束日期 = DTPicker2 ADORecordset!合同額 = txtPactMoney.Text ADORecordset!已收款 = txtEndMoney.Text ADORecordset!成本 = txtCost.Text ADORecordset!已付成本 = txtEndCost.Text ADORecordset!應(yīng)付稅金 = txtTax.Text ADORecordset!已付稅金 = txtEndTax.Text ADORecordset!未收余額 = txtNotMoney.Text ADORecordset!未付成本 = txtNot

42、Cost.Text ADORecordset!未付稅金 = txtNotTax.Text ADORecordset!項(xiàng)目毛利 = txtGrossProfit.Text ADORecordset!可分配毛利 = txtAssignGrossPprofit.Text ADORecordset!收款計(jì)劃 = txtProject.Text 26 ADORecordset.Update Set mycon = Nothing Set ADORecordset = Nothing mycon.Close Set mycon = Nothing Unload Me Call 合同管理系統(tǒng).Initial

43、iztion(0) End Sub 4.3.3 用戶密碼修改模塊 1.本模塊的主功能是為了保證軟件的安全,用戶需要定期修改密 碼。用戶在登錄后要能對(duì)自己的密碼進(jìn)行修改。 2.界面設(shè)計(jì):新建一個(gè)窗體,然后在上面加上各種必須的控件,運(yùn) 行圖如下所示: 27 3.在輸入正確的新密碼后按“確定”按鈕觸發(fā)的事件代碼如下: 響應(yīng)窗體加載事件,進(jìn)行數(shù)據(jù)庫(kù)的連接。代碼如下: Private Sub comOK_Click() Dim strSQL As String Dim ADOCommand As New ADODB.Command Dim 權(quán)限 As String Select Case Combo1.

44、Text Case 管理員 權(quán)限 = 0 Case 修改 權(quán)限 = 1 Case 瀏覽 權(quán)限 = 2 End Select If Text1.Text = Then MsgBox 新密碼不能為空。 Text1.SetFocus Exit Sub ElseIf Text2.Text = Then MsgBox 請(qǐng)輸入確認(rèn)新密碼。 Text2.SetFocus 28 Exit Sub End If If Text1.Text Text2.Text Then MsgBox 兩次輸入的新密碼不正確,請(qǐng)重新輸入。 Exit Sub End If Dim ADORecordset As New ADODB

45、.Recordset strtxtSQL = select * from Login where DBName = & cobName.Text & Set ADORecordset = ExecuteSQL(strtxtSQL) If Not (ADORecordset.BOF = True And ADORecordset.EOF = True) Then Do Until ADORecordset.EOF = True strSQL = update login set DBName = & cobName.Text _ & ,DBPassword = & Text1.Text _ &

46、,DBBranch = & cobBranch.Text _ & ,權(quán)限 = & 權(quán)限 & where DBName= & cobName.Text & ADORecordset.MoveNext Loop Else strSQL = Insert into login (DBName,DBPassword,DBBranch,權(quán)限) Values( & cobName.Text & , & Text1.Text & , & cobBranch.Text & , & 權(quán) 限 & ) End If Set ADOCommand.ActiveConnection = mycon ADOCommand

47、.CommandText = strSQL ADOCommand.Execute Set ADOCommand = Nothing Set ADORecordset = Nothing Unload Me End Sub 29 4.3.4 合同統(tǒng)計(jì)模塊的設(shè)計(jì) 1.本模塊的主要功能是首先是通過(guò)本模塊可以瀏覽到數(shù)據(jù)庫(kù)內(nèi)所 有合同的具體信息,還能添加、刪除、修改、保存合同信息。同時(shí), 作為操作本軟件的主要平臺(tái),通過(guò)它能夠訪問(wèn)其它的模塊,如用戶修 改模塊、收款模塊等。 2.窗體設(shè)計(jì): 新建一個(gè)窗體,然后在上面加上各種必須的控件,運(yùn)行圖如下所 示: 3.核心代碼及解釋如下: (1)響應(yīng)“新增基本資料”按

48、鈕的單擊事件,觸發(fā)的事件代碼如下: 30 Private Sub ComNew_Click() fomBasic.txtID.Text = fomBasic.txtName.Text = fomBasic.txtSort.Text = fomBasic.txtBranch.Text = fomBasic.DTPicker1 = Date fomBasic.txtPactMoney.Text = 0 fomBasic.txtEndMoney.Text = 0 fomBasic.txtCost.Text = 0 fomBasic.txtEndCost.Text = 0 fomBasic.txtTa

49、x.Text = 0 fomBasic.txtEndTax.Text = 0 fomBasic.txtNotMoney.Text = 0 fomBasic.txtNotCost.Text = 0 fomBasic.txtGrossProfit.Text = 0 fomBasic.txtAssignGrossPprofit.Text = 0 fomBasic.txtProject.Text = With BasicDataType .strID = .strName = .strSort = .strBranch = 31 .dateDTPicker = Date .dateDTPicker1

50、= Date .strPactMoney = .strEndMoney = .strCost = .strEndCost = .strTax = .strEndTax = .strNotMoney = .strNotCost = .strGrossProfit = .strAssignGrossPprofit = .strProject = End With fomBasic.Show vbModal End Sub (2)響應(yīng)“修改基本資料”按鈕的單擊事件,觸發(fā)的事件代碼如下: Private Sub comEdit_Click() Dim ADORecordset As New ADODB

51、.Recordset 32 If ctList1.ListCount = 0 Then Exit Sub fomBasic.txtID.Text = ctList1.CellText(ctList1.ListIndex, 2) BasicDataType.strID = ctList1.CellText(ctList1.ListIndex, 2) 合同編號(hào) fomBasic.txtName.Text = ctList1.CellText(ctList1.ListIndex, 3) BasicDataType.strName = ctList1.CellText(ctList1.ListIndex, 3) 客戶名 稱 fomBasic.txtSort.Text = ctList1.CellText(ctList1.ListIndex, 4) BasicDataType.strSort = ctList1.CellText(ctList1.ListIndex

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論