【正文】
Else = End If End SubEnd Class2)“職員信息查詢”窗體模塊frmPeopleQuery的設(shè)計(jì)、運(yùn)行界面及代碼其主要功能是查詢職員的資料,但不能修改職員的信息。Z)菜單下的四子菜單第1次課要完成的任務(wù):l “當(dāng)月工資管理”窗體模塊功能的實(shí)現(xiàn)l “工資發(fā)放歷史”窗體模塊功能的實(shí)現(xiàn)第2次課要完成的任務(wù): l “職員獎(jiǎng)勵(lì)管理”窗體模塊功能的實(shí)現(xiàn)l “職員懲罰管理”窗體模塊功能的實(shí)現(xiàn)第1次課要完成的任務(wù)2學(xué)時(shí)1)“當(dāng)月工資管理”窗體frmSalaryManage的設(shè)計(jì)、運(yùn)行界面和代碼其主要功能是計(jì)算當(dāng)月工資和工資發(fā)放其代碼如下:Public Class frmSalaryManage Private dvMaster As DataView Private iCurrentLine As Integer = 1 Private Sub LoadData() Dim strSQL As String = select 姓名,日期,應(yīng)發(fā)金額合計(jì),應(yīng)扣金額合計(jì), strSQL += 工資合計(jì),個(gè)人所得稅,實(shí)發(fā)金額,發(fā)放否, strSQL += from 職員基本信息表 as a,月工資統(tǒng)計(jì)表 as b strSQL += where = order by 內(nèi)部編號(hào) Dim db As DataBase = New DataBase dvMaster = (strSQL) = False = False = False = dvMaster 39。根據(jù)內(nèi)容調(diào)整列寬 (i).AutoSizeMode = Next 39。不可以點(diǎn)列標(biāo)題進(jìn)行排序,只能靠編程 (i).SortMode = Next () = (, 月工資統(tǒng)計(jì)表) End Sub Private Sub frmSalaryManage_Load(ByVal sender As , ByVal e As ) Handles 39。是39。 amp。 39。 month (strSQL) End While () strSQL = update 月工資統(tǒng)計(jì)表 set 獎(jiǎng)金=0 where 獎(jiǎng)金 is null (strSQL) strSQL = select sum(懲罰金額) as 罰金, as 職員編號(hào) from 職員懲罰表 as i where =39。 and + (month * 100) + and + ((month + 1) * 100) + group by dr = (strSQL) While (()) Dim jine As String = (0) Dim id As String = (1) strSQL = update 月工資統(tǒng)計(jì)表 set 罰款= + () + where 職員編號(hào)=39。 id amp。 and 日期= amp。 (strSQL) strSQL = update 月工資統(tǒng)計(jì)表 set 應(yīng)扣金額合計(jì) = 房租 + 水電費(fèi) + 請(qǐng)假扣除 + 罰款 + 考勤扣除 + 住房公積金 + 醫(yī)療保險(xiǎn) + 養(yǎng)老保險(xiǎn) + 失業(yè)保險(xiǎn) (strSQL) strSQL = update 月工資統(tǒng)計(jì)表 set 應(yīng)發(fā)金額合計(jì) = 基本工資 + 浮動(dòng)工資 + 合同補(bǔ) + 糧副補(bǔ) + 房補(bǔ) + 臨時(shí)補(bǔ)+職務(wù)工資+工齡工資+ 考核工資+ 獎(jiǎng)金 (strSQL) strSQL = update 月工資統(tǒng)計(jì)表 set 工資合計(jì) = 應(yīng)發(fā)金額合計(jì) 應(yīng)扣金額合計(jì) (strSQL) strSQL = update 月工資統(tǒng)計(jì)表 set 實(shí)發(fā)金額 = 工資合計(jì) (strSQL) (arr) () 39。保證要修改或錄入的記錄完畢(位置改變,意味該記錄錄入完畢) BindingContext(, 月工資統(tǒng)計(jì)表).Position = If () Then 39。 ) End Try End Sub Private Sub btnGiveSalary_Click(ByVal sender As , ByVal e As ) Handles If (是否發(fā)放?, Confirm, _ ) = Then Dim db As DataBase = New DataBase Dim id As String = ()(職員編號(hào)) Dim arr As ArrayList = New ArrayList Dim strSQL As String = update 月工資統(tǒng)計(jì)表 set 發(fā)放否=39。 where 職員編號(hào)=39。 id amp。 (strSQL) strSQL = insert into 工資發(fā)放歷史表 select * from 月工資統(tǒng)計(jì)表 where 職員編號(hào)=39。 id amp。 (strSQL) (arr) LoadData() Else Exit Sub End If End SubEnd Class2)“工資發(fā)放歷史”窗體frmSlaryHis的設(shè)計(jì)、運(yùn)行界面和代碼其主要功能用于查詢職員歷史月份的工資其代碼如下:第2次課要完成的任務(wù)2學(xué)時(shí)1)“職員獎(jiǎng)勵(lì)管理”窗體frmPrize的設(shè)計(jì)、運(yùn)行界面和相應(yīng)代碼其主要功能用于設(shè)置職員的獎(jiǎng)勵(lì)信息其代碼如下:Public Class frmPrize Private Sub SetDataGridView() = () = (職員獎(jiǎng)勵(lì)表).DefaultView End Sub Private Sub frmPrize_Load(ByVal sender As , ByVal e As ) Handles SetDataGridView() End Sub Private Sub tsbSave_Click(ByVal sender As , ByVal e As ) Handles Dim row As Integer row = = (row + 1).Cells(0) Try If Then () (職員獎(jiǎng)勵(lì)表). = (數(shù)據(jù)修改成功!) Else (無修改的數(shù)據(jù)!) End If Catch ex As Exception (修改的數(shù)據(jù)出錯(cuò)! amp。 ) End Try Catch ex As Exception (刪除數(shù)據(jù)出錯(cuò)! amp。 ) End Try End Sub Private Sub tsbDel_Click(ByVal sender As , ByVal e As ) Handles Try Dim row As Integer row = If (你確認(rèn)要?jiǎng)h除此條記錄嗎?, 確認(rèn), ) = Then (職員懲罰表).Rows(row).Delete() Else Exit Sub End If Try If Then () () (職員懲罰表). = (記錄刪除成功!) Else (沒有刪除記錄!) End If Catch ex As Exception (刪除記錄出錯(cuò)! amp。 ) End Try End SubEnd Class34 / 34