工廠(chǎng)工資管理系統(tǒng)_第1頁(yè)
工廠(chǎng)工資管理系統(tǒng)_第2頁(yè)
工廠(chǎng)工資管理系統(tǒng)_第3頁(yè)
工廠(chǎng)工資管理系統(tǒng)_第4頁(yè)
工廠(chǎng)工資管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩21頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、天津理工學(xué)院華信軟件學(xué)院畢業(yè)設(shè)計(jì)論文專(zhuān) 業(yè):計(jì)算機(jī)軟件姓 名: 指導(dǎo)老師: 工廠(chǎng)工資管理系統(tǒng)The Factory Salary Management System內(nèi) 容 摘 要工廠(chǎng)工資管理系統(tǒng)是應(yīng)用Visual FoxPro 6.0開(kāi)發(fā)的,針對(duì)于工廠(chǎng)各個(gè)部門(mén)人員工資發(fā)放所開(kāi)發(fā)的系統(tǒng)。目的是使對(duì)員工工資的發(fā)放的管理更加標(biāo)準(zhǔn)化、明朗化、系統(tǒng)化,減輕會(huì)計(jì)的工作量。本系統(tǒng)所選用的開(kāi)發(fā)工具Visual FoxPro 6.0是針對(duì)數(shù)據(jù)庫(kù)的開(kāi)發(fā)工具。所以,首先介紹此開(kāi)發(fā)工具的根本操作方法及特點(diǎn);其次對(duì)工廠(chǎng)工資管理系統(tǒng)的特點(diǎn)、功能、應(yīng)用等方面作全面的介紹;再次介紹工資管理系統(tǒng)所使用的數(shù)據(jù)庫(kù),以及使用說(shuō)明;最

2、后附錄流程圖和局部源代碼。關(guān)鍵字:Visual FoxPro 6.0、工廠(chǎng)工資管理系統(tǒng)、人員變動(dòng)、工資修改計(jì)算、查詢(xún)統(tǒng)計(jì)、報(bào)表打印BASTRACTThe Factory Salary Management System is developed with Visual FoxPro 6.0, and is used to manage salary grant of personnel in all departments of a factory. The purpose is to make the management of salary grant more standard, cle

3、ar and systematic, and reduce the workload of accountant. Visual FoxPro 6.0 on which the system based is particularly used to develop database. Therefore, we introduce the basic operating method and characteristics of the development tool first; then explain the advantages, function, application and

4、 other aspects of the factory salary management system all-around; and then present the database that the system used and its operating direction; and attach the flow chart and part of the source codes at last.Keywords: Visual FoxPro 6.0, factory salary management system, personnel alteration, salar

5、y revise calculation, inquiry statistic, report form printing目 錄第一章 Visual FoxPro 6.0簡(jiǎn)介 5 1.1 Visual FoxPro 6.0 的由來(lái)與開(kāi)展5 1.2 Visual FoxPro 6.0中文版的特點(diǎn)以及新增功能6 1.3數(shù)據(jù)庫(kù)概述8 1.3.1數(shù)據(jù)庫(kù)定義及其功能8 1.3.2數(shù)據(jù)庫(kù)的優(yōu)點(diǎn)8 1.3.3數(shù)據(jù)庫(kù)類(lèi)型9 1.3.4關(guān)系數(shù)據(jù)庫(kù)優(yōu)點(diǎn)9第二章 工廠(chǎng)工資管理系統(tǒng)簡(jiǎn)介102.1工廠(chǎng)工資管理系統(tǒng)概述102.1.1系統(tǒng)的主要功能102.1.2方法概要102.2系統(tǒng)設(shè)計(jì)112.2.1系統(tǒng)的總體設(shè)計(jì)思想11

6、2.2.2系統(tǒng)結(jié)構(gòu)圖122.2.3設(shè)計(jì)期間所涉及的數(shù)據(jù)表13第三章 工廠(chǎng)工資管理系統(tǒng)的設(shè)計(jì)153.1登錄界面153.2系統(tǒng)界面153.3具體操作163.4系統(tǒng)維護(hù)20附錄一:主流程圖21附錄二:局部原代碼22結(jié)論25謝辭25參考文獻(xiàn)25體會(huì)26第一章 Visual FoxPro 6.0簡(jiǎn)介1.1 Visual FoxPro 6.0 的由來(lái)與開(kāi)展dBASE在我國(guó)早期微機(jī)應(yīng)用尤其是在辦公自動(dòng)化領(lǐng)域得到了非常廣泛的應(yīng)用,dBASE就是今天Foxpro的源頭。Ashron-Tate公司的DBASE的后繼產(chǎn)品沒(méi)有得到市場(chǎng)的認(rèn)可,但是Fox Software公司出品的FoxBASE不但完全兼容dBASE產(chǎn)

7、品,而且運(yùn)行速度遠(yuǎn)遠(yuǎn)超過(guò)了dBASE,從而迅速搶占了市場(chǎng)。隨后開(kāi)展到了Foxpro 1.02.02.52.6,逐步成為Xbase新的語(yǔ)言標(biāo)準(zhǔn)。Xbase這一術(shù)語(yǔ)是指所有基于dBASE的語(yǔ)法和文件格式的數(shù)據(jù)產(chǎn)品。然而隨著技術(shù)進(jìn)步和競(jìng)爭(zhēng)的日益劇烈,Xbase系列也面臨著巨大的挑戰(zhàn)。盡管Xbase系列尤其是FoxPro系列具有很多優(yōu)點(diǎn),但也確實(shí)存在許多不盡人意之處,而且在網(wǎng)絡(luò)大型化、操作可視化、編程自動(dòng)化的軟件潮流下各種缺陷日益明顯。隨著面向?qū)ο蠹夹g(shù)的成熟與推廣及可視化編程技術(shù)的引入,Microsoft公司又推出了新一代可視編程語(yǔ)言Visual FoxPro 3.05.06.0系列產(chǎn)品。該系列產(chǎn)品可

8、以運(yùn)行在Windows3.X、Windows95、Windows98和WindowsNT等環(huán)境中的32位數(shù)據(jù)庫(kù)開(kāi)發(fā)系統(tǒng),在該產(chǎn)品中引進(jìn)了面向?qū)ο蟮木幊碳夹g(shù)和數(shù)據(jù)庫(kù)設(shè)計(jì)技術(shù),采用了可視化的概念,明確地提出了客戶(hù)效勞器體系結(jié)構(gòu)。Visual FoxPro 5.0版本引進(jìn)了對(duì)Internet和Intranet的支持,首次在FoxPro中實(shí)現(xiàn)了ActiveX技術(shù)。Visual FoxPro 6.0中文版同Microsoft公司的其他產(chǎn)品一樣,全面支持Internet和Intranet并且增強(qiáng)了同其它產(chǎn)品之間的協(xié)作工作能力。Visual FoxPro簡(jiǎn)稱(chēng)VFP與FoxPro相比,有多種可視化編程工具,最

9、突出的是面向?qū)ο缶幊蘋(píng)OP,重復(fù)使用各種類(lèi),直觀(guān)地、創(chuàng)造性地建立應(yīng)用程序,在表的設(shè)計(jì)方面,增添了表的字段和控件直接結(jié)合的設(shè)置,使用戶(hù)能夠更快更容易地設(shè)計(jì)和修改應(yīng)用程序界面。Visual FoxPro 6.0抓住時(shí)代的脈搏,提供了一系列新特色。它成功地解決了計(jì)算機(jī)2000年問(wèn)題,使用戶(hù)基于VFP6.0系統(tǒng)開(kāi)發(fā)的應(yīng)用軟件順利地跨入新世紀(jì)的門(mén)坎。增強(qiáng)了Internet技術(shù),WWW數(shù)據(jù)可得設(shè)計(jì),流行的ActiveX和一系列的向?qū)?、生成器以及控件等集成化工具。新引入的網(wǎng)格圖像文件格式GIF與JEPG也進(jìn)一步增強(qiáng)了應(yīng)用程序的感染性與形象性。它和以前的3.0版本相比,Visual FoxPro 6.0在效能

10、、設(shè)計(jì)環(huán)境、命令函數(shù)、系統(tǒng)資源的利用等方面都有恁大的改良。它支持與其它應(yīng)用程序共享數(shù)據(jù)、交換數(shù)據(jù),支持與大多數(shù)后臺(tái)數(shù)據(jù)庫(kù)的客戶(hù)機(jī)效勞器應(yīng)用程序連接,使32位的ODBC驅(qū)動(dòng)程序能夠集成來(lái)自各個(gè)系統(tǒng)的數(shù)據(jù)。Visual FoxPro 6.0與FoxPro 2.52.6、Visual FoxPro 3.05.0完全兼容,大局部Visual FoxPro 3.0以前的版本應(yīng)用程序可以直接運(yùn)行。VFP6.0還為用戶(hù)升級(jí)提供了一個(gè)方便實(shí)用的轉(zhuǎn)換器工具,可以將VFP3.0的各種文件方便地轉(zhuǎn)換為VFP6.0文件。大局部VFP5.0的應(yīng)用程序不修改就可以移植到Visual FoxPro 6.0中來(lái);如果不包含任

11、何VFP6.0新語(yǔ)言,在VFP6.0中生成的應(yīng)用程序甚至可以在VFP5.0中直接運(yùn)行。1.2 Visual FoxPro 6.0中文版的特點(diǎn)以及新增功能Visual FoxPro 6.0中文版在以前版本的根底上增強(qiáng)了很多功能,主要表現(xiàn)在向微機(jī)系列開(kāi)發(fā)平臺(tái)的標(biāo)準(zhǔn)靠攏和引進(jìn)對(duì)Internet和Intranet更加強(qiáng)大的支持,下面將介紹Visual FoxPro 6.0中文版的新增功能。1訪(fǎng)問(wèn)Access和賦值A(chǔ)ssign方法用戶(hù)可以自定義訪(fǎng)問(wèn)和賦值方法,為這些方法編制自己的代碼,當(dāng)程序執(zhí)行到相應(yīng)的方法時(shí)會(huì)執(zhí)行為該方法編制的代碼。這樣,當(dāng)程序中企圖引用一個(gè)屬性的值或者對(duì)一個(gè)屬性賦值時(shí),程序執(zhí)行相應(yīng)方

12、法的代碼。在這樣的機(jī)制中,用戶(hù)得到的好處是:可以為一個(gè)類(lèi)或者對(duì)象Class or Object創(chuàng)立一個(gè)公共的接口,并且可以將接口同接口的具體實(shí)現(xiàn)分開(kāi),保護(hù)該類(lèi)的子類(lèi)中的屬性成員不被修改。2活動(dòng)文檔活動(dòng)文檔是基于Windows的非HTML格式應(yīng)用程序,活動(dòng)文檔可以嵌入瀏覽器,通過(guò)瀏覽器接口可以訪(fǎng)問(wèn)應(yīng)用程序。同Visual FoxPro應(yīng)用程序一樣,在Visual FoxPro的活動(dòng)文檔中可以運(yùn)行表單、報(bào)表、標(biāo)簽、類(lèi)的實(shí)例,程序代碼以及手工操作數(shù)據(jù)等。但是活動(dòng)文檔必須嵌入象Internet Explorer、Netscape、Communicator之類(lèi)的網(wǎng)絡(luò)瀏覽器中才能發(fā)揮其功能。3組件庫(kù)組件庫(kù)

13、是Visual FoxPro 6.0中文版新增的工具,利用組件庫(kù),用戶(hù)可以將各種對(duì)象包括類(lèi)庫(kù)、表單、按鈕等組合和集成到對(duì)象,工程和工程中對(duì)這些可視化對(duì)象的組合可以進(jìn)行動(dòng)態(tài)修改、復(fù)制、重新排列組合等操作。4Coverage和Profile應(yīng)用程序利用Coverage應(yīng)用程序可以知道當(dāng)前的用戶(hù)程序執(zhí)行到代碼的第幾行,以及相關(guān)程序的信息,通過(guò)Profile應(yīng)用程序可以得到有關(guān)程序運(yùn)行的更加詳細(xì)的信息。例如當(dāng)前程序?qū)嶋H上有哪些運(yùn)行到了,每行程序的運(yùn)行次數(shù),運(yùn)行所花費(fèi)的時(shí)間等。假設(shè)程序出現(xiàn)了問(wèn)題,程序員在調(diào)試時(shí)可以通過(guò)Coverage和Profile應(yīng)用程序快速確定問(wèn)題發(fā)生的區(qū)域,特別是程序員可以知道哪

14、些代碼參加運(yùn)行及運(yùn)行的次數(shù),哪些代碼沒(méi)有參加運(yùn)行,以及程序的執(zhí)行性能等程序調(diào)試過(guò)程中的瓶頸問(wèn)題。程序員可以修改和定制Coverage和Profile的選項(xiàng),并且這兩個(gè)程序都支持Windows的多窗口特性,因此程序員可以同時(shí)翻開(kāi)多個(gè)窗口,全局調(diào)試,觀(guān)察和分析多個(gè)程序、工程文件的運(yùn)行情況。5對(duì)GIF和JPEG格式圖形文件的支持Visual FoxPro 6.0中文版的最大特點(diǎn)是加強(qiáng)了對(duì)Internet和Intranet的支持,而圖形是Internet和Intranet中的重要資源,尤其是GIF和JPEG。GIF是動(dòng)態(tài)的圖形文件,JEPG是壓縮的圖形文件。二者又是Internet和Intranet中

15、最主要的圖形文件,因此對(duì)GIF和JEPG格式圖形文件的支持非常重要。6基于HTML的幫助基于HTML的幫助是微軟公司把在線(xiàn)幫助的內(nèi)容推上了Internet的解決方案。7程序語(yǔ)言的增強(qiáng)在Visual FoxPro 6.0中文版中,為簡(jiǎn)化程序設(shè)計(jì)任務(wù),程序語(yǔ)言在一定程序上比以前版本有所增強(qiáng)。8支持OLE拖放在Visual FoxPro 6.0中文版中引進(jìn)了強(qiáng)大的OLE拖放工具,允許用戶(hù)在不同的支持OLE拖放技術(shù)的應(yīng)用程序之間移動(dòng)數(shù)據(jù)如Visual Basic、Microsoft Excel等。9增強(qiáng)的自動(dòng)化效勞器Visual FoxPro 6.0推出了改良的、更加強(qiáng)大的自動(dòng)化效勞器,在同Micro

16、soft Transaction Server、Microsoft VB、Acive server pages等產(chǎn)品協(xié)同工作時(shí)性能更加穩(wěn)定。10工程管理器鉤子對(duì)象 為了實(shí)現(xiàn)通過(guò)程序訪(fǎng)問(wèn)工程管理器,在Visual FoxPro 6.0中文版中實(shí)現(xiàn)了工程對(duì)象模型,該模型由工程、工程對(duì)象以及與之相聯(lián)系的工程鉤子對(duì)象組成。當(dāng)一個(gè)工程被翻開(kāi)時(shí),通過(guò)CREATE PROJECT,MODIFY PROJECT,BUILD APP等命令操作,工程對(duì)象隨之被實(shí)例化。工程對(duì)象充當(dāng)工程和Visual FoxPro IDE之間的中介,允許程序開(kāi)發(fā)人員直接和工程進(jìn)行交互操作,工程對(duì)象隨之將工程鉤子對(duì)象例化,隨之等待接受

17、各種用戶(hù)事件。11新增和改良的生成器和編譯器Visual FoxPro 6.0對(duì)以前版本的生成器和編譯器作了一定程度的改良。還推出了一些新的生成器和編譯器,主要用于編譯應(yīng)用程序、創(chuàng)立數(shù)據(jù)庫(kù)。在WEB上發(fā)布用戶(hù)數(shù)據(jù),執(zhí)行對(duì)象模型以及用戶(hù)設(shè)計(jì)自己的生成器。12對(duì)2000年的支持在Visual FoxPro 6.0中文版中有幾處對(duì)以前版本進(jìn)行了改良,主要是在語(yǔ)言方面的增強(qiáng),這種修改使用戶(hù)的程序支持2000年問(wèn)題。1.3數(shù)據(jù)庫(kù)概述1.3.1數(shù)據(jù)庫(kù)定義及其功能1數(shù)據(jù)庫(kù)定義數(shù)據(jù)庫(kù)簡(jiǎn)而言之,就是存儲(chǔ)根據(jù)的裝置,但這樣的定義太簡(jiǎn)單化了。要說(shuō)明數(shù)據(jù)庫(kù)必須同時(shí)含有三方面的意義:1數(shù)據(jù)庫(kù)的內(nèi)容,即數(shù)據(jù)2存儲(chǔ)數(shù)據(jù)的硬

18、件,如磁盤(pán)等3對(duì)數(shù)據(jù)庫(kù)實(shí)施的管理2數(shù)據(jù)庫(kù)的功能建立數(shù)據(jù)庫(kù)總是希望能實(shí)現(xiàn)一定的操作,完成預(yù)期的目的。一般而言,數(shù)據(jù)庫(kù)應(yīng)當(dāng)具有以下功能:1利用數(shù)據(jù)庫(kù)方便地查找所需要的數(shù)據(jù)2按照一定的規(guī)那么篩選所需要的數(shù)據(jù)3容易產(chǎn)生用戶(hù)要求的結(jié)果,如表格、報(bào)表、圖表、標(biāo)簽以及統(tǒng)計(jì)結(jié)果4按照一定的規(guī)那么將所需要的數(shù)據(jù)進(jìn)行排序5可供多人同時(shí)在網(wǎng)絡(luò)上使用6可設(shè)置使用權(quán)限,根據(jù)權(quán)限給予有限度的數(shù)據(jù)查詢(xún)功能1.3.2數(shù)據(jù)庫(kù)的優(yōu)點(diǎn)建立數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)管理有以下好處1減少數(shù)據(jù)冗余在不使用數(shù)據(jù)庫(kù)時(shí),每個(gè)應(yīng)用程序只能使用自己的數(shù)據(jù),常造成重復(fù)建立數(shù)據(jù)的浪費(fèi)。不同用戶(hù)在建立數(shù)據(jù)系統(tǒng)時(shí),數(shù)據(jù)格式很統(tǒng)一,因此不同應(yīng)用程序之間無(wú)法進(jìn)行數(shù)據(jù)的交

19、互應(yīng)用。在數(shù)據(jù)庫(kù)系統(tǒng)中,由于建立了共同的數(shù)據(jù)庫(kù),應(yīng)用程序都使用該數(shù)據(jù)庫(kù),減少了數(shù)據(jù)冗余。2防止數(shù)據(jù)矛盾如果數(shù)據(jù)存在不同的系統(tǒng)中而不通過(guò)數(shù)據(jù)庫(kù)進(jìn)行管理,當(dāng)數(shù)據(jù)變更時(shí),可能因?yàn)樽兏僮鞯牟煌?,造成?shù)據(jù)矛盾。在數(shù)據(jù)庫(kù)系統(tǒng)中,那么僅需要改變一份數(shù)據(jù)庫(kù),就可防止數(shù)據(jù)的相互矛盾。3數(shù)據(jù)獨(dú)立應(yīng)用程序不需要了解數(shù)據(jù)的實(shí)際存取方式,通過(guò)數(shù)據(jù)庫(kù)系統(tǒng)的存取指令就可得到需要的數(shù)據(jù)。因此當(dāng)數(shù)據(jù)庫(kù)的存取結(jié)構(gòu)變化時(shí),不需要改變外部應(yīng)用程序。1.3.3數(shù)據(jù)庫(kù)類(lèi)型數(shù)據(jù)庫(kù)有多種類(lèi)型,按結(jié)構(gòu)可分為三種:1層次結(jié)構(gòu)數(shù)據(jù)庫(kù)樹(shù)狀分支結(jié)構(gòu),具有父子關(guān)系,每個(gè)父結(jié)點(diǎn)可有多個(gè)子結(jié)點(diǎn),但每個(gè)結(jié)點(diǎn)只能有一個(gè)父結(jié)點(diǎn)。這種數(shù)據(jù)庫(kù)結(jié)構(gòu)簡(jiǎn)單,操作方便,

20、容易自上而下地查詢(xún)數(shù)據(jù),但搜索非直系結(jié)點(diǎn)效率低。2網(wǎng)狀結(jié)構(gòu)數(shù)據(jù)庫(kù)允許子結(jié)點(diǎn)有多個(gè)父結(jié)點(diǎn),子結(jié)點(diǎn)容易聯(lián)系,但由于路徑多,可動(dòng)性差,不易修改維護(hù),因此不適合用于動(dòng)態(tài)數(shù)據(jù)庫(kù)。3關(guān)系數(shù)據(jù)庫(kù)在結(jié)構(gòu)上可以通過(guò)關(guān)鍵字將相關(guān)的表格聯(lián)系在一起,關(guān)系數(shù)據(jù)庫(kù)中的表必須有一個(gè)字段的數(shù)據(jù)不能重復(fù)。當(dāng)作主關(guān)鍵字以區(qū)別每條記錄,而其它字段允許數(shù)據(jù)重復(fù)。聯(lián)系相關(guān)表格的方法聯(lián)系相關(guān)表格的方法,在關(guān)系數(shù)據(jù)庫(kù)中稱(chēng)為連結(jié)關(guān)系。從一個(gè)較大的表格中選取某些字段形成為表格,稱(chēng)為映射。1.3.4關(guān)系數(shù)據(jù)庫(kù)優(yōu)點(diǎn)目前比擬流行的是關(guān)系數(shù)據(jù)庫(kù),因?yàn)樵摻Y(jié)構(gòu)具有以下優(yōu)點(diǎn):1表格式的關(guān)系易于理解和建立數(shù)據(jù)庫(kù)。2層次和網(wǎng)結(jié)構(gòu)可轉(zhuǎn)換為表格式結(jié)構(gòu)。3通過(guò)投影,

21、連結(jié)表格的字段,容易建立新關(guān)系。4表格式搜索較樹(shù)結(jié)構(gòu)容易。5方便對(duì)結(jié)構(gòu)作出修改。6適用于建立大型數(shù)據(jù)庫(kù)。第二章 工廠(chǎng)工資管理系統(tǒng)簡(jiǎn)介2.1工廠(chǎng)工資管理系統(tǒng)概述2.1.1系統(tǒng)的主要功能工廠(chǎng)工資管理系統(tǒng)的主要任務(wù)是用計(jì)算機(jī)對(duì)各種工資信息進(jìn)行日常的管理,如查詢(xún)、修改、增加、刪除以及存儲(chǔ)等,迅速準(zhǔn)確地完成各種工資信息的統(tǒng)計(jì)計(jì)算和匯總工作,快速打印出工資報(bào)表。針對(duì)系統(tǒng)效勞對(duì)象的具體要求,設(shè)計(jì)了本工資管理系統(tǒng)。本工資管理系統(tǒng)主要有以下幾大功能:1對(duì)單位人員的變動(dòng)進(jìn)行處理。一個(gè)單位的職工不會(huì)是一成不變的,總是在不斷地變化:有調(diào)出、有調(diào)入、也有職工在本單位內(nèi)部調(diào)動(dòng)。因此,設(shè)計(jì)本系統(tǒng)時(shí)考慮到了這些情況。2對(duì)職工

22、工資進(jìn)行修改、計(jì)算。可以對(duì)職工的工資檔案進(jìn)行個(gè)別、局部和批量修改,同時(shí),能對(duì)各職工的工資進(jìn)行計(jì)算,即計(jì)算應(yīng)發(fā)金額、應(yīng)扣金額及實(shí)發(fā)金額等。3查詢(xún)統(tǒng)計(jì)功能。要求既可以單項(xiàng)查詢(xún),比方查看某個(gè)職工的工資情況等;也可以多項(xiàng)查詢(xún),比方某部門(mén)工資數(shù)在某一范圍的職工的工資情況。4報(bào)表打印功能。每月發(fā)放工資時(shí),要求能夠打印本月的工資表、隨工資發(fā)給每個(gè)職工的工資條以及工資統(tǒng)計(jì)表。2.1.2方法概要本系統(tǒng)是采用面向?qū)ο蟮某绦蛟O(shè)計(jì)思想進(jìn)行編制的,整個(gè)系統(tǒng)由假設(shè)干個(gè)表單、類(lèi)、報(bào)表以及一個(gè)主菜單組成的,由工程管理器統(tǒng)一管理全部程序的編寫(xiě)和調(diào)試。用戶(hù)可通過(guò)主菜單或總表單調(diào)用系統(tǒng)的各項(xiàng)功能。面向?qū)ο蟪绦蛟O(shè)計(jì)不再是單純的從代碼

23、的第一行一直編寫(xiě)到最后一行,而是考慮如何創(chuàng)立類(lèi)和對(duì)象,利用類(lèi)和對(duì)象來(lái)簡(jiǎn)化程序設(shè)計(jì),并提供代碼的封裝和重用性,便于程序的維護(hù)與擴(kuò)展。所謂的對(duì)象是一種抽象的名稱(chēng),用來(lái)對(duì)應(yīng)現(xiàn)實(shí)世界存在的“東西。一個(gè)窗口、一個(gè)按鈕、一個(gè)菜單都可視為一個(gè)對(duì)象,而按鈕對(duì)象、菜單對(duì)象又會(huì)出現(xiàn)在窗口對(duì)象中,因此按鈕對(duì)象、菜單對(duì)象便是窗口的組件之一。對(duì)象內(nèi)部的數(shù)據(jù)是不能隨意改變的,必須由外部向其傳遞信息,再由對(duì)象按其方法加以處理。用戶(hù)無(wú)需知道其任何細(xì)節(jié),操作是封閉的,對(duì)象之間只能通過(guò)函數(shù)調(diào)用相互通信。類(lèi)可視為一個(gè)產(chǎn)品模具、一個(gè)模塊。在面向?qū)ο蟪绦蛟O(shè)計(jì)中,類(lèi)是對(duì)象的原型,是對(duì)象的制作器。類(lèi)的概念是面向?qū)ο蟪绦蛟O(shè)計(jì)最重要的特征。所

24、謂類(lèi),是指由數(shù)據(jù)結(jié)構(gòu)及其相關(guān)操作所形成的集合,描述該類(lèi)任意對(duì)象的共同的行為特征,是對(duì)一組性質(zhì)相同的對(duì)象的程序描述,概括了對(duì)象的共同性質(zhì)和數(shù)據(jù)。面向?qū)ο蟪绦蛟O(shè)計(jì)的核心是類(lèi)的設(shè)計(jì)。例如:可以定義一個(gè)“工資查詢(xún)表單類(lèi),該類(lèi)中可以定義查詢(xún)的姓名、年齡、工資等等信息,那么以此類(lèi)為原型可以設(shè)計(jì)出眾多的“工資查詢(xún)表單類(lèi)的對(duì)象實(shí)例,這些實(shí)體都具有類(lèi)中所定義的特征。設(shè)計(jì)的工資管理系統(tǒng)也是建立在一系列類(lèi)根底之上的,其編程的思想是:先根據(jù)一定的需要?jiǎng)?chuàng)立一系列的子類(lèi)或直接調(diào)用VFP提供的基類(lèi),編制程序時(shí),由這些類(lèi)派生出相應(yīng)的對(duì)象,所派生出的對(duì)象繼承了其父類(lèi)所有的功能,而且具有很好的封裝性,這樣就可以利用派生出的對(duì)象搭

25、積木一樣來(lái)設(shè)計(jì)自己的程序。打個(gè)比方,就比方要制造一臺(tái)機(jī)器,首先要制造各種零件的模具,然后用制造好的模具生產(chǎn)出所需的零件,所有這些做完后,剩下的就只是如何把這些零件組裝起來(lái),這樣一臺(tái)機(jī)器就很容易制造出來(lái)了。實(shí)際編程也是如此,每個(gè)代表單都是由一定數(shù)量的對(duì)象按某種方式組合在一起的,程序編制的核心是類(lèi)的設(shè)計(jì)。2.2系統(tǒng)設(shè)計(jì)2.2.1系統(tǒng)的總體設(shè)計(jì)思想針對(duì)本系統(tǒng)的具體要求,在設(shè)計(jì)時(shí)把整個(gè)系統(tǒng)劃分為以下五個(gè)模塊:初始化模塊數(shù)據(jù)管理模塊查詢(xún)模塊打印模塊計(jì)算模塊由于采用了模塊化設(shè)計(jì)思想,大大提高了設(shè)計(jì)的效率,而且最大限度地減少不必要的錯(cuò)誤。在實(shí)際操作中,本系統(tǒng)的根本設(shè)計(jì)思想是:保持一個(gè)根本庫(kù)不變,作為原始庫(kù);

26、每月由原始庫(kù)生成一個(gè)當(dāng)月庫(kù),填寫(xiě)或更改某些工程時(shí),在當(dāng)月庫(kù)中修改;數(shù)據(jù)庫(kù)更改變畢后,將結(jié)果保存。為實(shí)現(xiàn)以上設(shè)計(jì)思想,在每月開(kāi)始變更前,首先初始化數(shù)據(jù)庫(kù),將一些變動(dòng)性清為零,而基準(zhǔn)項(xiàng)保持不變;之后的種種修改、本系統(tǒng)要求原始數(shù)據(jù)庫(kù)保持性對(duì)穩(wěn)定、無(wú)較大的變動(dòng),但是每月需要填寫(xiě)的變動(dòng)項(xiàng)又必須經(jīng)常變化,針對(duì)本系統(tǒng)的這些特點(diǎn),因此在設(shè)計(jì)時(shí),應(yīng)盡量保持原始數(shù)據(jù)庫(kù)不變,在每月進(jìn)行日常的數(shù)據(jù)操作前,都要對(duì)工資數(shù)據(jù)進(jìn)行初始化處理,由原始數(shù)據(jù)庫(kù)生成一個(gè)當(dāng)月過(guò)程庫(kù),以后對(duì)工資檔案進(jìn)行的數(shù)據(jù)操作,如修改、添加、刪除、查詢(xún)等,都要在當(dāng)月過(guò)程庫(kù)中進(jìn)行,數(shù)據(jù)更改完畢后,將結(jié)果作為一個(gè)結(jié)果庫(kù),作為每月留檔用的數(shù)據(jù)庫(kù),如圖2.1

27、所示。使用這種過(guò)程庫(kù)的方法防止了用戶(hù)直接對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作,從而提高了數(shù)據(jù)庫(kù)的平安性。原始數(shù)據(jù)庫(kù)建立過(guò)程庫(kù) 結(jié)果庫(kù)打印存盤(pán)圖系統(tǒng)結(jié)構(gòu)圖在設(shè)計(jì)時(shí)按照實(shí)際的要求把本系統(tǒng)劃分為初始化、數(shù)據(jù)管理、查詢(xún)、打印、計(jì)算、退出等相互獨(dú)立的功能模塊,以實(shí)現(xiàn)對(duì)工資系統(tǒng)的控制,其系統(tǒng)結(jié)構(gòu)圖如圖2.2工資管理系統(tǒng)初始化數(shù)據(jù)管理查詢(xún)計(jì)算打印退出建立本月工資庫(kù)增減部門(mén)當(dāng)月全體修改當(dāng)月部門(mén)修改刪除人員增加人員人員內(nèi)部調(diào)動(dòng)人員數(shù)據(jù)修改部門(mén)查詢(xún)工號(hào)查詢(xún)姓名查詢(xún)工廠(chǎng)工資總額個(gè)人當(dāng)月工資圖2.2功能介紹:1初始化 分為全體初始化和部門(mén)初始化。全體初始化是生成當(dāng)月數(shù)據(jù)庫(kù),對(duì)工資檔案進(jìn)行的各項(xiàng)操作都是針對(duì)該過(guò)程庫(kù)進(jìn)行的。

28、部門(mén)初始化是生成某部門(mén)的數(shù)據(jù)庫(kù)。2數(shù)據(jù)管理模塊 該模塊主要功能是完成數(shù)據(jù)庫(kù)的更新與維護(hù),能夠很方便地實(shí)現(xiàn)數(shù)據(jù)的修改,刪除和添加功能。由當(dāng)月全體修改、當(dāng)月部門(mén)修改、增加人員、刪除人員、人員內(nèi)部調(diào)動(dòng)、人員修改六個(gè)子模塊構(gòu)成。當(dāng)月全體修改模塊:修改本月全體職工工資情況。當(dāng)月部門(mén)修改模塊:修改某部門(mén)職工工資情況。增加人員模塊:完成新調(diào)入人員根本工資情況數(shù)據(jù)的輸入功能。刪除人員模塊:主要功能是刪除數(shù)據(jù)庫(kù)中的職工記錄。人員內(nèi)部調(diào)動(dòng)模塊:管理單位內(nèi)部人員調(diào)動(dòng)。人員修改模塊:修改人員的工資狀況。3查詢(xún)模塊數(shù)據(jù)查詢(xún)是本工資系統(tǒng)的主要任務(wù),為了方便用戶(hù)使用,設(shè)置了多種查詢(xún)手段。分為按部門(mén)查詢(xún)、按工號(hào)查詢(xún)、按姓名查

29、詢(xún)、工資表瀏覽四個(gè)模塊組成。4打印模塊打印模塊完成多種打印任務(wù),包括打印工資明細(xì)表、分部門(mén)打印工資表、按姓名打印工資表、打印扣款明細(xì)表。2.2.3設(shè)計(jì)期間所涉及的數(shù)據(jù)表1各數(shù)據(jù)表的用途工資表:工資表主要是保存詳細(xì)的個(gè)人資料。在實(shí)際運(yùn)行中,將作為當(dāng)月的過(guò)程數(shù)據(jù)庫(kù)來(lái)使用,每月進(jìn)行的數(shù)據(jù)操作根本上都是針對(duì)該表來(lái)進(jìn)行的。部門(mén)表:部門(mén)表存放這個(gè)部門(mén)的信息。2工資表的結(jié)構(gòu)和含義字段字段名類(lèi)型寬度小數(shù)位1姓名字符型82出生年月日期型83工號(hào)數(shù)值型54所在部門(mén)字符型105部門(mén)編號(hào)數(shù)值型526根本工資數(shù)值型727工作天數(shù)整型48加班天數(shù)整型49加班工資數(shù)值型6210病假天數(shù)整型411事假天數(shù)整型412日工資數(shù)值

30、型5213應(yīng)領(lǐng)工資數(shù)值型6214房租數(shù)值型6215公積金數(shù)值型6216保險(xiǎn)數(shù)值型6217個(gè)人所得稅數(shù)值型6218上月余額數(shù)值型6219應(yīng)扣數(shù)值型6220實(shí)發(fā)數(shù)值型7221領(lǐng)簽字符型83部門(mén)表的結(jié)構(gòu)和含義字段字段名類(lèi)型寬度索引Null1部門(mén)代碼字符型2升序否2部門(mén)名字符型9升序否第三章 工廠(chǎng)工資管理系統(tǒng)的設(shè)計(jì)3.1登錄界面當(dāng)運(yùn)行本系統(tǒng)時(shí),會(huì)出現(xiàn)一個(gè)密碼驗(yàn)證界面,只有輸入了正確的密碼才可以登錄系統(tǒng)。如圖3.1所示。圖3.1確定按鈕:輸入的密碼后,點(diǎn)擊確定。如果密碼正確那么進(jìn)入系統(tǒng),否那么,提示錯(cuò)誤信息。三次錯(cuò)誤后退出登錄界面。取消按鈕:退出登錄界面。3.2系統(tǒng)界面當(dāng)?shù)卿洺晒髸?huì)出現(xiàn)以下菜單。如圖3

31、.2、3.3、3.4所示。1初始化 圖3.2全體初始化、部門(mén)初始化:對(duì)當(dāng)月的工資進(jìn)行初始化。2數(shù)據(jù)管理 圖3.3管理數(shù)據(jù)庫(kù)中包含當(dāng)月全體修改、當(dāng)月部門(mén)修改、增加人員、刪除人員等子按鈕。當(dāng)月全體修改:修改當(dāng)月工資情況。當(dāng)月部門(mén)修改:按部門(mén)修改工資情況。增加人員:增加職工數(shù)據(jù)。刪除人員:刪除職工數(shù)據(jù)。人員內(nèi)部調(diào)整:工廠(chǎng)內(nèi)部職工的調(diào)動(dòng)情況管理。個(gè)人數(shù)據(jù)修改:對(duì)已登記人員的數(shù)據(jù)進(jìn)行修改。3查詢(xún) 圖3.4按部門(mén)查詢(xún):按照部門(mén)查詢(xún)職工情況。按姓名查詢(xún):按照姓名查詢(xún)職工情況。按工號(hào)查詢(xún):按照工號(hào)查詢(xún)職工情況。4打印5計(jì)算6退出3.3具體操作1初始化 圖3.5初始化功能中部門(mén)、姓名、工號(hào)、上月余額和應(yīng)發(fā)工資是

32、不可更改的。其中,應(yīng)發(fā)工資是根據(jù)其他數(shù)據(jù)病假天數(shù)、事假天數(shù)等數(shù)據(jù)而計(jì)算出來(lái)的。上一個(gè):顯示上一條數(shù)據(jù)。第一個(gè):顯示第一條數(shù)據(jù)。下一個(gè):顯示下一條數(shù)據(jù)最后一個(gè):顯示最后一條數(shù)據(jù)。存盤(pán):將數(shù)據(jù)存入到數(shù)據(jù)庫(kù)。退出:退出初始化。2增加、刪除人員以及人員調(diào)動(dòng)圖3.6圖3.7人員增加:在表中輸入新增人員的根本資料就可以進(jìn)行人員的錄入。人員刪除:只有輸入了正確的職工姓名、部門(mén)和工號(hào)后才可以刪除此人員。人員調(diào)動(dòng):輸入所要調(diào)動(dòng)的人員的名字、工號(hào)再填上調(diào)入到的部門(mén)就可以將職工從一個(gè)崗位調(diào)到另一個(gè)崗位上,或是從外單位調(diào)到本單位職工。圖3.83查詢(xún)功能圖3.9當(dāng)點(diǎn)擊圖中按部門(mén)查詢(xún)、按工資查詢(xún)等單項(xiàng)選擇框后會(huì)出現(xiàn)下列圖

33、,如 圖3.10輸入部門(mén)點(diǎn)擊確認(rèn)就可以根據(jù)部門(mén)來(lái)查找。 圖3.11輸入工號(hào)點(diǎn)擊確認(rèn)可以按照工號(hào)查詢(xún)當(dāng)按照所查詢(xún)的方法查詢(xún)后,就會(huì)出現(xiàn)查詢(xún)結(jié)果界面如圖3.11圖3.123.4系統(tǒng)維護(hù)對(duì)各模塊的權(quán)限分別設(shè)定,使用口令保護(hù)加強(qiáng)管理,確保數(shù)據(jù)的平安。加強(qiáng)對(duì)系統(tǒng)數(shù)據(jù)的備分,以免系統(tǒng)出現(xiàn)故障,造成不可挽回的損失。具體方法為:在硬盤(pán)上分別建立兩個(gè)目錄backupPRG和backupDATA。其中:backupPRG目錄存放系統(tǒng)的程序文件,backupDATA目錄存放系統(tǒng)的數(shù)據(jù)庫(kù)文件。操作人員應(yīng)隨時(shí)往這兩個(gè)目錄中備分?jǐn)?shù)據(jù)。附錄一:主流程圖開(kāi)始調(diào)用主菜單進(jìn)入登錄界面、密碼驗(yàn)證密碼是否正確是否調(diào)用主程序退出錯(cuò)誤多

34、于三次?是是否否附錄二:局部原代碼1類(lèi)的設(shè)計(jì)圖附錄二11“上一個(gè)按鈕的click事件代碼:skip-1if bof() =messagebox("已是第一個(gè)記錄!",48,"信息窗口") this.enabled=.f.else this.enabled=.t.endifthisform.refresh2“第一個(gè)按鈕的click事件代碼:go topthisform.refresh3“下一個(gè)按鈕的click事件代碼: skipif eof() =messagebox("已是最后一個(gè)記錄!",48,"信息窗口") s

35、kip-1 this.enabled=.f.else this.enabled=.t.endif this.parent mand2.enabled=.t.thisform.refresh()4“最后一個(gè)按鈕的click事件代碼:go bottomthisform.refresh5“確定按鈕的click事件代碼:thisform.ok6“退出按鈕的click事件代碼:thisform.release2管理員登錄的設(shè)計(jì)1“確定按鈕的init事件代碼:public nn=02“確定按鈕的click事件代碼:n=n+1if allt(thisform.txtpassword.value)=allt(

36、systen.mima) thisform.release do main.mprelse if n>=3 =messagebox("你不是合法用戶(hù)!不能使用本系統(tǒng)",64,"警告窗口") thisform.release clean event else =messagebox("口令不正確!請(qǐng)重新輸入!",64,"警告窗口") thisform.txtpassword.value="" thisform.txtpassword.setfocus() endifendif3初始化表單設(shè)計(jì)

37、1表單的init事件代碼:thisform.refreshgo topthisform.text1.enabled=.f.thisform.text2.enabled=.f.thisform.text3.enabled=.t.thisform.text3.value=thisform.text9.value*(22-thisform.text4.value-thisform.text5.value)-thisform.text6.value-thisform.text7.value-thisform.text8.value+thisform.text10.value*gzb.加班工資thisf

38、orm.text3.enabled=.f.2文本框的MouseMove Event事件代碼:LPARAMETERS nButton, nShift, nXCoord, nYCoordthisform.text3.enabled=.t.thisform.text3.value=thisform.text9.value*(22-thisform.text4.value-thisform.text5.value)-thisform.text6.value-thisform.text7.value-thisform.text8.value+thisform.text10.value*gzb.加班工資t

39、hisform.text3.enabled=.f.4按姓名查找模塊的設(shè)計(jì)1表單的init事件代碼:public gonghaothisform.refreshgo topthisform bo1.value=gzb.姓名2“確認(rèn)按鈕的click event事件代碼:姓名=thisform bo1.baluegonghao=gzb.工號(hào)thisform.releasedo form cxjg3“取消按鈕的click event事件代碼:thisform.release5查詢(xún)結(jié)果表單設(shè)計(jì)表單的init事件代碼:thisform.refreshgo gonghaothisform.txt部門(mén).ena

40、bled=.f.thisform.txt姓名.enabled=.f.thisform.txt工號(hào).enabled=.f.thisform.txt日工資.enabled=.f.thisform.txt加班工資.enabled=.f.thisform.txt房租.enabled=.f.thisform.txt保險(xiǎn).enabled=.f.thisform.txt公積金.enabled=.f.thisform.txt個(gè)人所得稅.enabled=.f.thisform.txt上月余額.enabled=.f.thisform.txt根本工資.enabled=.f.結(jié) 論通過(guò)這次的畢業(yè)設(shè)計(jì),我進(jìn)行了工廠(chǎng)工資管理系統(tǒng)的設(shè)計(jì)。并在開(kāi)發(fā)工程中,建立了自己的設(shè)計(jì)思想,進(jìn)行了軟件的開(kāi)發(fā),并使用了VFP編程工具進(jìn)行了程序的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論