📄 clssalary.cls
字号:
VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
Persistable = 0 'NotPersistable
DataBindingBehavior = 0 'vbNone
DataSourceBehavior = 0 'vbNone
MTSTransactionMode = 0 'NotAnMTSObject
END
Attribute VB_Name = "ClsSalary"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
'1 PayMonth Char 10 工资月份
'2 Emp_Id Int 员工编号
'3 BaseWage Decimal(10,2) 基本工资
'4 Prize Decimal(10,2) 本月奖金
'5 Ot1pay Decimal (10,2) 法定节假日加班费
'6 Ot2pay Decimal (10,2) 休息日加班费
'7 Ot3pay Decimal (10,2) 日常加班费
'8 Cdkk Decimal (10,2) 迟到扣款
'9 Sjkk Decimal (10,2) 事假扣款
'10 Bjkk Decimal (10,2) 病假扣款
'11 Prize Decimal (10,2) 奖金
'12 Clbz Decimal (10,2) 差旅补助
'13 Yldk Decimal (10,2) 养老代扣
'14 Mddk Decimal (10,2) 基本医疗代扣
'15 Sydk Decimal (10,2) 失业保险代扣
'16 HouseFunds Decimal (10,2) 住房公积金代扣
'17 Tax Decimal (10,2) 代扣税
'18 Qtkk Decimal (10,2) 其他扣款
'19 Mdbx Decimal (10,2) 医药费报销
'20 YearPrize Decimal (10,2) 年终奖金
'21 Sfgz Decimal(10,2) 实发工资
'22 PayFlag Bit 工资发放的标记,已经发放的工资则不能再修改
Public PayMonth As String
Public Emp_Id As Integer
Public BaseWage As Single
Public Ot1Pay As Single
Public Ot2Pay As Single
Public Ot3Pay As Single
Public Cdkk As Single
Public Sjkk As Single
Public Bjkk As Single
Public Prize As Single
Public Clbz As Single
Public Yldk As Single
Public Mddk As Single
Public Sydk As Single
Public HouseFunds As Single
Public Tax As Single
Public Qtkk As Single
Public Mdbx As Single
Public YearPrize As Single
Public Sfgz As Single
Public PayFlag As Integer
Public Sub Init()
PayMonth = ""
Emp_Id = 0
BaseWage = 0
Ot1Pay = 0
Ot2Pay = 0
Ot3Pay = 0
Cdkk = 0
Sjkk = 0
Bjkk = 0
Prize = 0
Clbz = 0
Yldk = 0
Mddk = 0
Sydk = 0
HouseFunds = 0
Tax = 0
Qtkk = 0
Mdbx = 0
YearPrize = 0
Sfgz = 0
PayFlag = 0
End Sub
'删除Salary数据
Public Sub Delete(ByVal TmpMonth As String, _
ByVal TmpEmpId As Long)
'连接数据库
MyDB.openDB
SqlStmt = "DELETE FROM Salary WHERE PayMonth='" _
+ Trim(TmpMonth) + "' And Emp_Id=" _
+ Trim(Str(TmpEmpId))
'执行SQL语句
Dim Isexe As Boolean
Dim rsSalary As ADODB.Recordset
Isexe = MyDB.exeSql(SqlStmt, rsSalary, True)
'断开与数据库的连接
MyDB.closeDB
End Sub
Public Function GetPayFlag(ByVal TmpMonth As String, _
ByVal TmpEmpId As Long) As Integer
If TmpMonth = "" Or TmpEmpId <= 0 Then
GetPayFlag = 0
Exit Function
End If
PayMonth = TmpMonth
Emp_Id = TmpEmpId
'连接数据库
MyDB.openDB
SqlStmt = "SELECT PayFlag FROM Salary WHERE PayMonth='" _
+ Trim(TmpMonth) + "' And Emp_Id=" _
+ Trim(Str(TmpEmpId))
'执行SQL语句
Dim Isexe As Boolean
Dim rsSalary As ADODB.Recordset
Isexe = MyDB.exeSql(SqlStmt, rsSalary, True)
If rsSalary.RecordCount = 0 Then
GetPayFlag = 0
'断开与数据库的连接
MyDB.closeDB
Exit Function
Else
GetPayFlag = rsSalary.Fields("PayFlag")
End If
'断开与数据库的连接
MyDB.closeDB
End Function
Public Sub GetInput(ByVal TmpMonth As String, _
ByVal TmpEmpId As Long)
If TmpMonth = "" Or TmpEmpId <= 0 Then
Qtkk = 0
Mdbx = 0
YearPrize = 0
Exit Sub
End If
PayMonth = TmpMonth
Emp_Id = TmpEmpId
'连接数据库
MyDB.openDB
SqlStmt = "SELECT Qtkk,Mdbx,YearPrize FROM Salary WHERE PayMonth='" _
+ Trim(TmpMonth) + "' And Emp_Id=" + Trim(Str(TmpEmpId))
'执行SQL语句
Dim Isexe As Boolean
Dim rsSalary As ADODB.Recordset
Isexe = MyDB.exeSql(SqlStmt, rsSalary, True)
If rsSalary.RecordCount = 0 Then
Qtkk = 0
Mdbx = 0
YearPrize = 0
Exit Sub
Else
Qtkk = Val(rsSalary.Fields("Qtkk"))
Mdbx = Val(rsSalary.Fields("Mdbx"))
YearPrize = Val(rsSalary.Fields("YearPrize"))
End If
'断开与数据库的连接
MyDB.closeDB
End Sub
Public Function In_DB(ByVal TmpMonth As String, _
ByVal TmpEmpId As Long) As Boolean
'连接数据库
MyDB.openDB
SqlStmt = "SELECT * FROM Salary WHERE PayMonth='" _
+ Trim(TmpMonth) + "' And Emp_Id=" _
+ Trim(Str(TmpEmpId))
'执行SQL语句
Dim Isexe As Boolean
Dim rsSalary As ADODB.Recordset
Isexe = MyDB.exeSql(SqlStmt, rsSalary, True)
If rsSalary.RecordCount = 0 Then
In_DB = False
Else
In_DB = True
End If
'断开与数据库的连接
MyDB.closeDB
End Function
Public Sub Insert()
'连接数据库
MyDB.openDB
SqlStmt = "INSERT INTO Salary Values('" _
+ Trim(PayMonth) + "'," + Trim(Str(Emp_Id)) + "," _
+ Trim(Str(BaseWage)) + "," + Trim(Str(Prize)) _
+ "," + Trim(Str(Ot1Pay)) + "," + Trim(Str(Ot2Pay)) _
+ "," + Trim(Str(Ot3Pay)) + "," + Trim(Str(Cdkk)) _
+ "," + Trim(Str(Sjkk)) + "," + Trim(Bjkk) + "," _
+ Trim(Str(Clbz)) + "," + Trim(Str(Yldk)) + "," _
+ Trim(Str(Mddk)) + "," + Trim(Str(Sydk)) + "," _
+ Trim(Str(HouseFunds)) + "," + Trim(Str(Tax)) + "," _
+ Trim(Str(Qtkk)) + "," + Trim(Str(Mdbx)) + "," _
+ Trim(Str(YearPrize)) + "," + Trim(Str(Sfgz)) + ",0)"
'执行SQL语句
Dim Isexe As Boolean
Dim rsSalary As ADODB.Recordset
Isexe = MyDB.exeSql(SqlStmt, rsSalary, True)
'断开与数据库的连接
MyDB.closeDB
End Sub
Public Sub SetPay(ByVal TmpMonth As String, _
ByVal TmpPayFlag As Integer)
'连接数据库
MyDB.openDB
SqlStmt = "Update Salary Set PayFlag=" _
+ Trim(Str(TmpPayFlag)) _
+ " WHERE PayMonth='" + Trim(TmpMonth) + "'"
'执行SQL语句
Dim Isexe As Boolean
Dim rsSalary As ADODB.Recordset
Isexe = MyDB.exeSql(SqlStmt, rsSalary, True)
'断开与数据库的连接
MyDB.closeDB
End Sub
Public Sub UpdateAuto(ByVal TmpMonth As String, _
ByVal TmpEmpId As Long)
'连接数据库
MyDB.openDB
SqlStmt = "Update Salary Set BaseWage=" + Trim(Str(BaseWage)) _
+ ",Ot1Pay=" + Trim(Str(Ot1Pay)) _
+ ",Ot2Pay=" + Trim(Str(Ot2Pay)) _
+ ",Ot3Pay=" + Trim(Str(Ot3Pay)) + ",Cdkk=" _
+ Trim(Str(Cdkk)) + ",Sjkk=" + Trim(Str(Sjkk)) _
+ ",Bjkk=" + Trim(Str(Bjkk)) + ",Prize=" _
+ Trim(Str(Prize)) + ",Clbz=" + Trim(Str(Clbz)) _
+ ",Yldk=" + Trim(Str(Yldk)) + ",Mddk=" _
+ Trim(Str(Mddk)) + ",Sydk=" + Trim(Str(Sydk)) _
+ ",HouseFunds=" + Trim(Str(HouseFunds)) + ",Tax=" _
+ Trim(Str(Tax)) + ",Sfgz=" + Trim(Str(Sfgz)) _
+ " WHERE PayMonth='" + Trim(TmpMonth) _
+ "' And Emp_Id=" + Trim(Str(TmpEmpId))
'执行SQL语句
Dim Isexe As Boolean
Dim rsSalary As ADODB.Recordset
Isexe = MyDB.exeSql(SqlStmt, rsSalary, True)
'断开与数据库的连接
MyDB.closeDB
End Sub
Public Sub UpdateInput(ByVal TmpMonth As String, _
ByVal TmpEmpId As Long)
'连接数据库
MyDB.openDB
SqlStmt = "Update Salary Set Qtkk=" + Trim(Str(Qtkk)) _
+ ",Mdbx=" + Trim(Str(Mdbx)) + ",YearPrize=" _
+ Trim(Str(YearPrize)) + ",Sfgz=" + Trim(Str(Sfgz)) _
+ " WHERE PayMonth='" + Trim(TmpMonth) _
+ "' And Emp_Id=" + Trim(Str(TmpEmpId))
'执行SQL语句
Dim Isexe As Boolean
Dim rsSalary As ADODB.Recordset
Isexe = MyDB.exeSql(SqlStmt, rsSalary, True)
'断开与数据库的连接
MyDB.closeDB
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -