📄 frmempdetaillist.frm
字号:
VERSION 5.00
Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCTL.OCX"
Object = "{86CF1D34-0C5F-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCT2.OCX"
Begin VB.Form frmEmpDetailList
Caption = "员工服务明细列表"
ClientHeight = 6015
ClientLeft = 60
ClientTop = 345
ClientWidth = 8415
Icon = "frmEmpDetailList.frx":0000
LinkTopic = "Form1"
LockControls = -1 'True
MDIChild = -1 'True
ScaleHeight = 6015
ScaleWidth = 8415
WindowState = 2 'Maximized
Begin VB.CommandButton cmdQuit
Caption = "关闭(&C)"
Height = 375
Left = 7200
TabIndex = 5
Top = 5520
Width = 1095
End
Begin VB.CommandButton cmdPrint
Caption = "打印(&P)"
Height = 375
Left = 1080
TabIndex = 7
Top = 5520
Width = 975
End
Begin VB.Frame fra2
Caption = "服务员工"
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 615
Index = 1
Left = 2520
TabIndex = 11
Top = 120
Width = 5775
Begin VB.ComboBox cboEmployee
Enabled = 0 'False
Height = 300
Left = 2640
Style = 2 'Dropdown List
TabIndex = 3
Top = 240
Width = 3015
End
Begin VB.OptionButton opt1
Caption = "指定员工"
Height = 180
Index = 1
Left = 1440
TabIndex = 2
Top = 300
Width = 1095
End
Begin VB.OptionButton opt1
Caption = "全部员工"
Height = 180
Index = 0
Left = 240
TabIndex = 1
Top = 300
Value = -1 'True
Width = 1095
End
End
Begin VB.Frame fra2
Caption = "服务时间"
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 615
Index = 0
Left = 120
TabIndex = 10
Top = 120
Width = 2295
Begin MSComCtl2.DTPicker dtpService
Height = 300
Left = 120
TabIndex = 0
Top = 240
Width = 2055
_ExtentX = 3625
_ExtentY = 529
_Version = 393216
Format = 62980097
CurrentDate = 37580
End
End
Begin VB.Frame fra1
Caption = "员工服务明细"
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 4575
Left = 120
TabIndex = 9
Top = 840
Width = 8175
Begin MSComctlLib.ListView lsvService
Height = 4215
Left = 120
TabIndex = 8
Top = 240
Width = 7935
_ExtentX = 13996
_ExtentY = 7435
View = 3
LabelEdit = 1
LabelWrap = 0 'False
HideSelection = 0 'False
GridLines = -1 'True
_Version = 393217
ForeColor = -2147483640
BackColor = -2147483643
Appearance = 1
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋体"
Size = 9.75
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
NumItems = 5
BeginProperty ColumnHeader(1) {BDD1F052-858B-11D1-B16A-00C0F0283628}
Text = "员工姓名"
Object.Width = 2540
EndProperty
BeginProperty ColumnHeader(2) {BDD1F052-858B-11D1-B16A-00C0F0283628}
Alignment = 2
SubItemIndex = 1
Text = "业务类型"
Object.Width = 3175
EndProperty
BeginProperty ColumnHeader(3) {BDD1F052-858B-11D1-B16A-00C0F0283628}
Alignment = 2
SubItemIndex = 2
Text = "客户编号"
Object.Width = 2540
EndProperty
BeginProperty ColumnHeader(4) {BDD1F052-858B-11D1-B16A-00C0F0283628}
Alignment = 2
SubItemIndex = 3
Text = "客户等待时间"
Object.Width = 3175
EndProperty
BeginProperty ColumnHeader(5) {BDD1F052-858B-11D1-B16A-00C0F0283628}
Alignment = 2
SubItemIndex = 4
Text = "客户服务时间"
Object.Width = 3175
EndProperty
End
End
Begin VB.CommandButton cmdRefresh
Caption = "刷新(&R)"
Height = 375
Left = 6120
TabIndex = 4
Top = 5520
Width = 1095
End
Begin VB.CommandButton cmdPreview
Caption = "预览(&V)"
Height = 375
Left = 120
TabIndex = 6
Top = 5520
Width = 975
End
End
Attribute VB_Name = "frmEmpDetailList"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Dim m_tagErrInfo As TYPE_ERRORINFO
Dim m_sDate As String
Dim m_bEmpCode As Boolean
Dim m_sEmpCode As String
Private Sub cmdQuit_Click()
On Error Resume Next
Unload Me
End Sub
Private Sub cmdRefresh_Click()
On Error Resume Next
m_sDate = dtpService.Value
If opt1(0).Value = True Then
m_bEmpCode = True
m_sEmpCode = ""
Else
If cboEmployee.ListIndex < 0 Then
MsgBox "请选择需要统计的员工名称。", vbOKOnly, "系统提示"
Exit Sub
End If
m_bEmpCode = False
m_sEmpCode = CStr(cboEmployee.ItemData(cboEmployee.ListIndex))
End If
InitListInfo
End Sub
Private Sub Form_Load()
On Error GoTo ERROR_EXIT
Dim rs As New ADODB.Recordset, cmd As New ADODB.Command
Dim strSQL As String, i As Integer
cboEmployee.Clear
dtpService.MaxDate = DateAdd("d", -1, Date)
dtpService.Value = DateAdd("d", -1, Date)
m_sDate = dtpService.Value
m_bEmpCode = True
m_sEmpCode = ""
'连接数据库
cmd.ActiveConnection = dbMyDB
cmd.CommandType = adCmdText
'查询数据库
strSQL = "SELECT * FROM Employee WHERE nouse_yesno = 0"
cmd.CommandText = strSQL
rs.CursorLocation = adUseClient
rs.Open cmd, , adOpenStatic, adLockReadOnly
If Not rs.EOF And rs.RecordCount > 0 Then
rs.MoveFirst
For i = 1 To rs.RecordCount
cboEmployee.AddItem rs!name_c
cboEmployee.ItemData(i - 1) = rs!ep_id
rs.MoveNext
Next i
End If
rs.Close
If rs.State = adStateOpen Then rs.Close
Set rs = Nothing
Set cmd = Nothing
InitListInfo
Exit Sub
ERROR_EXIT:
m_tagErrInfo.strErrDate = Format(Now, "yyyy-mm-dd hh:mm:ss")
m_tagErrInfo.strErrFile = "frmEmpDetailList"
m_tagErrInfo.strErrFunc = "Form_Load"
m_tagErrInfo.nErrNum = Err.Number
m_tagErrInfo.strErrDesc = Error(Err.Number)
If Err.Number <> 0 Then Err.Clear
modErrorInfo.WriteErrLog m_tagErrInfo
End Sub
Private Sub Form_Resize()
On Error Resume Next
Dim i As Integer, j As Integer
If Me.WindowState = 1 Then Exit Sub
If Me.Width < 8535 Then Me.Width = 8535
If Me.Height < 6420 Then Me.Height = 6420
i = Me.Width - 8535
j = Me.Height - 6420
'修改宽度
fra2(1).Width = i + 5775
cboEmployee.Width = i + 3015
fra1.Width = i + 8175
lsvService.Width = i + 7935
cmdRefresh.Left = i + 6120
cmdQuit.Left = i + 7200
'修改高度位置
fra1.Height = j + 4575
lsvService.Height = j + 4215
cmdPreview.Top = j + 5520
cmdPrint.Top = j + 5520
cmdRefresh.Top = j + 5520
cmdQuit.Top = j + 5520
End Sub
Private Sub Form_Terminate()
On Error Resume Next
Set frmEmpDetailList = Nothing
End Sub
Private Sub opt1_Click(Index As Integer)
On Error Resume Next
If Index = 0 And opt1(0).Value = True Then
cboEmployee.Enabled = False
ElseIf Index = 1 And opt1(1).Value = True Then
cboEmployee.Enabled = True
End If
End Sub
'//////////////////////////////////////////////////////////////////////////////////////
'/显示当前的数据
Private Function InitListInfo() As Boolean
On Error GoTo ERROR_EXIT
Dim rs As New ADODB.Recordset, cmd As New ADODB.Command
Dim strSQL As String, i As Integer
Dim itmX As ListItem, sName As String
Dim sTime1 As String, sTime2 As String, sTime As String, l As Long
Dim iHour As Long, iMinute As Long, iSecond As Long
lsvService.ListItems.Clear
'连接数据库
cmd.ActiveConnection = dbMyDB
cmd.CommandType = adCmdText
'查询数据库
If m_bEmpCode = True Then
strSQL = "SELECT * FROM VIEW_LIST_Emp_Service WHERE cq_start_data = '" & DateValue(m_sDate) & _
"' ORDER BY ep_code"
Else
strSQL = "SELECT * FROM VIEW_LIST_Emp_Service WHERE cq_start_data = '" & DateValue(m_sDate) & _
"' AND ep_id = '" & m_sEmpCode & "' ORDER BY cq_code"
End If
cmd.CommandText = strSQL
rs.CursorLocation = adUseClient
rs.Open cmd, , adOpenStatic, adLockReadOnly
If Not rs.EOF And rs.RecordCount > 0 Then
rs.MoveFirst
sName = ""
For i = 1 To rs.RecordCount
If rs!end_state <> 1 And rs!end_state <> 2 Then
If sName <> rs!name_c Then
sName = rs!name_c
Set itmX = lsvService.ListItems.Add(, , sName)
Else
Set itmX = lsvService.ListItems.Add(, , " ")
End If
If Not IsNull(rs!st_name) Then
itmX.SubItems(1) = rs!st_name
End If
If Not IsNull(rs!cq_code) Then
itmX.SubItems(2) = rs!cq_code
End If
'等待时间
If Not IsNull(rs!wait_time) Then
itmX.SubItems(3) = TimeValue(rs!wait_time)
End If
'服务时间
If Not IsNull(rs!start_time) Then
sTime1 = TimeValue(rs!start_time)
End If
If Not IsNull(rs!end_time) Then
sTime2 = TimeValue(rs!end_time)
End If
l = DateDiff("s", sTime1, sTime2)
iHour = l / 3600
iMinute = (l - iHour * 3600) / 60
iSecond = l - iHour * 3600 - iMinute * 60
sTime = TimeSerial(iHour, iMinute, iSecond)
itmX.SubItems(4) = sTime
End If
rs.MoveNext
Next i
End If
rs.Close
If rs.State = adStateOpen Then rs.Close
Set rs = Nothing
Set cmd = Nothing
InitListInfo = True
Exit Function
ERROR_EXIT:
m_tagErrInfo.strErrDate = Format(Now, "yyyy-mm-dd hh:mm:ss")
m_tagErrInfo.strErrFile = "frmEmpDetailList"
m_tagErrInfo.strErrFunc = "InitListInfo"
m_tagErrInfo.nErrNum = Err.Number
m_tagErrInfo.strErrDesc = Error(Err.Number)
If Err.Number <> 0 Then Err.Clear
modErrorInfo.WriteErrLog m_tagErrInfo
InitListInfo = False
End Function
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -