版權(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年浙江紹興市中醫(yī)院赴溫州醫(yī)科大學(xué)招聘應(yīng)屆醫(yī)學(xué)類畢業(yè)生74人筆試備考題庫及答案解析
- 能級(jí)工資專項(xiàng)集體合同(2篇)
- 《孔乙己》說課稿10篇
- 南京工業(yè)大學(xué)浦江學(xué)院《招聘與培訓(xùn)課程設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 南京工業(yè)大學(xué)浦江學(xué)院《社會(huì)學(xué)概論》2021-2022學(xué)年第一學(xué)期期末試卷
- 分?jǐn)?shù)的認(rèn)識(shí)說課稿
- 內(nèi)蒙古自治區(qū)呼和浩特市蘭亭文苑C座住宅樓工程施工組織設(shè)計(jì)
- c語言維數(shù)組說課稿
- 南京工業(yè)大學(xué)浦江學(xué)院《計(jì)算機(jī)組成原理》2022-2023學(xué)年期末試卷
- 南京工業(yè)大學(xué)浦江學(xué)院《前廳運(yùn)營(yíng)與管理》2022-2023學(xué)年第一學(xué)期期末試卷
- 煤礦安全數(shù)字化智能巡檢系統(tǒng)
- 廣告宣傳費(fèi)用巧籌劃三個(gè)方案
- 模板支架及腳手架安全使用培訓(xùn)課件
- 企業(yè)財(cái)產(chǎn)保險(xiǎn)投保單
- 柿子品種介紹PPT課件
- 內(nèi)鏡清潔消毒登記表格模板
- 天然氣脫硫(課堂運(yùn)用)
- 幼兒園教師師德師風(fēng)考核表(共2頁)
- 城鎮(zhèn)職工醫(yī)療保險(xiǎn)運(yùn)行中的問題分析及措施
- 學(xué)校食堂五常法管理制度
- 畢業(yè)設(shè)計(jì)500kv變電站設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論