中小型企業(yè)財務票據管理系統(tǒng)票據管理系統(tǒng)_第1頁
中小型企業(yè)財務票據管理系統(tǒng)票據管理系統(tǒng)_第2頁
中小型企業(yè)財務票據管理系統(tǒng)票據管理系統(tǒng)_第3頁
中小型企業(yè)財務票據管理系統(tǒng)票據管理系統(tǒng)_第4頁
中小型企業(yè)財務票據管理系統(tǒng)票據管理系統(tǒng)_第5頁
已閱讀5頁,還剩20頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、中小型企業(yè)財務票據管理系統(tǒng)票據管理系統(tǒng)摘 要票據管理是指公司財務報銷工作中涉及的各種票據的日常管理,常見的票據有差旅費報銷單、費用報銷單、記帳憑證、現(xiàn)金支票以及進帳單等。這些票據的管理是公司財務工作中最為常見的工作,同時也是繁雜、煩瑣的工作。在工作量越來越大,而又不斷要求提高工作效率的實際工作中,傳統(tǒng)的手工票據管理工作方式已經遠遠不能適應工作需要。如何有效、高效的完成這項看似乎簡單、實則復雜的工作呢。顯然采用軟件系統(tǒng)來實現(xiàn)輔助辦公是高效率完成這項工作的有效方法之一,雖然通用的票據管理系統(tǒng)不乏存在,但是和實際工作都存在一定差距,并不能很好地在實際應用中使用。因此開發(fā)一個適合中小型企業(yè)使用的票據管

2、理系統(tǒng)是一個非常有實際意義的工作。本文正是針對現(xiàn)實中中小型企業(yè)財務票據管理的現(xiàn)狀,從實用角度介紹了一個使用Delphi開發(fā)的基于Access數(shù)據庫的票據管理系統(tǒng)。這個管理系統(tǒng)會針對以前財務系統(tǒng)所存在的問題,根據我們公司實際使用情況進行開發(fā)。主要從實用性為目的進行設計,目的是設計一個適合中小型企業(yè)使用的財務票據管理系統(tǒng)。關鍵字:票據;Delphi;AccessManagement of Finance Bills System For a Small and medium enterpriseAbstractManagement of Bills refers to the companys f

3、inancial reimbursement work involved in the day-to-day management of the Bills. Bills are common travel claims, the cost of claims, accounting vouchers, checks and cash Jinzhangchan etc. These notes the companys financial management is the work of the most common work, It is also complicated, cumber

4、some task.In an increasingly heavy workload, and the growing demand for higher efficiency of the actual work.Notes the traditional manual management mode is far from being able to meet needs .How effective and efficient completion of this seems to be simple, but it is in fact a complex work? Clearly

5、 software system used to achieve back-office efficiency is completed this work one of the effective ways. Although generic instrument management system many exist, but the actual work, and there are some gaps, not very good in the use of practical applications. Therefore the development of small and

6、 medium enterprises to use the instrument management system is a very meaningful work. It is against this reality SMEs financial management of the paper, From a practical perspective on the use of a Delphi-based Access database Notes. This system can aim at the question which the before finance syst

7、em existed, carried on the development according to our company actual service condition. Mainly carries on the design from the usability for the goal, the goal is designs the financial bill management system management system which suits the small and medium-sized enterprise to use.Key words: Bills

8、; Delphi; Access目 錄論文總頁數(shù):29頁1引言11.1編寫目的11.2編寫背景12系統(tǒng)需求說明12.1系統(tǒng)需求分析12.2總體結構22.3票據管理系統(tǒng)業(yè)務流程32.4票據管理系統(tǒng)模塊功能介紹32.4.1差旅費報銷系統(tǒng)32.4.2費用報銷系統(tǒng)42.4.3記帳憑證系統(tǒng)52.4.4現(xiàn)金支票系統(tǒng)52.4.5進帳單系統(tǒng)63方案選擇73.1編程語言73.1.1編程語言介紹73.1.2系統(tǒng)中使用到的控件介紹83.2數(shù)據庫83.2.1數(shù)據庫選擇背景83.2.2數(shù)據庫介紹93.2.3數(shù)據源的約定93.2.4數(shù)據庫訪問約定94票據系統(tǒng)的設計94.1系統(tǒng)介紹94.2系統(tǒng)功能性要求104.3數(shù)據庫命名

9、標準與規(guī)范104.4數(shù)據庫邏輯設計104.5數(shù)據庫物理結構設計114.6設計約束124.7設計策略124.8系統(tǒng)概要設計說明124.8.1系統(tǒng)總體結構圖124.8.2差旅票據登記流程圖135票據系統(tǒng)的實現(xiàn)135.1系統(tǒng)核心模塊135.2系統(tǒng)核心模塊詳解145.2.1函數(shù)auto_sql145.2.2函數(shù)read_data145.2.3函數(shù)clearctl155.3具體設計過程155.3.1差旅費報銷單設計155.3.2主頁面設計175.4應用界面舉例215.4.1選擇票據類型215.4.2新建票據記錄225.4.3打印界面22結 論25附 錄26參考文獻27致 謝28聲 明291引言1.1編寫

10、目的票據管理是指企業(yè)或者其他單位財務報銷工作中涉及的各種票據的日常管理,常見的票據有差旅費報銷單、費用報銷單、記帳憑證、現(xiàn)金支票以及進帳單等。上訴票據的管理一般包括對票據的填寫、保存、查詢、打印等,而票據管理是企業(yè)或者其他單位財務工作中最為常見的工作,同時也是繁雜、煩瑣的工作。在工作量越來越大,而又不斷要求提高工作效率的實際工作中,傳統(tǒng)的手工票據管理工作方式已經遠遠不能適應工作需要。如何有效、高效的完成這項看似乎簡單、實則復雜的工作呢。顯然采用軟件系統(tǒng)來實現(xiàn)輔助辦公是高效率完成這項工作的有效方法之一,雖然通用的票據管理系統(tǒng)不乏存在,但是和實際工作都存在一定差距,并不能很好地在實際應用中使用。因

11、此開發(fā)一個適合中小型企業(yè)使用的票據管理系統(tǒng)是一個非常有實際意義的工作。本文正是針對現(xiàn)實中中小型企業(yè)財務票據管理的現(xiàn)狀,從實用角度介紹了一個使用Delphi開發(fā)的基于Access數(shù)據庫的票據管理系統(tǒng),在開發(fā)過程中,將針對以前類似軟件的不足進行改進,使財務票據管理系統(tǒng)能夠在實際工作中得到充分利用。1.2編寫背景項目名稱:中小型企業(yè)財務票據管理系統(tǒng)項目來源:公司項目項目性質:應用類軟件系統(tǒng)項目關鍵詞:票據、Delphi、Access開發(fā)者:成都信息工程學院網絡工程系網絡工程專業(yè)2003級2班王旭君2系統(tǒng)需求說明2.1系統(tǒng)需求分析從主要性能上來講,財務票據管理主要實現(xiàn)對常見財務票據的填寫、保存、查詢、

12、修改、打印等工作,如差旅費報銷單、費用報銷單、記帳憑證、現(xiàn)金支票以及進帳單等;從系統(tǒng)本身適用性來講,財務票據管理主要是針對中小型企業(yè)或單位實現(xiàn)對數(shù)據的管理;從實用性來講,財務票據管理主要從安全性、存儲速度、操作方便程度來實現(xiàn)。因此,從實際工作出發(fā),以主要性能為依據、以實用性為目標,對系統(tǒng)的功能提出了如下需求:.財務工作人員可以根據實際情況方便快捷錄入財務數(shù)據:票據類型應包含常見財務票據,如差旅費報銷單、費用報銷單、記帳憑證、現(xiàn)金支票以及進帳單等;不同票據類型也應該根據實際情況設計相應的操作界面,并包含相應的詳細記錄,如在差旅費報銷單中應該有出差人、報銷日期、票據編號、出差事由、出差起止日期、單

13、據張數(shù)、單獨金額等詳細記錄,在費用報銷單中應該有費用項目、類別、金額、報銷金額總計等,在記帳憑證中應該有總帳科目、明細科目、借方、貸方等,在現(xiàn)金支票中應該有付款行名稱、收款人、出票人帳號等;.財務工作人員在根據實際情況錄入數(shù)據以后,需要能快速、方便地核對數(shù)據:界面設計要求方便查閱和其他操作;相關的小類數(shù)據要求實現(xiàn)自動疊加,以減少財務人員的工作量。.在錄入并核對完成后,實現(xiàn)對數(shù)據的保存:界面要求設保存和新鍵按鈕,以實現(xiàn)對現(xiàn)有數(shù)據的保存和接下來新數(shù)據的方便錄入;在點擊新鍵按鈕后,要求實現(xiàn)對現(xiàn)有界面的清空。.在順利保存完數(shù)據后,實現(xiàn)對數(shù)據的管理,包括查詢、修改、刪除等操作:實現(xiàn)對數(shù)據的查詢,這個功能

14、至關重要,所謂的財務管理即是要做到對數(shù)據的保存,并方便在日后的工作中能找出歷史數(shù)據進行核對,這就要求在系統(tǒng)內能實現(xiàn)快速、方便地對數(shù)據庫進行寫入和調用;實現(xiàn)對數(shù)據的修改,在已經進行了錯誤錄入的情況下,要求實現(xiàn)對數(shù)據的修改,而實現(xiàn)這一功能的前提,即是實現(xiàn)對數(shù)據的查詢;實現(xiàn)對數(shù)據的刪除,考慮到此軟件的使用者是中小型企業(yè)的財務管理人員,并不能要求他們能熟練實現(xiàn)對數(shù)據庫的操作,故要求在系統(tǒng)內加入對系統(tǒng)數(shù)據的刪除功能。2.2總體結構圖1 中小型企業(yè)財務票據管理系統(tǒng)主要功能模塊結構示意圖整個票據管理系統(tǒng)包括五大部分:差旅費報銷系統(tǒng)、費用報銷系統(tǒng)、記帳憑證系統(tǒng)、現(xiàn)金支票系統(tǒng)和進帳單系統(tǒng)。而每個系統(tǒng)都是先進行詳

15、細信息登記,然后進行保存,在保存后可以對登記信息進行打印、查詢、修改、刪除等操作。而在進行登記的時候,能夠從系統(tǒng)外加入相關數(shù)據。2.3票據管理系統(tǒng)業(yè)務流程財務票據管理系統(tǒng)業(yè)務流程設計思想如下:報銷人向財務人員提交相關數(shù)據,要求詳細而準確;財務人員對提交的財務數(shù)據選擇相應的系統(tǒng)進行錄入,然后保存,如果是系統(tǒng)外數(shù)據,可以選擇“由文件裝入”;在對數(shù)據進行錄入后,需要查詢歷史數(shù)據后,重新進入系統(tǒng),先設定好查詢條件,如票據類型、年、月等,實現(xiàn)對歷史數(shù)據的查詢;在查詢到相關數(shù)據后,若要對查看詳細信息,雙擊列表,在彈出的對話框中查看詳細信息;若要對數(shù)據進行修改,在查詢出歷史記錄后,在表格內對相關數(shù)據進行改動

16、,然后保存,當提示“保存成功”后,數(shù)據修改成功;若要對數(shù)據進行刪除,先查詢出列表,然后選中單條記錄,點擊“刪除”鍵。若要對相關數(shù)據進行打印,進入相關數(shù)據界面后,點擊打印,并要求能在打印時對打印進行相關設置。2.4票據管理系統(tǒng)模塊功能介紹票據管理系統(tǒng)作為財務票據管理系統(tǒng)的主要實現(xiàn)部分,主要包括對差旅費報銷單、費用報銷單、記帳憑證、現(xiàn)金支票以及進帳單數(shù)據的錄入、保存、打印、查詢、修改、刪除等操作。2.4.1差旅費報銷系統(tǒng)圖2 差旅費報銷系統(tǒng)結構圖1、差旅費報銷系統(tǒng)查詢差旅費報銷系統(tǒng)的查詢,作為模塊的功能放在首要位置,實現(xiàn)對歷史數(shù)據的查找,方便財務管理。在此功能中設定年份、月份以縮小查找范圍,更快地

17、找到指定目標。2、差旅費報銷系統(tǒng)刪除在查詢出相應數(shù)據后,單擊選中要刪除的記錄,點擊“刪除”即可刪除。3、差旅費報銷系統(tǒng)新建在點新建進入填寫界面后,可直接錄入,也可以由文件裝入,也可以把填寫的數(shù)據保存為文本,直接填寫后,可以選擇保存、打印、預覽、新建。2.4.2費用報銷系統(tǒng) 圖3 費用報銷系統(tǒng)結構圖1、費用報銷系統(tǒng)查詢費用報銷系統(tǒng)的查詢,作為模塊的功能放在首要位置,實現(xiàn)對歷史數(shù)據的查找,方便財務管理。在此功能中設定年份、月份以縮小查找范圍,更快地找到指定目標。2、費用報銷系統(tǒng)刪除在查詢出數(shù)據后,單擊選中后即可刪除。3、費用系統(tǒng)新建在點新建進入填寫界面后,直接填寫后,可以選擇保存、打印、預覽、新建

18、。在費用欄里填寫入數(shù)字信息后,財務人員不用手動計算總和,系統(tǒng)會自動計算并顯示在金額總計里。2.4.3記帳憑證系統(tǒng)圖4 記帳憑證系統(tǒng)結構圖1、記帳憑證系統(tǒng)查詢費用報銷系統(tǒng)的查詢,作為模塊的功能放在首要位置,實現(xiàn)對歷史數(shù)據的查找,方便財務管理。在此功能中設定年份、月份以縮小查找范圍,更快地找到指定目標。2、記帳憑證系統(tǒng)刪除在查詢出數(shù)據后,單擊選中后即可刪除。3、記帳憑證新建在點新建進入填寫界面后,直接填寫后,可以選擇保存、打印、預覽、新建。在費用欄里填寫入數(shù)字信息后,財務人員不用手動計算總和,系統(tǒng)會自動計算并顯示在金額總計里。2.4.4現(xiàn)金支票系統(tǒng)圖5 現(xiàn)金支票系統(tǒng)結構圖1、現(xiàn)金支票系統(tǒng)查詢現(xiàn)金支

19、票系統(tǒng)的查詢,作為模塊的功能放在首要位置,實現(xiàn)對歷史數(shù)據的查找,方便財務管理。在此功能中設定年份、月份以縮小查找范圍,更快地找到指定目標。2、現(xiàn)金支票系統(tǒng)刪除在查詢出數(shù)據后,單擊選中后即可刪除。3、現(xiàn)金支票新建在點新建進入填寫界面后,直接填寫后,可以選擇保存、打印、預覽、新建。在費用欄里填寫入數(shù)字信息后,財務人員不用手動計算總和,系統(tǒng)會自動計算并顯示在金額總計里。2.4.5進帳單系統(tǒng)圖6 進帳單系統(tǒng)結構圖1、進帳單系統(tǒng)查詢進帳單系統(tǒng)的查詢,作為模塊的功能放在首要位置,實現(xiàn)對歷史數(shù)據的查找,方便財務管理。在此功能中設定年份、月份以縮小查找范圍,更快地找到指定目標。2、進帳單系統(tǒng)刪除在查詢出數(shù)據后

20、,單擊選中后即可刪除。3、進帳單新建在點新建進入填寫界面后,直接填寫后,可以選擇保存、打印、預覽、新建。在費用欄里填寫入數(shù)字信息后,財務人員不用手動計算總和,系統(tǒng)會自動計算并顯示在金額總計里。3方案選擇3.1編程語言3.1.1編程語言介紹本系統(tǒng)采用的編程語言是Borland Delphi5.0。Delphi:Delphi是Borland公司研制的新一代可視化開發(fā)工具,可在Windows3.x、Windows95、WindowsNT等環(huán)境下使用。它擁有一個可視化的集成開發(fā)環(huán)境(IDE),采用面向對象的編程語言ObjectPascal和基于部件的開發(fā)結構框架。Delphi它提供了500多個可供使用

21、的構件,利用這些部件,開發(fā)人員可以快速地構造出應用系統(tǒng)。開發(fā)人員也可以根據自己的需要修改部件或用Delphi本身編寫自己的部件。主要特點如下: (1)直接編譯生成可執(zhí)行代碼,編譯速度快。由于Delphi編譯器采用了條件編譯和選擇鏈接技術,使用它生成的執(zhí)行文件更加精煉,運行速度更快。在處理速度和存取服務器方面,Delphi的性能遠遠高于其他同類產品。(2)支持將存取規(guī)則分別交給客戶機或服務器處理的兩種方案,而且允許開發(fā)人員建立一個簡單的部件或部件集合,封裝起所有的規(guī)則,并獨立于服務器和客戶機,所有的數(shù)據轉移通過這些部件來完成。這樣,大大減少了對服務器的請求和網絡上的數(shù)據傳輸量,提高了應用處理的速

22、度。(3)提供了許多快速方便的開發(fā)方法,使開發(fā)人員能用盡可能少的重復性工作完成各種不同的應用。利用項目模板和專家生成器可以很快建立項目的構架,然后根據用戶的實際需要逐步完善。(4)具有可重用性和可擴展性。開發(fā)人員不必再對諸如標簽、按鈕及對話框等Windows的常見部件進行編程。Delphi包含許多可以重復使用的部件,允許用戶控制Windows的開發(fā)效果。(5)具有強大的數(shù)據存取功能。它的數(shù)據處理工具BDE(BorlandDatabaseEngine)是一個標準的中介軟件層,可以用來處理當前流行的數(shù)據格式,如xBase、Paradox等,也可以通過BDE的SQLLink直接與Sybase、SQL

23、Server、Informix、Oracle等大型數(shù)據庫連接。 Delphi既可用于開發(fā)系統(tǒng)軟件,也適合于應用軟件的開發(fā)。(6)擁有強大的網絡開發(fā)能力,能夠快速的開發(fā)B/S應用,它內置的IntraWeb和ExpressWeb使得對于網絡的開發(fā)效率超過了其他任何的開發(fā)工具。(7)Delphi使用獨特的VCL類庫,使得編寫出的程序顯得條理清晰,VCL是現(xiàn)在最優(yōu)秀的類庫,它使得Delphi在軟件開發(fā)行業(yè)處于一個絕對領先的地位。用戶可以按自己的需要,任意的構建、擴充、甚至是刪減VCL,以滿足不同的需要3.1.2系統(tǒng)中使用到的控件介紹1、Tdatabase部件為應用程序提供了對單個數(shù)據庫的直接連接功能,

24、它對于應用程序連接至遠程數(shù)據庫服務器時,控制數(shù)據庫事務處理特別重要。其主要屬性有:aliasename:指定用于數(shù)據庫連接的Borland數(shù)據庫引擎的別名。即在 ODBC中指定的數(shù)據源名稱。Databasename:指定于數(shù)據庫部件相關聯(lián)的數(shù)據庫名稱。即在程序內部引用控件時使用的名稱。Loginprompt:指定當建立一個數(shù)據庫連接時是否顯示一個標準注冊對話框。當指定為false時,需要在params屬性中指定訪問數(shù)據庫的用戶名和密碼。2、Tdataset部件數(shù)據集部件,編程通過此部件實現(xiàn)各種數(shù)據庫SQL語言操作。其主要方法有:open:打開數(shù)據集。next:移動到下一條數(shù)據記錄。Close:

25、關閉數(shù)據集。3、Tdatasource部件Tdatasource部件提供了數(shù)據集部件與數(shù)據感應部件之間的接口,它在數(shù)據集和數(shù)據控件之間起著管道作用,管道中的信息就是數(shù)據集中的數(shù)據,而數(shù)據控件把通過通過數(shù)據源傳遞過來的數(shù)據流在窗體中可視地顯示出來,并且允許用戶可視地編輯、導航這些數(shù)據。任何數(shù)據集的數(shù)據要想在數(shù)據控件中顯示和操作,都必須與一個數(shù)據源部件建立連接,同樣,任何數(shù)據控件希望接收和操作數(shù)據集中的數(shù)據,也需要一個與數(shù)據源建立連接,圖2-1顯示了數(shù)據集部件、數(shù)據源部件和數(shù)據感應部件之間的關系。數(shù)據感應部件顯示操作數(shù)據數(shù)據源部件數(shù)據集部件存儲數(shù)據圖7 數(shù)據源部件的作用3.2數(shù)據庫3.2.1數(shù)據庫

26、選擇背景本系統(tǒng)采用MICROSOFT ACCESS2000作為數(shù)據庫系統(tǒng)存儲數(shù)據。因為票據系統(tǒng)只是一個單用戶使用的系統(tǒng),而且數(shù)據量相對較小,而且本軟件對數(shù)據庫的要求較低,因此選用ACCESS數(shù)據庫作為本系統(tǒng)的數(shù)據存儲。3.2.2數(shù)據庫介紹Access:ACCESS是微軟公司出的OFFICE中一個軟件,是一個小型數(shù)據庫,美國Microsoft公司于1994年推出的微機數(shù)據庫管理系統(tǒng)。它具有界面友好、易學易用、開發(fā)簡單、接口靈活等特點,是典型的新一代桌面數(shù)據庫管理系統(tǒng)。其主要特點如下:(1)完善地管理各種數(shù)據庫對象,具有強大的數(shù)據組織、用戶管理、安全檢查等功能。(2)強大的數(shù)據處理功能,在一個工作

27、組級別的網絡環(huán)境中,使用Access開發(fā)的多用戶數(shù)據庫管理系統(tǒng)具有傳統(tǒng)的XBASE(DBASE、FoxBASE的統(tǒng)稱)數(shù)據庫系統(tǒng)所無法實現(xiàn)的客戶服務器(Cient/Server)結構和相應的數(shù)據庫安全機制,Access具備了許多先進的大型數(shù)據庫管理系統(tǒng)所具備的特征,如事務處理/出錯回滾能力等。(3)可以方便地生成各種數(shù)據對象,利用存儲的數(shù)據建立窗體和報表,可視性好。(4)作為Office套件的一部分,可以與Office集成,實現(xiàn)無縫連接。(5)能夠利用Web檢索和發(fā)布數(shù)據,實現(xiàn)與Internet的連接。Access主要適用于中小型應用系統(tǒng),或作為客戶機/服務器系統(tǒng)中的客戶端數(shù)據庫。3.2.3數(shù)

28、據源的約定本系統(tǒng)中使用了自定義控件,如數(shù)據庫訪問和打印。數(shù)據庫訪問控件Tclset通過對Tquery控件,Tdatasource控件,Tdatabase控件的封裝形成了一個新的自定義控件,它簡化了數(shù)據庫訪問時需要對Tquery,Tdatasource,Tdatabase控件進行關系設置的煩瑣手續(xù),在使用它時Tclset控件的使用方法和Tquery的使用完全一致。Tclset控件通過ODBC與Access數(shù)據庫連接。使用ODBC而不使用ADO是ODBC比ADO更具備通用性。3.2.4數(shù)據庫訪問約定數(shù)據庫在ODBC中被引用的數(shù)據源名稱為erm。4票據系統(tǒng)的設計4.1系統(tǒng)介紹票據管理系統(tǒng)定位于簡單、

29、適用,適合各種中小企業(yè)對票據管理需要。系統(tǒng)使用桌面數(shù)據庫ACCESS作為后臺數(shù)據庫。因此,系統(tǒng)適合在任何能運行Access的windows平臺。票據系統(tǒng)界面友好,操作簡單。在操作上充分考慮財務人員使用的方便性。4.2系統(tǒng)功能性要求表4-2 系統(tǒng)功能性要求功能序號功能名稱功能說明1差旅費報銷單管理包含差旅費報銷單信息的登記、修改等2費用報銷單管理包含費用報銷單信息的登記、修改等3記帳憑證管理包含記帳憑證信息的登記、修改等4現(xiàn)金支票管理包含現(xiàn)金支票信息的登記、修改等5進帳單管理包含進帳單信息的登記、修改等6數(shù)據查詢包含數(shù)據查詢4.3數(shù)據庫命名標準與規(guī)范表4-3 數(shù)據庫及各表、視圖的命名方法名稱類型

30、命名辦法約定票據數(shù)據庫系統(tǒng)數(shù)據庫字母表基本表漢字或字母查詢查詢漢字字段字段漢字或字母4.4數(shù)據庫邏輯設計表4-4 數(shù)據庫邏輯設計名稱類型用途名稱差旅費報銷單基本表用于記錄員工出差費用詳細情況登記,如車船票,機票,住宿費,出租車費用及出差補助費用等。chuchai費用報銷單基本表用于記錄員工出差時購買生活必須品的報銷記錄,如床單,被褥以及其他工作物品如網絡測試儀器,電工工具等。feiyong記帳憑證基本表用于公司記錄借貸情況明細記錄jizhang 現(xiàn)金支票基本表指銀行進帳單,用于公司通過銀行出帳支票交易的記錄,及出帳單的套打。zhipiao進帳單基本表指銀行進帳單,用于公司通過銀行進帳支票交易的

31、記錄,及進帳單的套打。jinzhangdan圖8 數(shù)據庫邏輯結構圖4.5數(shù)據庫物理結構設計系統(tǒng)目前只涉及到六張表格,為適應以后添加更多的表單及情況下,系統(tǒng)能達到易于擴展的目的,以及系統(tǒng)所涉及的表格的各種數(shù)據項目的特點,在程序設計時對保存數(shù)據及讀取的統(tǒng)一處理。在表設計時表中只設計兩種字段類型即數(shù)字型和字串型,且只有主鍵使用數(shù)字型,其他字段全部使用字串型,盡管實際存放的數(shù)據應該是日期,數(shù)字或貨幣型。字段名使用有規(guī)律的序號排列,字段名稱不表示任何和實際存儲的數(shù)據的聯(lián)系。具體表結構及表名如下:表名:chuchai表名:chuchai表名:jinzhangdan表名:jizhang表名:zhipiao以

32、上表結構都一樣,表4-5 具體結構字段名稱類型字段長度備注ID數(shù)字字母主鍵f1文本255f2文本255F3文本255F4文本255F5文本255F6文本255F7文本255文本255F30文本2554.6設計約束系統(tǒng)在設計時,從用戶使用的角度上講要達到方便性,因此在輸入問題上需要提供以下方便性。一、能夠提供記憶功能:也即用戶下次在該輸入框輸入數(shù)據時,以下拉列表的形式提供用戶選擇最近有限次數(shù)的輸入數(shù)據項。二、固定文本選擇功能:功能類似windows標準下拉框,所不同之處在于用戶能夠自行維護選擇框的內容。三、用戶在錄入數(shù)據時按照輸入順序在回車之后自動跳轉到下一個輸入框,而不是借用鼠標或者TAB鍵移

33、動。四、在輸入框控件上實現(xiàn)數(shù)據類型的約束,即輸入數(shù)字的地方不能輸入非數(shù)字信息。從系統(tǒng)實現(xiàn)考慮,每個表格的數(shù)據保存與讀取采用一個通用的保存數(shù)據和讀取數(shù)據函數(shù)來解決,這樣有利于提高代碼可用性和可維護性。各種票據的打印是票據管理軟件的最常用功能,本軟件的打印控件是本公司其他軟件中的打印控件引用過來的。它的功能非常強大,例如能夠實現(xiàn)在預覽界面調整上下左右邊距,拖動整個打印區(qū)域,橫向、縱向打印,設置各種字體等,還有一個很重要的功能就是套打,它的實現(xiàn)原理就是在預覽時能夠將實際的掃描進系統(tǒng)的需要套打的票據圖片顯示出來,給人以實際感覺,然后需要套打的部份則可以在預覽界面編輯,或調整位置,設置字體,字體大小等。

34、打印的時候,只打印定義為需要打印的部分。4.7設計策略要實現(xiàn)用戶輸入的要求,必須要自行開發(fā)一個控件來實現(xiàn)該功能,該控件封裝自Tedit類,其四個功能可以通過為Tedit的hint屬性設置為mem(表示記憶框),int(表示輸入數(shù)字),money(表示輸入的數(shù)據為貨幣型)或為一個文本文件名如“出差人員.txt”來實現(xiàn)。要自動實現(xiàn)通用的保存數(shù)據和讀取數(shù)據功能,需要程序設計時對需要保存數(shù)據的控件的名稱做約定。例如控件名稱即為對應存儲表的字段名稱?;蚪⒁粋€控件名和字段的對應關系設置來實現(xiàn)。4.8系統(tǒng)概要設計說明4.8.1系統(tǒng)總體結構圖圖9 系統(tǒng)總體結構圖4.8.2差旅票據登記流程圖圖10 差旅票據登

35、記流程圖5票據系統(tǒng)的實現(xiàn)5.1系統(tǒng)核心模塊表5-1 系統(tǒng)核心模塊模塊名類型原型或聲明模塊說明openform子程序procedure openform(s_flag:boolean)打開票據登記界面的方式,是只讀狀態(tài)還是非只讀狀態(tài)。getnewid函數(shù)Functiongetnewid(table:string;query1:Tclset):string;往數(shù)據庫寫新的記錄時取得的id值auto_sql函數(shù)function auto_sql(aform:Tform;atable:string;flag:integer;query1:Tclset;txtrecord:Ttxtrecord):str

36、ing;自動合成的保存數(shù)據的sql語句。read_data子程序procedure read_data(aform:Tform;atable:string;query1:Tclset);讀取數(shù)據過程。compute_sum函數(shù)function compute_sum(aform:Tform;e1,e2,e3,e4,e5,e6,e7,e8,e9,e10:string):string;計算合計項目clearctl子程序procedure clearctl(aform:Tform;c_type:string);新增狀態(tài)時,清除界面上的某些輸入項目。5.2系統(tǒng)核心模塊詳解5.2.1函數(shù)auto_sql

37、功能說明:該函數(shù)在調用時能夠遍列窗體上的TEdit,TDatatime,TMemo等輸入性的控件,根據控件的name和實際存儲的表字段之間的約定自動生成操縱數(shù)據庫的語句。如insert語句和update語句。(1)變量value_str為Tstringlist,用于為動態(tài)生成insert或update語句臨時存儲輸入控件的值, (2)循環(huán)遍列控件語句:for i:=0 to aform.ComponentCount-1 do (3)根據控件的Classname屬性確定控件的類型。如果控件的ClassName=TEdit,則為標準輸入控件。如下為代碼片段。if aform.Componentsi

38、.ClassName=TEdit then/ 判斷該控件是Tedit類 sqlstr:=sqlstr+aform.Componentsi.Name;/取控件名,該控件名即為其對應的數(shù)據庫存儲字段名 value_str.Add(aform.Componentsi as Tedit).text);/取控件輸入框的值,該值即為當前用戶輸入的值。 (1)value_str中值的順序與insert中的字段順序一一對應。(2)同樣可以遍列TDatatime,Tmemo控件,并取得對應字段和值。5.2.2函數(shù)read_data功能說明:該過程通過遍列窗體上的Tedit,Tdatatime,Tmemo等輸入性

39、的控件,根據控件的name和實際存儲的表字段之間的約定自動賦予相應的值到控件上。(1)從對應的表選擇相應的數(shù)據。readsql:=select * from +atable+ where id=+cur_id; (2)通過循環(huán)生成字段和值間對應關系。for j:=0 to fields.Count-1 do/ /str_name存儲字段名,同時該名稱還是窗體上輸入控件的名字。 str_name.Add(fields.Fieldsj.FieldName); / str_value存儲字段名對應的值, 同時該值是窗體上輸入控件的值。 str_value.add(fields.Fieldsj.ass

40、tring);(3)str_name 和str_value 之間存儲的字段名和值是一一對應的關系,因此控件名在str_name中找到的索引也為值在str_value中的索引。對應代碼片段為:value_index:=str_name.IndexOf(aform.Componentsi.Name);/控件名在str_name中找到的索引 if value_index-1 then (aform.Componentsi as Tedit).text:=str_value.Stringsvalue_index; /控件值在str_value中的索引5.2.3函數(shù)clearctl功能說明:該函數(shù)在新建

41、記錄時,清除輸入控件上當前值。例如,清除Tedit控件的值代碼如下。if aform.Componentsi.ClassName=TEdit then (aform.Componentsi as TEdit).text:=;5.3具體設計過程5.3.1差旅費報銷單設計1、首先新建一個Application,將Form1的Caption屬性設置為差旅費報銷單,然后在此設計面板上加上若干控件,其中包括:TOpenDialog、TButton、TShape、TLabel以及TSpeedButton,在差旅費報銷單設計中主要實現(xiàn)的幾個功能按鈕為“由文件裝入”、“保存為文本”、“保存”、“打印”、“預覽

42、”、“新建”、“關閉”。其中,“由文件裝入”的OnClick事件的處理程序如下, sql.text:=sqlstr; sql.SaveToFile(error.log); try execsql; m_mode:=2; application.MessageBox(保存成功,提示,64); except application.MessageBox(保存失敗!,提示,64); end; end;end;“打印”的OnClick事件的處理程序如下,其中的 *.mws文件為本公司自定義報表文件。procedure TFrmChuChai.SpeedButton2Click(Sender: TObj

43、ect);begin OpenReport(self,差旅報銷單.mws,nil,0,true);end;“預覽”的OnClick事件的處理程序如下,procedure TFrmChuChai.SpeedButton5Click(Sender: TObject);begin OpenReport(self,差旅報銷單.mws,nil,0,false);end;“新建”的OnClick事件的處理程序如下,原理是使用Clear清除現(xiàn)有表格中有的數(shù)據,procedure TFrmChuChai.SpeedButton3Click(Sender: TObject);begin clearctl(sel

44、f,2); m_mode:=1;end;而“關閉”的OnClick事件的處理程序僅僅是調用close來退出當前程序。其他幾個表單,如費用報銷單、記帳憑證、現(xiàn)金支票以及進帳單的設計與差旅費報銷單的設計類似,這里就不在贅述,下面介紹一下主頁面的設計:5.3.2主頁面設計主頁面上主要包含了TEdit、TLabel、TButton、TListView、TImageList等控件,其中的功能按鈕主要包括:“查詢”、“刪除”、“新建”、“關閉”,其中,“查詢”的OnClick事件處理程序為: list_item.caption:=fields0.asstring; listview1.Columns.Items3.Width:=0; listview1.Selected.Delete ; end; end;end;“新建”的OnClick事件的處理程序:procedure TFrmList.SpeedButton1Click(Sender: TObject)

溫馨提示

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

評論

0/150

提交評論