進銷存財務管理系統畢業論文-無憂無慮畢設網_第1頁
進銷存財務管理系統畢業論文-無憂無慮畢設網_第2頁
進銷存財務管理系統畢業論文-無憂無慮畢設網_第3頁
進銷存財務管理系統畢業論文-無憂無慮畢設網_第4頁
進銷存財務管理系統畢業論文-無憂無慮畢設網_第5頁
已閱讀5頁,還剩50頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

無憂無慮畢設網 ():畢業設計源碼下載 畢業設計源碼下載: 本文配套程序下載地址 : 無憂無慮畢設網 () -大學生畢業設計站 ,免費畢業設計論文 ,無憂無慮畢設網 大學生畢業設計 ,出售各類畢業設計源碼 ,論文 ,程序源碼 ,網站源碼 ,免費視頻教程 ,我們將竭誠為您服務! 前 言 財務管理是商品流通領域一個重要的基礎性工作。在管理中引入計算機和財務管理系統已經得到各商業企業業主的認識,并將逐漸成為一種管理手段。隨著企業規模的不斷擴大,企業信息系統的規模也在不斷的增加,其開發難度也越來越大。因此,對企業信息系統的總體結構的把握,即對體系結構的關注顯得要比對程 序的算法和數據結構的關注更為重要。基于軟件體系結構的信息系統的開發已成為軟件工程領域內一個被人關注的研究熱點,并逐漸發展壯大。改善管理手段,提高管理效率,是提高企業效率的主要任務。它使各級管理人員在面對日益繁多、日益復雜的問題和業務時,能夠充分認識問題,及時準確地把握、分析問題,進行有效地組織和管理,以達到最高的經濟效益。 財務管理系統基于 Delphi7 開發的, Delphi 7 是可視化的快速應用程序開發語言,它提供了可視化的集成開發環境,這一環境為應用程序設計人員提供了一系列靈活而先進的工具,可以廣泛地用于 各種類型應用程序的設計。 本系統基于財務管理軟件開發過程和以體系結構為中心、以使用對象為指導思想、基于構件的軟件開發策略。在開發過程中,分析了現階段幾種流行的分布式對象技術,取眾家之所長,闡明了該系統具有的開發難度低、開發周期短,部署簡便,易于擴展等優點。 無憂無慮畢設網 ():畢業設計源碼下載 畢業設計源碼下載: 目 錄 前 言 . I 目 錄 . II 摘 要 . V ABSTRACT . VI 第一章 可行性分析 . 1 1.1 引言 . 1 1.2 編寫目的 . 1 1.3 可行性分析 . 1 1.4 功能模塊的設計分析 . 2 1.5 分析結果 . 2 第二章 軟件需求分析 . 3 2.1 引言 . 3 2.2 編寫目的 . 3 2.3 系統概貌 . 3 2.4 系統功能劃分 . 4 2.5 系統功能描述 . 4 2.6 本人的主要任務 . 9 第三章 總體設計 . 8 3.1 引言 . 8 3.2 編寫目的 . 8 3.3 目標設計 . 9 3.4 系統功能設計 . 9 第四章 詳細設計及編碼 . 11 無憂無慮畢設網 ():畢業設計源碼下載 畢業設計源碼下載: 4.1 引言 . 11 4.2 編寫目的 . 11 4.3 數據庫設計與實現 . 11 4.3.1 數據庫詳細分析 . 11 4.3.2 數據庫的邏輯設計 . 12 4.3.3 數據庫的創建 . 15 4.4 后臺數據庫的配置 . 15 4.5 前端頁面的設計與開發 . 19 4.5.1 分布式財務管理系統登錄設計 . 19 4.5.2 進貨部門模塊設計 . 20 4.5.3.銷售部門模塊設計 . 21 4.5.4 財務部門模塊設計 . 22 4.5.5 系統維護模塊設計 . 26 第五章 軟件測試 . 24 5.1 測試方案說明 . 24 5.1.1 黑盒測試 . 24 5.1.2 白盒測試 . 24 5.1.3 其它測試方案 . 24 5.2 軟件測試的步驟 . 24 5.2.1 模塊測試 . 24 5.2.2 系統測試 . 25 5.2.3 驗收測試 . 25 5.3 測試結果 . 25 5.3.1 部門登錄 . 25 5.3.3 銷售部門操作 . 26 5.3.4 財務部門操作 . 26 5.3.5 整體測試 . 27 總 結 . 28 無憂無慮畢設網 ():畢業設計源碼下載 畢業設計源碼下載: 參考文獻 . 29 附 錄 . 30 附錄 1: . 30 中文原文: . 30 英文翻譯 . 34 附錄 2:操作指南 . 39 景德鎮陶瓷學院工學學士 學位論文 摘要 - V - 摘 要 隨著科技的日益發展,分布式管理系統成了時下最流行的話題之一,本系統從實用的角度出發開發出一個分布式財務管理系 統。信息系統的開發不僅僅是一個應用程序編寫的過程,更重要的是在系統分析和設計階段所做的工作。本系統對目標設計、系統開發背景,開發和運行環境選擇、系統功能分析、系統功能模塊設計、數據庫需求分析、數據庫概念結構設計、數據庫邏輯結構設計、數據庫結構實現、各個功能模塊的創建等各個過程都有詳細的描述。 分布式財務管理系統是采用 Delphi7+SQL Server 2000 數據庫技術綜合開發出來的分布式管理系統。它主要是實現現代企業的最高決策層管理部門對進貨部門、銷售部門、財務部門、管理部門任務合理分配以及加 強各部門之間協同工作的效率。各角色只能使用被分配的功能而不能違規操作其他業務,各類部門根據系統所賦予的不同權限(即部門和密碼)登錄到相應的工作模塊,進行業務處理。使整個系統達到各業務邏輯獨立、有機聯系、高度集成的功能。 本論文主要闡述該系統一個完整的設計思想和實現的關鍵技術。 關鍵詞 :財務管理; Delphi; 權限 景德鎮陶瓷學院工學學士學位論文 ABSTRACT - VI - ABSTRACT One that is with science and technology is growing, the distributed administrative system has become one of popular topics the most at present , this system proceeds from practical angle and develops a distributed financial administrative system. The development of the information system is not merely the course that a application pro gram writes, the more important thing is it in the network analysis and work done on design phase . System this design to goal, develop the background systematically, develop and choose with the running environment, systematic function analysis, the systematic function module is designed, demand analysis of the database , concept structural design of the database , database logic structural design, database structure realize, each function establishment of module ,etc. each course have detailed description . adopts the distributed administrative system that Delphi7 +SQL Server 2000 database technology developed out synthetically. It mainly realizes the supreme administrative department of policy-making level of modern enterprises to the purchase department, sales department, financial departments task assign and strengthen the efficiency that work in coordination between every department rationally. Every role can only use function that assign but can operate other business violably , all kinds of roles log in to the corresponding job module according to different authorities (namely department and password ) that the system give, carry on business treatment. Make the whole system up to logic independence o f every business , organic connection , function of the high integration. Thesis this should explain mainly systematic one intact design philosophy and key technology realized. Keyword: Financial administration ; Delphi; Authority 景德鎮陶瓷學院工學學士學位論文 第一章可行性分析 - 1 - 第一章 可行性分析 1.1 引言 可行性研究的目 的就是用最小的代價在盡可能短的時間內確定問題是否能夠解決。但可行性研究的目的不是解決問題,而是確定問題是否值得去解。為了達到這種目的,不能靠主觀猜想而只能依靠客觀分析。為此,我們要進行必要的可行性研究。由于 Delphi7 在應用方面提供了強大數據庫編程的功能,為系統的開發提供了良好而高效的平臺,使得利用 Delphi7 為企業開發相應應用程序成為最佳的選擇之一。 1.2 編寫目的 當今時代是飛速發展的信息時代。在各行各業中離不開信息處理,這正是計算機被廣泛應用于信息管理系統的環境。計算機的最大好處在于利用它 能夠進行信息管理。使用計算機進行信息控制,不僅提高了工作效率,而且大大的提高了其安全性。尤其對于復雜的信息管理,計算機能夠充分發揮它的優越性。計算機進行信息管理與信息管理系統的開發密切相關,系統的開發是系統管理的前提。 由于開發軟件所需資源缺乏和交付時間限制的困擾,使得計算機軟件的開發變得比較困難。可行性研究的目的是為了解決這問題。因此,應盡早對軟件項目進行可行性分析,如果可行,就應該寫好項目開發的進程安排;如果不可行,就不要浪費人力、物力去做無用功了。 1.3 可行性分析 經濟可行性 :使用本程序用戶只需擁有一 臺計算機就可以使用本系統,本系統使用簡單方便,只需一個管理員進行系統維護管理即可,不需要大量的人力資源。所以在經濟上是可行的。 技術可 行性 : 相對于以前的版本, Delphi7 在許多方面都作了改進并增加了新的功能,它把數據庫設計推向了新的高度,讓程序員從繁瑣的數據庫開發中解脫出來,所以是一款開發中小型數據庫的經典工具。 法律可行性 : 本系統沒有使用任何違法的軟件也沒有交易任何非法的商品,所以在法律上是可行的。 景德鎮陶瓷學院工學學士學位論文 第一章可行性分析 - 2 - 操作方 便可 行性 :本系統采用一貫 Windows 編程風格,操作簡單方便,只要懂得一點計算機基本操作知識都能方 便使用本系統,在操作上基本上沒有什么技術性的東西。所以在操作上也是可行的。 1.4 功能模塊的設計分析 從總體上對本程序進行研究可以得出如下結論: 1.設計一個系統登錄的界面。 2.設計一個財務管理系統,能夠 企業運轉的核心 進貨部門、銷售部門、財務部門和管理部門的業務專業化。 3.要能與系統平臺進行接口,無論 采用什 么形式,都要操作簡單。 4.開發環境:采用 WindowsXP+Delphi7 開發 程序 ,數據庫使用 SQL Server 2000。 1.5 分析結果 從以上的分析可知,分布式財務管理系統的方案是可行的 ,雖然在某些問題上的實現有些困難,比如安全性管理等;還有些問題的解決方案不是很完美,比如用戶忘記密碼時的處理,但總體來說在技術上基本可以實現。我們選用 B/S 結構和關系數據庫結合的方式,開發語言平臺用 Delphi7,此外還結合 SQL Server 2000 語言。可行性研究為軟件的開發和設計做了鋪墊作用。 景德鎮陶瓷學院工學學士學位論文 第二章軟件需求分析 - 3 - 第二章 軟件需求分析 2.1 引言 這個階段的任務仍然不是具體地解決問題,而是準確地確定“為了解決這個問題,目標系統必須做什么”,主要是確定目標系統必須具備哪些功能。 需求分析也是軟件定義 時期的最后一個階段,雖然在可行性研究階段已經粗略了解了用戶的需求,甚至還提出了可行的方案,但是可行性研究的基本目的是用較小的成本在較短的時間內確定是否存在可行的解法,因此許多細節被忽略了。然而在最終的系統中卻不能遺漏任何一個微小的細節,所以可行性研究并不能代替需求分析,它實際上并沒有準確地回答“系統必須做什么?” 這個問題。為此,必須對系統進行需求分析。 2.2 編寫目的 軟件的總體功能和性能的概念描述為具體的軟件需求規格說明,從而奠定軟件開發的基礎,同時,需求分析也是不斷深入了解軟件的過程。軟件需求說明書的 編制是為了使用戶和軟件開發者雙方對該軟件的初始規定有一個共同的理解,使之成為整個開發工作的基礎。 2.3 系統概貌 系統著眼于企業的進、銷、財會處理等管理環節,根據企事業單位中的物流、資金流的運轉流程,使用目前先進的 Delphi7 開發技術。在功能上,它與 Windows 原程序同樣復雜、嚴密。在界面上,系統是以企業中不同的部門執行不同的任務為主線進行設計的。這些部門分別為進貨部門、銷售部門、財務部門和管理部門,不同的部門所分配的任務和功能也各不相同。各部門只能使用被分配的功能而不能違規操作其他業務,以便達到各業務 邏輯獨立、有機聯系、高度集成的目的,各類部門根據系統所賦予的不同權限(即部門名稱和密碼)登錄到相應的工作模塊,進行業務處理。 景德鎮陶瓷學院工學學士學位論文 第二章軟件需求分析 - 4 - 2.4 系統功能劃分 該系統主要由 進貨部門客戶端、銷售部門客戶端、財務部門客戶端和系統維護四個 模塊組成 ,由登錄操作 子系統 、 進貨部門客戶端 操作子系統、 銷售部門客戶端 操作子系統、 財務部門客戶端 操作子系統、管理人員操作子系統 。具體為: 1) 登錄操作 子系統: 服務器、部門、密碼 ; 2) 銷售部門客戶端 操作子系統 : 操作狀態、操作選項、發票編號、日期、商品編號、商品名稱、買進單價、買進數量; 3) 銷售部門客戶端 操作子系統 : 操作狀態、操作選項、發票編號、日期、商品編號、商品名稱、賣出單價、賣出數量 ; 4) 財務部門客戶端 操作子系統 : 財務瀏覽表、商品經營盈虧輸出、操作選項、開始時間、終止時間; 5)管理人員操作子系統:操作狀態、操作選項、發票編號、日期、商品編號、商品名稱、買進單價、買進數量、賣出單價、賣出數量、財務瀏覽表、商品經營盈虧輸出、開始時間、終止時間。 2.5 系統功能描述 系統的數據流程圖,需要根據同軟件的用戶反復溝通及磋商。 景德鎮陶瓷學院工學學士學位論文 第二章軟件需求分析 - 5 - 1.財務管理總體模塊圖: 圖 2 1 分布式財務管理總體模塊圖 Fig2 1 Distributed overall module picture of financial administration 登錄 系統總控模塊 進貨部門 銷售 部門 財務部門 系統維護 景德鎮陶瓷學院工學學士學位論文 第二章軟件需求分析 - 6 - 2.系統流程圖 圖 2 2 系統流程圖 Fig2 2 登錄 驗證 登錄錯誤提示 銷售部門 進貨 部門 財務 部門 系統維護 數據庫 景德鎮陶瓷學院工學學士學位論文 第二章軟件需求分析 - 7 - 3. 銷售、財會過程的數據流圖 : 發票 查詢資料 查詢資料 資料返回 資料返回 圖 2 2 銷售、財會過程的數據流圖 Fig2 3 dataflow of the sale and the financial accounting course 4管理部門數據流程圖 : 進貨部門 銷售部門 圖 2 3 管理部門數據流程圖 Dig2 3Data flow chart of administrative department 客戶 銷售 財會流程處理 查詢 盈虧輸出 供應 財會處理 盈虧輸出 管理部門 景德鎮陶瓷學院工學學士學位論文 第二章軟件需求分析 - 8 - 4)數據字典:數據字典中包含每個數據元素的控制信息是很有價值的。 名字:管理權限報表 別名: 描述:登錄系統時的唯一權限標識 定義:管理權限報表 =部門名稱 +密碼 +權限 位置:登錄頁面 名字:進銷財會賬目 別名: 描述:系統中進銷財會賬目生成的報表 定義:進銷財會賬目報表 =自動編號 +發票編號 +日期 +商品編號 +商 品名稱 +買進數量 +買進單價 +賣出數量 +賣出單價 位置:系統中進銷財會賬目生成的報表 景德鎮陶瓷學院工學學士學位論文 第二章軟件需求分析 - 9 - 2.6 本人的主要任務 該程序所要實現的是一個財務管理系統,系統是以企業中不同的部門執行不同的任務為主線進行設計的。這些模塊分別為進貨部門、銷售部門、財務部門和系統維護,不同的部門被分配的任務和功能也各不相同。各部門只能使用被分配的功能而不能違規操作其他業務,以便達到各業務邏輯獨立、有機聯系、高度集成的目的,各類部門根據系統所賦予的不同權限(即部門和口令) 登錄到相應的工作模塊,進行業務處理。這些模塊都由本人完成。 景德鎮陶瓷學院工學學士學位論文 第三章總體設計 - 8 - 第三章 總體設計 3.1 引言 為了尋找實現目標系統的各種的不同的方案需求在詳細設計之前的總體設計可以站在全局的角度上設計軟件。花較少的成本,從較抽象的層次上分析對比多種可能的系統實現方案和軟件結構,從中選出最佳方案和最合理的軟件結構,從而用較低成本開發出較高質量的軟件系統。 總 體 設 計 的 基 本 目 的 就 是 回 答 “ 從 總 體 上 說 , 系 統 應 該 如 何 實現? ” 這個問題,因此,總體設計又稱為概要設計或初步設計。通過這個階段的工作將劃分出,組成系統的物理元素 -程序、文件、數據庫、人工過程和文檔等等,但是每個物理元素仍然處于黑盒子級,這些黑盒子里的具體內容將在以后進行詳細的設計。總體設計階段的另一項重要任務是設計軟件的結構,也就是要確定系統中每個程序是由哪些模塊組成的,以及這些模塊相互間的關系。 3.2 編寫目的 總體設計說明書又可稱系統設計說明書,這里所說的系統是指程序系統。編制的目的是說明對程序系統的設計考慮,包括程序系統的基本處理流程、程序系統的組織結構、模塊劃分、功能分配、接口設計、運行設計、數據結構設計和出錯處理設計等,為程序的詳細設計提供基礎。總體設計是軟件設計階段的第一步,在軟件開發時期中,設計階段是最富有活力,最需要發揮創造精神的階段。在本階段,主要就是得用面向對象分析方法把分析階段產生的軟件需求說明轉換為用適當手段表示的軟件概要設計文檔,從而得出本模塊的具體實現方案與總體結構以及各組成部分之間的關系。商業單位使用計算機管理系統時都有其出發點和目標。信息是一種資源,也是一種為管理服務的手段,同時又受到管理方式,思想的制約。在信息的使用過程中,首先必須確信數據的真實性,如果系統所提供的數據并不準確,則對管理只會起到負面作用。因此,在決定使用計算 機系統為管理服務時,必須在原有的基礎上,完善業務流程,建立監督機制,制訂有針對性的規章制度,實施規范操作,以達到標準化,科學化,高效性管理的目的。該系統的實施同樣圍繞管理展景德鎮陶瓷學院工學學士學位論文 第三章總體設計 - 9 - 開,由于是一套業務管理系統,除了技術本身的因素外,管理的好壞,領導是否支持,職員的合作,直接影響到系統能否成功實施。 3.3 目標設計 1、進貨部門模塊功能 進貨部門模塊提供 插入、刪除、修改有關進貨的數據 和查詢全部進貨、特定商品進貨的數據的功能。進貨部門的擁有三種操作狀態分別是插入新數據、刪除舊數據、修改舊數據,在三種不同的狀態下對數據內容 進行操作,數據內容包括操作狀態、發票編號、日期、商品編號、商品名稱、買進數量、買進單價、舊數據發票編號等。 2、銷售部門模塊功能 銷售部門模塊提供 插入、刪除、修改有關的 銷售 數據 和查詢全部銷售、特定商品銷售的數據的功能。銷售部門的擁有三種操作狀態分別是插入新數據、刪除舊數據、修改舊數據,在三種不同的狀態下對數據內容進行操作,數據內容包括操作狀態、發票編號、日期、商品編號、商品名稱、賣出數量、賣出單價、舊數據發票編號等。 3、財務部門模塊功能 財務部門提供了相應賬目的瀏覽查詢以及功能 財務部門可以通過輸入日期查詢 全部流水賬、全部分類賬、全部盈利、全部虧損,通過特定商品編號查詢全部流水賬、全部分類賬、全部盈利、全部虧損。 4、系統維護模塊功能 管理人員擁有軟件的最高權限,其中涉及到了進貨部門、銷售部門、財務部門和系統維護模塊的功能,它的模塊功能是維護系統所有的數據庫,備份數據庫,清空數據庫;并且可以瀏覽及定義各個功能模塊(可對各個部門資料初始化及權限和其他保密信息的瀏覽)。 3.4 系統功能設計 分布式財務管理系統中,集中體現財務管理的應用,基于企業計算允許公司將各個分散的系統變成一個單一的可管理環境,以促進商 業處理,使公司更有效地為內部和外部顧客服務。用戶只需要使用瀏覽器發出請求并得到服務器的處理結果,以及實現目標設計的四個功能模塊功能。這個分布式財務管理系統程序將實現企業人事管理方面的各項基本功景德鎮陶瓷學院工學學士學位論文 第三章總體設計 - 10 - 能。 以實現對企業內部數據資料的方便、有效和準確無誤的管理。 通過這個程序可以確定程序用戶的權限、執行新增、修改記錄、執行查詢、生成報表等。景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 11 - 第四章 詳細設計及編碼 4.1 引言 詳細設計應實現的目標是確定應該怎樣具體地實現財務管理系統,在這個階段對財務管理系統有精確的描述,進入編碼階段就可以直接翻譯成 Delphi7 的程序 。詳細設計的結果關系到最終程序的代碼的質量,在邏輯上正確地實現每個模塊的功能,更值得注意的是設計出的處理過程應該盡可能簡明易懂。編碼就是把軟件設計的結果翻譯成計算機可以“理解”的形式 用 Delphi7 語言書寫程序。 4.2 編寫目的 詳細設計階段的關鍵任務是確定具體要實現財務管理系統,也就是需要設計“藍圖”。除了應該保證程序的可靠性之外,對于財務管理系統的性能分析和選擇,其重要性往往被忽視它直接影響到系統軟件的開發效率和應用性能,因此,對于編碼進行探討,使將來編寫出來的程序可讀性好,容易理解,容易測試 和容易修改、維護。 4.3 數據庫設計與實現 財務管理系統采用 SQL Server 2000, SQL Server 2000 是 Microsoft公司最新推出的高性能關系數據庫管理系統, Microsoft SQL Server 是一個客戶服務器關系型數據庫系統,它使用 Transact-SQL 語言在客戶機與 SQL Server 數據庫服務器之間發送請求。 SQL Server 2000 是 Microsoft公司推出的一個全新的數據庫服務器產品,是一個企業級的網絡關系型數據庫管理系統。該產品擁有的種種新特性使它成 為數據庫服務器產品中的佼佼者,并且越來越得到廣大用戶的青睞。 4.3.1 數據庫詳細分析 根據目前的系統功能分析,可以得到數據庫由以下兩個部分組成: 1) Admin.mdb 景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 12 - 管理權限: Admin, Password, Authority 2) Economy.mdb: 進銷物流賬目: Auto_no, Serialno, Date, Goodsno, Goodsname , Buy amount, Buy price, Sell amount, Sell price 4.3.2 數據庫的邏輯設計 根據系統功能設計的要 求以及功能模塊的劃分,對于系統擁護信息數據庫,可以列出以下數據項和數據結構: 1.數據項 管理權限:部門名稱,密碼,權限 進銷財會賬目:自動編號,發票編號,日期,商品編號,商品名稱,買進數量,買進單價,賣出數量,賣出單價 2.進銷存財務系統的關系模型 表 4-1 3NF 關系模型 Char4 1 3NF relationship model 項 目 關系模型 進貨部門 操作狀態、發票編號、日期、商品編號、商品名稱、買進數量、買進單價、舊數據發票編號 銷售部門 操作狀 態、發票編號、日期、商品編號、商品名稱、賣出數量、賣出單價、舊數據發票編號 財務部門 日期、全部流水賬、全部分類賬、全部盈利、全部虧損 管理部門 操作狀態、發票編號、日期、商品編號、商品名稱、買進數量、買進單價、賣進數量、賣進單價舊數據發票編號、 全部流水賬、全部分類賬、全部盈利、全部虧損 景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 13 - 3.局部 E R 圖設計 進貨部門(操作狀態、發票編號、日期、商品編號、商品名稱、買進數量、買進單價) 銷售部門(操作狀態、發票編號、日期、商品編號、商品名稱、賣出數量、賣出單價) 財務部門(日期、全 部流水賬、全部分類賬、全部盈利、全部虧損) 圖 4 1 進貨部門信息 Fig4 1 Enter the goods section information 操作狀態 發票編號 日期 商品編號 商品名稱 買進數量 買進單價 進貨部門 景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 14 - 圖 4 2 銷售部門信息 Fig4 2 Sale department information 圖 4 3 財務部門信息 Fig4 3 Finance section information 銷售部門 操作狀態 發票編號 日期 商品編號 商品名稱 賣出單價 賣出數量 財務部門 日期 全部流水賬 全部分類賬 全部盈利 全部虧損 景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 15 - 4.3.3 數據庫的創建 根據數據庫需求的分析,建立如下 2 個數據表。 表 4 2 管理權限表 Chart4 2Management legal power form 列名 數據類型 長度 允許空字符串 部門名稱 nvarchar 10 不允許 密碼 nvarchar 5 不允許 權限 smallint 1 不允許 表 4 3 進銷財會賬目報表 Chart4 3 Enter and sell the financial accou nting account 列名 數據類型 長度 允許空字符串 自動編號 bigint 10 允許 發票編號 char 50 不允許 日期 datatime 8 不允許 商品編號 char 50 不允許 商品名稱 char 50 不允許 買進數量 float 50 允許 買進單價 float 50 允許 賣出數量 float 50 允許 賣出單價 float 50 允許 4.4 后臺數據庫的配置 本系統在運用 Delphi7 編程時,使用了兩種數據庫訪問技術 ADO 是微軟提供的數據庫訪 問技術和 SQL Server 2000 數據庫訪問技術。 ADO 的優點 ADO 組件 Delphi7 包含了可以用來訪問 Microsoft 公司的 ActiveX Data Objects( ADO)格式數據庫的組件。 ADO 是 Micrsoft 公司關于各種類型數據的高等界面,后來逐漸演變成滿足所有數據訪問需要的完整解決辦法。 ADO 的對象模型是所有數據訪問接口對象模型中最簡單的一種。景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 16 - Microsoft 公司用來訪問 ADO 數據的應用程序界面技術是 OLE DB。 OLE DB 是一種底層編程接口,用來訪問許多不同類型的數據源,其 中包括消息、文件系統以及其他一些非傳統的數據源。 OLE DB 是一個由 Component Object Model( COM)接口組成的集合,用來隱藏創建數據訪問服務過程中的細節。 OLEDB 提供了訪問任何數據資源的方法,包括相互關聯的數據庫和相互不關聯的數據庫、 Email 和文件系統、文本和圖形以及用戶定義的數據對象。 Delphi 的 ADO 組件無需依靠 BDE 而是使用 ADO 技術,提供了可以通過數據控制組件訪問數據的新方法。唯一的要求是在使用 ADO 組件時必須運行 ADO/OLE DB。 ADO 組件的使用使得 DELPHI 在 訪問數據的類型和采用的技術方面都有了很大的突破。 ADO 具有高度的靈活性,它可以使用相同的編程模式連接到不同的數據提供者,而不管給定提供者的特定特性。 較低的內存占用率。 具有遠程數據服務 (RDS)功能,通過 RDS 可以在一次往返過程中將數據從服務器移動到客戶端應用程序或 Web 頁,并在客戶端對數據進行處理后將更新結果返回服務器。 同傳統的數據對象層次( DAO 和 RDO)不同, ADO 可以獨立創建。可以只創建一個“ Connection”對象,然后由多個獨立的“ RecordSet”對象來使用它。 ODBC 本身是以 SQL Server、 Oracle 等關系數據庫作為訪問對象,而OLE DB 則不僅限于此,它還可以對電子郵件、文本文件、復合文件、數據表等各種各樣的數據通過統一的接口進行存取。 基于以上原因,我在程序設計當中選擇了 ADO。 1 SQL 的優點: 在 Delphi 中使用 SQL 語言非常方便,一般來說,都是通過 Tquery 或TADOquery 組件來使用 SQL 語言的。可以在 Tquery 或 TADOquery 組件的 SQL 屬性中設置 SQL 語句。設計程序時,在該組件的屬性對話框中選擇 SQL 屬性,單擊帶省略號的按 鈕,就可以打開 String List Editor 對話框,然后我們就可以在對話框中添加 SQL 語句。還可以使用 Delphi 的景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 17 - SQL Builder 來自動生成 SQL 語句,這樣可以避免手工編寫 SQL 而可能造成的語法錯誤。靜態 SQL 語句在程序設計時便已固定下來,它不包含任何參數和變量。 動態 SQL 語句,也被稱作參數化的語句,在其中間包含著表示字段名或表名的參數 。 SQL 為許多任務提供了命令,其中包括: 查詢數據 在表中插入、修改和刪除記錄 建立、修改和刪除數據對象 控制對數據和數據對象的存取 保證數據庫一致性和完整 性 以前的數據庫管理系統為上述各類操作提供單獨的語言,而 SQL 將全部任務統一在一種語言中。 SQL 語句 SQL 功能強大,是一種完備的數據處理語言,不僅用于數據庫查詢,而且用于數據庫中的數據修改和更新,概括起來,它可以分成以下幾組: DML( Data Manipulation Language,數據操作語言):用于檢索或者修改數據; DDL( Data Definition Language,數據定義語言): 用于定義數據的結構,比如 創建、修改或者刪除數據庫對象; DCL( Data Control Language,數據控制語言):用于定義數據庫用戶的權限。 DML 組可以細分為以下的幾個語句 SELECT:用于檢索數據; INSERT:用于增加數據到數據庫; UPDATE:用于從數據庫中修改現存的數據; DELETE:用于從數據庫中刪除數據。 DDL 語句可以用于創建用戶和重建數據庫對象。下面是 DDL 命令: CREATE TABLE, ALTER TABLE, DROP TABLE, CREATE INDEX,DROPINDEX 景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 18 - DDL 與 DML 數據定義語言 DDL:它是用來創建和修改數據庫結構的一種語句,包括 Create、 Alter 和 Drop 語句。 數據操作語言 DML:包括數據查詢與數據更新。數據查詢主要是由 Select語句完成,這一點不再贅述。而數據更新所造成的風險大大超過數據查詢。數據庫管理系統必須在更改期內保護所存儲的數據的一致性,確保有效的數據進入數據庫,數據庫必須保持一致性, DBMS 還必須協調多用戶的并行更新,以確保用戶和它們的更改不至于影響其它用戶 的作業。 用于修改數據庫內容的 SQL 語句主要有以下三個: (1) Insert,向一個表中加入新的數據行 (2) Delete,從一個表 中刪除數據行 (3) Update,更改數據庫中已經存在的數據 Insert 標準語法: INSERT INTO table_name (col1, col2.) VALUES(value1, value2.) Insert 語句還可以將多行數據添加到目標表中去,在這種形式的 Insert 語句中,新的一行的數據不是在語句正文中明確地指定的,而是語句中指定的一個數據庫查詢。添加的數值來自數據庫自身的行,在某些特定的狀態下,這是非常有用的。多行 Insert 語句為拷貝數據提供了一種緊湊而高效的 方法,但我在所做做的分布式財務管理系統中使用這種方法,我在系統中是使用循環依照上面的用法來完成多個記錄的插入。 Update 語句用于更新單表中選定行的一列或多列的值。要更新的目標表在語句中定義, Set 子句則指定要更新的列并計算它們的值。 Update 語句總是包含 Where 語句,而且 Update 語句比較危險,所以您必須明確地認識到 Where 語句的重要性, Where 語句被用來指定需要更新的行。 2 后臺系統數據庫的配置是通過 ODBC 數據源接口來實現的。下面介紹在 WindowsXP 下配置 ODBC 數據源的方法。 選擇“控制面版”中的“管理工具”,再選擇其中的“數據源( ODBC)”一項,打開系統的 ODBC 數據源管理器。選中系統 DSN 標簽,按添加按鈕后出現創建新數據源對話框,選擇 SQL Server。然后單擊“完成”按景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 19 - 鈕,并在 ODBC SQL server 對話框里填寫新數據源的名稱。從文件里選擇系統數據庫文件。這樣我們就建立了一個新的數據源。在 Delphi7 程序里,我們可以隨時引用這個數據源。 4.5 前端頁面的設計與開發 4.5.1 分布式財務管理系統登錄設計 通過選擇不同的服務器來讀取數據從而實現分布式操作,整個 系統的供四個部門登錄使用,分別是進貨部門、銷售部門、財務部門、管理部門,四個部門之中管理部門的權限最高。通過不同的密碼登錄不同的界面,以實施各自部門的操作。 圖 4 4 系統登錄窗體 Fig4 4 The system registers the window 景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 20 - 圖 4 5 主窗體 Fig4 5 main from 4.5.2 進貨部門模塊設計 進貨部門模塊提供 插入、刪除、修改有關進貨的數據 和查詢全部進貨、特定商品進貨的數據的功能。 景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 21 - 圖 4 6 進貨部門管理窗體 Fig4 6 Enter the goods section the management the window 4.5.3.銷售部門模塊設計 銷售部門模塊提供 插入、刪除、修改有關的 銷售 數據 和查詢全部銷售、特定商品銷售的數據的功能。 景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 22 - 圖 4 7 銷售部門管理窗體 Fig4 7 Sale department management window 4.5.4 財務部門模塊設計 財務部門提供了相應賬目的瀏覽查詢以及功能 財務部門可以通過輸入日期查詢全部流水賬、全部分類賬、全部盈利、全部虧損,通過特定商品編號查詢全部流水賬、全部分類賬、全部盈利、全部 虧損。 在這個模塊涉及一些調用數據庫的語句,歸類于以下四種: 1. 特定時間段內全部商品流水帳服務 select * from 表 ,where ( 日期 =” +” ” +date1+” )” +AND (日期 =” +” +date2+” )” +” ORDER BY 日期 ASC“; 上述方法提供從 date 到 date,這段時間的全部流水帳服務 景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 23 - 2. 特定時間段內特定商品流水帳服務 +“ AND (商品編號 =” +“” +shangpinbianhao+” ) ” + 在上面代碼中,首先要指定特定商品的商品編號,然后提高起始時間 3. 特 定時間段內所有商品的經營盈虧服務 select * from 表 1 in1=reader.GetDouble(7); in2=reader.GetDouble(8); X=x+in1*in2; Out1=reader.GetDouble(5); Out2=reader.GetDouble(6); Y=y+Out1*Out2; End=X-Y; 4. 特定時間段內特定商品的經營盈虧服務 select * from 表 1,where “ +” (商品編號 =” +” ” +shangpinbianhao+” +” )” ; 下面代碼同上。 景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 24 - 圖 4 8 財務瀏覽窗體 Fig4 8 Finance view window 景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 25 - 圖 4 9 數據庫查詢窗體 Fig4 9 Database search window 景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 26 - 4.5.5 系統維護模塊設計 企業理財是目前財務管理系統不具備的概念,但是它可使企業獲得重大競爭優勢,且可通過有效管理短、中、長期付款流來減少經營風險。實際運營中,會大量涉及各種資金作業 , 長期為對采購和銷售業務的觀察等,所有這些都強調不同分部信息的集成性。在企業理財活動中將這些運營 部門同已實現的和已計劃的投資聯系起來,且瀏覽系統業務處理情況,對企業的成功具有非常重要的影響。 管理部門擁有軟件的最高權限,其中涉及到了進貨部門、銷售部門、財務部門和系統維護模塊的功能,它的模塊功能是維護系統所有的數據庫,備份數據庫,清空數據庫。 企業理財是目前財務管理系統不具備的概念,但是它可使企業獲得重大競爭優勢,且可通過有效管理短、中、長期付款流來減少經營風險。實際運營中,會大量涉及各種資金作業,如短期為銀行帳戶余額的監控和集中,中期為應收和應付款計劃與預測,以及長期為對采購和銷售業務的觀察等,所有這些 都強調不同分部信息的集成性。在企業理財活動中將這些運營部門同已實現的和已計劃的投資聯系起來,且瀏覽系統業務處理情況,對企業的成功具有非常重要的影響。 景德鎮陶瓷學院工學學士學位論文 第四章詳細設計及編碼 - 27 - 圖 4 10 統維護窗體 Fig4 10 System maintenance window 圖 4 11 數據庫導出表 Fig4 11The database leads the form 景德鎮陶瓷學院工學學士學位論文 第五章軟件測試 - 24 - 第五章 軟件測試 5.1 測 試方案說明 軟件測試仍然是目前保證軟件可靠性的主要手段。測試階段的根本任務是發現并改正軟件中的錯誤。 軟件測試是軟件開發過程中最艱巨和最繁重的任務,設計測試方案是測試階段的關鍵技術問題,基本的目標是選用最少的量而高效測試數據,做到盡可能完善的測試,從而盡可能多地發現軟件中的問題。測試過程中發現的錯誤必須及時改正,這就是調試的任務。為了改正錯誤,首先必須確定故障的準確位置,還應該盡量避免在調試過程中引進新的故障。總結出測試的結果來評價軟件的質量。 5.1.1 黑盒測試 黑盒測試,又稱為功能測試。對于軟件測試而言 ,黑盒測試把程序看成一個黑盒子,完全不考慮程序的內部結構和處理過程。也就是說,黑盒測試是在程序接口進行的測試,它只檢查程序功能是否能按照規格說明書的規定正常使用,程序是否能適當地接收輸入數據產生正確的輸出信息,并且保持外部信息(如數據庫或文件)的完整性。該測試方案的設計技術主要有:等價劃分、邊界值分析以及錯誤推測法等。 5.1.2 白盒測試 白盒測試的前提是可以把程序看成裝在一個透明的白盒子里,也就是完全了解程序的結構和處理過程。這種方法按照程序內部的邏輯測試程序,檢驗程序中的每條通路是否能按預定要求正確工 作。故白盒測試又被稱為是結構測試。該測試方案的設計技術主要有邏輯覆蓋法等。 5.1.3 其它測試方案 除了以上兩種測試方案外,還有其它的測試方案。包含所有可能情況的測試稱為窮盡測試。對于實際程序而言,窮盡測試通常是不可能做到的。因為不可能對每一種可能的情況都進行測試。 3 5.2 軟件測試的步驟 5.2.1 模塊測試 在設計得好的軟件系統中,每個模塊完成一個清晰定義的子功能,景德鎮陶瓷學院工學學士學位論文 第五章軟件測試 - 25 - 而且這個子功能和同級其他模塊的功能之間沒有相互依賴關系。因此,有可能把每個模塊作為一個單獨的實體來測試,而且通常比較容易設計檢驗模塊正 常性的測試方案。模塊測試的目的是保證每個模塊作為一個單元能正確運行,所以模塊測試通常又稱為單元測試。在這個測試步驟中所發現的往往是編碼和詳細設計的錯誤。 5.2.2 系統測試 系統測試是把經過測試的子系統裝配成一個完整的系統來測試。在這個過程中不僅應該發現設計和編碼的錯誤,還應該驗證系統確實能提供需求說明書中指定的功能,而且系統的動態特性也符合預定要求。在這個測試步驟中發現的往往是軟件設計中的錯誤,也可能發現需求說明中的錯誤。 5.2.3 驗收測試 驗收測試把軟件系統作為單一的實體進行測試,測試內容與系統測試基本類似,但是它是在用戶積極參與下進行的,而且可能主要使用實際數據(系統將來要處理的信息)進行測試。驗收測試的目的是驗證系統確實能夠滿足用戶的需要,在這個測試步驟中發現的往往是系統需求說明書中的錯誤。 5.3 測試結果 5.3.1 部門登錄 測試內容:最初運行時,系統會自動報錯,經調試發現 ADOconnect未與 SQL Server 2000 數據庫測試成功,經過連接后不再報錯。 在密碼處輸入密碼:“ 123”文本框會顯示“ 123”。在 Delphi 的對象編輯器中的 password: #0 改為 *,再運 行程序在密碼處再次輸入:“ 123”則顯示:“ *”。 5.3.2 進貨部門操作 測試內容:在設計之初,未在操作界面添加查詢功能。后在此基礎之上添加一個 From 查詢代碼: 景德鎮陶瓷學院工學學士學位論文 第五章軟件測試 - 26 - procedure TForm9.BitBtn1Click(Sender: TObject); begin ADOQuery1.Close; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Text:=select * from economic where 買進數量+0+and 買進單價 +0+。 5.3.3 銷售部門操作 測試內容:與進貨部門一樣,在設計之初,未在操作界面添加查詢功能。后在此基礎之上添加一個 From 查詢代碼。 5.3.4 財務部門操作 測試內容: 財務部門可以查詢某個時間段的全部流水賬;財務部門可以查詢某個時間段的全部分類賬;財務部門可以查詢某個時間段的全部盈利;財務部門可以查詢某個時間段的全部虧損。具體到某年某月某日。特定時間段內全部商品流水賬服務,在源程序中添加如下代碼: select * from 表 ,where (日期 =” +” ” +date1+” )” +AND 日期 =” +” +date2+” )” +” ORDER BY 日期 ASC“; 上述方法提供從 date 到 date,這段時間的全部流水賬服務 在上面代碼中,首先要指定特定商品的商品編號,然后提高起始時間 特定時間段內所有商品的經營盈虧服務 select * from 表 1 in1=reader.GetDouble(7); in2=reader.GetDouble(8); X=x+in1*in2; Out1=reader.GetDouble(5); Out2=reader.GetDouble(6); Y=y+Out1*Out2; 景德鎮陶瓷學院工學學士學位論文 第五章軟件測試 - 27 - End=X-Y; 特定時間段內特定商品的經營盈虧服務: select * from 表 1,where “ +” (商品編號 =” +” ” + 表 1+” +” )” ;4 調試后實現全部的財務瀏覽功能。 5.3.5 整體測試 整體測試的過程區別于單元測試的一個部分,在此次測試的過程中發現了一些在單元測試中沒有可能發現的一些細節上的錯誤和個界面連接方面的問題,并進行了相應的修改,從而在一定程度上增強了系統的穩定性。 景德鎮陶瓷學院工學學士學位論文 總結 - 28 - 總 結 對于財務系統 以上 五個章節的 功能分析,是本人通過對財務管理系統的研究 和 認識 有很大的提高 , 把自己的思考與 Delphi 編程相結合 ,完成了 財務管理系統 一般進貨、銷售、財務 所應具備的基本功能需求。但系統的設計是一個理想化的過程,可能與實際相結合還會有一些不足之處,有待改進與完善。 景德鎮陶瓷學院工學學士學位論文 總結 - 29 - 致 謝 通過三個月的努力,在老師與同學們的指導幫助下, 在分布式財務管理系統 總算可以告一段落。雖然它是一個模擬實現的軟件,但是在數據庫的開發方面,我學到了不少關于 Delphi 的知識。開發時遇到了許多的困難,但是通過自己的努力,還有老師同學們的幫助,最終還是迎刃而解了。 這次畢業設計完全是按照軟件工程學的方法來進行設計和開發的,我覺得這樣做使我的思路更清晰,有了需求分析,就知道自己應該做什么。這次設計是和組員一起完成的,這使我深刻地體會到軟件開發是一項集體項目,軟件開發 人員一定要有協作精神,我開始設計的時候,由于沒有和其他組員進行討論,再加上自己缺少勤思考的精神,有很多問題都只考慮了一般情況,以至于在連接時出現了不少問題,很多地方又得重新修改。這是個很深刻的教訓。 當然,這次設計中,我發現了自己的很多不足。首先,對 Delphi 語言的運用不夠熟練,以至于多走了很多彎路。其次,那就是缺少鉆研精神,很多東西不去用新方法解決,而是追求能解決就好。再者,是對整個軟件開發的把握能力有待于進一步提高,并且沒有充分的利用網絡資源和身邊的有利條件。這些都是我今后應該注意和提高的。 在這段日 子里,無論是校內的指導老師舒期梁老師 ,還是其他的老師都給了我很多的幫助及耐心的教導。在此,對所有給我支持與幫助的老師與同學衷心的道一聲“謝謝 ” !如果沒有大家的幫助,我的課題肯定不能如此順利迅速的完成。 景德鎮 陶瓷學院工學學士學位論文 參考文獻 - 29 - 參考文獻 參考的資料有以下: 1 何鵬飛 編著, Delphi7 程序設計教程,清華大學出版社; 2 楊繼平 吳華編著, SQL Server 2000 自學教程,清華大學出版社; 3 張海藩 編著,軟件工程導論,清華大學出版社, 1998 年; 4 王彥麗編著, Delphi7 實用教 程,中國鐵道出版出版社, 2003 年; 景德鎮陶瓷學院工學學士學位論文 附錄 30 附 錄 附錄 1: 中文原文: Delphi 深入編程的探討 Delphi 是基于 Windows 的面向對象的可視化開發工具。由于對 Windows 對象進行了新穎和出色的包裝 ,同時使用了擴展的面向對象的 Pascal 語言 ,以及完整的數據庫操作 ,使得其功能強大 ,同時又簡便易學 ,開發快捷 ,深受編程人員喜愛。我們在實際應用中 ,遇到了一些問題 ,在解決這些問題的過程中 ,逐漸總結了有關 Delphi的一些新特性 ,同時也找出了實現許多實用功能的方法 ,于是寫成這篇文章 ,希望對促 進 Delphi 的應用有一些益處。在下面一節中 ,將介紹 Delphi 的一些新特性 ,討論深入編程的一些技術。 Delphi 語言的一些新特性 Delphi 是一種全新的開發工具 ,有許多的新特性 ,這里不可能一一列舉 ,這里主要討論擴充的 Pascal 部分。擴充的面向對象的部分借鑒了 C+風格 ,卻有一些微妙的差別。 Delphi 的數組和指針不像 C+中可以互換 ,這樣 ,指針分配的空間不能直接以數組的形式進行操作 ,如果用函數來移動指針 ,又會極大降低取值速度。下一節中我們將討論如何利用擴展語法實現上述操作。 Delphi 提供了唯一可與數 組互換的指針 PChar,即 C 風格的字符串 ,以提供同 API 函數的接口。由于 Delphi 擁有 Pascal 風格的字符串 string 類型 ,所以經常需要用 StrPCopy 和 Str-Pas 函數進行這兩種類型的轉換。面向對象技術給傳統的 Pascal注入了新的生機 ,而 Delphi中擴充的面向對象的載體 class(類 )又是其中最有特色的內容。 Delphi 的類與傳統的 C+的類有很大區別。首先 ,定義了一個Delphi 的類 ,實際上只分配了一個指針 ,而類的實例要通過構造函數顯式地來創建。因此 ,在沒有顯式創建類的實例之前使用類是錯誤 的。同時 ,這一特性 ,使得類可強制轉換成指針 ,存儲在類似于 TList 類的 Items 數組中 ,需要時再由指針強制轉換為原來類或原來類的基類。 Delphi 中類的另一個顯著的特征是獨樹一幟地引入了屬性 (property)的概念。對屬性的操作與成員變量相似 ,但由于對屬性的讀寫分別與一個讀函數和一個寫函數有關 ,簡短的賦值操作中可以隱藏著一個復雜的幕后操作 ,使程序簡潔安全。例如將一個 TImage類的 Picture.Bitmap.Handle屬性賦值為 0,系統就會清去正在顯示的圖象 ,釋放位圖 ,修改其它圖象屬性。而如果 Picture.Bitmap.Handle 只是一個成員變量 ,用戶就不得不考慮其他參數的修改 ,以保證類成員的一致性。這一點足以使得 Delphi 編程快速、簡潔和安全。 C+景德鎮陶瓷學院工學學士學位論文 附錄 31 中 ,擁有函數的指針 ,通過函數指針賦不同的值可調用不同的函數。 Delphi 類中的函數具有類似的可賦值特性。由于 Delphi 的類型廣泛 ,可以將類的函數說明定義為一個類型。如果定義一個變量為這個類型 ,就既可以對這個變量賦值 ,又可以把這個變量當函數使用。下一節中將討論如何利用這一特性在父類中運行子類的成員函數。 Delphi 在系統中定義了幾個變量 ,Application,Screen 和 Printer,這些變量中存放了一些重要信息 ,例如Application 中含有事件、異常等的處理事件 ,而 Printer 提供了控制打印機的簡潔途徑。 在 Delphi 中控制 Excel 電子表格技術的研究 隨著計算機應用領域的拓寬 ,有關數據庫程序的開發已成為計算機應用中非常重要的組成部分。 Borland 公司于 2001 年 6 月推出的 Delphi6 是一種基于客戶 /服務器體系的Windows 快速開發工具 ,具有強大的數據庫開發和管理功能 ,并且具有自動生成報表的工具 1,但利用 Delphi6 自帶的報 表生成工具生成的報表只能打印輸出 ,不能對其數據進行進一步處理。能否將數據轉換到 Excel 電子表格文件 ,如何在 Delphi 中控制 Excel 電子表格技術成為廣大程序開發者所關心的熱點 ,目前 ,業內人士還未對這項技術進行完整、系統的研究和探討。本文結合所開發實例 ,詳細闡述、總結了在 Delphi 中控制 Excel 電子表格的各種方法 ,旨在為廣大的程序開發人員提供一種在 Delphi 中對數據進行控制和處理的新途徑。 在 Delphi 中控制 Excel 的方法在 Delphi 中控制 Excel,首先要鏈接 Excel 表 ,針對某個Excel 表進行操作 ;其次是控制 WorkBook、 Sheet,包括建立新的 WorkBook、 Sheet,打開、保存、關閉 WorkBook、 Sheet 等工作 ;三是對單元格的控制 ,包括設置單元格屬性、書寫單元格內容等工作。鏈接 Excel 可以用兩種方法實現。一種方法是通過建立 OLE 對象來實現 ,另一種方法是通過 Delphi 自帶的控件來實現。在 MicrosoftOffice 軟件中有一種內嵌的編程語言 ,即 VBA,它是一種宏語言、 VB 的子集。利用它 ,可以編寫出功能強大的代碼 ,如打開文件、修改數據、保存數據、設置字體等。只要把 VBA代碼嵌入到 BorlandDelphi中 ,就能實現在 Delphi 中控制 Excel。 使用 Delphi 控件方法 ,必須在 Form 中分別放入 ExcelApplication,ExcelWork-book 和ExcelWorksheet3 個控件 ,然后對其進行操作。 通過建立 OLE 對象來實現首先 ,在 Uses區加入 ComObj,ComObj 是操作 OLE 對象的函數集 ,然后聲明 3 個需要的 OLE 對象 :Excel-app、 Excel-worksheet 和 Excel-WorkBook。 Uses Windows,Messages,SysUtils,Classes,Graphics,Controls,Forms,Dialogs,StdCtrls,ComObj; 景德鎮陶瓷學院工學學士學位論文 附錄 32 Var Excel-app,Excel-worksheet,Excel-WorkBook:OleVariant; 創建 OLE 對象 : ExcelApplication 與 WorkBook:Excel-app:=CreateOleObject( Excel.Application ); Excel-WorkBook:=CreateOleobject( Excel.Sheet ); 新 建一個 XLS 文件 ,并寫入數據 ,最后關閉它 : Excel-workBook:=Excel-app.workBooks.Add; Excel-app.Cells(1,1):=內容 ; Excel-app.Cells(2,1):=20; Excel-app.Cells(3,1):=date; Excel-WorkBook.saveas( c:data.xls );保存在 c:data.xls 文件中 Excel-WorkBook.close; 打開剛創建的 XLS 文件 , 并修改其中的內容 , 由用戶決定是否保存。Excel-WorkBook:=ExeclApp.workBooks.Open(xlsFileName); Excel-app.Cells(2,1):= Excel 文件類型 ; ifMessageDlg(xlsFileName+ 文 件 已 被 修 改 , 是否保存 ? ,mtConfirmation,mbYes,mbNo,0)mrYesthen Excel-WorkBook.save保存 Else Excel-WorkBook.Saved:=True;放棄修改 Excel-WorkBook.Close;關 閉 Excel-WorkBook Excel-app.Quit;退出 ExcelApplication Excel-app:=Unassigned; 通過 Delphi 自帶的控件實現 在 Form 中分別放入 Delphi 自帶的 ExcelApplication、 ExcelWorkbook、 ExcelWorkshe3個控件。具體方法 : ExcelApplication1.Connect;打開 Excel ExcelApplication1.Visible0:=True;顯示當前窗口 ExcelApplication1.Caption:=應用程序調用 MicrosoftExcel ;更改 Excel 標題欄 添加新工作表 : 景德鎮陶瓷學院工學學士學位論文 附錄 33 ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks.Add) 工作表保存 : ifnotExcelApplication1.ActiveWorkBook.Saved then ExcelApplication1.ActiveSheet.PrintPreview; 關閉工作簿 : ExcelApplication1.WorkBooks.Close; 退出 Excel:ExcelApplication1.Quit;ExcelApplication1.Disconnect; 用 SQL 語句將一個查詢的結果導出到 Excel 文件在最近利用 Delphi 開發的“報銷管理系統”中 ,涉及到一個補充匯總表的打印 ,“匯總表”結構復雜 ,表中的具體費用來自數據庫“表 .mdb”中的“年度累計”表 , 即表 1。用 Delphi 中自帶的報表控件不容易實現 ,以通過在 Delphi 中對 Excel 進行控制操作來實現該功能。 景德鎮陶瓷學院工學學士學位論文 附錄 34 英文翻譯 Thorough plait in Delphi distance study The Delphi is to bases on the Windows face to the object can see to turn to develop the tool. Because proceeding to the object of Windows novel with outstanding packing, used to expand at the same time of face to the language of Pascal of the object, and the complete database operates, making its function strong and big, at the same time and simple and easy to learn, develop fast, deep suffer to weave the distance the personnel likes. In actual application, we met the some problem, in resolve these problem of process, tallied up the some new characteristic concerning Delphi gradually, also finds out to realize the method of many practical functions, hence write this article, hope to application that promote Delphi contain some advantage. In underneath first section, will introduce the Delphi some new characteristic, discuss the some technique of the thorough plait distance. The phonetic and some new characteristic in Delphi .Delphi is Pascal a kind of all new the tool of development, having many new characteristics, here impossible enumerate one by one, discuss the enlargement primarily here the part. Enlarge of face to the part of the object drew lessons from the C+ style, have the some delicate difference however. Delphi of several with point the needle unlike C+ can change with each other inside, like this, point the space that needle allotment cant proceed the operation with several forms directly, if move to point the needle with the function, lowering to take the value the speed biggest again. Next section inside we will discuss how to make use of to expand the phrasing realizes above operation. The Delphi provided unique can with several with each other a needle PChar that change, namely the style of C string, to provide together the function of API connects. The Delphi owns the style of Pascal string type, so usually need to use the StrPCopy to proceed these with the function of Str- Pas two the conversion of category types. Facing to the object technique infused into the traditional Pascal the new source of vitality, but enlarge in the Delphi of face to the object carry the class( type) again among them have most the characteristic contents. Delphi a type for and traditional C+ contain very big differentiation. First, define a solid example for, in reality an allotment first pointing needle, but type wants to pass to construct function show type ground to create to set up. Therefore, at have no the show type create to 景德鎮陶瓷學院工學學士學位論文 附錄 35 set up a type solid examples before use the type is false of. At the same time, this characteristic, make a for canning convert compulsory pointing the needle, savingly in similarly in TList Items severally, needing the hour again from pointing the needle compulsory conversion is originally type or originally type. The inside another of Delphi shows the characteristic of the is a concept to creates new style a ground of leading in to belong to the sex( property).To belong to the sexual operation have something to do with member changing deal alikely, but because of sexually to belonging to reading and write difference with first reading function with first writing function, the brief value is in operation to conceal a complicated backstage operates, making procedure Chien safety.For example belong to sex value as a TImage Picture.Bitmap. Handle 0, system would be pure go to at the portrait that show, release a diagram, modify the other portrait belong to the sex.But if Picture.Bitmap.Handle just a member changes the deal, customer have to consider the modification of the other parameter, to guarantee a members consistency.This is good enough to make the Delphi plait distance fast, Chiens with safety.C+ inside, own a needle of the function, pass the function point the different value in needle the adjustable using the different function. The function in Delphi has similar of can worth characteristic in .Because the Delphi type is extensive, can is a type the function elucidation definition of the type.If define a changes deal as this type, since can change the value of deal to this, can change the deal to this to be the function the usage again. How the next section lieutenant general discussion make use of this characteristic circulate son members function in father. The Delphi defined several a the path of Chien for changing deal, Application, Screen with Printer, these becoming in the deal depositting some important information, for example in the Application implying affairs, excrescent etc. handling affairs, but Printer providing control printers in system. Control the technical research in form in electronics in Excel in Delphi Along with the calculator the applied realm opens widely, concerning the development of the database procedure has become the calculator the application the inside to constitute the part count for much. The Delphi6 the company of Borland release to is a kind of in 2001 June according to customer/ the fast development in Windows tool of the server system, have the mighty database development with manage the function, and have the tool of the born 景德鎮陶瓷學院工學學士學位論文 附錄 36 statement in auto1, but make use of the Delphi6 to can print the exportation from the born statement in born tool in statement that take, cant as to its the data proceeds to further handles. Can convert the data to Excel electronics form document, how to control in Delphi the Excel electronics form technique become the large procedure developer concern a little bit hot, current, the industry insider still did not proceed to this technique complete, the research of the system with inquiry into. This text combinative an every kind of method for developping solid example, detailedly expatiate, tallying up in Delphi controling Excel electronics form, aim is in for large procedure develop personnel provide first sowed in Delphi logarithms according to proceed the control with processed of new path. Control the Excel method in Delphi to control the Excel in Delphi, want first the chain connect the form of Excel, aiming at a certain Excel watch proceed the operation; is a control to control the Workbook, Sheet, include to establish the new Workbook, Sheet, open, keep, close Workbook, Sheet.etc. work; three is to unit space the next in order, include to establish the unit space belong to the sex and write unit space contents etc. work. The chain connects the Excel can realizes with two kinds of methods. A kind of method is to passes to establish the object of OLE to realize, another method is to passes t

溫馨提示

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

評論

0/150

提交評論