【正文】
39。 amp。具體代碼如下:Dim WithEvents adoPrimaryRS As RecordsetDim WithEvents adoPrimaryRS1 As RecordsetDim WithEvents adoPrimaryRS2 As RecordsetDim WithEvents adoPrimaryRS3 As RecordsetDim WithEvents adoPrimaryRS4 As RecordsetDim WithEvents adoPrimaryRS5 As RecordsetDim WithEvents adoPrimaryRS6 As RecordsetPrivate Sub Command1_Click() If = 輸入年 Or = 選擇月 Then MsgBox 年月不能為空!, vbOKOnly + vbExclamation, 警告 Exit Sub End If a = b = c = a amp。實現(xiàn)的語句是:(實發(fā)工資) = x (個人所得稅)如果該月工資已經(jīng)創(chuàng)建,則系統(tǒng)給出提示后,用戶可以瀏覽該月的工資表記錄。個人所得稅是在應發(fā)工資的基礎上-800的差乘20%得到的。最后生成的工資項有:員工號、姓名、基本工資、崗位工資、加班津貼、考勤工資、行政性扣款、應發(fā)工資、個人所得稅、實發(fā)工資、年月。創(chuàng)建/瀏覽月工資表按鈕的click事件:根據(jù)輸入的年月在工資表中查詢,如果沒有該月的工資則系統(tǒng)開始創(chuàng)建該月的員工工資記錄。圖49員工工資表瀏覽界面圖書館該窗體包括一個表格控件、一個文本框控件、一個組合框控件、四個按鈕控件。實現(xiàn)的語句如下:If = 1 Then (遲到次數(shù)) = (遲到次數(shù)) + 1 End If If = 1 Then (早退次數(shù)) = (早退次數(shù)) + 1 End If If = 1 Then (缺席次數(shù)) = (缺席次數(shù)) + 1 End If If = 1 Then (離崗次數(shù)) = End If 員工工資表窗體的設計通過管理人員輸入年、月,系統(tǒng)即可生成當月的員工工資表。如果記錄集非空,則根據(jù)復選框的值來進行考勤字段的維護。, db, adOpenStatic, adLockOptimistic If Then MsgBox 輸入可能有誤,考勤表中沒有相應的考勤記錄!, vbOKOnly + vbExclamation, 警告 Exit Sub……來對考勤表中該員工的在輸入年月的情況下查詢,如果記錄集為空,則表明該考勤表中還沒有該考勤記錄存在,所以還不能進行考勤維護。 d amp。 and 年月=39。 a amp。下面簡單分析一下記載按鈕的click事件:首先通過語句: select * from kqinfo where 員工編號=39。文本框和組合框用來輸入和顯示考勤表記載的字段信息,復選框按鈕控件用來維護考勤情況。最后根據(jù)實際遲到的總次數(shù)來計算扣除的考勤工資。當員工在該年月中有遲到等情況發(fā)生時,管理員可以通過操作該窗體來記載該員工的遲到,早退等考勤情況。, db, adOpenStatic, adLockOptimistic With myFlexGrid .Rows = 2 .CellAlignment = 4 .TextMatrix(1, 0) = 員工編號 .TextMatrix(1, 1) = 姓名 .TextMatrix(1, 2) = 遲到次數(shù) .TextMatrix(1, 3) = 早退次數(shù) .TextMatrix(1, 4) = 缺席次數(shù) .TextMatrix(1, 5) = 離崗次數(shù) .TextMatrix(1, 6) = 備注 .TextMatrix(1, 7) = 年月 Do While Not .Rows = .Rows + 1 .CellAlignment = 4 For j = 0 To 1 .TextMatrix(.Rows 1, j) = (j) Next j Loop End With = True End SubPrivate Sub Command2_Click() Dim i As Integer, j As Integer Dim xlapp As Dim xlbook As Dim xlsheet As Set xlapp = CreateObject() = True Set xlbook = Set xlsheet = (1) (1, 1) = 員工編號 (1, 2) = 遲到次數(shù) (1, 3) = 早退次數(shù) (1, 4) = 缺席次數(shù) (1, 5) = 離崗次數(shù) (1, 6) = 備注 (1, 7) = 年月 i = 0 Do While ( = False) For j = 0 To 1 (i + 2, j + 1) = (j) Next j i = i + 1 Loop Set xlapp = Nothing Set xlbook = NothingEnd SubPrivate Sub Command3_Click() = 輸入年 = 選擇月 With myFlexGrid .Rows = 2 End With = FalseEnd SubPrivate Sub Command4_Click()Unload MeEnd SubPrivate Sub Form_Load()Left = ( Width) \ 2Top = ( Height) \ 2 With myFlexGrid .Rows = 2 .CellAlignment = 4 .TextMatrix(1, 0) = 教師編號 .TextMatrix(1, 1) = 遲到次數(shù) .TextMatrix(1, 2) = 早退次數(shù) .TextMatrix(1, 3) = 缺席次數(shù) .TextMatrix(1, 4) = 離崗次數(shù) .TextMatrix(1, 5) = 備注 .TextMatrix(1, 6) = 年月 End WithEnd SubPrivate Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single)End SubPrivate Sub Text1_Click() = End Sub 考勤表的維護上面已經(jīng)完成了對所有員工按照給定年月創(chuàng)建了或者說初始化了員工的考勤表。 c amp。, db, adOpenStatic, adLockOptimistic If Then Set adoPrimaryRS1 = New Recordset select * from ygInfo , db, adOpenStatic, adLockOptimistic Do While Not (員工編號) = (員工編號) (遲到次數(shù)) = 0 (早退次數(shù)) = 0 (缺席次數(shù)) = 0 (離崗次數(shù)) = 0 (備注) = 無 (年月) = c Loop Else MsgBox 該月考勤表已經(jīng)創(chuàng)建,確認開始瀏覽!, vbOKOnly + vbExclamation, 警告 End If select , from kqinfo,ygInfo where = and =39。 c amp。 b Set adoPrimaryRS = New Recordset a = select * from kqinfo where 年月=39。導出到excel按鈕的click事件將記錄集中的數(shù)據(jù)導出到excel表中實現(xiàn)報表打印。如果記錄集非空,則表明該月的考勤表已經(jīng)創(chuàng)建,那么統(tǒng)給出提示后用戶可以瀏覽。文本框控件用于輸入年,組合框用于選擇考勤的月份。表格控件用來顯示所設定的年月的員工的考勤表,比如設定2000年1月,通過點擊相關(guān)按鈕觸發(fā)事件的發(fā)生后,該表格就可以顯示2000年1月的員工的考勤記載表。下面是創(chuàng)建考勤表的界面圖:該窗體同時也完成瀏覽已經(jīng)創(chuàng)建的考勤表的瀏覽和報表功能。這二個子模塊是:創(chuàng)建考勤表,維護考勤表。, db, adOpenStatic, adLockOptimistic If Not Then MsgBox 該編號重復!, vbOKOnly + vbExclamation, 警告 Exit Sub Else (員工編號) = (崗位編號) = If = Then (業(yè)務檔案) = 無 Else (業(yè)務檔案) = End If MsgBox 記載成功!, vbOKOnly + vbExclamation, 提示 End If = = = End SubPrivate Sub Command2_Click()Unload MeEnd SubPrivate Sub Form_Load()Left = ( Width) \ 2Top = ( Height) \ 2 Set adoPrimaryRS = New Recordset select * from gwxsinfo , db, adOpenStatic, adLockOptimistic With Combo1 For i = 1 To .AddItem (崗位編號) Next i End With End Sub員工的考勤是員工工資核算的重要的組成部分之一。 a amp。 具體代碼如下:Dim WithEvents adoPrimaryRS As RecordsetPrivate Sub Command1_Click() If = Then MsgBox 員工編號不能為空!, vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then MsgBox 崗位編號不能為空!, vbOKOnly + vbExclamation, 警告 Exit Sub End If If = Then