【正文】
* from Leave_Per_D where StarTime=39。在...前39。39。%39。%39。 and LTname like 39。%39。%39。 and Dname like 39。%39。%39。 and Pname like 39。%39。%39。 and Pno like 39。39。39。 and StarTime39。39。39。 select * from Leave_Per_D where StarTime=39。在...日39。 enddate := datetostr()。 39。 enddate: string。var sqlstr: string。以查詢請假記錄為例,代碼如下:1. 查詢請假記錄,“查詢”按鈕的事件代碼。(6). 組合查詢配合模糊查詢組合查詢配合模糊查詢能夠滿足查詢的各種需求。 end。數(shù)據(jù)庫錯誤或有重復(fù)編號,請檢查39。)。 showmessage(39。 end。 //求工作表 sheet1中已有數(shù)據(jù)的行數(shù) tryfor i:=2 to n do //從Excel表第2行開始,逐行讀入(假設(shè)第一行為表頭) begin 。 (str)。39。 str:=。 begin if then :=39。 str:string。導(dǎo)入Excel表格中數(shù)據(jù)的代碼如下:procedure (Sender: TObject)。(5).導(dǎo)入EXCEL表格運行系統(tǒng)時,當(dāng)需要新增大量數(shù)據(jù)時,可以通過導(dǎo)入Excel表格實現(xiàn)批量增加的操作。 //回復(fù)鼠標(biāo)原狀 end。)。 //將鼠標(biāo)成沙漏狀 (DBGrid2,39。procedure (Sender: TObject)。end。 。 (TempFileName)。數(shù)據(jù)導(dǎo)出39。39。 ResultFileName := TempFileName。 。 for i := 0 to c 1 do (1, 1 + i) := [i].DisplayLabel。 r := 。 。 := false。 if then TempFileName := else Exit。xls39。 end。 result := False。警告39。Excel沒有正確安裝!39。 (xlWBatWorkSheet)。39。begintry result := True。app: Olevariant。 SheetName: string): boolean。(4). 導(dǎo)出EXCEL表格 運行系統(tǒng)時,可以對系統(tǒng)中的相應(yīng)數(shù)據(jù)信息導(dǎo)出到excel表格中,方便用戶使用相應(yīng)的數(shù)據(jù)信息。 end。 else :=39。] then //以下是判別性別 :=39。,39。,39。,39。,39。 //年齡 if NewID[17] in [39。yy39。,da)。 //屬地 :=formatdatetime(39。 //5. 填寫證件的詳細(xì)信息 。 exit。,[A[S]])。 showmessagefmt(39。校驗碼錯!請重新輸入!39。x39。X39。 s:= s mod 11。 s:= s + j。 //構(gòu)造生日 //4. 檢查校驗碼 s:= 0。 end 。 。日數(shù)號碼無效,請檢查!39。 s:=strtoint(copy(NewID,13,2))。 exit。,mtinformation,[mbok],0)。 //獲取月份 if ( j1) or ( j12) then begin MessageDlg(39。 end 。 。年份號碼無效,請檢查!39。 //獲取屬地//3. 檢查年年份 i:=strtoint(copy(NewID,7,4))。DQ39。 exit。,mtinformation,[mbok],0)。 //打開,查詢記錄 if =0 then //如果找不到sd相同的記錄 begin MessageDlg(39。).Value:= copy(NewID,1,6)。 (39。 end。 。輸入的數(shù)字不是18位,請重新輸入!39。 //鍵盤輸入過濾掉非身份證號碼 if key=13 then begin NewID:= 。) or (key=48) and (key=57)。) or (key=39。begin kk:= (key=8) or (key=13) or (key=39。 da:Tdatetime。 //校驗碼Var i, j, S: integer。239。339。439。539。639。739。839。939。x39。039。139。const W:array [1..18] of integer = (7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1)。procedure (Sender: TObject。使用此功能減小了錄入信息的人員因失誤輸入錯誤信息的概率,保證了信息的正確性。員工信息添加為例,效果如圖49。 //在表格框中填寫新編號 。 //在表尾添加新紀(jì)錄 :=bm。 end。P39。]。 bm:=adotable1[39。00139。yyyymmdd39。P39。var bm:string。(2). 員工信息管理中“添加”按鈕的點擊事件代碼。 xbh:= bh。 //在原來基礎(chǔ)上加1 bh:=d1+copy(c,length(c)2,3)。0039。00139。,now)。 //取最后3位數(shù)碼 d1:=formatdatetime(39。 begin d0:=copy(bh,2,8)。function xbh(bh:string):string。圖48 統(tǒng)計界面2. 系統(tǒng)實現(xiàn)關(guān)鍵技術(shù)(1). 添加數(shù)據(jù)時自動編號運行系統(tǒng)時,當(dāng)需要新增信息時,點擊“添加”按鈕,即可進(jìn)行自動對記錄的ID進(jìn)行編號,以實現(xiàn)編號的規(guī)范性。統(tǒng)計需要一些時間,進(jìn)度條會顯示統(tǒng)計的進(jìn)度。圖47 審批界面(6). 統(tǒng)計界面在主菜單上點擊查詢菜單下的“出差審批”,即可進(jìn)入到出差審批界面,如圖48。查詢出相應(yīng)的員工出差信息,覺得員工的出差信息無誤后即可進(jìn)行審批,點擊“確定”按鈕后,會出現(xiàn)“審批完成!”的提示。檔案管理界面如圖44。也可導(dǎo)入/導(dǎo)出Excel表格。以員工信息管理為例,點擊“添加”按鈕,編號處將自動填充,編號規(guī)則為::“P+年月日+001”,輸入省份證號后,回車即可得出性別、年齡、省份屬地、生日等信息,在部門的編輯框處雙擊,即可得出企業(yè)中的部門信息,選擇相應(yīng)的部門,則可在該編輯框中得出相應(yīng)的部門編號,也可手動輸入正確的部門編號,職稱的填寫方式和部門的填寫方式相同,再相應(yīng)地填寫其他信息,點擊保存,如果信息填寫無誤,會有“保存成功!”的提示,添加信息完成。圖43 請假情況查詢界面(4). 信息管理界面信息管理界面包括:基本信息設(shè)置界面(圖44)、檔案管理界面(圖45)、考勤記錄管理界面(圖46)。其他信息的查詢功能跟此功能基本一致,在此不再贅述。41 登錄界面(2). 主菜單界面用戶登錄后,可進(jìn)入到如圖42的主菜單界面,在主菜單界面中,用戶可以看到企業(yè)中發(fā)布的通知信息,這有利于讓企業(yè)中的員工盡可能快而全面地掌握企業(yè)中消息的動態(tài)。當(dāng)所有信息都輸入正確后,可以登錄到主界面,不用的用戶角色進(jìn)入的主界面中的功能菜單不同。本系統(tǒng)主要采用的的界面模板主要包括:登錄界面、主菜單界面、基本信息設(shè)置界面、檔案管理界面、查詢管理界面、考勤記錄管理界面、審核管理界面、匯總統(tǒng)計界面、系統(tǒng)管理設(shè)置界面。網(wǎng)頁設(shè)計應(yīng)時刻圍繞“信息傳達(dá)”這一主題來進(jìn)行。表422 屬地表字段名稱類型長度碼說明ID編號CHAR6PKNot nullBM屬地編號CHAR14Not nullDQ屬地名稱VARCHAR30Not null(16) Notice(通知表)通知表主要存儲的是企業(yè)中的一些通知信息,具體字段信息如表423。表420 用戶信息表字段名稱類型長度碼說明Uno用戶編號CHAR14PKU+日期+序號Pno員工編號CHAR14FKNot nullAuthority角色CHAR2Passwd密碼VARCHAR20默認(rèn)為‘123456’(14) ARegulation(考勤制度表)考勤制度表主要存儲的是企業(yè)的考勤制度,具體字段信息如表421。表418 出勤情況統(tǒng)計表字段名稱類型長度碼說明ACno記錄編號CHAR14PKG+日期+序號Pno員工編號CHAR14FKNot nullARno制度編號CHAR14FKNot nullYearMonth年月CHAR7Not nullShouldTime應(yīng)工作時間INT小時ActualTime實際工作時間INT小時LeaveTime累計請假時間INT半天OverworkTime累計加班時間INT小時ErrandTime累計出差時間INT半天Late遲到次數(shù)SMALLINT次LateTime遲到時間累計INT小時Early早退次數(shù)SMALLINT次