?? frmleavel.frm
字號:
End If
Case 10
If Trim(vtempdata) <> Empty Then
.Text = frmEmployees.RecordSetFindItem(rctLeavelStatus, "LS_ID", vtempdata, 1)
End If
Case Else
If Trim(vtempdata) <> Empty Then
.Text = Trim(vtempdata)
End If
End Select
End If
Next i
.Row = .Row + 1
Recordset.MoveNext
Wend
.Redraw = True
End With
End If
End Sub
Private Sub dispdetial()
With rctLeavelList
txtEmp_ID.Text = .Fields("Emp_ID")
txtEmp_Name.Text = .Fields("Emp_Name")
End With
End Sub
Public Sub InitreDepart(ByVal trwDepart As TreeView)
Dim Node As Node
Dim departName As String
Dim DepartId As String
With trwDepart
.LineStyle = tvwRootLines
Set Node = .Nodes.Add(, , "full", "全部員工")
Node.Image = "root"
If rctDepartList.RecordCount > 0 Then
rctDepartList.MoveFirst
While Not rctDepartList.EOF
DepartId = "I" & Trim(rctDepartList.Fields("Depart_ID"))
departName = Trim(rctDepartList.Fields("Depart_name"))
Set Node = .Nodes.Add("full", 4, DepartId, departName)
Node.Image = "depart"
Node.SelectedImage = "select"
rctDepartList.MoveNext
Wend
End If
If .Nodes("full").Children > 0 Then
.Nodes("full").Expanded = True
End If
End With
End Sub
Private Sub DetialClear()
txtEmp_ID.Text = Empty
txtEmp_Name.Text = Empty
dcbDepartID.Text = Empty
dcbLeavelStatus.Text = Empty
dcbLeavelType.Text = Empty
txtLeavel_days.Text = Empty
mskLeavel_start_time.Text = " - - "
MaskLeavel_end_time.Text = " - - "
txtLeavel_matter.Text = Empty
txtExamine_opinion.Text = Empty
txtExamine_person.Text = Empty
End Sub
Private Sub chkDateOption_Click()
If chkDateOption.Value = 0 Then
dtpStart.Enabled = False
dtpEnd.Enabled = False
Else
If chkDateOption.Value = 1 Then
dtpStart.Enabled = True
dtpEnd.Enabled = True
End If
End If
End Sub
Private Sub flexLeavel_DblClick()
If frmLeavel.Caption = "請假管理" Then
Call tblEmployees_ButtonClick(tblEmployees.Buttons("modify"))
End If
End Sub
Private Sub flexLeavel_SelChange()
Dim vtempdata As Variant
Call frmEmployees.GetFlexGridFirstColValue(flexLeavel, strLvlFirstFieldValue) '從表格中提取員工工作證號
If strLvlFirstFieldValue <> Empty Then
If Not (rctLeavelList.BOF And rctLeavelList.EOF) Then
rctLeavelList.MoveFirst
rctLeavelList.Find ("Emp_ID = " & "'" & Trim(strLvlFirstFieldValue) & "'")
txtEmp_ID.Text = rctLeavelList.Fields("Emp_ID")
txtEmp_Name.Text = rctLeavelList.Fields("Emp_Name")
If rctLeavelList.Fields("Depart_Id") <> Empty Then
dcbDepartID.BoundText = rctLeavelList.Fields("Depart_Id")
Else
dcbDepartID.Text = Empty
End If
dcbLeavelStatus.BoundText = rctLeavelList.Fields("LS_ID")
dcbLeavelType.BoundText = rctLeavelList.Fields("Leavel_ID")
If rctLeavelList.Fields("Leavel_days") <> Empty Then
txtLeavel_days.Text = rctLeavelList.Fields("Leavel_days")
Else
txtLeavel_days.Text = Empty
End If
If rctLeavelList.Fields("Leavel_matter") <> Empty Then
txtLeavel_matter.Text = rctLeavelList.Fields("Leavel_matter")
Else
txtLeavel_matter.Text = Empty
End If
If rctLeavelList.Fields("Examine_opinion") <> Empty Then
txtExamine_opinion.Text = rctLeavelList.Fields("Examine_opinion")
Else
txtExamine_opinion.Text = Empty
End If
If rctLeavelList.Fields("Examine_person") <> Empty Then
txtExamine_person.Text = rctLeavelList.Fields("Examine_person")
Else
txtExamine_person.Text = Empty
End If
vtempdata = rctLeavelList.Fields("Leavel_start_time")
If vtempdata <> Empty Then
mskLeavel_start_time.Text = Format(vtempdata, "yyyy-mm-dd")
Else
mskLeavel_start_time.Text = " - - "
End If
vtempdata = rctLeavelList.Fields("Leavel_end_time")
If vtempdata <> Empty Then
MaskLeavel_end_time.Text = Format(vtempdata, "yyyy-mm-dd")
Else
MaskLeavel_end_time.Text = " - - "
End If
End If
Else
Call DetialClear
End If
End Sub
Private Sub Form_Load()
Call IniGrid(flexLeavel)
Call showdata(rctLeavelList, flexLeavel)
Set dcbDepartID.RowSource = rctDepartList
dcbDepartID.BoundColumn = "Depart_ID"
dcbDepartID.ListField = "Depart_Name"
Set dcbLeavelStatus.RowSource = rctLeavelStatus
dcbLeavelStatus.BoundColumn = "LS_ID"
dcbLeavelStatus.ListField = "Ls_Name"
Set dcbLeavelType.RowSource = rctLeavelType
dcbLeavelType.BoundColumn = "Leavel_ID"
dcbLeavelType.ListField = "Leavel_Name"
Call InitreDepart(treDepart)
End Sub
Private Sub lblEmatter_Click()
End Sub
Private Sub lblLstartTime_Click()
End Sub
Private Sub MaskLeavel_end_time_KeyPress(KeyAscii As Integer)
KeyAscii = 0
End Sub
Private Sub mskLeavel_start_time_KeyPress(KeyAscii As Integer)
KeyAscii = 0
End Sub
Private Sub tblEmployees_ButtonClick(ByVal Button As MSComctlLib.Button)
Select Case Button.Key
Case "add"
If flexLeavel.Rows > 2 Then
flexLeavel.Row = flexLeavel.Rows - 1
flexLeavel.Col = 0
flexLeavel.RowSel = flexLeavel.Rows - 1
flexLeavel.ColSel = flexLeavel.Cols - 1
If flexLeavel.Rows > 10 Then
flexLeavel.TopRow = flexLeavel.Rows - 15
End If
End If
frmLeavelAdd.Caption = "新增記錄"
frmLeavelAdd.cmdPrevious.Visible = False
frmLeavelAdd.cmdNext.Visible = False
frmLeavelAdd.cmdAdd.Visible = False
frmLeavelAdd.Show vbModal
Case "delete"
If strLvlFirstFieldValue <> Empty Then
If MsgBox("您確定要刪除此條記錄嗎?", vbQuestion + vbYesNo, "刪除記錄") = vbYes Then
If frmUnit.RecordDelete(rctLeavelList, adAffectCurrent) = True Then
flexLeavel.Redraw = False
Call IniGrid(flexLeavel)
Call showdata(rctLeavelList, flexLeavel)
flexLeavel.Redraw = True
End If
End If
End If
Case "modify"
If strLvlFirstFieldValue <> Empty Then
frmLeavelAdd.Caption = "修改記錄"
Call frmLeavelAdd.InifrmLeavel
frmLeavelAdd.cmdAdd.Visible = False
frmLeavelAdd.cmdCancel.Visible = False
frmLeavelAdd.Show vbModal
End If
Case "exit"
Unload Me
End Select
End Sub
Private Sub tlbExit_ButtonClick(ByVal Button As MSComctlLib.Button)
Select Case Button.Key
Case "exit"
Unload Me
Case "help"
End Select
End Sub
Private Sub tlbPrint_ButtonClick(ByVal Button As MSComctlLib.Button)
If ExcuteSql(rctQueryLeavelWithID, "select * from queryLeavelwithID") = True Then
rctQueryLeavelWithID.Filter = rctLeavelList.Filter
Set drptLeavel.DataSource = rctQueryLeavelWithID
End If
If rctQueryLeavelWithID.RecordCount <= 0 Then
MsgBox "沒有合適的記錄", vbInformation + vbOKOnly, "打印信息"
Exit Sub
End If
Select Case Button.Key
Case "printer"
On Error GoTo Error_on_print
drptLeavel.PrintReport False '不顯示窗口
Exit Sub
Error_on_print:
MsgBox "錯誤代碼:" & Err.Number & _
"錯誤描述:" & Err.Description, vbCritical + vbOKOnly, "打印錯誤"
Case "Preview"
drptLeavel.Show vbModal
End Select
End Sub
Private Sub treDepart_NodeClick(ByVal Node As MSComctlLib.Node)
Dim DepartId As String
Dim strFilter As String
If Node.Key <> "full" Then
DepartId = Mid(Node.Key, 2, Len(Node.Key) - 1)
'MsgBox DepartId
strFilter = "Depart_ID =" & "'" & DepartId & "'"
If chkDateOption.Value = 1 Then
strFilter = strFilter & " and " & "(" & "Leavel_start_time >= " & "'" & dtpStart.Value & "'" & " and " & "Leavel_start_time <= " & "'" & dtpEnd.Value & "'" & ")"
End If
'MsgBox strFilter
'strFilter = "depart_id =" & "'01'" & " and " & "Leavel_start_time >= " & "'2004-8-8'" & " and Leavel_start_time <= " & "'2004-8-8'"
'MsgBox strFilter
rctLeavelList.Filter = strFilter
Call IniGrid(flexLeavel)
Call showdata(rctLeavelList, flexLeavel)
strLvlFirstFieldValue = Empty
Else
If chkDateOption.Value = 1 Then
rctLeavelList.Filter = ""
rctLeavelList.Filter = "Leavel_start_time >= " & "'" & dtpStart.Value & "'" & " and " & "Leavel_start_time <= " & "'" & dtpEnd.Value & "'"
Else
rctLeavelList.Filter = ""
End If
Call IniGrid(flexLeavel)
Call showdata(rctLeavelList, flexLeavel)
strLvlFirstFieldValue = Empty
End If
Call DetialClear
End Sub
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -