📄 checkin.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 = "CheckIn"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
'1 CheckDate 文本,长度为10 考勤月份,必填字段(是),允许空字符串(否)
'2 EmpId 数字,长整型 员工编号
'3 qqDays 数字,小数,精度为4,小数位数为1 全勤天数
'4 ccDays 数字,小数,精度为4,小数位数为1 出差天数
'5 bjDays 数字,小数,精度为4,小数位数为1 病假天数
'6 sjDays 数字,小数,精度为4,小数位数为1 事假天数
'7 kgDays 数字,小数,精度为4,小数位数为1 旷工天数
'8 fdxjDays 数字,小数,精度为4,小数位数为1 法定休假天数
'9 nxjDays 数字,小数,精度为4,小数位数为1 年休假天数
'10 dxjDays 数字,小数,精度为4,小数位数为1 倒休假天数
'11 cdMinutes 数字,整型 迟到时间(分钟)
'12 ztMinutes 数字,整型 早退时间(分钟)
'13 ot1Days 数字,小数,精度为4,小数位数为1 一类加班天数(法定节假日加班)
'14 ot2Days 数字,小数,精度为4,小数位数为1 二类加班天数(周六或周日加班)
'15 ot3Days 数字,小数,精度为4,小数位数为1 三在加班天数(日常加班)
'16 Memo1 文本,长度为200 备注信息,必填字段(否),允许空字符串(是)
Public CheckDate As String
Public EmpId As Integer
Public qqDays As Single
Public ccDays As Single
Public bjDays As Single
Public sjDays As Single
Public kgDays As Single
Public fdxjDays As Single
Public nxjDays As Single
Public dxjDays As Single
Public cdMinutes As Integer
Public ztMinutes As Integer
Public ot1Days As Single
Public ot2Days As Single
Public ot3Days As Single
Public Memo1 As String
Public Sub Init()
CheckDate = ""
EmpId = 0
qqDays = 0
ccDays = 0
bjDays = 0
sjDays = 0
kgDays = 0
fdxjDays = 0
nxjDays = 0
dxjDays = 0
cdMinutes = 0
ztMinutes = 0
ot1Days = 0
ot2Days = 0
ot3Days = 0
Memo1 = ""
End Sub
'删除CheckIn数据
Public Sub Delete(ByVal TmpDate As String, _
ByVal TmpEmpId As Long)
SqlStmt = "DELETE FROM CheckIn WHERE CheckDate='" + Trim(TmpDate) + "' And EmpId=" _
+ Trim(Str(TmpEmpId))
SQLExt (SqlStmt)
End Sub
Public Function GetInfo(ByVal TmpDate As String, _
ByVal TmpEmpId As Long) As Boolean
Dim rs As New ADODB.Recordset
If TmpDate = "" Or TmpEmpId <= 0 Then
GetInfo = False
Init
Exit Function
End If
CheckDate = TmpDate
EmpId = TmpEmpId
SqlStmt = "SELECT * FROM CheckIn WHERE CheckDate='" _
+ Trim(TmpDate) + "' And EmpId=" + Trim(Str(EmpId))
Set rs = QueryExt(SqlStmt)
If rs.EOF Then
GetInfo = False
Init
Exit Function
Else
qqDays = rs.Fields(2)
ccDays = rs.Fields(3)
bjDays = rs.Fields(4)
sjDays = rs.Fields(5)
kgDays = rs.Fields(6)
fdxjDays = rs.Fields(7)
nxjDays = rs.Fields(8)
dxjDays = rs.Fields(9)
cdMinutes = rs.Fields(10)
ztMinutes = rs.Fields(11)
ot1Days = rs.Fields(12)
ot2Days = rs.Fields(13)
ot3Days = rs.Fields(14)
If IsNull(rs.Fields(15)) Then
Memo1 = ""
Else
Memo1 = Trim(rs.Fields(15))
End If
GetInfo = True
End If
End Function
Public Function In_DB(ByVal TmpDate As String, _
ByVal TmpEmpId As Long) As Boolean
Dim rs As New ADODB.Recordset
SqlStmt = "SELECT * FROM CheckIn WHERE CheckDate='" _
+ Trim(TmpDate) + "' And EmpId=" _
+ Trim(Str(TmpEmpId))
Set rs = QueryExt(SqlStmt)
If rs.EOF Then
In_DB = False
Else
In_DB = True
End If
End Function
Public Sub Insert()
SqlStmt = "INSERT INTO CheckIn Values('" _
+ Trim(CheckDate) + "'," + Trim(Str(EmpId)) _
+ "," + Trim(Str(qqDays)) + "," + Trim(Str(ccDays)) _
+ "," + Trim(Str(bjDays)) + "," + Trim(Str(sjDays)) _
+ "," + Trim(Str(kgDays)) + "," + Trim(fdxjDays) + "," _
+ Trim(Str(nxjDays)) + "," + Trim(Str(dxjDays)) _
+ "," + Trim(Str(cdMinutes)) + "," + Trim(Str(ztMinutes)) + "," _
+ Trim(Str(ot1Days)) + "," + Trim(Str(ot2Days)) + "," _
+ Trim(Str(ot3Days)) + ",'" + Trim(Memo1) + "')"
SQLExt (SqlStmt)
End Sub
Public Sub Update(ByVal TmpDate As String, _
ByVal TmpEmpId As Long)
SqlStmt = "Update CheckIn Set qqDays=" + Trim(Str(qqDays)) _
+ ", ccDays=" + Trim(ccDays) + ", bjDays=" + Trim(Str(bjDays)) _
+ ", sjDays=" + Trim(Str(sjDays)) + ",kgDays=" + Trim(Str(kgDays)) _
+ ", fdxjDays=" + Trim(Str(fdxjDays)) + ",nxjDays=" _
+ Trim(Str(nxjDays)) + ",dxjDays=" + Trim(Str(dxjDays)) _
+ ", cdMinutes=" + Trim(Str(cdMinutes)) + ",ztMinutes=" _
+ Trim(Str(ztMinutes)) + ",ot1Days=" + Trim(Str(ot1Days)) + ",ot2Days=" _
+ Trim(Str(ot2Days)) + ",ot3Days=" + Trim(Str(ot3Days)) + ", Memo1='" _
+ Trim(Memo1) + "' WHERE CheckDate='" + Trim(TmpDate) _
+ "' And EmpId=" + Trim(Str(TmpEmpId))
SQLExt (SqlStmt)
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -