某大學(xué)退休人員工資管理系統(tǒng)_第1頁
某大學(xué)退休人員工資管理系統(tǒng)_第2頁
某大學(xué)退休人員工資管理系統(tǒng)_第3頁
某大學(xué)退休人員工資管理系統(tǒng)_第4頁
某大學(xué)退休人員工資管理系統(tǒng)_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

江南大學(xué)

2003屆本科畢業(yè)生畢業(yè)設(shè)計(jì)報(bào)告書

細(xì)M畿%

SchooloilnfbmationTechnology

——退休人員工資管理系統(tǒng)

畢業(yè)生所在院系:信息工程學(xué)院

畢業(yè)生導(dǎo)師:須文波教授

畢業(yè)生班級(jí):軟件991

畢業(yè)生學(xué)號(hào):3號(hào)

畢業(yè)生姓名:虞黎霞

摘要

本文主要以無錫市建設(shè)局退休人員工資管理為背景,詳

述了建立退休人員工資管理系統(tǒng)的主要過程,并針對(duì)整個(gè)系

統(tǒng)設(shè)計(jì)中的主體思想及涉及到的問題進(jìn)行了詳細(xì)的分析。

文中介紹了該工資管理系統(tǒng)的需求分析、系統(tǒng)分析、整

體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、具體編碼、系統(tǒng)特點(diǎn)以及系統(tǒng)實(shí)現(xiàn)的全

過程,描述了工資管理、發(fā)放的全面操作過程。對(duì)基于Visual

FoxPro6.0這一關(guān)系數(shù)據(jù)庫面向?qū)ο缶幊坦ぞ哌M(jìn)行了使用,對(duì)

該工資管理系統(tǒng)軟件進(jìn)行了開發(fā)。退休人員工資發(fā)放系統(tǒng)的

總體設(shè)計(jì)思想為面向?qū)ο蟮乃枷?,程序設(shè)計(jì)采用模塊法和結(jié)

構(gòu)化法二者相結(jié)合的方法。

退休人員工資管理系統(tǒng)是一個(gè)利用先進(jìn)的計(jì)算機(jī)及實(shí)用

的開發(fā)軟件為基礎(chǔ),以全面實(shí)現(xiàn)工資管理的系統(tǒng)化、規(guī)范化、

自動(dòng)化與科學(xué)化為主要目標(biāo),實(shí)現(xiàn)對(duì)人員工資的自動(dòng)化管

理。

退休人員工資管理系統(tǒng)的實(shí)現(xiàn),減輕了人力、物力的負(fù)

擔(dān),并為企業(yè)進(jìn)入網(wǎng)絡(luò)與通訊現(xiàn)代化,做出了一定貢獻(xiàn)。

Abstract

ThisthesisismanagedforthebackgroundwiththeretiredpersonneFssalaryof

ConstructionBureauofWuximainly.Itdetailsandsetupretiredpersonnelsalarythe

maincoursesesofadministrativesystemsdirectedagainstandquestioninvolvedgo

ondetailedanalysisthesubjectthoughtsofwholesystematicdesignses.

Itrecommendinthearticleanalyseatthissalarythedemandsofadministrative

systems,Networkanalysis,globaldesign,designingindetail,concretecode,the

systematiccharacteristicandthewholecourserealizedsystematically.Theonesthat

havedescribedthesalaryandmanaged,grantedhaveoperatedthecourseall-sidedly.

ToatVisualFoxPro6.0thisdatabasefacetargetusebyprogrammingtool,develop

thissalaryManagesystemssoftware.Retiredpersonnel'ssalarymanagementsystem

granttheoveralldesignphilosophiesesofsystemforfacingthethoughtsoftarget.

Designprogramcombineswithtwomethodsthatcalledmodularizationandstructure.

Retiredsalaryadministrativesystemsofpersonnelarebasedononeutilizes

advancedcomputerandpracticaldevelopmentsoftware.Inordertorealizeall-sidedly

thatthesystematized,standardization,automationandscienceofmanagementofthe

salaryturnamaingoal.Realizethatmanagestheautomationofpersonnel'ssalary.

Therealizationofretiredsalaryadministrativesystemsofpersonnel,has

lightennedtheburdensofmanpower,materialresources.Andtomakecertain

contributionforenterringthenetworkandcommunicationmodernizationforthe

enterprise.

目錄

第一章導(dǎo)言........................................................4

L1問題的提出......................................................4

1.2數(shù)據(jù)庫的發(fā)展...................................................4

1.3關(guān)系數(shù)據(jù)庫簡(jiǎn)介.................................................5

1.4VisualFoxPro簡(jiǎn)介..............................................6

1.5本文的研究路線..................................................9

第二章退休人員工資管理系統(tǒng)研究概述...............................10

2.1設(shè)計(jì)題目.......................................................10

2.2設(shè)計(jì)目的.......................................................10

2.3設(shè)計(jì)要求及需求分析.............................................10

2.4可行性分析.....................................................10

第三章退休人員工資管理系統(tǒng)分析與設(shè)計(jì)..............................11

3.1設(shè)計(jì)思想.......................................................11

3.2系統(tǒng)總體結(jié)構(gòu)...................................................11

3.3程序設(shè)計(jì)流程圖................................................12

3.4數(shù)據(jù)庫設(shè)計(jì).....................................................14

3.5系統(tǒng)的進(jìn)入.....................................................16

3.6密碼修改.......................................................16

第四章退休人員工資管理系統(tǒng)功能實(shí)現(xiàn)...............................18

4.1數(shù)據(jù)的錄入.....................................................18

4.2數(shù)據(jù)的查詢....................................................20

4.3數(shù)據(jù)的瀏覽....................................................21

4.4報(bào)表的設(shè)計(jì)....................................................21

4.5工資備份及恢復(fù)................................................23

4.6菜單的設(shè)計(jì)....................................................25

4.7調(diào)試應(yīng)用程序..................................................25

第五章設(shè)計(jì)結(jié)論及體會(huì).............................................29

英漢翻譯..........................................................31

參考文獻(xiàn)...........................................................38

第一章導(dǎo)言

1.1問題的提出

計(jì)劃經(jīng)濟(jì)時(shí)代,中國(guó)還不存在人力資源管理這個(gè)觀念,企業(yè)對(duì)人的

管理還處在圍繞檔案、工資的"白紙黑字"的管理模式。信息技術(shù)進(jìn)入國(guó)內(nèi)

人力資源管理可以用以下六個(gè)字來概況,"應(yīng)用早、發(fā)展慢"。

80年代后計(jì)算機(jī)大批引入中國(guó),較早的應(yīng)用就是采用計(jì)算機(jī)處理人

事檔案、工資,基于DBASE、數(shù)據(jù)庫的簡(jiǎn)單管理,多為企業(yè)自行開發(fā)。

90年代開始出現(xiàn)產(chǎn)品化的人事、勞資軟件,但未得到企業(yè)客戶的認(rèn)同,

相比財(cái)務(wù)、物流管理的信息化發(fā)展,90年代人力資源管理信息化程度已

經(jīng)明顯落后。進(jìn)入21世紀(jì),伴隨信息化的普及及互聯(lián)網(wǎng)的快速發(fā)展,IT

技術(shù)更廣泛的應(yīng)用于企業(yè)人力資源管理,同時(shí)企業(yè)管理中"人"的因素愈發(fā)

重要,企業(yè)原有的計(jì)算機(jī)軟件難以滿足人力資源管理的要求,需要思想、

技術(shù)更為先進(jìn)的人力資源管理信息系統(tǒng)。當(dāng)前企業(yè)人力資源信息化情況

可以概括為:大部門企業(yè)的人力資源部門擁有計(jì)算機(jī)硬件設(shè)備用于日常

管理,但軟件情況參差不齊,一部分使用EXCEL或本單位人員編寫的小

軟件、一部分購(gòu)買了通用人事、人力資源軟件產(chǎn)品,一部分委托計(jì)算機(jī)

軟件公司專門為其定制開發(fā)軟件,還有一部分企業(yè)尚未采用計(jì)算機(jī)軟件

進(jìn)行管理,可以說人力資源信息化的條件已具備,但仍處于發(fā)展階段,

已大部分建立了員工檔案、用軟件進(jìn)行工資發(fā)放等。隨著我國(guó)加入WTO,

財(cái)務(wù)人員面臨新的挑戰(zhàn),要求財(cái)務(wù)人員尤其是財(cái)務(wù)管理人員必須更新觀

念,更新知識(shí),逐步由報(bào)帳型會(huì)計(jì)向適應(yīng)市場(chǎng)經(jīng)濟(jì)需要的管理型會(huì)計(jì)方

向發(fā)展。

1.2數(shù)據(jù)庫的發(fā)展

人類在20世紀(jì)發(fā)明了計(jì)算機(jī),計(jì)算機(jī)科技在20世紀(jì)的后期更是突飛

猛進(jìn)。比起從前,現(xiàn)代企業(yè)更依賴于正確和及時(shí)的信息,以引導(dǎo)它們走向

成功之路。正因?yàn)槿绱耍绾喂芾砗途S護(hù)數(shù)量龐大的信息,并能夠快速抽

取所需的數(shù)據(jù),是現(xiàn)代企業(yè)必須面對(duì)的重要課題。

20世紀(jì)后期是信息爆炸的時(shí)代,數(shù)據(jù)是公司的重要資產(chǎn)。而對(duì)與日俱

增的龐大數(shù)據(jù),企業(yè)若不能有效地加以管理,那么這種資產(chǎn)將成為企業(yè)的

負(fù)擔(dān)?,F(xiàn)代商場(chǎng)是分秒必爭(zhēng)的,我們必須利用軟件工具來處理如此龐大的

數(shù)據(jù),數(shù)據(jù)庫(Database)技術(shù)也就應(yīng)運(yùn)而生。

數(shù)據(jù)庫是一組有組織的數(shù)據(jù)集合,由數(shù)據(jù)庫管理系統(tǒng)(Database

ManagementSystem,DBMS)來管理。因?yàn)楫?dāng)今社會(huì)對(duì)數(shù)據(jù)的需求越來越

迫切,所以數(shù)據(jù)庫技術(shù)的發(fā)展一日千里?,F(xiàn)代數(shù)據(jù)庫不僅能夠存儲(chǔ)傳統(tǒng)的

文字?jǐn)?shù)據(jù)(AlphanumericData),還可以存儲(chǔ)圖像、多媒體、交互視頻和

數(shù)字圖書館等數(shù)據(jù)。就功能而言,現(xiàn)代數(shù)據(jù)庫不再局限于數(shù)據(jù)的管理和存

取,他們還提供圖像對(duì)比、語音識(shí)別以及圖形識(shí)別等功能。

數(shù)據(jù)庫技術(shù)的發(fā)展已有兒十年的歷史了,在整個(gè)發(fā)展過程中,大致有

以下幾種數(shù)據(jù)庫類型:關(guān)系數(shù)據(jù)庫(RelationalDatabase)>結(jié)構(gòu)數(shù)據(jù)庫

(HierarchicalDatabase)、網(wǎng)絡(luò)數(shù)據(jù)庫(NetworkDatabase)、面向?qū)ο髷?shù)

據(jù)庫(Object-orientedDatabase)以及關(guān)系式面向?qū)ο髷?shù)據(jù)庫(Relational

Object-orientedDatabase)o各種類型的數(shù)據(jù)庫都有其優(yōu)缺點(diǎn)和時(shí)代背景。

1.3關(guān)系數(shù)據(jù)庫簡(jiǎn)介

關(guān)系數(shù)據(jù)庫應(yīng)用數(shù)學(xué)方法來處理數(shù)據(jù)庫中的數(shù)據(jù)。最早將這類方法用

于數(shù)據(jù)處理的是1962年CODASYL發(fā)表的“信息時(shí)代”,之后有1968年

DavidChild在7090機(jī)上實(shí)現(xiàn)的集合論數(shù)據(jù)結(jié)構(gòu),但系統(tǒng)地、嚴(yán)格地提出關(guān)

系模型的是美國(guó)IBM公司的E.F.Coddo1970年他在美國(guó)計(jì)算機(jī)學(xué)會(huì)會(huì)刊

《CommunicationoftheACM》發(fā)表的題為"ARelationalModelofDatafbr

SharedBanks"的論文,開創(chuàng)了數(shù)據(jù)庫系統(tǒng)的新紀(jì)元。以后,他連續(xù)發(fā)表了

多篇論文,奠定了關(guān)系數(shù)據(jù)庫的理論基礎(chǔ)。

關(guān)系數(shù)據(jù)庫初期的研究大部分都是在加州圣荷西的IBM研究室內(nèi)進(jìn)行

的,但當(dāng)時(shí)盛行的卻是結(jié)構(gòu)數(shù)據(jù)庫和網(wǎng)絡(luò)數(shù)據(jù)庫。關(guān)系數(shù)據(jù)庫的基本結(jié)構(gòu)

十分簡(jiǎn)單,它石油的概念和模型極易于理解,用戶不需要去了解復(fù)雜的數(shù)

據(jù)結(jié)構(gòu),就可以設(shè)計(jì)并石油關(guān)系數(shù)據(jù)庫,圖1.1展示了關(guān)系數(shù)據(jù)庫的基本

結(jié)構(gòu):

關(guān)系數(shù)據(jù)庫

關(guān)系1關(guān)系2

關(guān)系3關(guān)系4

列1(屬性)列2(屬性)列3(屬性)列n(屬性)

圖1」關(guān)系數(shù)據(jù)庫結(jié)構(gòu)

一個(gè)關(guān)系數(shù)據(jù)庫包含一個(gè)或一個(gè)以上的表格(Table),表格是由記錄

(Record)所組成,每一個(gè)記錄是由列(Column)所組成。同,?個(gè)表格內(nèi)

的記錄格式相同,而且每一列都擁有自己的屬性(Attribute)。表格與表格

之間可能有某些關(guān)系(Relat沁n),關(guān)系數(shù)據(jù)庫正是利用這些關(guān)系而將表格

串聯(lián)成有組織的數(shù)據(jù)集合。

關(guān)系數(shù)據(jù)庫的主要特征之一,就是其設(shè)計(jì)概念與真實(shí)環(huán)境很近似,采

用了表格式的結(jié)構(gòu)。剛開始之所以未能普及,主要是因?yàn)殛P(guān)系數(shù)據(jù)庫回占

用較大的內(nèi)存和磁盤空間。計(jì)算機(jī)科技經(jīng)過幾十年的發(fā)展,硬件設(shè)備的價(jià)

格已經(jīng)相當(dāng)?shù)土?,這使得關(guān)系數(shù)據(jù)庫在目前是一枝獨(dú)秀。

1.4VisualFoxPro簡(jiǎn)介

Fox系列數(shù)據(jù)庫產(chǎn)品作為一種開發(fā)信息管理系統(tǒng)的微機(jī)常用工具,而深受

開發(fā)人員以及廣大用戶的喜愛,但由于微電子技術(shù)的飛速發(fā)展,CPU處理速

度的快速提升,硬盤的容量、速度及其它性能的顯著提高,使得原來運(yùn)行于

小、中型機(jī)等高檔次計(jì)算機(jī)上的SQLServer>Oracle>Sybase等大型數(shù)據(jù)庫

得以在微機(jī)上推廣應(yīng)用,使得較為流行的Fox系列微機(jī)數(shù)據(jù)庫暗然失色,但

隨著VisualFoxPro3.0以及5.0、6.0版本的推出,引入了許多新的特性,因

其融入可視化編程,面向?qū)ο蟪绦蛟O(shè)計(jì)以及ODBC技術(shù),它們的發(fā)布給其帶來

新的生機(jī)。

VisualFoxPro程序設(shè)計(jì)語言是目前流行的關(guān)系數(shù)據(jù)庫語言之一,在

Windows環(huán)境的支持下,采用了面向?qū)ο蟪绦蛟O(shè)計(jì)技術(shù)、可視化技術(shù)和事件

驅(qū)動(dòng)機(jī)制,十分有利于工資發(fā)放系統(tǒng)的開發(fā)與應(yīng)用。Vfp使組織數(shù)據(jù)、定義

數(shù)據(jù)庫規(guī)則和建立應(yīng)用程序等工作變得簡(jiǎn)單易行。利用可視化的設(shè)計(jì)工具和

向?qū)?,可以快速?chuàng)建表單、查詢和報(bào)表。VisualFoxPro還提供了一個(gè)集成化

的開發(fā)環(huán)境,不僅擁有功能強(qiáng)大的面向?qū)ο蟪绦蛟O(shè)計(jì)工具以及客戶/服務(wù)器能

力,而且支持ActiveX,這些特點(diǎn)為快速開發(fā)功能全面的應(yīng)用程序創(chuàng)造了良

好的條件。

VisualFoxPro是一個(gè)非常強(qiáng)大的應(yīng)用程序開發(fā)工具。它的以數(shù)據(jù)為中

心、面向?qū)ο蟮恼Z言為開發(fā)人員提供了非常強(qiáng)大的工具組。面向?qū)ο蟪绦蛟O(shè)

計(jì)(OOP)提供了重用性和相容性很高的應(yīng)用程序。然而,許多開發(fā)人員發(fā)

現(xiàn)從面向過程的程序設(shè)計(jì)轉(zhuǎn)變到面向?qū)ο蟪绦蛟O(shè)計(jì)要費(fèi)相當(dāng)大的周折。

VisualFoxPro6.0減少了這種學(xué)習(xí)周折,通過提供使面向?qū)ο髴?yīng)用程序開發(fā)

更容易的工具簡(jiǎn)化了程序設(shè)計(jì)。

VisualFoxPro基礎(chǔ)庫是一套預(yù)置類庫,開發(fā)人員可以使用它為應(yīng)用程序

提供一般的功能。新的應(yīng)用程序向?qū)褂眠@些向?qū)閿?shù)據(jù)庫解決方案創(chuàng)建完

全面向?qū)ο蟮目蚣堋P碌膽?yīng)用程序生成器用于向使用這個(gè)框架的應(yīng)用程序添

加表單和報(bào)表。組件圖庫(ComponentGallery)簡(jiǎn)化了庫組織,因此開發(fā)人

員在程序開發(fā)時(shí)能夠方便地定位和使用類。

VisualFoxPro對(duì)象可以是可視的(例如表單、表格等等)也可以是非可

視的(custom)o非可視對(duì)象不能包含可視對(duì)象,但可視對(duì)象可以包含非可

視對(duì)象。這意味著,封裝在一個(gè)非可視對(duì)象中的數(shù)據(jù),可以通過定義非可視

對(duì)象為可視對(duì)象類的一部分、或者在可視對(duì)象中實(shí)例化非可視對(duì)象的方法,

使用在可視對(duì)象中?;蛘?,數(shù)據(jù)可以直接封裝在可視對(duì)象中。另一方面,你

不能在一個(gè)非可視對(duì)象中實(shí)例化一個(gè)可視對(duì)象。

在VisualFoxPro的數(shù)據(jù)庫世界里,我們收集的數(shù)據(jù)被保存在數(shù)據(jù)庫表

中。就是說,我們?nèi)匀灰米侄?、記錄、表等等的方式思考。然而,我們?/p>

以以從真實(shí)世界系統(tǒng)中提取我們的對(duì)象那樣完全相同方法從我們的對(duì)象中提

取數(shù)據(jù)。只要我們更進(jìn)一步的使用自頂而下的設(shè)計(jì)并建立數(shù)據(jù)庫表來建立我

們的對(duì)象的模型,或者,既然屬性代表我們的對(duì)象需要儲(chǔ)存的數(shù)據(jù),就用數(shù)

據(jù)表來儲(chǔ)存對(duì)象的屬性。

理解這個(gè)概念的一個(gè)較好的方法是,把我們的表當(dāng)作對(duì)象的基本數(shù)據(jù)結(jié)

構(gòu)。我們?nèi)匀皇褂藐P(guān)系數(shù)據(jù)庫設(shè)計(jì)技術(shù),同時(shí)我們?nèi)匀焕盟蠽isualFoxPro

提供的數(shù)據(jù)庫優(yōu)化能力。我們通過這個(gè)給對(duì)象發(fā)送信息的范例,想要實(shí)現(xiàn)的

是建立一個(gè)對(duì)象的層次,如果你愿意,建立在我們的程序和基本的數(shù)據(jù)之間。

這個(gè)對(duì)象的層次,和管理我們的數(shù)據(jù)的數(shù)據(jù)庫,組成我們編程環(huán)境的基礎(chǔ)。

一旦這個(gè)基礎(chǔ)已存在了,要編寫對(duì)我們的數(shù)據(jù)進(jìn)行工作的特定的應(yīng)用程序就

變得相當(dāng)?shù)暮?jiǎn)單。

圖1.2在VisualFoxPro模型中,對(duì)象在數(shù)據(jù)庫表中儲(chǔ)存它們的數(shù)據(jù)

在VisualFoxPro中,消息的傳遞是通過組成我們建立的對(duì)象的接口的

公開的屬性和方法被處理的。程序,或者其它與我們的對(duì)象通訊的對(duì)象,通

過我們?yōu)樗鼈冊(cè)O(shè)計(jì)的接口而交流。系統(tǒng)也對(duì)我們的對(duì)象發(fā)送消息、調(diào)用事件,

如果我們選擇的話,那些對(duì)象可以對(duì)之做出反應(yīng)。

作為一個(gè)數(shù)據(jù)庫軟件,VisualFoxPro6.0不僅具有管理它本身數(shù)據(jù)的

功能,還可以與其他應(yīng)用程序集成,獲取其他應(yīng)用程序提供的數(shù)據(jù)。另外,

通過VisualFoxPro6.0,還可以將表或視圖中的數(shù)據(jù)與MicrosoftWord文

檔合并,產(chǎn)生郵件合并文檔或者通過通用型字段嵌入或鏈接其他OLE對(duì)象。

1.導(dǎo)入數(shù)據(jù)

所謂導(dǎo)入數(shù)據(jù),就是指從另一個(gè)應(yīng)用程序復(fù)制數(shù)據(jù),然后在Visual

FoxPro6.0中創(chuàng)建一個(gè)新表,并用源文件的數(shù)據(jù)填充該表。在VisualFoxPro

6.0中,可以導(dǎo)入多種文件類型的數(shù)據(jù)。

如果想使用FoxPro或dBASE文件中的表,可以直接打開并使用它們而不

必導(dǎo)入。VisualFoxPro6.0將詢問你是否把表轉(zhuǎn)換為VisualFoxPro6.0

格式。一旦將表從以前的版本轉(zhuǎn)換成最新版本,就不能再用以前的版本打開。

在導(dǎo)入數(shù)據(jù)時(shí),既可以使用“導(dǎo)入向?qū)А?,也可以使用“?dǎo)入”對(duì)話框。

2.把數(shù)據(jù)追加到已有的表

在執(zhí)行導(dǎo)入操作時(shí),除了將數(shù)據(jù)導(dǎo)入到一個(gè)新表以外,你還可以將它導(dǎo)

入到一個(gè)已有的文件中。在選擇將數(shù)據(jù)導(dǎo)入到一個(gè)已有的文件時(shí),Visual

FoxPro6.0將把數(shù)據(jù)追加到已有文件的后面。

除了使用“導(dǎo)入向?qū)А睂⒁獙?dǎo)入的數(shù)據(jù)追加到已有的文件以外,還可以

使用“追加來嫄”對(duì)話框追加數(shù)據(jù)。在使用“追加來源”對(duì)話框追加數(shù)據(jù)時(shí),

首先應(yīng)從“瀏覽”窗口中打開要追加記錄的表。默認(rèn)情況下,VisualFoxPro

6.0將源文件中所有記錄和字段都追加到當(dāng)前打開的表中,但是使用“追加

來源”選項(xiàng),可以指定要追加哪些字段或記錄。

3.導(dǎo)出數(shù)據(jù)

在VisualFoxPro6.0中,不僅可以從其他應(yīng)用程序中導(dǎo)入或追加數(shù)據(jù),

而且還可以把VisualFoxPro6.0表中存儲(chǔ)的數(shù)據(jù)導(dǎo)出到另一種格式的文件

中,供其他應(yīng)用程序使用。所謂導(dǎo)出,就是指把數(shù)據(jù)從VisualFoxPro6.0

表復(fù)制到其他應(yīng)用程序所用的文件中。在VisualFoxPro6.0數(shù)據(jù)庫中,可

以將數(shù)據(jù)存儲(chǔ)為多種文件類型。

在VisualFoxPro6.0中,可以使用“導(dǎo)出”對(duì)話框?qū)С鰯?shù)據(jù)。在導(dǎo)出

數(shù)據(jù)時(shí),既可以導(dǎo)出指定表中的全部字段和記錄,也可以只導(dǎo)出其中的一部

分。用戶可以定義要導(dǎo)出哪些字段和記錄。

4.創(chuàng)建郵件合并文件

我們知道,在Word中使用“工具”菜單中的“郵件合并”功能,可以將

標(biāo)準(zhǔn)文本與單一信息的列表鏈接成新的文檔,包括套用信函、帶地址的信封、

電子郵件和傳真文檔。在VisualFoxPro6.0中,利用“郵件合并向?qū)А蓖?/p>

樣也可以完成上述功能。

“郵件合并向?qū)А皩?shí)際上是將VisualFoxPro6.0和MicrosoftWord

兩種應(yīng)用程序集成在一起,使得MicrosoftWord能夠共享VisualFoxPro6.0

表或視圖中包含的數(shù)據(jù),利用這些數(shù)據(jù)打印一批相同格式的文檔。在日常生

活中,這種方法是很有用的。

5.嵌入或鏈接OLE對(duì)象

上述幾種方法都只能使VisualFoxPro6.0靜態(tài)地共享其他應(yīng)用程序生

成的數(shù)據(jù)。為了能夠動(dòng)態(tài)地共享其他應(yīng)用程序生成的數(shù)據(jù),VisualFoxPro6.0

還提供了嵌入或鏈接數(shù)據(jù)的方法。嵌入和鏈接數(shù)據(jù)的方法是通過通用型字段

實(shí)現(xiàn)的,用戶可以通過通用型字段在表或表單中嵌入或鏈接其他應(yīng)用程序的

數(shù)據(jù),同時(shí)仍用那些應(yīng)用程序維護(hù)這些數(shù)據(jù)。在VisualFoxPro6.0中,外

部數(shù)據(jù)一般都是嵌入或鏈接在表或表單中的。

VisualFoxPro是應(yīng)用廣泛的前臺(tái)數(shù)據(jù)庫開發(fā)平臺(tái)之一,因此在我們?nèi)粘?/p>

工作中時(shí)常會(huì)遇到DBF數(shù)據(jù)文件。然而隨著辦公自動(dòng)化的普及,越來越多的

時(shí)候需要將DBF文件轉(zhuǎn)化為Excel電子文檔。常用轉(zhuǎn)化方法是在FoxPro中

用Copy命令進(jìn)行格式轉(zhuǎn)化或直接用Excel打開DBF文件。這兩種方式雖然

都能達(dá)到目的,卻不能得到格式規(guī)范、可以直接打印輸出的報(bào)表,且輸出的

Excel文件中,無法對(duì)數(shù)據(jù)類型進(jìn)行有效轉(zhuǎn)換,極易出現(xiàn)數(shù)據(jù)統(tǒng)計(jì)錯(cuò)誤。一個(gè)

更加通用的方法,在VFP中調(diào)用Excel,可以由DBF文件直接生成復(fù)雜的

Excel報(bào)表。

VisualFoxPro6.0提供了支持客戶機(jī)/服務(wù)器所需要的各種特征,包括

SQL傳遞技術(shù)、事務(wù)處理、遠(yuǎn)程視圖、數(shù)據(jù)字典、NULL類型、數(shù)據(jù)庫升遷、

及對(duì)ODBC資源的儀程;通過ODBC,可以訪問幾乎任何類型的數(shù)據(jù)庫,如

Oracle、SQLServer、Sybase等主流數(shù)據(jù)庫,不失為客戶機(jī)/服務(wù)器結(jié)構(gòu)應(yīng)用

系統(tǒng)的客戶端優(yōu)秀開發(fā)工具,具有如下的特點(diǎn):

1.開發(fā)應(yīng)用系統(tǒng)快捷、方便,可以減輕開發(fā)人員的勞動(dòng)強(qiáng)度,節(jié)省大

量的開發(fā)時(shí)間:面向?qū)ο筇匦裕鐚?duì)象、類及其繼承性、封閉性、多態(tài)性屬

性等,作為XBASE語言的擴(kuò)展集而實(shí)現(xiàn),提供了對(duì)面向?qū)ο蟪绦蛟O(shè)計(jì)的全

面支持,使開發(fā)者更多把精力放在系統(tǒng)前期分析和程序設(shè)計(jì)上,而不是編碼

上。遵循所見即所得的原則,提供了向?qū)?、代碼范圍分析器、項(xiàng)目管理器、

設(shè)計(jì)器和生成器等圖形化風(fēng)格的交互開發(fā)工具,使設(shè)計(jì)工作在富有情趣的環(huán)

境中進(jìn)行。多姿多彩的工具欄,給用戶帶來諸多的便利。

2.方便實(shí)現(xiàn)數(shù)據(jù)共享、轉(zhuǎn)換:VisualFoxpro與其他Windows應(yīng)用程序

緊密結(jié)合,支持所有Windows的數(shù)據(jù)共享機(jī)制,包括動(dòng)態(tài)連接庫(DLL,

DynamicLinkLibrary)、動(dòng)態(tài)數(shù)據(jù)交換(DDE,DynamicDataExchange)及

對(duì)象連接和嵌入(OLE,ObjectLinkingandEmbedding)等,可以與Microsoft

其他應(yīng)用軟件,如Word、Excel等,共享數(shù)據(jù)資源,快轉(zhuǎn)換成各種格式文檔

資料;可以利用OLE自動(dòng)化命令調(diào)用其他軟件中的數(shù)據(jù)。

3.豐富多媒體數(shù)據(jù)處理功能:VisualFoxpro6.0不但能進(jìn)行文本格式文

件、數(shù)據(jù)庫文件的處理,還提供對(duì)GIF(GraphicsInterchangeFormat)和JPEG

(JointPhotographicElectronicGroup)圖形文件的支持,它提供了一個(gè)多媒

體控制接口。通過多媒體控制接口(MCI,MultimediaControlInterface),

無須介入實(shí)際設(shè)備的復(fù)雜編程就可以操縱所有的多媒體設(shè)備,例如,對(duì)

MMControl控件的簡(jiǎn)單編程就可以實(shí)現(xiàn)視頻文件、音頻文件的播放等操作。

4.方便的應(yīng)用編程接口(API,ApplicationProgrammingInterface)調(diào)

用:VisualFoxpro6.0提供了應(yīng)用編程接口(API),把其與VisualStud沁套

件中的其他開發(fā)工具融為一體,緊密結(jié)合,可以滿足較復(fù)雜的應(yīng)用系統(tǒng)編程

需求。

5.開發(fā)應(yīng)用系統(tǒng)體積小、運(yùn)行速度快:VisualFoxpro大量應(yīng)用動(dòng)態(tài)連

接庫(DLL,DynamicLinkLibrary)機(jī)制,DLL具有一次調(diào)入內(nèi)存可被多各

程序、線程調(diào)用,大大減小了內(nèi)存空間占用,縮小所編譯程序的長(zhǎng)度。

1.5本文的研究路線

當(dāng)前無錫市建設(shè)局退休人員工資的計(jì)算、發(fā)放系統(tǒng)是用Foxbase開發(fā)的,

在使用和維護(hù)方面與在職人員的工資發(fā)放風(fēng)格不統(tǒng)一,報(bào)表格式、表單風(fēng)格

較老,給操作人員帶來了諸多不便,也給數(shù)據(jù)維護(hù)工作帶來困難,特別是對(duì)

操作系統(tǒng)的選擇較苛刻一一必須使用Ucdos,而且數(shù)據(jù)存儲(chǔ)和恢復(fù)不是特別

穩(wěn)定。鑒于存在的問題,局里迫切需要一套用新軟件開發(fā)的退休人員工資管

理系統(tǒng)。根據(jù)我國(guó)事業(yè)單位工資管理?xiàng)l例以及用戶需求,因?yàn)槭菃螜C(jī)版使用,

而且數(shù)據(jù)量不大,基于工資管理系統(tǒng)的設(shè)計(jì)思想和功能要求以及對(duì)軟件資源

的保護(hù),經(jīng)與建設(shè)信息中心領(lǐng)導(dǎo)商量決定,使用VisualFoxPro6.0(簡(jiǎn)稱vfp6.0)

作為系統(tǒng)開發(fā)工具,模仿在職人員工資發(fā)放系統(tǒng)的風(fēng)格和功能重新開發(fā)退休

人員工資管理系統(tǒng),并添加了部分新功能,使該軟件具有計(jì)算安全可靠、界

面友善美觀、操作簡(jiǎn)便易學(xué)的特點(diǎn)。系統(tǒng)使用Windows2000操作系統(tǒng),用具

有極強(qiáng)數(shù)據(jù)處理能力的VFP語言編制。退休人員工資發(fā)放系統(tǒng)的總體設(shè)計(jì)思

想為面向?qū)ο蟮乃枷?,程序設(shè)計(jì)采用模塊法和結(jié)構(gòu)化法二者相結(jié)合的方法。

退休人員工資管理系統(tǒng)以標(biāo)準(zhǔn)化和一致性的Windows界面風(fēng)格來設(shè)計(jì)用戶

界面系統(tǒng),具有直觀、形象和操作簡(jiǎn)單的特點(diǎn)。

第二章退休人員工資管理系統(tǒng)研究概述

2.1設(shè)計(jì)題目

建設(shè)局退休人員工資管理系統(tǒng)

2.2設(shè)計(jì)目的

通過使用VisualFoxPro6.0軟件編程,實(shí)現(xiàn)對(duì)退休人員工資發(fā)放的計(jì)算機(jī)管

理。

2.3設(shè)計(jì)要求及需求分析

①能夠?qū)挝煌诵萑藛T的個(gè)人工資情況進(jìn)行統(tǒng)一管理,具有人員工資錄入功

能,實(shí)現(xiàn)人員工資的動(dòng)態(tài)添加、刪除,工資錄入的內(nèi)容是:人員編號(hào)、人

員姓名、身份證號(hào)、銀行賬號(hào)、各工資項(xiàng)目及合計(jì)等內(nèi)容;具有信息存儲(chǔ)

功能,能夠存儲(chǔ)人員信息、工資信息等重要信息;具有瀏覽功能,能夠?yàn)g

覽各部門人員的工資詳細(xì)信息以及原有人員工資情況的修改、瀏覽等功

能,且具有同步分欄瀏覽。

②在工資管理中,人員的工資會(huì)有變動(dòng),本系統(tǒng)充分利用了計(jì)算機(jī)實(shí)現(xiàn)了對(duì)

個(gè)別特殊情況提供了手工修改和刪除等功能,從而極大減輕了勞資人員的

工作量,并且有效地避免了錯(cuò)漏現(xiàn)象,確保工資的準(zhǔn)確性。

③能夠?qū)ν诵萑藛T的工資情況進(jìn)行瀏覽和歷史查詢??梢园凑杖藛T編號(hào)、人

員姓名、身份證號(hào)、銀行賬號(hào)進(jìn)行查詢,便于勞資人員迅速找到特定人員,

并對(duì)其工資變動(dòng)的歷史記錄一目了然。

④可以打印各種常規(guī)的工資統(tǒng)計(jì)報(bào)表,能夠?qū)⒏鞣N統(tǒng)計(jì)結(jié)果通過打印機(jī)輸

出,能夠利用報(bào)表制作工資條并通過打印機(jī)輸出分發(fā)給領(lǐng)取工資的人員,

以便核對(duì);具有統(tǒng)計(jì)功能,能夠做各部門的每月工資合計(jì)以及分類統(tǒng)計(jì)。

⑤為了保障系統(tǒng)的安全性能,系統(tǒng)在進(jìn)入前提供了密碼檢查功能,并且用戶

還可以任意修改密碼;具有數(shù)據(jù)維護(hù)功能,對(duì)已錄入的各項(xiàng)數(shù)據(jù)可以由專

人進(jìn)行刪除和修改。

2.4可行性分析

根據(jù)需求分析,此系統(tǒng)用vfp6.0開發(fā)可以很好地實(shí)現(xiàn)設(shè)計(jì)要求中所提出

的各項(xiàng)功能指標(biāo)。有了該系統(tǒng)可以使目前的退休人員工資發(fā)放工作大為改觀。

本設(shè)計(jì)將改變目前諸多數(shù)據(jù)手工操作的不便,利用計(jì)算機(jī)中最為友好、最為

方便的Windows界面進(jìn)入本系統(tǒng),并可以讓管理人員輕松自如地通過鼠標(biāo)與

鍵盤的簡(jiǎn)單敲擊,來完成錄入、預(yù)覽、查詢、修改、數(shù)據(jù)統(tǒng)計(jì)等工作,真正

實(shí)現(xiàn)了工資發(fā)放的自動(dòng)化,大大提高工作效率。

第三章退休人員工資管理系統(tǒng)分析與設(shè)計(jì)

3.1設(shè)計(jì)思想

?安全化

因?yàn)楣べY系統(tǒng)涉及單位政策和機(jī)密,每次操作該系統(tǒng)的工作人員都要對(duì)

工資金額做出修改,如果進(jìn)行錯(cuò)誤操作,將會(huì)造成很大的經(jīng)濟(jì)損失,甚至更

為嚴(yán)重,為了確保數(shù)據(jù)的安全性,對(duì)進(jìn)入本系統(tǒng)的人員都要進(jìn)行密碼驗(yàn)證,

以確定其身份是否合法,且具有密碼修改的權(quán)限,以方便經(jīng)常改換密碼,加

強(qiáng)安全。

?模塊化

現(xiàn)在是模塊化程序設(shè)計(jì)的天下,應(yīng)用程序要實(shí)現(xiàn)的目標(biāo)就是金字塔尖,

進(jìn)行程序設(shè)計(jì)規(guī)劃的意義就在于,對(duì)構(gòu)成金字塔的基礎(chǔ)模塊進(jìn)行劃分,規(guī)劃

得越詳細(xì),模塊分工越明確,越容易明白下一步該做什么,這好比搭積木的

游戲,把積木塊組合成各種各樣的形狀,但首先要熟悉每個(gè)積木塊的功能。

因此依據(jù)系統(tǒng)結(jié)構(gòu)化設(shè)計(jì)方法,把整個(gè)系統(tǒng)劃分為若干個(gè)功能模塊,某模塊

可劃分為多個(gè)子模塊,經(jīng)層層分解后,最小的子模塊的功能便十分明確和簡(jiǎn)

單了。這樣做,不僅展現(xiàn)了一個(gè)應(yīng)用軟件系統(tǒng)的整體性和層次性,而且通過

屏幕對(duì)每個(gè)應(yīng)用模塊有明顯的提示,在這些提示下,用戶可以方便地進(jìn)入系

統(tǒng)的每一層進(jìn)行操作,可以非常方便地使用這一數(shù)據(jù)庫應(yīng)用系統(tǒng)。

?智能化

①自動(dòng)編號(hào)加1

為了不給數(shù)據(jù)錄入人員添加記憶上的麻煩,在添加新人員時(shí),為系統(tǒng)設(shè)計(jì)

了對(duì)人員編號(hào)采取自動(dòng)加1的功能,這樣,既避免了空號(hào),也防止了重號(hào),

還方便了計(jì)算人員總數(shù)。

②自動(dòng)計(jì)算各科目小計(jì)及合計(jì)

在工資錄入表單中,當(dāng)操作人員輸入各項(xiàng)工資金額時(shí),系統(tǒng)自動(dòng)將基本工

資、扣款合計(jì)、應(yīng)發(fā)金額、實(shí)發(fā)金額計(jì)算出來,這樣可以正確進(jìn)行工資發(fā)

放,以減少人工計(jì)算的錯(cuò)誤。

③備份和恢復(fù)功能

每月工資發(fā)放結(jié)束后,均可進(jìn)行當(dāng)月工資數(shù)據(jù)備份,在要做年度回顧的時(shí)

候,可隨時(shí)恢復(fù)各月數(shù)據(jù),以備察看。

3.2系統(tǒng)總體結(jié)構(gòu)

本系統(tǒng)功能較為強(qiáng)大,設(shè)計(jì)時(shí)采用了表單、程序、報(bào)表等多種VFP6.0

所給予的方法和手段,生成了數(shù)據(jù)庫、庫表、表單、報(bào)表、程序及其它文件,

同時(shí),還使用了圖形文件和圖標(biāo)文件,使得該應(yīng)用系統(tǒng)圖文并貌,通俗易懂,

便于操作。根據(jù)事業(yè)單位工資管理系統(tǒng)的有關(guān)規(guī)定和用戶需求,退休人員工

資管理系統(tǒng)由工資錄入、工資查詢、工資匯總、報(bào)表打印、密碼設(shè)置、備份

恢復(fù)六個(gè)模塊組成,這些模塊又是若干個(gè)子模塊及二級(jí)子模塊組成,最終形

成了一個(gè)結(jié)構(gòu)緊湊、簡(jiǎn)潔,功能明確、完整的管理系統(tǒng)。系統(tǒng)的六個(gè)模塊是

通過一個(gè)總表單表現(xiàn)出來的,每個(gè)模塊又是由表單中的選項(xiàng)卡來體現(xiàn)的,操

作人員通過選擇不同的選項(xiàng)卡進(jìn)入不同的模塊,再通過選項(xiàng)卡中的不同按鈕

進(jìn)入到下一級(jí)子模塊中,這些子模塊又由不同的表單體現(xiàn)出來,這樣經(jīng)過一

尾或幾層表單的調(diào)用,最終必然達(dá)到預(yù)期的目的。系統(tǒng)總體結(jié)構(gòu)如圖3.1所

/JNo

,

工Y

報(bào)

設(shè)

復(fù)

▼土

數(shù)

數(shù)

工JL

項(xiàng)

據(jù)

據(jù)

項(xiàng)

驗(yàn)

計(jì)

一Is

.

圖3.1系統(tǒng)總體結(jié)構(gòu)

3.3程序設(shè)計(jì)流程圖

為了保證系統(tǒng)的安全性,避免不必要的問題發(fā)生,系統(tǒng)設(shè)置了防止非法

操作人員進(jìn)入系統(tǒng)的功能。系統(tǒng)在運(yùn)行開始界面的時(shí)候,單擊“進(jìn)入系統(tǒng)”

按鈕后,系統(tǒng)實(shí)現(xiàn)提供的是輸入密碼界面,操作人員進(jìn)入本系統(tǒng)前必須輸入

有效的密碼,進(jìn)入系統(tǒng)后,操作人員方可根據(jù)提示按鈕進(jìn)入想要操作的界面。

如果密碼輸入有錯(cuò),系統(tǒng)將有“出錯(cuò)信息”提示,等待操作人員重新輸入密

碼,直至輸入正確為止。密碼驗(yàn)證流程圖如下:

圖3.2密碼驗(yàn)證流程圖

圖3.3系統(tǒng)結(jié)構(gòu)流程圖

圖3.4密碼修改流程圖

查詢模塊的流程圖如圖3.5所示。

圖3.5查詢模塊流程圖

3.4數(shù)據(jù)庫設(shè)計(jì)

本系統(tǒng)中需要保存大量的數(shù)據(jù)信息,在基于VFP語言本身所提供的強(qiáng)大

的數(shù)據(jù)庫管理能力的基礎(chǔ)上,在系統(tǒng)開發(fā)過程中,充分利用了VFP的數(shù)據(jù)環(huán)

境設(shè)計(jì)器來進(jìn)行表單及報(bào)表的數(shù)據(jù)環(huán)境設(shè)置,從而使得與表單有交互作用的

報(bào)表能夠很方便的和表單一起保存,并且在程序中無須進(jìn)行數(shù)據(jù)庫的打開、

關(guān)閉等操作,只要用“select表名”命令即可對(duì)該表進(jìn)行操作,減少了程序

代碼的編寫工作,使程序更加精練。

本系統(tǒng)設(shè)計(jì)一個(gè)數(shù)據(jù)庫,名為:退休人員工資發(fā)放系統(tǒng).dbc,在這個(gè)數(shù)

據(jù)庫中只要建立了以下19張表:

Igty.dbf(離崗?fù)损B(yǎng)):存放離崗?fù)损B(yǎng)人員信息及工資信息

其余另有5張表分別為Ixry.dbf(離休人員)、txl.dbf(退休一)、tx2.dbf(退

休二)、tx3.dbf(退休三)、gqry.dbf(工勤人員)與Igty.dbf結(jié)構(gòu)相同,工

資項(xiàng)目不同。

hzbl.dbf(匯總表1):存放離崗?fù)损B(yǎng)人員工資匯總數(shù)和人員總數(shù)

其余另有5張表分別為其它五部門的匯總表。

hbbl.dbf(主輔幣):存放離崗?fù)损B(yǎng)人員所需主輔幣數(shù)

其余另有5張表分別為其它五部門的主輔幣數(shù)目存放。

3.5系統(tǒng)的進(jìn)入

為了提高數(shù)據(jù)的安全性,避免不必要的問題發(fā)生,系統(tǒng)設(shè)置了防止非法

操作人員進(jìn)入系統(tǒng)的功能。系統(tǒng)在運(yùn)行開始界面的時(shí)候,單擊“進(jìn)入系統(tǒng)”

按鈕后,系統(tǒng)首先提供的是輸入密碼界面(如圖3.6所示),由操作人員輸

入密碼后,系統(tǒng)進(jìn)行判定,如合法則進(jìn)入,密碼輸入有錯(cuò),系統(tǒng)將有“出錯(cuò)

信息”提示,等待操作人員重新輸入密碼,直至輸入正確為止。

圖3.6密碼驗(yàn)證

3.6密碼修改

進(jìn)入系統(tǒng)后,為了操作人員能夠?qū)⒊跏济艽a改為自己較易記憶的密碼,

本系統(tǒng)設(shè)計(jì)了一個(gè)密碼修改功能,密碼修改成功后將被系統(tǒng)記錄到xgb.dbf

中。在修改密碼表單確定按鈕的(Click)事件中寫入了如下代碼:

ch=thisform.text3.value

usedata\xgb

docase

casethisfbrm.textl.value=xgb.nr

ifthisfbrm.text2.value=thisform.text3.value

updatexgbsetnr=ch

wait”密碼修改完畢,按任意鍵返回…”windowat25,60

thisform.release

else

messagebox。新密碼輸入有誤,請(qǐng)重新輸入??;0+48+0;確定)

thisfdrm.text1.value-*

thisfdrm.text2.value-1

thisfbrm.text3.value-1

thisfbrm.textl.setfbcus

thisfbrm.textl.passwordcha^1*1

thisfdrm.text2.passwordchar='*'

thisfbrm.text3.passwordchar='*'

endif

otherwise

messagebox,原密碼不正確,請(qǐng)重新輸入!;0+48+0:確定)

thisfbrm.textl.value-1

thisfbrm.text2.value-*

thisform.text3.value-*

thisfbrm.textl.setfbcus

thisfbrm.textl.passwordchar=,*f

thisform.text2.passwordchar=,**

thisfbrm.text3.passwordchar='*'

endcase

use

第四章退休人員工資發(fā)放系統(tǒng)的功能實(shí)現(xiàn)

根據(jù)系統(tǒng)要求按其功能模塊確定所需設(shè)計(jì)的表單,每項(xiàng)功能都對(duì)應(yīng)一個(gè)

表單或多個(gè)表單來實(shí)現(xiàn)。

每個(gè)VFP應(yīng)用程序都需要有一個(gè)主程序來設(shè)置系統(tǒng)的運(yùn)行環(huán)境,以便將

各個(gè)子程序連接起來。本系統(tǒng)的主控程序包括環(huán)境設(shè)置、確定初始用戶界面

和建立事件循環(huán)三部分。環(huán)境設(shè)置主要用于初始化系統(tǒng)變量以及建立默認(rèn)路

徑,在設(shè)置環(huán)境并進(jìn)入初始化界而后,就需要建立事件循環(huán),以等待用戶操

作并進(jìn)行響應(yīng)。程序中可用READEVENTS和CLEAREVENTS命令實(shí)現(xiàn)對(duì)

事件開始和停止處理的控制,主程序代碼如下:

clearall

settalkoff

setsafetyoff

setstatbaroff

_screen.autocenter=.t.

_screen.closable=.f.

_screertborderstyle=1

modifywindowscreentitle”退休人員工資管理系統(tǒng)”

setpathto\data,\fbrms,\reports,\menu,\pic

doformfbrms\首頁.sex

readevents

4.1數(shù)據(jù)的錄入

數(shù)據(jù)錄入表單中有添加和刪除記錄的要求,這是本系統(tǒng)最基本的功能。

對(duì)于添加記錄,程序中主要采用了兩種方法:一是用APPEND和REPLACE

命令給數(shù)據(jù)庫表添加空記錄,然后在字段中存儲(chǔ)數(shù)據(jù);另一種是用

INSERT-SQL命令直接在表中插入新記錄。刪除記錄則先采用DELETE-SQL

命令對(duì)記錄作刪除標(biāo)記,然后用PACK或ZAP命令從磁盤上永久地刪除,可

用RECALL命令撤消記錄的刪除標(biāo)記。

當(dāng)有新人員又進(jìn)入退休行列,都將要有數(shù)據(jù)錄入的工作,為此本系統(tǒng)設(shè)

有1個(gè)人員信息和工資項(xiàng)目錄入表單,如圖4.1所示。

為了防止錄入人員重復(fù)編號(hào),或不連續(xù)錄入,在“錄入”按鈕的(Click)

事件代碼中,設(shè)計(jì)了一段記錄號(hào)自動(dòng)加1的程序。

command5=messagebox('是要錄入嗎?',1+48+256,'確認(rèn)錄入工資')

ifcommand5=l

gobott

insertintoIgty(rybh)values(str(val(rybh)+1,1))

endif

thisfbrm.refresh

圖4.1工資錄入表單

在錄入工資項(xiàng)目的同時(shí),基本工資、應(yīng)發(fā)金額、扣款合計(jì)、實(shí)發(fā)金額四

項(xiàng)內(nèi)容都是由系統(tǒng)直接運(yùn)算后顯示在只讀框內(nèi),方便了錄入人員,減輕了工

作。在錄入表單的(Init)事件代碼中加入了如下代碼:

thisfbnn.refresh

gobott

thisfbrm.yQe.value=thisfbrm.jcgz.value+thisfdrm.zwgz.value;

+thisfbrm.jbiegz.value+thisfbrm.glgz.value+thisfbrm.gwjt.value;

+thisfbrm.jcjt.value+thisfdrm.zhbt.value+thisfbrm.qtbt.value;

+thisfbrm.wcbt.value+thisfbrm.ylbt.value+thisfbrm.tzbt.value;

+thisform.tgbt.value+thisfbrm.clfbg.value+thisfbrm.dfgwbt.value;

+thisfbrm.qt.value+thisfbrm.bfgz.value

thisfbrm.jbengz.value=thisfdrm.jcgz.value+thisform.zwgz.value;

+thisfbrm.jbiegz.value+thisfbrm.glgz.value

thisform.kkhj.value=thisfbrm.gjj.value+thisfdrm.ettc.value;

+thisfbrm.ghf.value+thisfbrm.sds.value+thisfbrm.hwf.value+thisfbrm.qtkk.value

thisfbrm.sfje.value=thisfbrm.yfje.value-thisfbrm.kkhj.value

因?yàn)樯矸葑C號(hào)和銀行卡號(hào)是每個(gè)人員一種比較重要的憑證,所以要求盡

可能的不發(fā)生錯(cuò)誤。為了確保兩號(hào)的正確性,在身份證號(hào)和卡號(hào)對(duì)應(yīng)的文本

框中,做了正確性檢測(cè)程序設(shè)計(jì)。目前在我國(guó)存在有兩種身份證號(hào)類型,一

種是15位數(shù)字,另一種是18位數(shù)字;而商業(yè)銀行的卡號(hào)也存在兩種,一種

是16位,一種是18位,從這一點(diǎn)出發(fā),考慮將此內(nèi)容限制在兩個(gè)字節(jié)上,

如果輸入時(shí)超出了限定的范圍,系統(tǒng)將顯示“身份證號(hào)非法”或“銀行卡號(hào)

非法”信息,同時(shí),取消原錄入的內(nèi)容,等待重新錄入。因此在文本框的(Valid)

事件中輸入如下代碼(以身份證號(hào)驗(yàn)證為例):

iflen(alltrim(this.value))<>15andlen(alltrim(this.value))<>18

this.value='身份證號(hào)非法!,

A=inkey(l)

thisfbrm.sfzh.value="

endif

4.2數(shù)據(jù)的查詢

操作人員主要工作之一就是進(jìn)行數(shù)據(jù)查詢,查詢?nèi)藛T是否為新退休人員,

如果是就要進(jìn)行重新錄入,系統(tǒng)就會(huì)將該人員的信息和工資信息存儲(chǔ)入庫,

這樣極大地提高管理效率。本設(shè)計(jì)是通過錄入表單中的“查詢”按鈕進(jìn)入查

詢表單進(jìn)入人員查詢,此時(shí),輸入相關(guān)人員的信息之一(人員編號(hào)、人員姓

名、身份證號(hào)、銀行帳號(hào)),計(jì)算機(jī)將對(duì)該人員開始自動(dòng)查詢,查詢結(jié)果將

顯示在錄入表單中,如無該記錄,系統(tǒng)將提示“無此記錄!”。

圖4.2查詢表單

在“查詢”按鈕的(Click)事件中輸入如下DO…CASE語句:

selectIgty

DOCASE

CASETHISFORM.find_name.VALUE='人員編號(hào),

locateforrybh=ALLTRIM(THISFORM.TextLVALUE)

CASETHISFORM.find_name.VALUE廿人員姓名'

locateforryxm=ALLTRIM(THISFORM.Textl.VALUE)

CASETHISFORM.find_name.VALUE廿銀行帳號(hào)(卡號(hào))

locateforkh=ALLTRIM(THISFORM.TextLVALUE)

CASETHISFORM.find_name.VALUE='身份證號(hào),

locateforsfizh=ALLTRIM(THISFORM.TextLVALUE)

ENDCASE

RELEASETHISFORM

4.3數(shù)據(jù)的瀏覽

Grid是VFP功能強(qiáng)大的表格(或者說網(wǎng)格)控件,它提供了比Browse窗口

強(qiáng)大得多的控制方式。Grid是包含列對(duì)象的容器對(duì)象,而列對(duì)象包含了列標(biāo)題

對(duì)象及列控件對(duì)象,均有各自相應(yīng)的屬性集,因此我們可以完全控制表格中的

任何一個(gè)元素,設(shè)計(jì)出瀏覽界面。設(shè)計(jì)靈活性、通用性較強(qiáng)的錄入界面較為合

適的方法是:采用數(shù)據(jù)表(DBF文件)控制Grid控件的行列顯示信息、顯示方

式。因此,我們將Grid控件的數(shù)據(jù)源RecordSource設(shè)為數(shù)據(jù)表(DBF文件),

其數(shù)據(jù)格式、顯示方式及行列提示信息則分別由數(shù)據(jù)表RowMsg.DBF(控制表

格的行即記錄方面信息)、ColMsg.DBF(數(shù)據(jù)格式并控制Grid控件的列方面信

息)進(jìn)行控制。另外,一般來說指定Grid控件第一列顯示行提示信息,若有

多個(gè)提示信息字段,可連接處理為一列。

為了更加便于瀏覽該部門人員的工資信息,本系統(tǒng)專門設(shè)計(jì)了瀏覽窗口,

此窗口的屬性設(shè)置為只讀狀態(tài),用戶只能對(duì)其瀏覽,無法對(duì)其修改。值得一

提的是,本瀏覽窗口的“Partition”屬性改為了2,這樣在用戶瀏覽的時(shí)候不

用擔(dān)心因?yàn)楣べY項(xiàng)目太多,在拖動(dòng)左右滾動(dòng)條往后瀏覽的時(shí)候無法得知人員

信息的尷尬了,因?yàn)樵谶@個(gè)設(shè)置下,兩個(gè)欄里的信息是同步的,人員信息和

工資項(xiàng)目是一一對(duì)應(yīng)的,方便了操作人員對(duì)信息的掌握。

工,瀏覽

人員編號(hào)人員姓名人員編號(hào)人員姓名基礎(chǔ)工資職務(wù)工資級(jí)別工資1

?1李驍)0>■李曉123.00256.00256.00

2王明)02王明131.002565.0045.00

3張小明)03張小明125.0012.00125.00

4IJ1J?r

圖4.3瀏覽表單

4.4報(bào)表的設(shè)計(jì)

本系統(tǒng)的報(bào)表基本是自行創(chuàng)建的,在報(bào)表設(shè)計(jì)器中要指定數(shù)據(jù)環(huán)境和每

個(gè)數(shù)據(jù)源的表達(dá)式,對(duì)報(bào)表格式的控制也是一個(gè)比較煩瑣的工作。在所有的

報(bào)表中比較復(fù)雜的是銀行發(fā)放清冊(cè),因?yàn)橐獜牧鶄€(gè)部門中選出符合條件的人

員放入一張報(bào)表中打印出來,而且沒有現(xiàn)成的表來做數(shù)據(jù)環(huán)境,所以在制作

時(shí)需要建立并調(diào)用臨時(shí)表來解決,在選擇符合條件的人員(去銀行用卡提現(xiàn)

金)時(shí)要加入選擇條件,判斷依據(jù)是卡號(hào)不為空。在做這部分的設(shè)計(jì)時(shí),我

采用了在連接該報(bào)表的按鈕的(Click)事件中建立臨時(shí)表并篩選:

createtabledata/temp(ryxmC(20),sfzhC(20),khC(20),s5eN(8,2))

appendfromdata/lgtyforlen(alltrim(kh))<>0fieldsryxm,sfzh,kh,sfje

appendfromdata/lxryforlen(alltrim(kh))<>0fieldsryxm,sfzh,kh,sfje

appendfromdata/tx1forIen(alItrim(kh))<>0fieldsryxm,sfzh,kh,sfje

appendfromdata/tx2forlen(alltrim(kh))<>0fieldsryxm,sfzh,kh,sfje

appendfromdata/tx3forlen(alltrim(kh))<>0fieldsryxm,sfzh,kh,sfje

appendfromdata/gqryforlen(alltrim(kh))<>0fieldsryxm,sfzh,kh,sfje

selecttemp

reportformreports\yhqcprev

j就報(bào)表設(shè)計(jì)卷-yhqc.frx-頁面113回區(qū)]

銀行工資發(fā)放清冊(cè)

2003年6月

人員姓名身份證號(hào)金領(lǐng)

王小明

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論