📄 form1.frm
字号:
'If IfFour = True Then
' BanShiJian = CDate(Rstbanci.Fields(9))
'End If
XiaShiJian = CDate(Rstbanci.Fields(7))
KaCiShu = Rstbanci.Fields(4) '打卡次数
ChaShiJian = DateDiff("N", BanShiJian, DaKaShiJian) '前时后负
If -60 < ChaShiJian And ChaShiJian <= ChiDaoTime Then
RstShuju.Fields(6) = 0
Else
If ChaShiJian > ChiDaoTime And ChaShiJian < 30 Then
If ShiDuan = 2 Or ShiDuan = 4 Or ShiDuan = 6 Then
RstShuju.Fields(6) = 2
Else
RstShuju.Fields(6) = 1
End If
RstShuju.UpdateBatch
Set Rstkaoqin = New ADODB.Recordset
Rstkaoqin.Open "select * from qingjiatianshu where xingming='" + Ming + "'", Cnnshuju, adOpenStatic, adLockBatchOptimistic, adCmdText
'Rstkaoqin!chidao = CInt(Rstkaoqin!chidao) + 1
Rstkaoqin.UpdateBatch
Else
RstShuju.Fields(6) = 2
RstShuju.UpdateBatch
End If
'Set Rstkaoqin = New ADODB.Recordset
'Rstkaoqin.Open "select * from qingjiatianshu where xingming='" + Ming + "'", Cnnshuju, adOpenStatic, adLockBatchOptimistic, adCmdText
'CC = Rstkaoqin!chidao
'DD = CC + 1
'Rstkaoqin!chidao = DD
'Rstkaoqin.UpdateBatch
Exit Sub
End If
End If
'判断下班是否准时
Set RstShuju1 = New ADODB.Recordset
RstShuju1.Open "select * from kaoqishuju where xingming='" + Ming + "'and ifsxban=2 and riqi='" + Riqi + "'and checkqingjia=0 and shijian='" + Shijian + "'", Cnnshuju, adOpenStatic, adLockOptimistic, adCmdText
If Not RstShuju1.EOF Then
Banhao = Trim(RstShuju1.Fields(9))
BanMingC = Trim(RstShuju1.Fields(10))
DaKaShiJian = CDate(RstShuju1.Fields(4))
Rstbanci.Close
Set Rstbanci = New ADODB.Recordset
Rstbanci.Open "select * from ban where banhao='" + Banhao + "'and banming='" + BanMingC + "' ", CnnBanci, adOpenKeyset, adLockOptimistic, adCmdText
'BanShiJian = CDate(Rstbanci.Fields(7))
If ShiDuan = 1 Then
BanShiJian = CDate(Rstbanci.Fields(5))
End If
If ShiDuan = 2 Then
BanShiJian = CDate(Rstbanci.Fields(7))
End If
If ShiDuan = 3 Then
BanShiJian = CDate(Rstbanci.Fields(9))
End If
If ShiDuan = 4 Then
BanShiJian = CDate(Rstbanci.Fields(11))
End If
If ShiDuan = 5 Then
BanShiJian = CDate(Rstbanci.Fields(13))
End If
If ShiDuan = 6 Then
BanShiJian = CDate(Rstbanci.Fields(15))
End If
If BanShiJian = "" Then
RstShuju1.Fields(6) = 2
RstShuju1.Update
Exit Sub
End If
'If IfFour = True Then
' BanShiJian = CDate(Rstbanci.Fields(11))
'End If
ChaShiJian = DateDiff("N", BanShiJian, DaKaShiJian)
If CInt(-ChiDaoTime) <= ChaShiJian And ChaShiJian < JiaBanTime Then
RstShuju1.Fields(6) = 0
Else
If ChaShiJian > ChiDaoTime And ChaShiJian < 30 Then
RstShuju1.Fields(6) = 1
Set Rstkaoqin = New ADODB.Recordset
Rstkaoqin.Open "select * from qingjiatianshu where xingming='" + Ming + "'", Cnnshuju, adOpenStatic, adLockBatchOptimistic, adCmdText
CC = Rstkaoqin.Fields(5)
DD = CC + 1
Rstkaoqin.Fields(5) = DD
Rstkaoqin.UpdateBatch
Else
RstShuju1.Fields(6) = 2
End If
RstShuju1.UpdateBatch
Exit Sub
End If
End If
Set RstShuju = New ADODB.Recordset 'CHECK上午休息下午上班打卡是否准时
RstShuju.Open "select * from kaoqishuju where xingming='" + Ming + "'and checkqingjia=1 and riqi='" + Riqi + "'and ifsxban=1", Cnnshuju, adOpenKeyset, adLockBatchOptimistic, adCmdText
If Not RstShuju.EOF Then
DaKaShiJian = CDate(RstShuju.Fields(4))
BanShiJian = CDate("13:30:00")
If RstShuju!Banhao = "0002" Then
BanShiJian = CDate("14:00:00")
End If
ChaShiJian = DateDiff("N", BanShiJian, DaKaShiJian)
If -5 <= ChaShiJian And ChaShiJian < 60 Then
RstShuju.Fields(6) = 0
Else
If ChaShiJian > 5 And ChaShiJian < 30 Then
RstShuju.Fields(6) = 1
Set Rstkaoqin = New ADODB.Recordset
Rstkaoqin.Open "select * from qingjiatianshu where xingming='" + Ming + "'", Cnnshuju, adOpenStatic, adLockBatchOptimistic, adCmdText
CC = Rstkaoqin!chidao
DD = CC + 1
Rstkaoqin.Fields(5) = DD
Rstkaoqin.UpdateBatch
Else
RstShuju.Fields(6) = 2
End If
RstShuju.UpdateBatch
End If
End If
Set RstShuju = New ADODB.Recordset 'CHECK下午休息上午下班打卡是否准时
RstShuju.Open "select * from kaoqishuju where xingming='" + Ming + "'and checkqingjia=2 and riqi='" + Riqi + "'and ifsxban=2", Cnnshuju, adOpenKeyset, adLockBatchOptimistic, adCmdText
If Not RstShuju.EOF Then
DaKaShiJian = CDate(RstShuju.Fields(4))
BanShiJian = CDate("13:00:00")
If RstShuju!Banhao = "0002" Then
BanShiJian = CDate("13:30:00")
End If
ChaShiJian = DateDiff("N", BanShiJian, DaKaShiJian)
If -5 <= ChaShiJian And ChaShiJian < 60 Then
RstShuju.Fields(6) = 0
Else
If ChaShiJian > 5 And ChaShiJian < 30 Then
RstShuju.Fields(6) = 1
Set Rstkaoqin = New ADODB.Recordset
Rstkaoqin.Open "select * from qingjiatianshu where xingming='" + Ming + "'", Cnnshuju, adOpenStatic, adLockBatchOptimistic, adCmdText
CC = Rstkaoqin!chidao
DD = CC + 1
Rstkaoqin.Fields(5) = DD
Rstkaoqin.UpdateBatch
Else
RstShuju.Fields(6) = 2
End If
RstShuju.UpdateBatch
End If
End If
End Sub
Private Sub CheQingJia_Click()
'FrmQingJia.Show 1
End Sub
Private Sub AddExcel_Click()
End Sub
Private Sub add_Click()
AddExcel.Show
End Sub
Private Sub exit_Click()
Unload Me
End
End Sub
Private Sub Faka_Click()
CheReadCardNO = True
frmfaka.Show 1
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
'Frame2.Visible = True
End Sub
Private Sub Frame2_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Frame2.Visible = True
End Sub
Private Sub GongZi_Click()
FrmGongZi.Show 1
End Sub
Private Sub HuanBan_Click()
FrmChangeBan.Show 1
End Sub
Private Sub Infomation_Click()
Info.Show 1
End Sub
Private Sub JiaBan_Click()
frmjiaban.Show 1
End Sub
Private Sub Jiankong_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
'Frame2.Visible = False
End Sub
Private Sub ModiInfo_Click()
'FrmModi.Show 1
End Sub
Private Sub ModiTianShu_Click()
'FrmModiJiaShu.Show 1
End Sub
Private Sub PriCulb_Click()
AddExcel.Show
End Sub
Private Sub PriSwiss_Click()
AddFour.Show 1
End Sub
Private Sub QingJia_Click()
frmholiday.Show 1
End Sub
Private Sub Query_Click()
frmquery.Show 1
End Sub
Private Sub LoadData()
Dangtian = Format(Now, "yyyymmdd")
Set RstShuju = New ADODB.Recordset
RstShuju.Open "select * from kaoqishuju where iffaka=0 and riqi='" + Dangtian + "'order by gonghao ", Cnnshuju, adOpenStatic, adLockBatchOptimistic, adCmdText
Set Jiankong.DataSource = RstShuju
Jiankong.Columns(0).Width = 0
Jiankong.Columns(1).Caption = "卡号"
Jiankong.Columns(1).Width = 1600
Jiankong.Columns(2).Caption = "姓名"
Jiankong.Columns(2).Width = 1600
Jiankong.Columns(3).Caption = "日期"
Jiankong.Columns(3).Width = 1600
Jiankong.Columns(4).Caption = "打卡时间"
Jiankong.Columns(4).Width = 1600
Jiankong.Columns(5).Caption = "卡身号"
Jiankong.Columns(5).Width = 1600
Jiankong.Columns(6).Caption = "出勤情况"
'If Jiankong.Columns(6).Value = 0 Then
' Jiankong.Columns(6).Value = "正常出勤"
'End If
Jiankong.Columns(6).Width = 1000
Jiankong.Columns(7).Width = 0
Jiankong.Columns(8).Width = 0
Jiankong.Columns(9).Width = 0
Jiankong.Columns(10).Caption = "班名"
Jiankong.Columns(10).Width = 800
Jiankong.Columns(11).Width = 0
Jiankong.Columns(12).Width = 0
Jiankong.Columns(13).Caption = "工号"
Jiankong.Columns(13).Width = 750
Jiankong.Columns(14).Width = 0
Jiankong.Columns(15).Width = 0
Jiankong.Columns(16).Width = 0
End Sub
Public Sub AddToEnd()
Dim ShangBan, XiaBan, CheckSX, Riqi, cardono, IFLate, CardNo, GongHao
Dim ShangBan1, XiaBan1
'Rstmain.Close
'CheckIfDaKa
Set Cnnmain = New ADODB.Connection
Cnnmain.Open "kaoqin", "andy", "1234"
Set Rstmain = New ADODB.Recordset
Rstmain.Open "select * from kaoqishuju where xingming='" + Ming + "'and riqi='" + Riqi + "'and ifsxban=2", Cnnmain, adOpenDynamic, adLockOptimistic, adCmdText
If Rstmain.EOF Then
Exit Sub
Else
CardNo = Rstmain.Fields(1)
xingming = Rstmain.Fields(2)
CheckSX = Rstmain.Fields(8)
If CheckSX = 2 And ShiDuan = 2 Then
XiaBan = Rstmain.Fields(4)
End If
Riqi = Rstmain.Fields(3)
cardono = Rstmain.Fields(5)
IFLate = Rstmain.Fields(6)
GongHao = Rstmain.Fields(13)
Rstmain.Close
Set Rstmain = New ADODB.Recordset
Rstmain.Open "select * from kaoqishuju where xingming='" + Ming + "' and ifsxban=1 and riqi='" + Riqi + "'", Cnnmain, adOpenDynamic, adLockBatchOptimistic, adCmdText
If Not Rstmain.EOF Then
ShangBan = Rstmain.Fields(4)
End If
If IfFour = True And KaCiShu = 4 Then
RstShuju.Open "select * from dangtiandaka where xingming'" + xingming + "'and riqi='" + Riqi + "'", Cnnmain, adOpenStatic, adLockBatchOptimistic, adCmdText
If Not RstShuju.EOF Then
RstShuju.Fields(7) = ShangBan
RstShuju.Fields(8) = XiaBan
RstShuju.UpdateBatch
Exit Sub
End If
End If
End If
Set RstEnd = New ADODB.Recordset
RstEnd.Open "select * from dangtiandaka where xingming='" + xingming + "' and riqi='" + Riqi + "' and sbshijian='" + ShangBan + "'", Cnnfaka, adOpenDynamic, adLockBatchOptimistic, adCmdText
If RstEnd.EOF Then
RstEnd.AddNew
RstEnd.Fields(0) = xingming
RstEnd.Fields(1) = cardono
RstEnd.Fields(2) = CardNo
RstEnd.Fields(3) = Riqi
RstEnd.Fields(4) = ShangBan
If CheckShangQingJia = True Then
RstEnd.Fields(5) = "上午请假"
End If
If CheckXiaQingJia = True Then
RstEnd.Fields(5) = "下午请假"
End If
RstEnd.Fields(6) = XiaBan
RstEnd.Fields(9) = IFLate
RstEnd.Fields(10) = "0"
RstEnd.Fields(11) = "1"
RstEnd.Fields(13) = GongHao
RstEnd.UpdateBatch
Rstmain.Close
Set Rstmain = New ADODB.Recordset
Rstmain.Open "select * from kaoqishuju where xingming='" + Ming + "' and ifsxban=1 and riqi='" + Riqi + "'", Cnnmain, adOpenDynamic, adLockBatchOptimistic, adCmdText
If Not Rstmain.EOF Then
Rstmain!ifsxban = 3
Rstmain!checkqingjia = 0
Rstmain.UpdateBatch
End If
Rstmain.Close
Set Rstmain = New ADODB.Recordset
Rstmain.Open "select * from kaoqishuju where xingming='" + Ming + "' and ifsxban=2 and riqi='" + Riqi + "'", Cnnmain, adOpenDynamic, adLockBatchOptimistic, adCmdText
If Not Rstmain.EOF Then
Rstmain!ifsxban = 3
Rstmain!checkqingjia = 0
Rstmain.UpdateBatch
End If
End If
'CheckIfDaKa
End Sub
Public Sub CheckWorkerTime()
Set Rstbanci = New ADODB.Recordset '从班次的表中提取班号和班名的打卡时间
Rstbanci.Open "select * from ban where banhao='" + Banhao + "'and banming='" + BanMingC + "' ", CnnBanci, adOpenKeyset, adLockOptimistic, adCmdText
BanShiJian = CDate(Rstbanci.Fields(5))
If IfFour = True Then
BanShiJian = CDate(Rstbanci.Fields(9))
End If
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -