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

付費(fèi)下載

下載本文檔

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

文檔簡介

99/99編號:審定成績:先鋒軟件學(xué)院2011屆畢業(yè)論文題目:ERP工資管理系統(tǒng)分院:軟件工程分院學(xué)生姓名:專業(yè):計算機(jī)應(yīng)用技術(shù)班級:學(xué)號:指導(dǎo)教師:填表時間:年月先鋒軟件學(xué)院學(xué)生畢業(yè)設(shè)計(論文)工作自查表(2010年10月-2011年4月檢查)學(xué)生姓名專業(yè)學(xué)號導(dǎo)師姓名職稱教師導(dǎo)師每周指導(dǎo)次數(shù)5每次:3小時題目名稱ERP工資管理系統(tǒng)作息時間上午9時~12時下午14時~17時晚間19時~21時個人精力實際投入日均工作小時8周均工作小時40缺席天數(shù)0出勤率%100畢業(yè)設(shè)計(論文)工作進(jìn)度已完成主要內(nèi)容%待完成主要內(nèi)容%2010年11月初開始收集資料,工具的選擇;2011年1月初開始論文的編寫,排版。圖表的添加,刪除等操作;2011年1月中旬完成論文,發(fā)表總結(jié),修改不足之處等結(jié)尾工作。95加入圖片,表格頁面的美工,論文的批改,頁眉頁腳,字體文表等各方面不足之處的修改和完善論文。5存在問題工作措施主要是各個功能塊的連接方式還存在問題,待老師幫助解決后,有了初步的解決構(gòu)思。指導(dǎo)教師(簽字):日期:年月日先鋒軟件學(xué)院畢業(yè)論文評閱表(指導(dǎo)教師、評閱人用)論文(設(shè)計)名稱ERP工資管理系統(tǒng)學(xué)生姓名學(xué)號200800004985指導(dǎo)教師或評閱人)姓名序號評審項目指標(biāo)滿分評分1論文(設(shè)計)完成量論文(設(shè)計)內(nèi)容完成量,難易程度符合教學(xué)基本要求202調(diào)查與綜合根據(jù)論文(設(shè)計)任務(wù),能獨(dú)立查閱文獻(xiàn)資料和從事其它有關(guān)調(diào)研。有收集、綜合和正確利用各種信息的能力。203論文(設(shè)計)質(zhì)量文章切合選題,材料豐富、內(nèi)容充實,觀點明確、論據(jù)充分、論證嚴(yán)格,構(gòu)思完整、層次分明、段落、論題間的銜接自然、舒展。文筆流暢、語言通順、使用專業(yè)術(shù)語準(zhǔn)確,圖表清楚,符合要求。504創(chuàng)新有獨(dú)特的見解,或有一定應(yīng)用價值10總分評語:(明確指出論文(設(shè)計)的調(diào)研論證材料收集是否適合論點要求、創(chuàng)新點、論文(設(shè)計)論證能力、寫作水平,同時要明確指出論文(設(shè)計)的不足之處及改進(jìn)方向。)評閱人:年月日摘要[摘要]:隨著Internet技術(shù)的發(fā)展,人們的日常生活已經(jīng)離不開網(wǎng)絡(luò)。未來社會人們的生活和工作將越來越依賴于數(shù)字技術(shù)的發(fā)展,越來越數(shù)字化點、網(wǎng)絡(luò)化、電子化、虛擬化。電子商務(wù)也會隨著網(wǎng)絡(luò)的發(fā)展日益貼近人們的生活。Internet目前的發(fā)展趨勢以及應(yīng)用狀況,可以充分的相信網(wǎng)絡(luò)技術(shù),極大的改善我們的生活方式和工作方式。本設(shè)計嘗試使用Delphi開發(fā)一個屬于本公司的員工的工資管理系統(tǒng),以使得整個公司上下很好的管理每一位員工每月的工資發(fā)放和統(tǒng)計。[關(guān)鍵詞]:InternetRADDelphi電子商務(wù)數(shù)據(jù)庫AbstractAbstract:SummaryalongwiththedevelopmentofInternettschnology,dailylifecannotalreadydowithoutthenetwork.Thelifeandworkofthesocialpeopleoffuturewilldependonthedevelopmentofdigitaltechnologymoreandmore,Digitizemoreandmore,thenetworking,electronization,virtual,E-commercepressesclosetopeople’slifedaybydayalongwiththedevelopmentofnetworktoo.DevelopmentcourseandpresentapplicationstateanddevelopmenttrendofInternet,canbelievenetworktechnologygreatchangelifeandworkingwayofusfully,evenacertainchangewilltakeplaceinthevaluesofthesociety.ThisdesigntriestouseDelphitodevelopacompanyisemployeesBelongtotheSalaryManagementSystem,TomakethewholewellmanagedAcrossthecompanyeveryemployeepayrollandmonthlystatistica.[Keyword]:InternetRADDelphiE-commerceDatabase.目錄前言 11.系統(tǒng)概況 21.1系統(tǒng)開發(fā)背景 21.2系統(tǒng)開發(fā)目的 21.3系統(tǒng)平臺選用 21.3.1數(shù)據(jù)庫技術(shù)的現(xiàn)狀與發(fā)展 31.3.2數(shù)據(jù)庫系統(tǒng)的選擇原則 41.3.3系統(tǒng)開發(fā)工具的選擇 42.需求分析 72.1需求陳述 72.2可行性分析 72.2.1技術(shù)可行性 72.2.2時間、設(shè)備可行性 72.2.3經(jīng)濟(jì)可行性 83.概要設(shè)計 93.1系統(tǒng)功能結(jié)構(gòu)設(shè)計 93.2數(shù)據(jù)庫設(shè)計 93.2.1數(shù)據(jù)庫邏輯結(jié)構(gòu) 103.2.2數(shù)據(jù)庫E-R圖 123.2.3Oracle數(shù)據(jù)庫的使用 134.詳細(xì)設(shè)計 144.1主界面設(shè)計 144.2基本信息管理模塊 154.3工資數(shù)據(jù)模塊 244.4當(dāng)月報表模塊 354.5歷史數(shù)據(jù)模塊 375.系統(tǒng)性能測試與分析 425.2測試方法 425.3測試報告 42總結(jié) 44致謝 45參考文獻(xiàn) 46前言上世紀(jì)八、九十年代以來,計算機(jī)產(chǎn)業(yè)飛速發(fā)展,其應(yīng)用滲透在社會生產(chǎn)的各個領(lǐng)域。計算機(jī)在國內(nèi)的崛起加速了各企事業(yè)單位、機(jī)關(guān)的自動化進(jìn)程,提高了國民生產(chǎn)的效率,從而為國民經(jīng)濟(jì)的飛速發(fā)展創(chuàng)造了必要的條件。步入21世紀(jì)以來,計算機(jī)更是以驚人的普及速度,進(jìn)入各行各業(yè)和大部分家庭。各種應(yīng)用的需求也不斷增加,人們更加追求生活的品質(zhì)和工作的效率,企業(yè)更是視提高生產(chǎn)效率為生存和發(fā)展之道,于是通過科技手段提高生產(chǎn)和管理效率自然成為競爭和發(fā)展的焦點。這不僅包括如何實現(xiàn)企業(yè)生產(chǎn)設(shè)備的改進(jìn)和生產(chǎn)技術(shù)的提高還包括如何有效地組織和管理企業(yè)各項事務(wù),實現(xiàn)企業(yè)的辦公自動化。而管理信息系統(tǒng)(ManagementInformationSystem,MIS)在辦公自動化的進(jìn)程中發(fā)揮著重要的作用。市場需求也日益增加。大型企業(yè)的分工比較嚴(yán)格、細(xì)致,組織較為緊密,對軟硬件的要求也就比較高,因此試圖以一款軟件來解決企業(yè)的所有問題顯然是不可能的,這就需要我們細(xì)化事務(wù),有針對性地開發(fā)縱向應(yīng)用廣泛的MIS系統(tǒng)。不僅能夠解決大型企業(yè)和機(jī)構(gòu)的某方面問題,還應(yīng)該能為更多的中、小型企業(yè)利用,提高他們的工作效率,加速企業(yè)的發(fā)展,從而促進(jìn)國民經(jīng)濟(jì)的建設(shè)。財務(wù)是每一個單位都會涉及的問題,管理軟件雨后春筍般崛起的今天,企業(yè)不僅需要通過軟件有效地對其實施管理,還想操作能夠盡可能簡單,軟件易于上手。通過查閱相關(guān)資料,對市場需求進(jìn)行分析,對既成工資管理軟件的研究和測試,我們認(rèn)為本課題是一個適應(yīng)現(xiàn)今工資管理需求的計算機(jī)信息管理系統(tǒng),具有一定的現(xiàn)實意義和開發(fā)使用價值。1.系統(tǒng)概況1.1系統(tǒng)開發(fā)背景自20世紀(jì)80年代以來,知識經(jīng)濟(jì)的興起和信息技術(shù)的日新月異消除了人與人之間知識、信息傳遞的障礙,也帶來了人類經(jīng)營意識、管理觀念的巨大改變。21世紀(jì)是一個經(jīng)濟(jì)時代,經(jīng)濟(jì)競爭說到底是人才的競爭,誰擁有了人才,誰就將最終擁有財富。通過工資人事管理可以獲得并維持組織的競爭優(yōu)勢,人作為公司最重要的資產(chǎn),如何用好人才,為每個人找到合適的崗位去發(fā)揮其特長是用人的關(guān)鍵環(huán)節(jié)。而運(yùn)用先進(jìn)科技手段進(jìn)行有效管理是最好的發(fā)展方向。MIS作為提高管理效率和辦公自動化進(jìn)程的重要工具,已深入到國民生產(chǎn)的方方面面。我們更加需要開發(fā)適應(yīng)不同行業(yè)不同需求的MIS系統(tǒng)。1.2系統(tǒng)開發(fā)目的本系統(tǒng)開發(fā)的主要目的就是要使企事業(yè)單位工資管理實現(xiàn)計算機(jī)管理,使管理員能夠有序地管理每一位職工的各項工資條款的發(fā)放以及員工個人臺帳的生成,使企業(yè)運(yùn)用現(xiàn)代化技術(shù)創(chuàng)造更多更高的經(jīng)濟(jì)效益。1.3系統(tǒng)平臺選用1.3.1數(shù)據(jù)庫技術(shù)的現(xiàn)狀與發(fā)展數(shù)據(jù)庫是60年代末出現(xiàn)的一門計算機(jī)軟件技術(shù),到現(xiàn)在雖然只有三十多年的歷史,但在理論和時間上都得到了和很大的發(fā)展?,F(xiàn)在,數(shù)據(jù)庫是數(shù)據(jù)處理的主要工具,是管理信息系統(tǒng)(MIS)的核心部分。數(shù)據(jù)庫系統(tǒng)是當(dāng)今計算機(jī)信息系統(tǒng)的核心,是計算機(jī)技術(shù)和應(yīng)用發(fā)展的關(guān)鍵。傳統(tǒng)的數(shù)據(jù)庫系統(tǒng)旨在處理永久、穩(wěn)定的數(shù)據(jù),強(qiáng)調(diào)維護(hù)數(shù)據(jù)的完整性、一致性。數(shù)據(jù)庫理論與技術(shù)的發(fā)展極其迅速,其應(yīng)用日益廣泛,在當(dāng)今的信息社會中,它幾乎無所不在。以關(guān)系型為代表的三大經(jīng)典(層次、網(wǎng)狀、關(guān)系)型數(shù)據(jù)庫在傳統(tǒng)的(商務(wù)和管理的事務(wù)型)應(yīng)用領(lǐng)域獲得了極大成功。計算機(jī)世界報社與IBM公司聯(lián)合舉辦了"21世紀(jì)數(shù)據(jù)庫技術(shù)發(fā)展專家研討會"。IBMDB2的創(chuàng)始人DonaldHaderle先生與國內(nèi)著名數(shù)據(jù)庫專家,就下世紀(jì)數(shù)據(jù)庫發(fā)展的趨勢、數(shù)據(jù)庫領(lǐng)域革命性的突破、IBMDB2的應(yīng)用、數(shù)據(jù)倉庫的實施、我國數(shù)據(jù)庫技術(shù)和應(yīng)用的現(xiàn)狀及趨勢、我國數(shù)據(jù)庫用戶的需求等問題,進(jìn)行了廣泛而深入的討論。1.3.2數(shù)據(jù)庫系統(tǒng)的選擇原則=1\*GB3①數(shù)據(jù)庫系統(tǒng)采用易于集成的,開放的技術(shù)。=2\*GB3②產(chǎn)品質(zhì)量優(yōu)異,可靠性高,適于長期運(yùn)行,能支持關(guān)鍵應(yīng)用。=3\*GB3③數(shù)據(jù)安全,保安型高。=4\*GB3④能提供分布式數(shù)據(jù)庫功能。=5\*GB3⑤支持多種開發(fā)環(huán)境,軟件開發(fā)容易。=6\*GB3⑥擴(kuò)充性和升級能力強(qiáng)。1.3.3系統(tǒng)開發(fā)工具的選擇本次工資管理系統(tǒng)選用Delphi與Oracle11g進(jìn)行開發(fā),現(xiàn)在市場上有很多MIS的開發(fā)工具,如:Visualbasic、Delphi、ASP等等,數(shù)據(jù)庫開發(fā)工具又有很多種,如:Access,SQLSever,Oracle等等。與其他開發(fā)工具相比,Delphi與Oracle有著自己的特點與優(yōu)勢。=1\*GB2⑴Delphi簡介Delphi,是Windows平臺下著名的快速應(yīng)用程序開發(fā)工具(RapidApplicationDevelopment,簡稱RAD)。它的前身,即是DOS時代盛行一時的“BorlandTurboPascal”,最早的版本由美國Borland(寶蘭)公司于1995年開發(fā)。主創(chuàng)者為AndersHejlsberg。經(jīng)過數(shù)年的發(fā)展,此產(chǎn)品也轉(zhuǎn)移至Embarcadero公司旗下。從產(chǎn)品名稱上就可以知道,TurboPascal使用的是Pascal語言。從TurboPascal5.5版開始,Borland公司在傳統(tǒng)Pascal的基礎(chǔ)上加入了面向?qū)ο蟮墓δ?。Delphi是一個集成開發(fā)環(huán)境(IDE),使用的核心是由傳統(tǒng)Pascal語言發(fā)展而來的ObjectPascal,以圖形用戶界面(GraphicalUserInterface,簡稱GUI)為開發(fā)環(huán)境,透過IDE、VCL工具與編譯器,配合連結(jié)數(shù)據(jù)庫的功能,構(gòu)成一個以面向?qū)ο蟪绦蛟O(shè)計為中心的應(yīng)用程序開發(fā)工具。Delphi所編譯的可運(yùn)行檔,雖然容量較大,但效能上卻比較快。除了使用數(shù)據(jù)庫的程序之外,不需安裝即可運(yùn)行,在使用上相當(dāng)方便。Delphi在本質(zhì)上應(yīng)該歸類為軟件開發(fā)工具,而非程序語言,但由于Delphi幾乎是目前市場上唯一使用Pascal,并持續(xù)推出新版本的商業(yè)產(chǎn)品。因此,有時人們會把Delphi視為ObjectPascal的代名詞。Borland公司因而把ObjectPascal改稱為Delphi。2006年,Borland把開發(fā)工具產(chǎn)品線獨(dú)立出來,成立了一家新的公司CodeGear,并把產(chǎn)品線交由此公司負(fù)責(zé)。原本的Delphi,亦曾一度因此被命名為TurboDelphi。但是在新的版本中,除了DelphiforWin32(原有的Delphi版本)之外,還有一個新產(chǎn)品“DelphiforPHP”。在CodeGear的發(fā)展規(guī)劃中,或許“Delphi”不再是ObjectPascal的專屬IDE名稱,而是將之提升到通用IDE品牌的層次。2008年5月7日,EmbarcaderoTechnologies(易博龍)公司宣布以2300萬美元的價格收購CodeGear公司,從而把Delphi收入囊中。2009年5月6日,MicroFocus宣布以7500萬美元收購Borland。Delphi目前的最新版本是2010。Delphi具有如下特點:=1\*GB3①直接編譯生成可執(zhí)行代碼,編譯速度快。由于Delphi編譯器采用了條件編譯和選擇鏈接技術(shù),使用它生成的執(zhí)行文件更加精煉,運(yùn)行速度更快。在處理速度和存取服務(wù)器方面,Delphi的性能遠(yuǎn)遠(yuǎn)高于其他同類產(chǎn)品。=2\*GB3②支持將存取規(guī)則分別交給客戶機(jī)或服務(wù)器處理的兩種方案,而且允許開發(fā)人員建立一個簡單的部件或部件集合,封裝起所有的規(guī)則,并獨(dú)立于服務(wù)器和客戶機(jī),所有的數(shù)據(jù)轉(zhuǎn)移通過這些部件來完成。這樣,大大減少了對服務(wù)器的請求和網(wǎng)絡(luò)上的數(shù)據(jù)傳輸量,提高了應(yīng)用處理的速度。=3\*GB3③提供了許多快速方便的開發(fā)方法,使開發(fā)人員能用盡可能少的重復(fù)性工作完成各種不同的應(yīng)用。利用項目模板和專家生成器可以很快建立項目的構(gòu)架,然后根據(jù)用戶的實際需要逐步完善。=4\*GB3④具有可重用性和可擴(kuò)展性。開發(fā)人員不必再對諸如標(biāo)簽、按鈕及對話框等Windows的常見部件進(jìn)行編程。Delphi包含許多可以重復(fù)使用的部件,允許用戶控制Windows的開發(fā)效果。=5\*GB3⑤具有強(qiáng)大的數(shù)據(jù)存取功能。它的數(shù)據(jù)處理工具BDE(BorlandDatabaseEngine)是一個標(biāo)準(zhǔn)的中介軟件層,可以用來處理當(dāng)前流行的數(shù)據(jù)格式,如xBase、Paradox等,也可以通過BDE的SQLLink直接與Sybase、SQLServer、Informix、Oracle等大型數(shù)據(jù)庫連接。Delphi既可用于開發(fā)系統(tǒng)軟件,也適合于應(yīng)用軟件的開發(fā)。=6\*GB3⑥擁有強(qiáng)大的網(wǎng)絡(luò)開發(fā)能力,能夠快速的開發(fā)B/S應(yīng)用,它內(nèi)置的IntraWeb和ExpressWeb使得對于網(wǎng)絡(luò)的開發(fā)效率超過了其他任何的開發(fā)工具。=7\*GB3⑦Delphi使用獨(dú)特的VCL類庫,使得編寫出的程序顯得條理清晰,VCL是現(xiàn)在最優(yōu)秀的類庫,它使得Delphi在軟件開發(fā)行業(yè)處于一個絕對領(lǐng)先的地位。用戶可以按自己的需要,任意的構(gòu)建、擴(kuò)充、甚至是刪減VCL,以滿足不同的需要。=8\*GB3⑧從Delphi8開始Delphi也支持.Net框架下程序開發(fā)。當(dāng)前DELPHI已經(jīng)成為一個品牌,而不僅僅是一個開發(fā)平臺或開發(fā)語言的名稱。當(dāng)前DELPHI產(chǎn)品已經(jīng)由CodeGear公司繼續(xù)發(fā)展,該公司是BORLAND公司的全資子公司。當(dāng)前,CodeGear為廣大開發(fā)者提供了DELPHIFORPHP,以高度可視化的方式全面支持面向?qū)ο蟮腜HP網(wǎng)站開發(fā),大大提高了PHP開發(fā)網(wǎng)站的代碼復(fù)用程度,成為WEB應(yīng)用開發(fā)的新利器。=2\*GB2⑵Oracle簡介Oracle的關(guān)系數(shù)據(jù)庫是世界第一個支持SQL語言的數(shù)據(jù)庫。1977年,LawrenceJ.Ellison領(lǐng)著一些同事成立了Oracle公司,他們的成功強(qiáng)力反擊了那些說關(guān)系數(shù)據(jù)庫無法成功商業(yè)化的說法?,F(xiàn)在,Oracle公司的財產(chǎn)凈值已經(jīng)由當(dāng)初的2000美元增值到了現(xiàn)在的年收入超過97億美元。Oracle11g擴(kuò)展了Oracle獨(dú)家具有的提供網(wǎng)格計算優(yōu)勢的功能,可以利用它來提高用戶服務(wù)水平、減少停機(jī)時間以及更加有效地利用IT資源,同時還可以增強(qiáng)全天候業(yè)務(wù)應(yīng)用程序的性能、可伸縮性和安全性。11g降低了數(shù)據(jù)庫升級以及其他硬件和操作系統(tǒng)更改的成本,顯著簡化了更改前后的系統(tǒng)測試以便您可以識別和解決問題。例如:利用DatabaseReplay,可以在數(shù)據(jù)庫級別輕松捕獲實際的生產(chǎn)負(fù)載并在您的測試系統(tǒng)上重新播放,這樣您可以全面測試系統(tǒng)更改(包括關(guān)鍵的并發(fā)特性)的影響。Oracle數(shù)據(jù)庫11g繼續(xù)致力于(從Oracle9i數(shù)據(jù)庫開始一直到Oracle數(shù)據(jù)庫10g)顯著簡化和完全自動化DBA任務(wù)。Oracle數(shù)據(jù)庫11g中的新功能包括:利用自學(xué)功能自動進(jìn)行SQL優(yōu)化系統(tǒng)全局區(qū)(SGA)和程序全局區(qū)(PGA)的內(nèi)存緩存區(qū)的自動、統(tǒng)一調(diào)整新的advisor用于分區(qū)、數(shù)據(jù)恢復(fù)、流性能和空間管理針對自動數(shù)據(jù)庫診斷監(jiān)視器(ADDM)的增強(qiáng),能夠提供Oracle真正應(yīng)用集群(OracleRAC)環(huán)境中的更好的性能全局視圖以及改進(jìn)的性能比較分析功能。Oracle數(shù)據(jù)庫11g中新增的故障診斷功能使客戶在發(fā)生錯誤后捕獲OracleSupport所需的數(shù)據(jù)變得極為簡單。這可以加速問題的解決,減少客戶重現(xiàn)問題的需要。=3\*GB2⑶Delphi和Oracle數(shù)據(jù)庫的連接方法Oracle是以高級結(jié)構(gòu)化查詢語言(SQL)為基礎(chǔ)的大型關(guān)系數(shù)據(jù)庫,是目前最流行的客戶/服務(wù)器(CLIENT/SERVER)體系結(jié)構(gòu)的數(shù)據(jù)庫之一,目前被廣泛應(yīng)用于各類型企業(yè)的信息化管理中。數(shù)據(jù)庫支持是Delphi7.0開發(fā)環(huán)境的一個重要特性,很多程序員在數(shù)據(jù)庫應(yīng)用程序開發(fā)中都采用Delphi7.0作為開發(fā)工具,來實現(xiàn)對數(shù)據(jù)庫的訪問和控制。Delphi數(shù)據(jù)庫應(yīng)用程序是通過數(shù)據(jù)庫引擎來訪問它們引用的數(shù)據(jù)源的。本文概括性的介紹在WindowsXP環(huán)境中Delphi7.0連接Oracle數(shù)據(jù)庫的3種方式,它們分別是BDE、ADO、DbExpress。ADO(ActiveXDataObjects)是Microsoft的高級接口,基于Microsoft的數(shù)據(jù)訪問OLEDB技術(shù)而實現(xiàn)。本系統(tǒng)采用ADO方式連接Oracle數(shù)據(jù)庫。2.需求分析2.1需求陳述本系統(tǒng)擬在完成工資管理的同時,集成其他必要的功能,以保證系統(tǒng)的完整性和安全性。具體包括,員工基本信息管理、部門管理、當(dāng)前工資及歷史工資管理等?,F(xiàn)對有關(guān)要求描述如下:①整體結(jié)構(gòu)合理,風(fēng)格一致,模塊化結(jié)構(gòu),界面清晰,接口靈活,操作簡便。②開發(fā)方法,文檔規(guī)范化,便于管理,可擴(kuò)充。③完善的數(shù)據(jù)輸入,維護(hù),輸出。④自檢性能高,用戶誤輸、錯輸均有提示。⑤容錯性能高,某個用戶的操作錯誤不會引起整個系統(tǒng)的癱瘓,每一功能的操作都有信息提示以免重復(fù)操作,錯誤操作有警告,以便用戶及時改正。2.2可行性分析2.2.1技術(shù)可行性技術(shù)上的可行性分析主要分析現(xiàn)有技術(shù)條件能否順利完成開發(fā)工作,軟硬件配置能否滿足開發(fā)者需要等,這一特點非常適合計算機(jī)的特點,發(fā)揮計算機(jī)的數(shù)據(jù)處理速度快,準(zhǔn)確率高的優(yōu)勢,現(xiàn)代計算機(jī)硬件和軟件技術(shù)的飛速發(fā)展,為系統(tǒng)的建設(shè)提供了技術(shù)條件。通過對Delphi和Oracle的系統(tǒng)學(xué)習(xí),已經(jīng)基本掌握了開發(fā)本系統(tǒng)所需的技術(shù)和查閱文獻(xiàn)的能力。對工資管理系統(tǒng)這一類的財務(wù)系統(tǒng)開發(fā)也有一定的認(rèn)識,因此具備技術(shù)可行性。2.2.2時間、設(shè)備可行性5周的時間足夠開發(fā)一個滿足中小型企業(yè)簡單需求的工資管理系統(tǒng),現(xiàn)有計算機(jī)的軟硬件配置能夠滿足系統(tǒng)開發(fā)的要求,具備時間和設(shè)備的可行性。2.2.3經(jīng)濟(jì)可行性基于企業(yè)的現(xiàn)有計算機(jī)及配套設(shè)備,建設(shè)MIS系統(tǒng)。不但能大大減少重復(fù)性的書面報告,降低辦公費(fèi)用,提高辦公室效率,而且能提高檢測數(shù)據(jù)效用,為企業(yè)提供很方便。由于企業(yè)工資管理系統(tǒng)是一個比較小型的系統(tǒng),開發(fā)工具也均可免費(fèi)使用,網(wǎng)絡(luò)資源豐富,只需較少的花費(fèi)在技術(shù)文獻(xiàn)上,開發(fā)成本較低,因此,開發(fā)本系統(tǒng)具有經(jīng)濟(jì)上的可行性。3.概要設(shè)計3.1系統(tǒng)功能結(jié)構(gòu)設(shè)計工資管理系統(tǒng)工資管理系統(tǒng)數(shù)據(jù)字典維護(hù)工資數(shù)據(jù)當(dāng)月報表歷史數(shù)據(jù)系統(tǒng)信息部門信息管理員工信息管理基本數(shù)據(jù)每月填報每月存檔當(dāng)月報表當(dāng)月匯總部門月報月匯總表圖3.1功能模塊圖功能序號功能名稱功能說明1部門信息管理包含對部門信息的增加、刪除2員工信息管理包含對員工信息的增加、刪除3基本工資數(shù)據(jù)查看和修改基本工資信息4活動工資數(shù)據(jù)填報每月活動工資數(shù)據(jù)5每月工資存檔每月工資填報完畢后存儲數(shù)據(jù)6當(dāng)月報表查看當(dāng)月各部門工資表,打印工資條7當(dāng)月匯總表查詢當(dāng)月各部門工資匯總信息8歷史部門月報查詢歷史年月的部門工資信息9歷史月匯總表查詢指定部門制定年月的歷史工資匯總信息10系統(tǒng)信息系統(tǒng)與作者信息等表3.1功能說明表設(shè)計角色:財務(wù)管理人員3.2數(shù)據(jù)庫設(shè)計3.2.1數(shù)據(jù)庫邏輯結(jié)構(gòu)字段名稱類型寬度約束說明BhVARCHAR23Pk部門編號McVARCHAR210部門名稱表3.2部門信息表(bm)字段名稱類型寬度約束說明BmVARCHAR210部門BhVARCHAR23編號XmVARCHAR210姓名Z1NUMBER(8,2)崗位資Z2NUMBER(8,2)基本資Z3NUMBER(8,2)效益資J1NUMBER(8,2)加班J2NUMBER(8,2)金額J3NUMBER(8,2)夜班J4NUMBER(8,2)金額Z4NUMBER(8,2)獨(dú)子Z5NUMBER(8,2)月效資Z6NUMBER(8,2)技師補(bǔ)Z7NUMBER(8,2)醫(yī)務(wù)補(bǔ)Z8NUMBER(8,2)護(hù)10%Z9NUMBER(8,2)護(hù)齡Z10NUMBER(8,2)女工衛(wèi)Z11NUMBER(8,2)廠扣Z12NUMBER(8,2)應(yīng)得資K1NUMBER(8,2)房租金KNUMBER(8,2)水電暖K3NUMBER(8,2)公積金Z13NUMBER(8,2)保險RqVARCHAR2200日期KbxNUMBER(8,2)實發(fā)工資表3.3職工工資信息表(ry)字段名稱類型寬度約束說明BmVARCHAR21部門BhVARCHAR23編號XmVARCHAR210姓名Z1NUMBER(8,2)崗位資Z2NUMBER(8,2)基本資Z3NUMBER(8,2)效益資J1NUMBER(8,2)加班J2NUMBER(8,2)金額J3NUMBER(8,2)夜班J4NUMBER(8,2)金額Z4NUMBER(8,2)獨(dú)子Z5NUMBER(8,2)月效資Z6NUMBER(8,2)技師補(bǔ)Z7NUMBER(8,2)醫(yī)務(wù)補(bǔ)Z8NUMBER(8,2)護(hù)10%Z9NUMBER(8,2)護(hù)齡Z10NUMBER(8,2)女工衛(wèi)Z11NUMBER(8,2)廠扣Z12NUMBER(8,2)應(yīng)得資K1NUMBER(8,2)房租金KNUMBER(8,2)水電暖K3NUMBER(8,2)公積金Z13NUMBER(8,2)保險RqVARCHAR2200日期KbxNUMBER(8,2)實發(fā)工資表3.4歷史數(shù)據(jù)表(sj)3.2.2數(shù)據(jù)庫E-R圖部門部門員工工作工資資資金暖金保險日期金額夜班獨(dú)子金額加班資資資補(bǔ)補(bǔ)廠扣衛(wèi)領(lǐng)取n11n圖3.2工資管理系統(tǒng)實體關(guān)系圖3.2.3Oracle數(shù)據(jù)庫的使用在Oracle中創(chuàng)建用戶,如圖3.2所示圖3.2創(chuàng)建用戶在Oracle中建表,如圖3.3所示圖3.3建表4.詳細(xì)設(shè)計4.1主界面設(shè)計由于本系統(tǒng)是針對財務(wù)管理人員角色設(shè)計開發(fā)的,故未進(jìn)行權(quán)限的設(shè)定。在主界面顯示每個模塊的入口,點擊即可進(jìn)入。在狀態(tài)欄顯示系統(tǒng)日期和登錄系統(tǒng)時間。系統(tǒng)主界面如圖4.1所示:圖4.1系統(tǒng)主界面該模塊主要代碼:procedureTgzgl_f.FormCreate(Sender:TObject);//數(shù)據(jù)庫連接處理begingzgl_f.Color:=rgb(180,130,100);trydb1.Connected:=true;exceptshowmessage('連接數(shù)據(jù)庫失敗!');application.terminate;end;end;procedureTmainf.FormCreate(Sender:TObject);//狀態(tài)欄系統(tǒng)日期與時間beginStatusbar1.Panels[0].Text:='系統(tǒng)日期:'+datetostr(date);Statusbar1.Panels[1].Text:='系統(tǒng)時間:'+timetostr(time);end;procedureTmainf.bmiClick(Sender:TObject);//選中菜單顯示相應(yīng)的窗體,此處為部門管理beginIfbmi.CheckedThen//用If語句做異常處理bmf.ShowELSEbeginApplication.CreateForm(Tbmf,bmf);bmf.Show;bmi.Checked:=True;end;end;4.2基本信息管理模塊此模塊包括部門和員工的基本信息維護(hù),具體功能包括,部門信息的添加和刪除,員工信息的添加和刪除。輸入要添加的數(shù)據(jù)后,點擊“添加”完成數(shù)據(jù)添加,點擊“刷新”按鈕顯示數(shù)據(jù)。刪除數(shù)據(jù)時程序?qū)⑦B接后臺數(shù)據(jù)庫,判斷是否存在該記錄的工資信息,若不存在則刪除成功,若存在,則刪除失敗。如圖4.2,4.3所示圖4.2部門信息維護(hù)部門信息維護(hù)核心代碼:procedureTbmf.BitBtn1Click(Sender:TObject);beginedit1.Text:=trim(edit1.text);if(length(edit1.Text)=0)or(length(bh.Text)=0)thenbeginshowmessage('編號與單位名稱不能為空!');exit;end;withQ1dobeginClose;Sql.Clear;Sql.Add('InsertIntobm(bh,mc)');Sql.Add('Values(:y0,:y1)');Parameters.ParamByName('y0').Value:=bh.Text;Parameters.ParamByName('y1').Value:=edit1.Text;TryExecSql;exceptshowmessage('服務(wù)器連接error,程序退出!');application.Terminate;end;end;end;procedureTbmf.BitBtn2Click(Sender:TObject);beginifmessagedlg('如果系統(tǒng)中存在本部門數(shù)據(jù)不能刪除,確要刪除嗎?',mtconfirmation,[mbyes,mbno],0)=mrnothenexit;q1.Close;q1.Sql.Clear;q1.Sql.Add('deletefrombm');q1.Sql.Add('where(bhlike:bh)');q1.Parameters.ParamByName('bh').Value:=bh.text+'%';Tryq1.ExecSql;exceptshowmessage('服務(wù)器連接error,程序退出!');application.Terminate;end;q1.Close;end;procedureTbmf.BitBtn3Click(Sender:TObject);vari:integer;beginQ1.Close;Q1.Sql.Clear;Q1.Sql.Add('Selectbh,mcFrombm');Q1.Sql.Add('orderbybh');TryQ1.Open;exceptshowmessage('服務(wù)器連接error,程序退出!');application.Terminate;End;sg.RowCount:=Q1.RecordCount+1;sg.ColCount:=2;ForI:=0Tosg.RowCountDosg.Rows[I].Clear;sg.Cells[0,0]:='編號';sg.Cells[1,0]:='名稱';ForI:=1Tosg.RowCountDoBeginsg.Cells[0,i]:=(Q1.FieldByName('bh').AsString);sg.Cells[1,i]:=(Q1.FieldByName('mc').AsString);Q1.Next;End;Q1.Close;end;procedureTbmf.FormClose(Sender:TObject;varAction:TCloseAction);beginmainf.bmi.checked:=false;action:=cafree;end;procedureTbmf.FormCreate(Sender:TObject);vari:integer;beginbmf.Color:=rgb(220,170,140);fori:=1to9dobh.Items.Add('0'+inttostr(i));fori:=10to50dobh.Items.Add(inttostr(i));sg.FixedColor:=rgb(180,130,100);end;員工信息維護(hù):圖4.3員工信息維護(hù)員工信息維護(hù)核心代碼:procedureTryf.BitBtn1Click(Sender:TObject);beginedit1.Text:=trim(edit1.text);if(length(edit1.Text)=0)or(length(bh.Text)=0)or(length(bm.Text)=0)thenbeginshowmessage('編號與單位名稱不能為空!');exit;end;withQ1dobeginClose;Sql.Clear;Sql.Add('InsertIntory(bm,bh,xm)');Sql.Add('Values(:y0,:y1,:y2)');Parameters.ParamByName('y0').Value:=bm.Text;Parameters.ParamByName('y1').Value:=bh.Text;Parameters.ParamByName('y2').Value:=edit1.Text;TryExecSql;exceptshowmessage('服務(wù)器連接error,程序退出!');application.Terminate;end;end;end;procedureTryf.BitBtn2Click(Sender:TObject);beginifmessagedlg('如果系統(tǒng)中存在本人工資數(shù)據(jù)不能刪除,確要刪除嗎?',mtconfirmation,[mbyes,mbno],0)=mrnothenexit;bh.text:=trim(bh.text);if(length(bh.text)<2)thenexit;q1.Close;q1.Sql.Clear;q1.Sql.Add('deletefromry');q1.Sql.Add('where((bhlike:bh)and(bmlike:bm))');q1.Parameters.ParamByName('bh').Value:=bh.text+'%';q1.Parameters.ParamByName('bm').Value:=bm.text+'%';Tryq1.ExecSql;exceptshowmessage('服務(wù)器連接error,程序退出!');application.Terminate;end;q1.Close;end;procedureTryf.BitBtn3Click(Sender:TObject);vari:integer;beginListBox1.Items.Clear;Q1.Close;Q1.Sql.Clear;Q1.Sql.Add('Selectbh,xmFromry');q1.Sql.Add('where(bmlike:bm)');Q1.Sql.Add('orderbybh');q1.Parameters.ParamByName('bm').Value:=bm.text+'%';TryQ1.Open;exceptshowmessage('服務(wù)器連接error,程序退出!');application.Terminate;End;ListBox1.Items.Add('編號姓名');ForI:=1ToQ1.RecordCountDoBeginListBox1.Items.Add(''+Q1.FieldByName('bh').AsString+''+Q1.FieldByName('xm').AsString);Q1.Next;End;Q1.Close;end;procedureTryf.bmChange(Sender:TObject);vari:integer;beginListBox1.Items.Clear;Q1.Close;Q1.Sql.Clear;Q1.Sql.Add('Selectbh,xmFromry');q1.Sql.Add('where(bmlike:bm)');Q1.Sql.Add('orderbybh');q1.Parameters.ParamByName('bm').Value:=bm.text+'%';TryQ1.Open;exceptshowmessage('服務(wù)器連接error,程序退出!');application.Terminate;End;ListBox1.Items.Add('編號姓名');ForI:=1ToQ1.RecordCountDoBeginListBox1.Items.Add(''+Q1.FieldByName('bh').AsString+''+Q1.FieldByName('xm').AsString);Q1.Next;End;Q1.Close;bh.Text:='';edit1.Text:='';end;procedureTryf.FormClose(Sender:TObject;varAction:TCloseAction);beginmainf.ryi.checked:=false;action:=cafree;end;procedureTryf.FormCreate(Sender:TObject);vari:integer;beginryf.Color:=rgb(220,170,140);Q1.Close;Q1.Sql.Clear;Q1.Sql.Add('SelectmcFrombm');Q1.Sql.Add('orderbybh');TryQ1.Open;exceptshowmessage('服務(wù)器連接error,程序退出!');application.Terminate;End;ForI:=1ToQ1.RecordCountDoBeginbm.Items.Add(Q1.FieldByName('mc').AsString);Q1.Next;End;Q1.Close;fori:=1to9dobh.Items.Add('0'+inttostr(i));fori:=10to99dobh.Items.Add(inttostr(i));end;4.3工資數(shù)據(jù)模塊本模塊包括月基本工資數(shù)據(jù)、月活動工資填報、月數(shù)據(jù)存檔三個子模塊,分別用于查看修改月基本工資數(shù)據(jù),填報月活動工資數(shù)據(jù)以及對填報好的所有數(shù)據(jù)存檔。月基本數(shù)據(jù)界面設(shè)計如圖4.4所示:圖4.4月基本數(shù)據(jù)核心代碼:procedureTjbf.BitBtn1Click(Sender:TObject);vari,j,k:integer;s:string;beginifmessagedlg('確認(rèn)更新數(shù)據(jù)嗎?',mtconfirmation,[mbyes,mbno],0)=mrnothenexit;ifbm.Text=''thenexit;k:=0;fori:=1tosg.RowCount-1doforj:=1to10dobegintrysg.Cells[j,i]:=floattostr(strtofloat(sg.Cells[j,i]));exceptshowmessage('第'+inttostr(i)+'行第'+inttostr(j)+'列有非法數(shù)字');k:=k+1;end;end;ifk>0thenexit;s:='';fori:=1tosg.RowCount-1dobegins:=sg.Cells[0,i];Q1.Close;Q1.Sql.Clear;Q1.Sql.Add('updaterysetz1=:z1,z2=:z2,z3=:z3,z4=:z4,z5=:z5,z6=:z6,');Q1.Sql.Add('z7=:z7,z8=:z8,z9=:z9,z10=:z10,z11=:z11,k3=:k3,kbx=:kbx');q1.Sql.Add('where(bmlike:bm)and(bhlike:bh)');q1.Parameters.ParamByName('z1').Value:=strtofloat(sg.Cells[1,i]);q1.Parameters.ParamByName('z2').Value:=strtofloat(sg.Cells[1,i])*0.4;q1.Parameters.ParamByName('z3').Value:=strtofloat(sg.Cells[1,i])*0.6;q1.Parameters.ParamByName('z4').Value:=strtofloat(sg.Cells[2,i]);q1.Parameters.ParamByName('z5').Value:=strtofloat(sg.Cells[3,i]);q1.Parameters.ParamByName('z6').Value:=strtofloat(sg.Cells[4,i]);q1.Parameters.ParamByName('z7').Value:=strtofloat(sg.Cells[5,i]);q1.Parameters.ParamByName('z8').Value:=strtofloat(sg.Cells[6,i]);q1.Parameters.ParamByName('z9').Value:=strtofloat(sg.Cells[7,i]);q1.Parameters.ParamByName('z10').Value:=strtofloat(sg.Cells[8,i]);q1.Parameters.ParamByName('z11').Value:=-(strtofloat(sg.Cells[1,i])*0.1618);//q1.ParamByName('z11').Asfloat:=0;q1.Parameters.ParamByName('k3').Value:=strtofloat(sg.Cells[9,i]);q1.Parameters.ParamByName('bm').Value:=copy(bm.Text,3,20)+'%';q1.Parameters.ParamByName('bh').Value:=copy(s,1,2)+'%';q1.Parameters.ParamByName('kbx').Value:=strtofloat(sg.Cells[10,i]);TryQ1.ExecSql;exceptshowmessage('數(shù)據(jù)庫更新error重新點擊“更新”按鈕!');exit;end;end;showmessage('操作OK!')end;procedureTjbf.bmExit(Sender:TObject);vari:integer;beginQ1.Close;Q1.Sql.Clear;Q1.Sql.Add('Selectbh,xm,z1,z4,z5,z6,z7,z8,z9,z10,k3,kbxFromry');q1.Sql.Add('where(bmlike:bm)');q1.Parameters.ParamByName('bm').Value:=copy(bm.text,3,20)+'%';Q1.Sql.Add('orderbybh');TryQ1.Open;exceptshowmessage('數(shù)據(jù)庫連接error,程序退出!');application.Terminate;End;sg.RowCount:=Q1.RecordCount+1;sg.ColCount:=11;ForI:=0Tosg.RowCount-1Dosg.Rows[I].Clear;sg.Cells[0,0]:='編號姓名';sg.Cells[1,0]:='崗位資';sg.Cells[2,0]:='計生補(bǔ)';sg.Cells[3,0]:='月效資';sg.Cells[4,0]:='技師補(bǔ)';sg.Cells[5,0]:='醫(yī)務(wù)補(bǔ)';sg.Cells[6,0]:='護(hù)10%';sg.Cells[7,0]:='教護(hù)齡';sg.Cells[8,0]:='女工衛(wèi)';sg.Cells[9,0]:='公積金';sg.Cells[10,0]:='保險';//md.Items.Clear;//md.Items.Add('');ForI:=1ToQ1.RecordCountDoBegin//md.Items.Add((Q1.FieldByName('bh').AsString)+(Q1.FieldByName('xm').AsString));sg.Cells[0,i]:=Q1.FieldByName('bh').AsString+Q1.FieldByName('xm').AsString;sg.Cells[1,i]:=floattostr(Q1.FieldByName('z1').Asfloat);sg.Cells[2,i]:=floattostr(Q1.FieldByName('z4').Asfloat);sg.Cells[3,i]:=floattostr(Q1.FieldByName('z5').Asfloat);sg.Cells[4,i]:=floattostr(Q1.FieldByName('z6').Asfloat);sg.Cells[5,i]:=floattostr(Q1.FieldByName('z7').Asfloat);sg.Cells[6,i]:=floattostr(Q1.FieldByName('z8').Asfloat);sg.Cells[7,i]:=floattostr(Q1.FieldByName('z9').Asfloat);sg.Cells[8,i]:=floattostr(Q1.FieldByName('z10').Asfloat);sg.Cells[9,i]:=floattostr(Q1.FieldByName('k3').Asfloat);sg.Cells[10,i]:=floattostr(Q1.FieldByName('kbx').Asfloat);Q1.Next;End;Q1.Close;end;procedureTjbf.FormClose(Sender:TObject;varAction:TCloseAction);beginmainf.jbi.checked:=false;action:=cafree;end;procedureTjbf.FormCreate(Sender:TObject);vari:integer;beginjbf.Color:=rgb(255,255,255);bm.Items.Clear;Q1.Close;Q1.Sql.Clear;Q1.Sql.Add('Selectbh,mcFrombm');Q1.Sql.Add('orderbybh');TryQ1.Open;exceptshowmessage('服務(wù)器連接error,程序退出!');application.Terminate;End;ForI:=1ToQ1.RecordCountDoBeginbm.Items.Add(Q1.FieldByName('bh').AsString+Q1.FieldByName('mc').AsString);Q1.Next;End;Q1.Close;end;每月活動工資填報圖4.5每月數(shù)據(jù)填報該部分核心代碼:procedureTmybhf.BitBtn1Click(Sender:TObject);vari,j,k:integer;s:string;beginForI:=1Tosg.RowCountDosg.Cells[6,i]:=Label3.caption;ifmessagedlg('確認(rèn)更新數(shù)據(jù)嗎?',mtconfirmation,[mbyes,mbno],0)=mrnothenexit;iftrim(bm.Text)=''thenexit;k:=0;fori:=1tosg.RowCount-1doforj:=2to5dobegintrysg.Cells[j,i]:=floattostr(strtofloat(sg.Cells[j,i]));exceptshowmessage('第'+inttostr(i)+'行第'+inttostr(j)+'列有非法數(shù)字');k:=k+1;end;end;ifk>0thenexit;s:='';fori:=1tosg.RowCount-1dobegins:=sg.Cells[0,i];Q1.Close;Q1.Sql.Clear;Q1.Sql.Add('updaterysetj1=:j1,j2=:j2,j3=:j3,j4=:j4,');Q1.Sql.Add('k1=:k1,k2=:k2,rq=:rq');q1.Sql.Add('where(bmlike:bm)and(bhlike:bh)');q1.Parameters.ParamByName('j1').Value:=strtofloat(sg.Cells[2,i]);q1.Parameters.ParamByName('j2').Value:=strtofloat(sg.Cells[2,i])*strtofloat(sg.Cells[1,i])/30;q1.Parameters.ParamByName('j3').Value:=strtofloat(sg.Cells[3,i]);q1.Parameters.ParamByName('j4').Value:=strtofloat(sg.Cells[3,i])*0.8;q1.Parameters.ParamByName('k1').Value:=strtofloat(sg.Cells[4,i]);q1.Parameters.ParamByName('k2').Value:=strtofloat(sg.Cells[5,i]);q1.Parameters.ParamByName('rq').Value:=sg.Cells[6,i];q1.Parameters.ParamByName('bm').Value:=copy(bm.Text,3,20)+'%';q1.Parameters.ParamByName('bh').Value:=copy(s,1,2)+'%';TryQ1.ExecSql;exceptshowmessage('數(shù)據(jù)庫更新error重新點擊“更新”按鈕!');exit;end;end;showmessage('操作OK!')end;procedureTmybhf.bmExit(Sender:TObject);vari:integer;beginQ1.Close;Q1.Sql.Clear;Q1.Sql.Add('Selectbh,xm,z1,j1,j3,k1,k2,rqFromry');q1.Sql.Add('where(bmlike:bm)');q1.Parameters.ParamByName('bm').Value:=copy(bm.text,3,20)+'%';Q1.Sql.Add('orderbybh');TryQ1.Open;exceptshowmessage('數(shù)據(jù)庫連接error,程序退出!');application.Terminate;End;ForI:=0Tosg.RowCount-1Dosg.Rows[I].Clear;sg.RowCount:=Q1.RecordCount+1;sg.ColCount:=7;sg.Cells[0,0]:='編號姓名';sg.Cells[1,0]:='崗位資';sg.Cells[2,0]:='加班';sg.Cells[3,0]:='夜班';sg.Cells[4,0]:='房租';sg.Cells[5,0]:='水電暖';sg.Cells[6,0]:='日期';ForI:=1ToQ1.RecordCountDoBeginsg.Cells[0,i]:=Q1.FieldByName('bh').AsString+Q1.FieldByName('xm').AsString;sg.Cells[1,i]:=floattostr(Q1.FieldByName('z1').Asfloat);sg.Cells[2,i]:=floattostr(Q1.FieldByName('j1').Asfloat);sg.Cells[3,i]:=floattostr(Q1.FieldByName('j3').Asfloat);sg.Cells[4,i]:=floattostr(Q1.FieldByName('k1').Asfloat);sg.Cells[5,i]:=floattostr(Q1.FieldByName('k2').Asfloat);sg.Cells[6,i]:=Q1.FieldByName('rq').Asstring;Q1.Next;End;Q1.Close;end;procedureTmybhf.FormClose(Sender:TObject;varAction:TCloseAction);beginmainf.ytbi.checked:=false;action:=cafree;end;procedureTmybhf.FormCreate(Sender:TObject);vari:integer;Year,Month,Day:word;beginDecodeDate(Date,Year,Month,Day);Label3.Caption:=inttostr(year)+'-'+inttostr(Month);mybhf.Color:=rgb(220,170,140);bm.Items.Clear;Q1.Close;Q1.Sql.Clear;Q1.Sql.Add('Selectbh,mcFrombm');Q1.Sql.Add('orderbybh');TryQ1.Open;exceptshowmessage('服務(wù)器連接error,程序退出!');application.Terminate;End;ForI:=1ToQ1.RecordCountDoBeginbm.Items.Add(Q1.FieldByName('bh').AsString+Q1.FieldByName('mc').AsString);Q1.Next;End;Q1.Close;end;數(shù)據(jù)存檔界面與代碼:圖4.6數(shù)據(jù)存檔該部分核心代碼:procedureTbcf.SpeedButton1Click(Sender:TObject);vari,x,y:integer;s:string;beginq3.Close;q3.Sql.Clear;q3.Sql.Add('deletefromsj');q3.Sql.Add('where(rqlike:rq)');q3.Parameters.ParamByName('rq').Value:=Label1.Caption+'%';Tryq3.ExecSql;exceptshowmessage('存檔失敗,程序退出!');exit;end;Q1.Close;Q1.Sql.Clear;Q1.Sql.Add('Selectcount(*)');Q1.Sql.Add('Fromry');TryQ1.Open;exceptexit;End;x:=q1.fields[0].asinteger;showmessage('本單位共'+inttostr(x)+'人');Q1.Close;Q1.Sql.Clear;Q1.Sql.Add('Selectcount(*)');Q1.Sql.Add('Fromry');Q1.Sql.Add('where(rqlike:y1)');Q1.Parameters.ParamByName('y1').Value:=Label1.Caption+'%';TryQ1.Open;exceptexit;End;y:=q1.fields[0].asinteger;showmessage('當(dāng)前月數(shù)據(jù)共'+inttostr(y)+'條');ifx<>ythenbeginshowmessage('當(dāng)月數(shù)據(jù)未填報完畢,不許存檔!');exit;end;q1.Close;Q1.Sql.Clear;Q1.Sql.Add('Select*Fromry');TryQ1.Open;exceptshowmessage('操作失敗,請重來!');exit;End;forI:=1toQ1.RecordCountdoBEGINQ2.SQL.Clear;Q2.Sql.Add('InsertIntosj(bm,bh,xm,z1,z2,z3,z4,z5,z6,z7,z8,z9,z10,z11,z12,z13,j1,j2,j3,j4,k1,k2,k3,rq,kbx)');q2.Sql.Add('Values(:y0,:y1,:y2,:y3,:y4,:y5,:y6,:y7,:y8,:y9,:y10,:y11,:y12,:y13,:y14,:y15,:y16,:y17,:y18,:y19,:y20,:y21,:y22,:y23,:y24)');Q2.Parameters.ParamByName

溫馨提示

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

評論

0/150

提交評論