Keine Beschreibung
Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

歷史休假紀錄.vb 4.6KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. Public Class 歷史休假紀錄
  2. ReadOnly ds, ds1 As New DataSet
  3. Private Sub 讀取人員資料表()
  4. 人員_dgv.DataSource = Nothing : ds.Clear()
  5. 人員_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  6. 人員_dgv.ColumnHeadersHeight = 25
  7. 人員_dgv.AllowUserToAddRows = False
  8. SQL_考勤明細表_人員()
  9. da.Fill(ds) : 人員_dgv.DataSource = ds.Tables(0) : conn.Close()
  10. 人員_dgv.Columns(0).FillWeight = 70 : 人員_dgv.Columns(1).FillWeight = 80 : 人員_dgv.Columns(2).FillWeight = 100 : 人員_dgv.Columns(3).Visible = False
  11. For i As Integer = 0 To 人員_dgv.Rows.Count - 1
  12. 人員_dgv.Rows(i).Cells("No.").Value = i + 1
  13. Next
  14. End Sub
  15. Private Sub 年份_下拉表單資料載入()
  16. SQL_考勤明細表_年份_下拉()
  17. 年份_cb.Items.Clear()
  18. While (dr.Read()) : 年份_cb.Items.Add(dr("年份")) : End While
  19. conn.Close()
  20. End Sub
  21. Private Sub Set_考勤明細()
  22. 月清單_DGV.DataSource = Nothing : ds1.Clear()
  23. 月清單_DGV.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  24. 月清單_DGV.ColumnHeadersHeight = 40
  25. 月清單_DGV.AllowUserToAddRows = False
  26. PA = 員工編號_tb.Text : PA1 = 年份_cb.Text : PA2 = 月份_cb.Text : SQL_休假清單()
  27. da.Fill(ds1) : 月清單_DGV.DataSource = ds1.Tables(0) : conn.Close()
  28. 月清單_DGV.Columns(0).FillWeight = 80 : 月清單_DGV.Columns(1).FillWeight = 40 : 月清單_DGV.Columns(2).FillWeight = 90 : 月清單_DGV.Columns(3).FillWeight = 65
  29. 月清單_DGV.Columns(4).FillWeight = 55 : 月清單_DGV.Columns(5).FillWeight = 200 : 月清單_DGV.Columns(6).FillWeight = 80 : 月清單_DGV.Columns(7).FillWeight = 80
  30. 月清單_DGV.Columns(8).FillWeight = 80
  31. End Sub
  32. Private Sub 歷史休假紀錄_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  33. 年份_下拉表單資料載入()
  34. 年份_cb.Text = Year(Today) : 月份_cb.SelectedIndex = Month(Today) - 1 : 請假類別_cb.SelectedIndex = 0
  35. PA1 = 年份_cb.Text : PA2 = 月份_cb.Text
  36. 讀取人員資料表() : Set_考勤明細()
  37. End Sub
  38. Private Sub 人員_dgv_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles 人員_dgv.CellClick
  39. If e.RowIndex = -1 Then : Else
  40. 員工編號_tb.Text = 人員_dgv("編號", e.RowIndex).Value.ToString : 申請人_tb.Text = 人員_dgv("姓名", e.RowIndex).Value.ToString
  41. Set_考勤明細()
  42. End If
  43. End Sub
  44. Private Sub 月清單_DGV_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles 月清單_DGV.CellClick
  45. If e.RowIndex = -1 Then : Else
  46. If 月清單_DGV.Rows(e.RowIndex).Cells("星期").Value.ToString = "星期六" Or 月清單_DGV.Rows(e.RowIndex).Cells("星期").Value.ToString = "星期日" Or
  47. 月清單_DGV.Rows(e.RowIndex).Cells("請假類別").Value.ToString = "國定假日" Then
  48. MsgBox("星期六/星期日或國定假日不可以申請特休!!")
  49. 請假日期_tb.Text = ""
  50. 事由_tb.Text = ""
  51. Else
  52. 員工編號_tb.Text = 月清單_DGV("編號", e.RowIndex).Value.ToString : 申請人_tb.Text = 月清單_DGV("姓名", e.RowIndex).Value.ToString
  53. 請假日期_tb.Text = 月清單_DGV("日期", e.RowIndex).Value.ToString : 事由_tb.Text = 月清單_DGV("事由", e.RowIndex).Value.ToString
  54. End If
  55. End If
  56. End Sub
  57. Private Sub 月清單_DGV_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 月清單_DGV.RowPostPaint
  58. Dim linePen As New Pen(Color.Blue, 2)
  59. If e.RowIndex = 月清單_DGV.Rows.Count - 1 Then : Exit Sub : Else
  60. If Strings.Left(月清單_DGV("日期", e.RowIndex).Value.ToString, 7) <> Strings.Left(月清單_DGV("日期", e.RowIndex + 1).Value.ToString, 7) Then
  61. Dim startX As Integer = IIf(月清單_DGV.RowHeadersVisible, 月清單_DGV.RowHeadersWidth, 0) : Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  62. Dim endX As Integer = startX + 月清單_DGV.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 月清單_DGV.HorizontalScrollingOffset
  63. e.Graphics.DrawLine(linePen, startX, startY, endX, startY) : Exit Sub
  64. End If
  65. End If
  66. End Sub
  67. Private Sub 月份_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 月份_cb.SelectedIndexChanged
  68. Set_考勤明細()
  69. End Sub
  70. End Class