No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

一般物料請購單核准.vb 8.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. Option Strict Off
  2. Public Class 一般物料請購單核准
  3. Private ReadOnly ds, ds1, ds3 As New DataSet
  4. Dim 已超出 As Boolean
  5. Private Sub Set_使用者清單()
  6. 明細_dgv.DataSource = Nothing : ds.Clear()
  7. 明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  8. 明細_dgv.ColumnHeadersHeight = 25
  9. 明細_dgv.AllowUserToAddRows = False
  10. 明細_dgv.RowTemplate.Height = 35
  11. SQL_一般物料請購單明細表1()
  12. da.Fill(ds) : 明細_dgv.DataSource = ds.Tables(0) : conn.Close()
  13. 明細_dgv.Columns(0).Visible = False : 明細_dgv.Columns(1).FillWeight = 80 : 明細_dgv.Columns(2).FillWeight = 200 : 明細_dgv.Columns(3).FillWeight = 200
  14. 明細_dgv.Columns(5).FillWeight = 80 : 明細_dgv.Columns(6).FillWeight = 80 : 明細_dgv.Columns(7).FillWeight = 80 : 明細_dgv.Columns(8).FillWeight = 305
  15. 明細_dgv.Columns(4).FillWeight = 200
  16. 明細_dgv.Columns(5).DefaultCellStyle.Format = "#,##0.00" : 明細_dgv.Columns(6).DefaultCellStyle.Format = "#,##0.00" : 明細_dgv.Columns(7).DefaultCellStyle.Format = "#,##0.00"
  17. 明細_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  18. 明細_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  19. 明細_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  20. 明細_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  21. 明細_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  22. 明細_dgv.Columns("項次").ReadOnly = True : 明細_dgv.Columns("金額").ReadOnly = True
  23. 總金額_tb.Text = "0.00"
  24. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  25. 總金額_tb.Text = Val(總金額_tb.Text) + 明細_dgv.Rows(i).Cells("金額").Value
  26. Next i
  27. 總金額_tb.Text = Format(Val(總金額_tb.Text), "#,##0.00")
  28. End Sub
  29. Private Sub Set_清單1()
  30. 未審核_dgv.DataSource = Nothing : ds1.Clear()
  31. 未審核_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  32. 未審核_dgv.ColumnHeadersHeight = 25
  33. 未審核_dgv.AllowUserToAddRows = False
  34. SQL_未審核清單()
  35. da.Fill(ds1) : 未審核_dgv.DataSource = ds1.Tables(0) : conn.Close()
  36. 未審核_dgv.Columns(0).FillWeight = 150 : 未審核_dgv.Columns(1).FillWeight = 115 : 未審核_dgv.Columns(2).FillWeight = 115
  37. 未審核_dgv.Columns(3).Visible = False : 未審核_dgv.Columns(4).Visible = False
  38. End Sub
  39. Private Sub Set_清單3()
  40. 作廢_dgv.DataSource = Nothing : ds3.Clear()
  41. 作廢_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  42. 作廢_dgv.ColumnHeadersHeight = 25
  43. 作廢_dgv.AllowUserToAddRows = False
  44. SQL_未核准清單()
  45. da.Fill(ds3) : 作廢_dgv.DataSource = ds3.Tables(0) : conn.Close()
  46. 作廢_dgv.Columns(0).FillWeight = 150 : 作廢_dgv.Columns(1).FillWeight = 115 : 作廢_dgv.Columns(2).FillWeight = 115
  47. 作廢_dgv.Columns(3).Visible = False : 作廢_dgv.Columns(4).Visible = False
  48. End Sub
  49. Private Sub Set_日期格式轉換()
  50. DTP = Format(Today(), "yyyy/MM/dd") & "-" & Format(TimeOfDay(), "hh:mm:ss") : DTP1 = Format(Today(), "yyyyMMdd")
  51. End Sub
  52. Private Sub 一般物料請購單核准_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  53. Me.MdiParent = WINPROFIT_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  54. Set_清單1() : Set_清單3()
  55. 明細_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
  56. 未審核_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
  57. 作廢_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
  58. End Sub
  59. Private Sub DataGridView2_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 未審核_dgv.CellClick
  60. If e.RowIndex = -1 Then : Else
  61. 一般物料請購單號_tb.Text = 未審核_dgv(0, e.RowIndex).Value.ToString
  62. 申請人_tb.Text = 未審核_dgv(1, e.RowIndex).Value.ToString
  63. 申請日期_dtp.Value = 未審核_dgv(2, e.RowIndex).Value.ToString
  64. 請購單核准_bt.Enabled = True : 請購單作廢_bt.Enabled = True : Set_使用者清單()
  65. End If
  66. End Sub
  67. Private Sub DataGridView4_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 作廢_dgv.CellClick
  68. If e.RowIndex = -1 Then : Else
  69. 一般物料請購單號_tb.Text = 作廢_dgv(0, e.RowIndex).Value.ToString
  70. 申請人_tb.Text = 作廢_dgv(1, e.RowIndex).Value.ToString
  71. 申請日期_dtp.Value = 作廢_dgv(2, e.RowIndex).Value.ToString
  72. 請購單核准_bt.Enabled = False : 請購單作廢_bt.Enabled = False : Set_使用者清單()
  73. End If
  74. End Sub
  75. Private Sub Button3_Click(sender As Object, e As EventArgs) Handles 請購單核准_bt.Click
  76. Set_日期格式轉換()
  77. If 一般物料請購單號_tb.Text = "" Then
  78. MsgBox("沒有選擇請購單據")
  79. Else
  80. SQL_一般物料核准() : conn.Close()
  81. MsgBox("單據 " & 一般物料請購單號_tb.Text & " 核准完成")
  82. Set_清單1() : Set_清單3()
  83. 一般物料請購單號_tb.Text = "" : 總金額_tb.Text = "" : 申請人_tb.Text = ""
  84. 明細_dgv.DataSource = Nothing : ds.Clear()
  85. End If
  86. End Sub
  87. Private Sub Button5_Click(sender As Object, e As EventArgs) Handles 請購單作廢_bt.Click
  88. Set_日期格式轉換()
  89. If 一般物料請購單號_tb.Text = "" Then
  90. MsgBox("沒有選擇請購單據")
  91. Else
  92. Dim aa As MsgBoxResult
  93. aa = MsgBox("確定要作廢該筆資料?", MsgBoxStyle.OkCancel)
  94. If aa = MsgBoxResult.Ok Then
  95. SQL_一般物料作廢() : conn.Close()
  96. MsgBox("單據 " & 一般物料請購單號_tb.Text & " 已作廢")
  97. Set_清單1() : Set_清單3()
  98. 一般物料請購單號_tb.Text = "" : 總金額_tb.Text = "" : 申請人_tb.Text = ""
  99. 明細_dgv.DataSource = Nothing : ds.Clear()
  100. End If
  101. End If
  102. End Sub
  103. Private Sub 明細_dgv_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 明細_dgv.MouseUp
  104. If 明細_dgv.SelectedCells.Count = 1 Then
  105. 已超出 = False
  106. End If
  107. If 明細_dgv.SelectedCells.Count > 0 Then
  108. '設定滑鼠點擊DGV時候的範圍,超出範圍時有可能不是數字所以不計算
  109. If 明細_dgv.SelectedCells(0).ColumnIndex = 5 Or 明細_dgv.SelectedCells(0).ColumnIndex = 7 Then
  110. If 已超出 = False Then
  111. Dim x As Double = 0
  112. For i As Integer = 0 To 明細_dgv.SelectedCells.Count - 1
  113. '明細_dgv.SelectedCells.Item(i).ColumnIndex + 8 是因為該DGV顯示項與計算像剛好差8格,使用時要注意可直接計算的不需要加數字。
  114. x += Val(明細_dgv.Rows(明細_dgv.SelectedCells.Item(i).RowIndex).Cells(明細_dgv.SelectedCells.Item(i).ColumnIndex).Value)
  115. Next i
  116. '將計算好的資料放置到指定的控件中
  117. WINPROFIT_ERP_SYS.合計_TSSL.Text = "合計 : " & Strings.Format(x, "#,##0")
  118. Else
  119. WINPROFIT_ERP_SYS.合計_TSSL.Text = "合計 : " & Strings.Format(0, "#,##0")
  120. End If
  121. Else
  122. 已超出 = True
  123. WINPROFIT_ERP_SYS.合計_TSSL.Text = "合計 : " & Strings.Format(0, "#,##0")
  124. End If
  125. End If
  126. End Sub
  127. End Class