📄 frmmain.frm
字号:
'tb1.MoveFirst
'i = 1
'Do While i <= 34
'If Len(Trim(tb1.Fields(i - 1).Value)) > 0 Then
' frm数据修改.lblLabels(i + 3).Caption = Trim(tb1.Fields(i - 1).Value) & ":"
' frm数据修改.lblLabels(i + 3).Alignment = 1
'Else
' frm数据修改.lblLabels(i + 3).Caption = " "
'End If
' frm数据修改.lblLabels(i + 3).Visible = True
' frm数据修改.txtFields(i + 3).Visible = True
' frm数据修改.txtFields(i + 3).Enabled = False
' frm数据修改.txtFields(i + 3).DataField = tb1.Fields(i - 1).Name
' i = i + 1
' Loop
frm数据修改.cmd保存.Visible = False
frm数据修改.cmd放弃.Visible = False
frm数据修改.cmd增加.Visible = False
frm数据修改.cmd删除.Visible = False
frm数据修改.cmd锁定.Visible = False
frm数据修改.cmd替换.Visible = False
frm数据修改.cmd定位.Move 2280, 30, 1455, 360
frm数据修改.cmd关闭.Move 4320, 30, 1455, 360
frm数据修改.lblLabels(0).Enabled = False
frm数据修改.lblLabels(1).Enabled = False
frm数据修改.lblLabels(2).Enabled = False
frm数据修改.lblLabels(3).Enabled = False
frm数据修改.lblLabels(4).Enabled = False
frm数据修改.lbldzk.Enabled = False
frm数据修改.txtFields(0).Enabled = False
frm数据修改.Combo1.Enabled = False
frm数据修改.txtFields(2).Enabled = False
frm数据修改.txtFields(3).Enabled = False
frm数据修改.txtFields(4).Enabled = False
frm数据修改.chkdzk.Enabled = False
'i = 5
'For i = 5 To 28
' frm数据修改.lblLabels(i).Enabled = False
' frm数据修改.txtFields(i).Enabled = False
'Next i
'frm数据修改.Label1.Visible = True
'frm数据修改.Label2.Visible = True
'frm数据修改.Label3.Visible = True
'frm数据修改.Text1.Visible = True
'frm数据修改.Text2.Visible = True
'frm数据修改.Text3.Visible = True
frm数据修改.Show 1
End If
'********
db.Close
End If
If dbdk = True Then
frmMAIN.StatusBar1.Panels(1).Text = " 注意:现在打开和处理的是" & ye & "年" & mon & "月的工资库!"
Else
frmMAIN.StatusBar1.Panels(1).Text = " ***未打开工资库***"
End If
frmMAIN.StatusBar1.Panels(2).Text = " "
Exit Sub
Err:
yn = MsgBox("网络或其它故障,请处理后进行!", 48)
End Sub
Private Sub SL_Click()
RetVal = Shell("Winmine.exe", 1)
End Sub
Private Sub SYSM_Click()
On Error GoTo wr:
frmBrowser.Show
GoTo es:
wr: yn = MsgBox("对不起,您的系统不能显示帮助文件!", 48)
es: End Sub
Private Sub Toolbar1_ButtonClick(ByVal Button As ComctlLib.Button)
On Error Resume Next
timTimer.Enabled = True
Select Case Button.Key
Case "NEW"
Call YKSC_Click
Case "TJHZ"
If dbdk = True Then
Call DQSJTJ_Click
Else
yn = MsgBox("请先打开月工资库!", 48)
End If
Case "CLOSE"
If dbdk = True Then
Call GBYK_Click
Else
yn = MsgBox("没有打开的工资库!", 48)
End If
Case "END"
End
Case "HELP"
frmBrowser.Show 1
Case "PRINT"
If dbdk = True Then
Call DQBBDY_Click
Else
yn = MsgBox("请先打开月工资库!", 48)
End If
Case "IMPORT"
If dbdk = True Then
Call SJIMP_Click
Else
yn = MsgBox("请先打开月工资库!", 48)
End If
Case "OPEN"
Call DKYK_Click
Case "DISK"
If dbdk = True Then
frm报盘输出.Show 1
Else
yn = MsgBox("请先打开月工资库!", 48)
End If
Case "DQKCL"
If dbdk = True Then
Call DQSJXG_Click
Else
yn = MsgBox("请先打开月工资库!", 48)
End If
Case "SCBPWJ"
If dbdk = True Then
Call SCSBWJ_Click
Else
yn = MsgBox("请先打开月工资库!", 48)
End If
Case "DWXXWH"
frm系统信息维护.Show 1
End Select
End Sub
Private Sub YKBF_Click()
Frm月库备份.Show 1
End Sub
Private Sub YKER_Click()
Frm删除月库.Show 1
End Sub
Private Sub YKSC_Click()
If dbdk = True Then
yn = MsgBox(ye & "年" & mon & "月" & "的工资库已打开,是否关闭?", 36)
If yn = vbYes Then
frmMAIN.StatusBar1.Panels(1).Text = " 注意:原打开的工资库已经被关闭!"
frm月库生成.Show 1
End If
Else
frm月库生成.Show 1
End If
LSDBDK = False
Call CDKZ
End Sub
Public Sub CDKZ()
If dbdk = True Then
DQKCL.Enabled = True
'TXKCL.Enabled = True
'LXKCL.Enabled = True
'SCSBWJ.Enabled = True
'SBCPSC.Enabled = True
GBYK.Enabled = True
Else
DQKCL.Enabled = False
'TXKCL.Enabled = False
'LXKCL.Enabled = False
'SCSBWJ.Enabled = False
'SBCPSC.Enabled = False
GBYK.Enabled = False
End If
If dbdk = True Then
frmMAIN.StatusBar1.Panels(1).Text = " 注意:现在打开和处理的是" & ye & "年" & mon & "月的工资库!"
Else
frmMAIN.StatusBar1.Panels(1).Text = " ***未打开工资库***"
End If
End Sub
Private Sub ZP_Click()
RetVal = Shell("SOL.EXE", 1)
End Sub
Private Sub DQSJTJ_Click()
Dim MaxDays As Integer '当月总天数
Dim s As String
Set db = ws.OpenDatabase(dqklj)
Set tb2 = db.OpenRecordset("bzk", dbOpenTable)
If tb2.RecordCount = 0 Then
yn = MsgBox("库内无人员记录,不能继续,请先设置标准库后再生成!", 48)
db.Close
Else
SQL = "select * from [bzk] where 打纸卡=True order by 编号"
Set tb3 = db.OpenRecordset(SQL, dbOpenDynaset)
frmMAIN.StatusBar1.Panels(2).Text = "共" & Val(tb3.RecordCount) & "条记录"
tb2.Close
tb3.Close
Set tb1 = db.OpenRecordset("bzk", dbOpenTable)
Set tb2 = db.OpenRecordset("tjk", dbOpenTable)
Select Case mon
Case "01", "03", "05", "07", "08", "10", "12"
MaxDays = 31
Case "04", "06", "09", "11"
MaxDays = 30
Case "02"
If ((ye Mod 4 = 0) And (ye Mod 100 <> 0)) Or (ye Mod 400 = 0) Then
MaxDays = 29
Else
MaxDays = 28
End If
End Select
tb1.MoveFirst
Frm统计进程.pb1.Max = tb1.RecordCount + tb2.RecordCount
Do While Not tb1.EOF
Frm统计进程.Show
tb1.Edit
tb1("考勤日数") = MaxDays
tb1.Update
tb1.MoveNext
If Frm统计进程.pb1.Value < Frm统计进程.pb1.Max Then Frm统计进程.pb1.Value = Frm统计进程.pb1.Value + 1
Loop
tb1.Close
If tb2.RecordCount > 0 Then
tb2.MoveFirst
Do While Not tb2.EOF
On Error GoTo errcl:
If Len(Trim(tb2("统计条件"))) > 0 Then
SQL = "Update bzk set " & tb2("统计字段") & "=" & tb2("统计公式") & " where " & tb2("统计条件") & " and 打纸卡=true"
Else
SQL = "Update bzk set " & tb2("统计字段") & "=" & tb2("统计公式") & " where 打纸卡=true"
End If
db.Execute (SQL)
tb2.MoveNext
If Frm统计进程.pb1.Value < Frm统计进程.pb1.Max Then Frm统计进程.pb1.Value = Frm统计进程.pb1.Value + 1
Loop
tb2.Close
Set tb2 = db.OpenRecordset("hzk", dbOpenTable)
Frm统计进程.pb1.Max = tb2.RecordCount
If tb2.RecordCount > 0 Then
Do While Not tb2.EOF
tb2.Delete
tb2.MoveNext
If Frm统计进程.pb1.Value < Frm统计进程.pb1.Max Then Frm统计进程.pb1.Value = Frm统计进程.pb1.Value + 1
Loop
End If
SQL = "select [bzk].部门,sum([bzk].出勤日数) as 出勤日数,sum([bzk].基本日薪) as 基本日薪,sum([bzk].基本职加) as 基本职加,sum([bzk].基本领加) as 基本领加,sum([bzk].基本特津) as 基本特津,sum([bzk].基本工资) as 基本工资,sum([bzk].职务加给) as 职务加给,sum([bzk].领导加给) as 领导加给,sum([bzk].特殊津贴) as 特殊津贴,sum([bzk].加班基数) as 加班基数,sum([bzk].加班时数) as 加班时数,sum([bzk].加班费) as 加班费,sum([bzk].夜班补贴) as 夜班补贴,sum([bzk].年资津贴) as 年资津贴,sum([bzk].全勤奖金) as 全勤奖金,sum([bzk].上月补发) as 上月补发,sum([bzk].其它或奖金) as 其它或奖金,sum([bzk].伙食费) as 伙食费,sum([bzk].罚款或扣分) as 罚款或扣分,sum([bzk].代扣款项) as 代扣款项,sum([bzk].个人所得税) as 个人所得税,sum([bzk].应发合计) as 应发合计,sum([bzk].代扣合计) as 代扣合计,sum([bzk].实发金额) as 实发金额 from bzk where 打纸卡=true group by 部门"
Set tb3 = db.OpenRecordset(SQL, dbOpenDynaset)
Frm统计进程.pb1.Max = tb3.RecordCount + 1
If tb3.RecordCount > 0 Then
tb3.MoveFirst
Do While Not tb3.EOF
tb2.AddNew
tb2("部门") = tb3("部门")
tb2("出勤日数") = tb3("出勤日数")
tb2("基本日薪") = tb3("基本日薪")
tb2("基本职加") = tb3("基本职加")
tb2("基本领加") = tb3("基本领加")
tb2("基本特津") = tb3("基本特津")
tb2("基本工资") = tb3("基本工资")
tb2("职务加给") = tb3("职务加给")
tb2("领导加给") = tb3("领导加给")
tb2("特殊津贴") = tb3("特殊津贴")
tb2("加班基数") = tb3("加班基数")
tb2("加班时数") = tb3("加班时数")
tb2("加班费") = tb3("加班费")
tb2("夜班补贴") = tb3("夜班补贴")
tb2("年资津贴") = tb3("年资津贴")
tb2("全勤奖金") = tb3("全勤奖金")
tb2("上月补发") = tb3("上月补发")
tb2("其它或奖金") = tb3("其它或奖金")
tb2("伙食费") = tb3("伙食费")
tb2("罚款或扣分") = tb3("罚款或扣分")
tb2("代扣款项") = tb3("代扣款项")
tb2("个人所得税") = tb3("个人所得税")
tb2("应发合计") = tb3("应发合计")
tb2("代扣合计") = tb3("代扣合计")
tb2("实发金额") = tb3("实发金额")
tb2.Update
tb3.MoveNext
If Frm统计进程.pb1.Value < Frm统计进程.pb1.Max Then Frm统计进程.pb1.Value = Frm统计进程.pb1.Value + 1
Loop
End If
tb3.Close
SQL = "select sum([bzk].出勤日数) as 出勤日数,sum([bzk].基本日薪) as 基本日薪,sum([bzk].基本职加) as 基本职加,sum([bzk].基本领加) as 基本领加,sum([bzk].基本特津) as 基本特津,sum([bzk].基本工资) as 基本工资,sum([bzk].职务加给) as 职务加给,sum([bzk].领导加给) as 领导加给,sum([bzk].特殊津贴) as 特殊津贴,sum([bzk].加班基数) as 加班基数,sum([bzk].加班时数) as 加班时数,sum([bzk].加班费) as 加班费,sum([bzk].夜班补贴) as 夜班补贴,sum([bzk].年资津贴) as 年资津贴,sum([bzk].全勤奖金) as 全勤奖金,sum([bzk].上月补发) as 上月补发,sum([bzk].其它或奖金) as 其它或奖金,sum([bzk].伙食费) as 伙食费,sum([bzk].罚款或扣分) as 罚款或扣分,sum([bzk].代扣款项) as 代扣款项,sum([bzk].个人所得税) as 个人所得税,sum([bzk].应发合计) as 应发合计,sum([bzk].代扣合计) as 代扣合计,sum([bzk].实发金额) as 实发金额 from bzk where 打纸卡=true"
Set tb3 = db.OpenRecordset(SQL, dbOpenDynaset)
If tb3.RecordCount > 0 Then
tb3.MoveFirst
Do While Not tb3.EOF
tb2.AddNew
tb2("部门") = "总计"
tb2("出勤日数") = tb3("出勤日数")
tb2("基本日薪") = tb3("基本日薪")
tb2("基本职加") = tb3("基本职加")
tb2("基本领加") = tb3("基本领加")
tb2("基本特津") = tb3("基本特津")
tb2("基本工资") = tb3("基本工资")
tb2("职务加给") = tb3("职务加给")
tb2("领导加给") = tb3("领导加给")
tb2("特殊津贴") = tb3("特殊津贴")
tb2("加班基数") = tb3("加班基数")
tb2("加班时数") = tb3("加班时数")
tb2("加班费") = tb3("加班费")
tb2("夜班补贴") = tb3("夜班补贴")
tb2("年资津贴") = tb3("年资津贴")
tb2("全勤奖金") = tb3("全勤奖金")
tb2("上月补发") = tb3("上月补发")
tb2("其它或奖金") = tb3("其它或奖金")
tb2("伙食费") = tb3("伙食费")
tb2("罚款或扣分") = tb3("罚款或扣分")
tb2("代扣款项") = tb3("代扣款项")
tb2("个人所得税") = tb3("个人所得税")
tb2("应发合计") = tb3("应发合计")
tb2("代扣合计") = tb3("代扣合计")
tb2("实发金额") = tb3("实发金额")
tb2.Update
tb3.MoveNext
Loop
End If
If Frm统计进程.pb1.Value < Frm统计进程.pb1.Max Then Frm统计进程.pb1.Value = Frm统计进程.pb1.Value + 1
Unload Frm统计进程
db.Close
yn = MsgBox("在职库统计完毕,是否显示统计结果?", 36)
If yn = vbYes Then
Set db = ws.OpenDatabase(dqklj)
Set tb2 = db.OpenRecordset("bzk", dbOpenTable)
If tb2.RecordCount = 0 Then
yn = MsgBox("库内无人员记录,不能继续,请先设置标准库后再生成!", 48)
Else
tb2.Close
SQL = "select * from [bzk] where 打纸卡=True order by 编号"
Set tb3 = db.OpenRecordset(SQL, dbOpenDynaset)
frmMAIN.StatusBar1.Panels(2).Text = "共" & Val(tb3.RecordCount) & "条记录"
Load frm数据修改
frm数据修改.Caption = ye & "年" & mon & "月 工资库修改"
frmMAIN.StatusBar1.Panels(1).Text = " 注意:现在打开和处理的是" & ye & "年" & mon & "月 工资库"
frm数据修改.datPrimaryRS.DatabaseName = dqklj
frm数据修改.datPrimaryRS.RecordSource = "select * from [bzk] where 打纸卡=true order by 编号"
frm数据修改.datPrimaryRS.Refresh
frm数据修改.cmd保存.Visible = False
frm数据修改.cmd放弃.Visible = False
frm数据修改.cmd增加.Visible = False
frm数据修改.cmd删除.Visible = False
frm数据修改.cmd锁定.Visible = False
frm数据修改.cmd替换.Visible = False
frm数据修改.cmd定位.Move 2280, 30, 1455, 360
frm数据修改.cmd关闭.Move 4320, 30, 1455, 360
frm数据修改.lblLabels(0).Enabled = False
frm数据修改.lblLabels(1).Enabled = False
frm数据修改.lblLabels(2).Enabled = False
frm数据修改.lblLabels(3).Enabled = False
frm数据修改.lblLabels(4).Enabled = False
frm数据修改.lbldzk.Enabled = False
frm数据修改.txtFields(0).Enabled = False
frm数据修改.Combo1.Enabled = False
frm数据修改.txtFields(2).Enabled = False
frm数据修改.txtFields(3).Enabled = False
frm数据修改.txtFields(4).Enabled = False
frm数据修改.chkdzk.Enabled = False
i = 5
For i = 5 To 28
frm数据修改.lblLabels(i).Enabled = False
frm数据修改.txtFields(i).Enabled = False
Next i
frm数据修改.Show 1
End If
db.Close
End If
Else
yn = MsgBox("没有设置统计公式,请先设置!", 48)
End If
End If
frmMAIN.StatusBar1.Panels(2).Text = " "
GoTo en:
errcl:
yn = MsgBox("统计公式错误,请检查修改公式!", 48)
Unload Frm统计进程
en: End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -