Ingen beskrivning
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 12KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. Option Strict Off
  2. Public Class 銷售退貨確認
  3. ReadOnly ds As New DataSet
  4. Private Sub Set_清單()
  5. 銷售退貨_dgv.DataSource = Nothing : ds.Clear() : 銷售退貨_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  6. 銷售退貨_dgv.ColumnHeadersHeight = 40 : 銷售退貨_dgv.AllowUserToAddRows = False
  7. SQL_銷售退貨確認清單()
  8. da.Fill(ds) : 銷售退貨_dgv.DataSource = ds.Tables(0) : conn.Close()
  9. 銷售退貨_dgv.Columns(0).Visible = False : 銷售退貨_dgv.Columns(1).FillWeight = 110 : 銷售退貨_dgv.Columns(2).Visible = False : 銷售退貨_dgv.Columns(3).FillWeight = 200
  10. 銷售退貨_dgv.Columns(4).Visible = False : 銷售退貨_dgv.Columns(5).Visible = False : 銷售退貨_dgv.Columns(6).FillWeight = 60 : 銷售退貨_dgv.Columns(7).FillWeight = 150
  11. 銷售退貨_dgv.Columns(8).FillWeight = 80 : 銷售退貨_dgv.Columns(9).FillWeight = 80 : 銷售退貨_dgv.Columns(10).FillWeight = 40 : 銷售退貨_dgv.Columns(11).FillWeight = 60
  12. 銷售退貨_dgv.Columns(12).FillWeight = 40 : 銷售退貨_dgv.Columns(13).FillWeight = 110 : 銷售退貨_dgv.Columns(14).FillWeight = 60 : 銷售退貨_dgv.Columns(15).Visible = False
  13. 銷售退貨_dgv.Columns(16).FillWeight = 60 : 銷售退貨_dgv.Columns(17).FillWeight = 40 : 銷售退貨_dgv.Columns(18).FillWeight = 60 : 銷售退貨_dgv.Columns(19).FillWeight = 40
  14. 銷售退貨_dgv.Columns(6).DefaultCellStyle.Format = "#,##0" : 銷售退貨_dgv.Columns(17).DefaultCellStyle.Format = "#,##0.0" : 銷售退貨_dgv.Columns(19).DefaultCellStyle.Format = "#,##0.0"
  15. 銷售退貨_dgv.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 銷售退貨_dgv.Columns(1).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  16. 銷售退貨_dgv.Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 銷售退貨_dgv.Columns(2).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  17. 銷售退貨_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 銷售退貨_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  18. 銷售退貨_dgv.Columns(8).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 銷售退貨_dgv.Columns(8).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  19. 銷售退貨_dgv.Columns(9).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 銷售退貨_dgv.Columns(9).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  20. 銷售退貨_dgv.Columns(10).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 銷售退貨_dgv.Columns(10).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  21. 銷售退貨_dgv.Columns(11).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 銷售退貨_dgv.Columns(11).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  22. 銷售退貨_dgv.Columns(12).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 銷售退貨_dgv.Columns(12).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  23. 銷售退貨_dgv.Columns(13).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 銷售退貨_dgv.Columns(13).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  24. For I As Integer = 0 To 19 : 銷售退貨_dgv.Columns(I).ReadOnly = True : Next
  25. For i As Integer = 0 To 銷售退貨_dgv.Rows.Count - 1
  26. 銷售退貨_dgv.Rows(i).Cells("選擇").Value = False
  27. If 銷售退貨_dgv.Rows(i).Cells("業務比例").Value.ToString = "" Then : 銷售退貨_dgv.Rows(i).Cells("業務比例").Value = 0 : End If
  28. If 銷售退貨_dgv.Rows(i).Cells("司機比例").Value.ToString = "" Then : 銷售退貨_dgv.Rows(i).Cells("司機比例").Value = 0 : End If
  29. Next
  30. End Sub
  31. Private Sub ComboBox6下拉表單資料載入()
  32. SQL_員工名稱下拉清單()
  33. 業務_cb.Items.Clear() : 司機_cb.Items.Clear() : While (dr.Read()) : 業務_cb.Items.Add(dr("名稱")) : 司機_cb.Items.Add(dr("名稱")) : End While : conn.Close()
  34. End Sub
  35. Private Sub ComboBox7下拉表單資料載入()
  36. SQL_傭金比例下拉清單()
  37. 業務比例_cb.Items.Clear() : 司機比例_cb.Items.Clear()
  38. While (dr.Read()) : 業務比例_cb.Items.Add(Format(dr("比例"), "#,##0.0")) : 司機比例_cb.Items.Add(Format(dr("比例"), "#,##0.0")) : End While : conn.Close()
  39. End Sub
  40. Private Sub 銷售退貨確認_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  41. Me.MdiParent = MAOJI_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  42. ComboBox6下拉表單資料載入() : ComboBox7下拉表單資料載入() : Set_清單()
  43. End Sub
  44. Private Sub DataGridView1_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 銷售退貨_dgv.CellClick
  45. If e.RowIndex = -1 Then : Else
  46. ComboBox6下拉表單資料載入() : ComboBox7下拉表單資料載入()
  47. 單據號碼_tb.Text = 銷售退貨_dgv.Rows(e.RowIndex).Cells("單據編號").Value : 訂單編號_tb.Text = 銷售退貨_dgv.Rows(e.RowIndex).Cells("訂單流水號").Value.ToString
  48. 業務_cb.Text = 銷售退貨_dgv.Rows(e.RowIndex).Cells("業務").Value.ToString : 業務比例_cb.Text = Format(銷售退貨_dgv.Rows(e.RowIndex).Cells("業務比例").Value, "#,##0.0")
  49. 司機_cb.Text = 銷售退貨_dgv.Rows(e.RowIndex).Cells("司機").Value.ToString : 司機比例_cb.Text = Format(銷售退貨_dgv.Rows(e.RowIndex).Cells("司機比例").Value, "#,##0.0")
  50. If 銷售退貨_dgv.Rows(e.RowIndex).Cells("選擇").Value = False And 銷售退貨_dgv.Rows(e.RowIndex).Cells("司機").Value.ToString <> "" Then
  51. 銷售退貨_dgv.Rows(e.RowIndex).Cells("選擇").Value = True
  52. ElseIf 銷售退貨_dgv.Rows(e.RowIndex).Cells("司機").Value.ToString = "" Then
  53. MsgBox("請最少指定送貨司機。") : 銷售退貨_dgv.Rows(e.RowIndex).Cells("選擇").Value = False
  54. End If
  55. End If
  56. End Sub
  57. Private Sub DataGridView1_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
  60. Else
  61. If 銷售退貨_dgv(1, e.RowIndex).Value.ToString <> 銷售退貨_dgv(1, e.RowIndex + 1).Value.ToString Then
  62. Dim startX As Integer = IIf(銷售退貨_dgv.RowHeadersVisible, 銷售退貨_dgv.RowHeadersWidth, 0)
  63. Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  64. Dim endX As Integer = startX + 銷售退貨_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 銷售退貨_dgv.HorizontalScrollingOffset
  65. e.Graphics.DrawLine(linePen, startX, startY, endX, startY) : Exit Sub
  66. End If
  67. End If
  68. End Sub
  69. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles 依單據選擇_bt.Click
  70. For i As Integer = 0 To 銷售退貨_dgv.Rows.Count - 1
  71. If 單據號碼_tb.Text = 銷售退貨_dgv.Rows(i).Cells("單據編號").Value.ToString Then
  72. If 銷售退貨_dgv.Rows(i).Cells("司機").Value.ToString = "" Then
  73. For ii As Integer = 0 To 銷售退貨_dgv.Rows.Count - 1
  74. 銷售退貨_dgv.Rows(ii).Cells("選擇").Value = False
  75. Next
  76. MsgBox("請最少指定送貨司機。")
  77. Exit For
  78. End If
  79. 銷售退貨_dgv.Rows(i).Cells("選擇").Value = True
  80. End If
  81. Next i
  82. End Sub
  83. Private Sub Button13_Click(sender As Object, e As EventArgs) Handles 全部選擇_bt.Click
  84. For i As Integer = 0 To 銷售退貨_dgv.Rows.Count - 1
  85. If 銷售退貨_dgv.Rows(i).Cells("司機").Value.ToString = "" Then
  86. For ii As Integer = 0 To 銷售退貨_dgv.Rows.Count - 1
  87. 銷售退貨_dgv.Rows(ii).Cells("選擇").Value = False
  88. Next
  89. MsgBox("請最少指定送貨司機。")
  90. Exit For
  91. End If
  92. 銷售退貨_dgv.Rows(i).Cells("選擇").Value = True
  93. Next i
  94. End Sub
  95. Private Sub Button12_Click(sender As Object, e As EventArgs) Handles 全部取消_bt.Click
  96. For i As Integer = 0 To 銷售退貨_dgv.Rows.Count - 1 : 銷售退貨_dgv.Rows(i).Cells("選擇").Value = False : Next i
  97. End Sub
  98. Private Sub Set_日期格式轉換()
  99. DTP = Format(出貨日期_dtp.Value, "yyyy/MM/dd")
  100. End Sub
  101. Private Sub Button4_Click(sender As Object, e As EventArgs) Handles 銷退確認_bt.Click
  102. Set_日期格式轉換() : Dim 出貨情況 As String
  103. For i As Integer = 0 To 銷售退貨_dgv.Rows.Count - 1
  104. 資料數 = 銷售退貨_dgv.Rows.Count : MyModule1.進度條()
  105. If 銷售退貨_dgv.Rows(i).Cells("選擇").Value = True Then
  106. PA1 = 銷售退貨_dgv.Rows(i).Cells("資料流水號").Value : SQL_銷售退貨確認_倉儲明細表_銷售出庫確認() : conn.Close()
  107. If 訂單編號_tb.Text = "" Then : Else
  108. If 銷售退貨_dgv.Rows(i).Cells("出貨備齊").Value = True Then : 出貨情況 = "完全出貨" : Else : 出貨情況 = "分批出貨" : End If
  109. PA1 = 出貨情況 : PA = 訂單編號_tb.Text : SQL_銷售退貨確認_訂單控制表_出貨情況() : conn.Close()
  110. If 出貨情況 = "完全出貨" Then
  111. PA = 訂單編號_tb.Text : SQL_銷售退貨確認_訂單明細表_出貨情況一() : conn.Close()
  112. ElseIf 出貨情況 = "分批出貨" Then
  113. PA = 銷售退貨_dgv.Rows(i).Cells("訂單明細流水").Value : SQL_銷售退貨確認_訂單明細表_出貨情況二() : conn.Close()
  114. End If
  115. End If
  116. End If
  117. Next : Set_清單() : MsgBox("退貨單開立完成。") : MAOJI_ERP_SYS.ToolStripProgressBar1.Value = 0 : 最終數 = 0
  118. End Sub
  119. Private Sub Button2_Click(sender As Object, e As EventArgs) Handles 佣金修改_bt.Click
  120. PA1 = 業務_cb.Text : NU1 = 業務比例_cb.Text : PA2 = 司機_cb.Text : NU2 = 司機比例_cb.Text : PA = 單據號碼_tb.Text
  121. SQL_出貨單業務司機指定() : Set_清單()
  122. End Sub
  123. '-----------------------------滑鼠右鍵------------------------------------------------------------------------------------------------------------------------------------------
  124. Private Sub 重新整理ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 重新整理ToolStripMenuItem.Click
  125. Set_清單() : 出貨日期_dtp.Value = Today()
  126. End Sub
  127. Private Sub 依據單號全部選擇ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 依據單號全部選擇ToolStripMenuItem.Click
  128. Me.依單據選擇_bt.PerformClick()
  129. End Sub
  130. Private Sub 全部選擇ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 全部選擇ToolStripMenuItem.Click
  131. Me.全部選擇_bt.PerformClick()
  132. End Sub
  133. Private Sub 全部取消ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 全部取消ToolStripMenuItem.Click
  134. Me.全部取消_bt.PerformClick()
  135. End Sub
  136. Private Sub 確認收料入庫ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 確認收料入庫ToolStripMenuItem.Click
  137. Me.銷退確認_bt.PerformClick()
  138. End Sub
  139. End Class