Nessuna descrizione
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 25KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302
  1. Option Strict Off
  2. Public Class 採購退貨申請
  3. ReadOnly ds As New DataSet : ReadOnly ds1 As New DataSet : ReadOnly ds2 As New DataSet
  4. Dim EDR As Integer = 0 : Dim ESTR As String
  5. Private Sub Set_採購清單()
  6. 彙總_dgv.DataSource = Nothing : ds1.Clear()
  7. 彙總_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  8. 彙總_dgv.ColumnHeadersHeight = 25
  9. 彙總_dgv.AllowUserToAddRows = False
  10. 彙總_dgv.ClipboardCopyMode = DataGridViewClipboardCopyMode.EnableWithoutHeaderText
  11. 彙總_dgv.MultiSelect = True
  12. SQL_採購退貨申請_單號彙總()
  13. da.Fill(ds1) : 彙總_dgv.DataSource = ds1.Tables(0) : conn.Close()
  14. 彙總_dgv.Columns(0).FillWeight = 135 : 彙總_dgv.Columns(1).FillWeight = 90 : 彙總_dgv.Columns(2).Visible = False : 彙總_dgv.Columns(3).FillWeight = 100
  15. 彙總_dgv.Columns(4).FillWeight = 90
  16. End Sub
  17. Private Sub Set_單據明細()
  18. 明細_dgv.DataSource = Nothing : ds2.Clear()
  19. 明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  20. 明細_dgv.ColumnHeadersHeight = 25
  21. 明細_dgv.AllowUserToAddRows = False
  22. 明細_dgv.ClipboardCopyMode = DataGridViewClipboardCopyMode.EnableWithoutHeaderText
  23. 明細_dgv.MultiSelect = True
  24. SQL_採購退貨申請明細()
  25. da.Fill(ds2) : 明細_dgv.DataSource = ds2.Tables(0) : conn.Close()
  26. 總金額_tb.Text = "0"
  27. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  28. 明細_dgv(1, i).Value = i + 1 : 總金額_tb.Text = Val(總金額_tb.Text) + 明細_dgv.Rows(i).Cells("進貨成本_台幣").Value
  29. 明細_dgv.Rows(i).Cells("選擇").Value = False
  30. Next
  31. 總金額_tb.Text = Strings.Format(Val(總金額_tb.Text), "#,#00")
  32. 明細_dgv.Columns(6).DefaultCellStyle.Format = "#,##0" : 明細_dgv.Columns(7).DefaultCellStyle.Format = "#,##0.00"
  33. 明細_dgv.Columns(8).DefaultCellStyle.Format = "#,##0.0000" : 明細_dgv.Columns(9).DefaultCellStyle.Format = "#,##0" : 明細_dgv.Columns(10).DefaultCellStyle.Format = "#,##0"
  34. 明細_dgv.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(1).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  35. 明細_dgv.Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(2).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  36. 明細_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  37. 明細_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  38. 明細_dgv.Columns(8).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(8).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  39. 明細_dgv.Columns(9).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(9).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  40. 明細_dgv.Columns(10).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(10).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  41. 明細_dgv.Columns(12).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(12).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  42. 明細_dgv.Columns(0).Visible = False : 明細_dgv.Columns(1).FillWeight = 50 : 明細_dgv.Columns(2).FillWeight = 80 : 明細_dgv.Columns(3).FillWeight = 200
  43. 明細_dgv.Columns(4).Visible = False : 明細_dgv.Columns(5).Visible = False : 明細_dgv.Columns(6).FillWeight = 50 : 明細_dgv.Columns(7).FillWeight = 50
  44. 明細_dgv.Columns(8).FillWeight = 50 : 明細_dgv.Columns(9).FillWeight = 50 : 明細_dgv.Columns(10).FillWeight = 65 : 明細_dgv.Columns(11).FillWeight = 100
  45. 明細_dgv.Columns(12).FillWeight = 80 : 明細_dgv.Columns(13).Visible = False : 明細_dgv.Columns(14).Visible = False : 明細_dgv.Columns(15).Visible = False
  46. 明細_dgv.Columns(16).Visible = False : 明細_dgv.Columns(17).FillWeight = 50
  47. 明細_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  48. 明細_dgv.Columns(1).ReadOnly = True : 明細_dgv.Columns(2).ReadOnly = True : 明細_dgv.Columns(3).ReadOnly = True : 明細_dgv.Columns(4).ReadOnly = True
  49. 明細_dgv.Columns(5).ReadOnly = True : 明細_dgv.Columns(8).ReadOnly = True : 明細_dgv.Columns(9).ReadOnly = True : 明細_dgv.Columns(10).ReadOnly = True
  50. 明細_dgv.Columns(12).ReadOnly = True
  51. End Sub
  52. Private Sub Set_清單()
  53. 庫存_dgv.DataSource = Nothing : ds.Clear()
  54. 庫存_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  55. 庫存_dgv.ColumnHeadersHeight = 40
  56. 庫存_dgv.AllowUserToAddRows = False
  57. 庫存_dgv.ClipboardCopyMode = DataGridViewClipboardCopyMode.EnableWithoutHeaderText
  58. 庫存_dgv.MultiSelect = True
  59. SQL_採購退貨申請清單()
  60. da.Fill(ds) : 庫存_dgv.DataSource = ds.Tables(0) : conn.Close()
  61. 庫存_dgv.Columns(0).FillWeight = 130 : 庫存_dgv.Columns(1).Visible = False : 庫存_dgv.Columns(2).Visible = False : 庫存_dgv.Columns(3).FillWeight = 350
  62. 庫存_dgv.Columns(4).Visible = False : 庫存_dgv.Columns(5).Visible = False : 庫存_dgv.Columns(6).Visible = False : 庫存_dgv.Columns(7).FillWeight = 85
  63. 庫存_dgv.Columns(8).Visible = False : 庫存_dgv.Columns(9).Visible = False : 庫存_dgv.Columns(10).Visible = False : 庫存_dgv.Columns(11).Visible = False
  64. 庫存_dgv.Columns(12).Visible = False : 庫存_dgv.Columns(13).FillWeight = 90 : 庫存_dgv.Columns(14).Visible = False
  65. 庫存_dgv.Columns(6).DefaultCellStyle.Format = "#,##0" : 庫存_dgv.Columns(7).DefaultCellStyle.Format = "#,##0" : 庫存_dgv.Columns(8).DefaultCellStyle.Format = "#,##0"
  66. 庫存_dgv.Columns(9).DefaultCellStyle.Format = "#,##0" : 庫存_dgv.Columns(10).DefaultCellStyle.Format = "#,##0" : 庫存_dgv.Columns(11).DefaultCellStyle.Format = "#,##0"
  67. 庫存_dgv.Columns(12).DefaultCellStyle.Format = "#,##0" : 庫存_dgv.Columns(13).DefaultCellStyle.Format = "#,##0"
  68. 庫存_dgv.Columns(0).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 庫存_dgv.Columns(0).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  69. 庫存_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 庫存_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  70. 庫存_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 庫存_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  71. 庫存_dgv.Columns(8).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 庫存_dgv.Columns(8).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  72. 庫存_dgv.Columns(9).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 庫存_dgv.Columns(9).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  73. 庫存_dgv.Columns(10).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 庫存_dgv.Columns(10).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  74. 庫存_dgv.Columns(11).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 庫存_dgv.Columns(11).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  75. 庫存_dgv.Columns(12).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 庫存_dgv.Columns(12).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  76. 庫存_dgv.Columns(13).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 庫存_dgv.Columns(13).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  77. 庫存_dgv.Columns(0).ReadOnly = True : 庫存_dgv.Columns(3).ReadOnly = True : 庫存_dgv.Columns(4).ReadOnly = True : 庫存_dgv.Columns(5).ReadOnly = True
  78. 庫存_dgv.Columns(6).ReadOnly = True : 庫存_dgv.Columns(7).ReadOnly = True : 庫存_dgv.Columns(8).ReadOnly = True : 庫存_dgv.Columns(9).ReadOnly = True
  79. 庫存_dgv.Columns(10).ReadOnly = True : 庫存_dgv.Columns(11).ReadOnly = True : 庫存_dgv.Columns(12).ReadOnly = True : 庫存_dgv.Columns(13).ReadOnly = True
  80. 庫存_dgv.Columns(7).DefaultCellStyle.BackColor = Color.MistyRose : 庫存_dgv.Columns(8).DefaultCellStyle.BackColor = Color.MistyRose
  81. 庫存_dgv.Columns(9).DefaultCellStyle.BackColor = Color.LightYellow : 庫存_dgv.Columns(10).DefaultCellStyle.BackColor = Color.LightYellow
  82. 庫存_dgv.Columns(11).DefaultCellStyle.BackColor = Color.LightGreen : 庫存_dgv.Columns(12).DefaultCellStyle.BackColor = Color.LightGreen
  83. For i As Integer = 0 To 庫存_dgv.Rows.Count - 1
  84. If 庫存_dgv.Rows(i).Cells("未入庫").Value.ToString = "" Then : 庫存_dgv.Rows(i).Cells("未入庫").Value = 0 : End If
  85. If 庫存_dgv.Rows(i).Cells("在途成本_台幣").Value.ToString = "" Then : 庫存_dgv.Rows(i).Cells("在途成本_台幣").Value = 0 : End If
  86. If 庫存_dgv.Rows(i).Cells("未出庫").Value.ToString = "" Then : 庫存_dgv.Rows(i).Cells("未出庫").Value = 0 : End If
  87. If 庫存_dgv.Rows(i).Cells("備貨成本_台幣").Value.ToString = "" Then : 庫存_dgv.Rows(i).Cells("備貨成本_台幣").Value = 0 : End If
  88. 庫存_dgv.Rows(i).Cells("可領用").Value = 庫存_dgv.Rows(i).Cells("庫存").Value + 庫存_dgv.Rows(i).Cells("未入庫").Value - 庫存_dgv.Rows(i).Cells("未出庫").Value
  89. Next
  90. 總金額_tb.Text = "" : 料號_tb.Text = "" : 可出庫_tb.Text = "0" : 申請數_nud.Value = 0
  91. End Sub
  92. Private Sub ComboBox1下拉表單資料載入()
  93. SQL_物料頁碼清單()
  94. 頁碼_cb.Items.Clear() : While (dr.Read()) : 頁碼_cb.Items.Add(dr("頁碼")) : End While : conn.Close()
  95. End Sub
  96. Private Sub ComboBox2下拉表單資料載入()
  97. SQL_供應商資料表下拉清單()
  98. 供應商_cb.Items.Clear() : 供應商編號_cb.Items.Clear() : While (dr.Read()) : 供應商_cb.Items.Add(dr("簡稱")) : 供應商編號_cb.Items.Add(dr("編號")) : End While : conn.Close()
  99. End Sub
  100. Private Sub ComboBox5下拉表單資料載入()
  101. SQL_倉名下拉清單()
  102. 指定倉處_cb.Items.Clear() : While (dr.Read()) : 指定倉處_cb.Items.Add(dr("倉名")) : End While : conn.Close()
  103. End Sub
  104. Private Sub ComboBox5_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 指定倉處_cb.SelectedIndexChanged
  105. PA = 指定倉處_cb.Text : SQL_倉名編號取得()
  106. If dr.Read() Then : 倉庫編號_tb.Text = dr("倉名編號") : End If : conn.Close() : Set_清單()
  107. End Sub
  108. Private Sub 採購退貨申請_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  109. Me.MdiParent = MAOJI_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  110. 供應商_cb.Enabled = False : 供應商編號_cb.Enabled = False : 可出庫_tb.Enabled = False : 供應商_tb.Enabled = False : 公司電話2_tb.Enabled = False
  111. 付款方式_tb.Enabled = False : 供應商編號_tb.Enabled = False : 公司電話1_tb.Enabled = False : 料號_tb.Enabled = False : 傳真1_tb.Enabled = False
  112. 單據編號_tb.Enabled = False : 地址1_tb.Enabled = False : 郵號1_tb.Enabled = False : 地址2_tb.Enabled = False : 郵號2_tb.Enabled = False
  113. 選擇_tb.Enabled = False : 總金額_tb.Enabled = False : 歷史售價_tb.Enabled = False : 倉庫編號_tb.Enabled = False : 統編_tb.Enabled = False
  114. 採購下單_dtp.Enabled = False : 供應商交期_dtp.Enabled = False
  115. 加權成本_台幣_tb.Visible = False
  116. Set_採購清單() : ComboBox2下拉表單資料載入() : ComboBox5下拉表單資料載入() : ComboBox1下拉表單資料載入() : 指定倉處_cb.SelectedIndex = 0
  117. End Sub
  118. Private Sub DataGridView1_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 庫存_dgv.CellClick
  119. If e.RowIndex = -1 Then : Else
  120. 供應商編號_tb.Text = 庫存_dgv.Rows(e.RowIndex).Cells("供應商編號").Value.ToString : 料號_tb.Text = 庫存_dgv.Rows(e.RowIndex).Cells("料號").Value.ToString
  121. 加權成本_台幣_tb.Text = 庫存_dgv.Rows(e.RowIndex).Cells("加權成本_台幣").Value.ToString : 歷史售價_tb.Text = 庫存_dgv.Rows(e.RowIndex).Cells("售價").Value.ToString
  122. 可出庫_tb.Text = Format(庫存_dgv.Rows(e.RowIndex).Cells("庫存").Value - 庫存_dgv.Rows(e.RowIndex).Cells("未出庫").Value, "#,##0")
  123. 歷史售價_tb.Text = Format(Val(歷史售價_tb.Text), "#,##0")
  124. End If
  125. End Sub
  126. Private Sub DataGridView1_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 庫存_dgv.RowPostPaint
  127. Dim linePen As New Pen(Color.Blue, 2)
  128. If e.RowIndex = 庫存_dgv.Rows.Count - 1 Then : Exit Sub
  129. Else
  130. If 非當天日期_ch.Checked = True Then
  131. If 庫存_dgv(0, e.RowIndex).Value.ToString <> 庫存_dgv(0, e.RowIndex + 1).Value.ToString Then
  132. Dim startX As Integer = IIf(庫存_dgv.RowHeadersVisible, 庫存_dgv.RowHeadersWidth, 0)
  133. Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  134. Dim endX As Integer = startX + 庫存_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 庫存_dgv.HorizontalScrollingOffset
  135. e.Graphics.DrawLine(linePen, startX, startY, endX, startY) : Exit Sub
  136. End If
  137. Else
  138. If 庫存_dgv(2, e.RowIndex).Value.ToString <> 庫存_dgv(2, e.RowIndex + 1).Value.ToString Then
  139. Dim startX As Integer = IIf(庫存_dgv.RowHeadersVisible, 庫存_dgv.RowHeadersWidth, 0)
  140. Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  141. Dim endX As Integer = startX + 庫存_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 庫存_dgv.HorizontalScrollingOffset
  142. e.Graphics.DrawLine(linePen, startX, startY, endX, startY) : Exit Sub
  143. End If
  144. End If
  145. End If
  146. For i As Integer = 0 To 庫存_dgv.Rows.Count - 1
  147. If 庫存_dgv.Rows(i).Cells("可領用").Value = 0 Then : 庫存_dgv.Rows(i).DefaultCellStyle.BackColor = Color.LightPink : End If
  148. Next
  149. End Sub
  150. Private Sub DataGridView2_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 彙總_dgv.CellClick
  151. If e.RowIndex = -1 Then : Else
  152. 單據編號_tb.Text = 彙總_dgv.Rows(e.RowIndex).Cells("單據編號").Value.ToString : 供應商編號_cb.Text = 彙總_dgv.Rows(e.RowIndex).Cells("供應商編號").Value.ToString
  153. 採購下單_dtp.Value = 彙總_dgv.Rows(e.RowIndex).Cells("採購下單").Value.ToString : 供應商交期_dtp.Value = 彙總_dgv.Rows(e.RowIndex).Cells("交期").Value.ToString
  154. Set_單據明細()
  155. End If
  156. End Sub
  157. Private Sub DataGridView3_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 明細_dgv.CellClick
  158. If e.RowIndex = -1 Then : Else
  159. 選擇_tb.Text = 明細_dgv.Rows(e.RowIndex).Cells("資料流水號").Value.ToString : 物料關鍵字_tb.Text = 明細_dgv.Rows(e.RowIndex).Cells("品名").Value.ToString
  160. For i As Integer = 0 To 明細_dgv.Rows.Count - 1 : 明細_dgv.Rows(i).Cells("選擇").Value = False : Next
  161. 明細_dgv.Rows(e.RowIndex).Cells("選擇").Value = True
  162. End If
  163. End Sub
  164. Private Sub DataGridView3_CellEnter(sender As Object, e As DataGridViewCellEventArgs) Handles 明細_dgv.CellEnter
  165. 總金額_tb.Text = "0"
  166. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  167. 明細_dgv.Rows(i).Cells("台幣單價").Value = 明細_dgv.Rows(i).Cells("單價").Value * 明細_dgv.Rows(i).Cells("匯率").Value
  168. 明細_dgv.Rows(i).Cells("進貨成本_台幣").Value = 明細_dgv.Rows(i).Cells("單價").Value * 明細_dgv.Rows(i).Cells("匯率").Value * 明細_dgv.Rows(i).Cells("數量").Value
  169. 明細_dgv(1, i).Value = i + 1
  170. 總金額_tb.Text = Val(總金額_tb.Text) + 明細_dgv.Rows(i).Cells("進貨成本_台幣").Value
  171. Next i
  172. 總金額_tb.Text = Strings.Format(Val(總金額_tb.Text), "#,#00")
  173. End Sub
  174. Private Sub 供應商資料()
  175. SQL_採購退貨申請_供應商資料表讀取()
  176. If (dr.Read()) Then
  177. 供應商_tb.Text = dr("名稱") : 公司電話1_tb.Text = dr("公司電話1") : 公司電話2_tb.Text = dr("公司電話2") : 傳真1_tb.Text = dr("傳真1") : 郵號1_tb.Text = dr("郵遞區號1")
  178. 地址1_tb.Text = dr("地址1") : 郵號2_tb.Text = dr("郵遞區號2") : 地址2_tb.Text = dr("地址2") : 統編_tb.Text = dr("統一編號") : 付款方式_tb.Text = dr("付款方式")
  179. End If : conn.Close()
  180. End Sub
  181. Private Sub ComboBox2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 供應商_cb.SelectedIndexChanged
  182. 供應商編號_cb.SelectedIndex = 供應商_cb.SelectedIndex : 供應商資料()
  183. End Sub
  184. Private Sub ComboBox3_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 供應商編號_cb.SelectedIndexChanged
  185. 供應商_cb.SelectedIndex = 供應商編號_cb.SelectedIndex : 供應商資料()
  186. End Sub
  187. Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 頁碼_cb.SelectedIndexChanged
  188. Set_清單()
  189. End Sub
  190. Private Sub TextBox18_TextChanged(sender As Object, e As EventArgs) Handles 物料關鍵字_tb.TextChanged
  191. Set_清單()
  192. End Sub
  193. Private Sub Set_日期格式轉換()
  194. DTP = Strings.Format(採購下單_dtp.Value, "yyyy/MM/dd") : DTP1 = Strings.Format(採購下單_dtp.Value, "yyyyMMdd") : DTP2 = Strings.Format(供應商交期_dtp.Value, "yyyy/MM/dd")
  195. End Sub
  196. Private Sub Set_自動生成流水號()
  197. SQL_倉儲明細表流水號最後一筆()
  198. If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("資料流水號").ToString, 8)) : Else : EDR = 0 : End If : conn.Close() : EDR += 1
  199. If EDR < 10 Then : ESTR = "WD" & "0000000" & EDR
  200. ElseIf EDR > 9 And EDR < 100 Then : ESTR = "WD" & "000000" & EDR
  201. ElseIf EDR > 99 And EDR < 1000 Then : ESTR = "WD" & "00000" & EDR
  202. ElseIf EDR > 999 And EDR < 10000 Then : ESTR = "WD" & "0000" & EDR
  203. ElseIf EDR > 9999 And EDR < 100000 Then : ESTR = "WD" & "000" & EDR
  204. ElseIf EDR > 99999 And EDR < 100000 Then : ESTR = "WD" & "00" & EDR
  205. ElseIf EDR > 999999 And EDR < 1000000 Then : ESTR = "WD" & "0" & EDR
  206. ElseIf EDR > 9999999 Then : ESTR = "WD" & EDR
  207. End If
  208. End Sub
  209. Private Sub 存檔1()
  210. Dim SSDD As Integer = 0
  211. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  212. 資料數 = 明細_dgv.Rows.Count : MyModule1.進度條()
  213. PA1 = 明細_dgv.Rows(i).Cells("資料流水號").Value : SQL_倉儲明細表_入庫日期讀取()
  214. If dr.Read() Then
  215. If dr("入庫日期").ToString = "" Then
  216. NU1 = 明細_dgv.Rows(i).Cells("單價").Value : NU2 = 明細_dgv.Rows(i).Cells("數量").Value
  217. PA1 = 明細_dgv.Rows(i).Cells("備註").Value : PA2 = DTP2 : PA3 = 明細_dgv.Rows(i).Cells("資料流水號").Value
  218. SQL_採購單申請_倉儲明細表修改_入庫() : conn.Close()
  219. Else
  220. conn.Close() : SSDD += 1
  221. End If
  222. End If
  223. Next : MAOJI_ERP_SYS.ToolStripProgressBar1.Value = 0 : 最終數 = 0 : If SSDD = 0 Then : Else : End If
  224. End Sub
  225. Private Sub Set_新增明細()
  226. PA1 = 料號_tb.Text : SQL_物料資料庫成本查詢()
  227. If dr.Read() Then
  228. If dr("成本") = 0 Then : NU1 = 加權成本_台幣_tb.Text : PA1 = 料號_tb.Text : SQL_物料資料庫成本修改() : conn.Close() : Else : conn.Close() : End If
  229. End If
  230. PA1 = ESTR : PA2 = 單據編號_tb.Text : PA3 = 供應商編號_cb.Text : PA4 = 料號_tb.Text : NU1 = 加權成本_台幣_tb.Text : NU2 = 1
  231. NU3 = 申請數_nud.Value : NU4 = 0 : PA5 = "採購入庫" : PA6 = DTP : PA7 = "" : NU5 = 0 : PA8 = 倉庫編號_tb.Text : PA9 = DTP2
  232. SQL_倉儲明細表新增() : conn.Close()
  233. MsgBox("資料新增完畢 。") : Set_單據明細()
  234. End Sub
  235. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles 新增物料到退貨單.Click
  236. If 料號_tb.Text = "" Then : MsgBox("料號沒有選擇") : Else
  237. If 供應商編號_cb.Text = "" Then : MsgBox("供應商沒有選擇") : Else
  238. If 加權成本_台幣_tb.Text = 0 Then : MsgBox("採購金額沒有填寫") : Else
  239. If 申請數_nud.Value = 0 Then : MsgBox("數量不可為零") : Else
  240. If Val(可出庫_tb.Text) < 申請數_nud.Value * -1 Then : MsgBox("退貨數無法大於庫存數") : Else
  241. If 單據編號_tb.Text = "" Then
  242. '----------------------自动生成單據編號-------------------------------------------------------------------------
  243. If 非當天日期_ch.Checked = True Then : Else : 採購下單_dtp.Value = Today() : End If
  244. Dim NUM1 As Integer : Set_日期格式轉換()
  245. For i As Integer = 1 To 999
  246. NUM1 = 0 + i
  247. If NUM1 < 10 Then : 單據編號_tb.Text = "WD-" & DTP1 & "-00" & NUM1
  248. ElseIf NUM1 > 9 And NUM1 < 100 Then : 單據編號_tb.Text = "WD-" & DTP1 & "-0" & NUM1
  249. ElseIf NUM1 > 99 Then : 單據編號_tb.Text = "WD-" & DTP1 & "-" & NUM1 : End If : PA1 = 單據編號_tb.Text
  250. SQL_倉儲明細表生成單據編號()
  251. If dr.Read() Then : Else : i = 999 : conn.Close() : End If : conn.Close()
  252. Next
  253. Set_自動生成流水號() : 選擇_tb.Text = ESTR : conn.Close() : 存檔1() : Set_新增明細() : Set_採購清單()
  254. Else
  255. Set_日期格式轉換() : Set_自動生成流水號() : 選擇_tb.Text = ESTR : conn.Close() : 存檔1() : Set_新增明細()
  256. End If
  257. End If
  258. End If
  259. End If
  260. End If
  261. End If
  262. End Sub
  263. Private Sub Button3_Click(sender As Object, e As EventArgs) Handles 修改存檔_bt.Click
  264. Set_日期格式轉換() : 存檔1() : Set_單據明細() : Set_採購清單() : MsgBox("資料修改,存檔完畢 。")
  265. End Sub
  266. '-----------------------------滑鼠右鍵------------------------------------------------------------------------------------------------------------------------------------------
  267. Private Sub 重新整理ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 重新整理ToolStripMenuItem.Click
  268. Set_採購清單() : ComboBox2下拉表單資料載入() : ComboBox5下拉表單資料載入() : ComboBox1下拉表單資料載入() : 指定倉處_cb.SelectedIndex = 0
  269. End Sub
  270. Private Sub 新增物料到採購單ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 新增物料到採購單ToolStripMenuItem.Click
  271. Me.新增物料到退貨單.PerformClick()
  272. End Sub
  273. Private Sub 修改存檔ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 修改存檔ToolStripMenuItem.Click
  274. Me.修改存檔_bt.PerformClick()
  275. End Sub
  276. Private Sub 刪除採購單中選中的物料ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 刪除出貨單中選中的物料ToolStripMenuItem.Click
  277. PA1 = 選擇_tb.Text : SQL_倉儲明細表_入庫日期讀取()
  278. If dr.Read() Then
  279. If dr("入庫日期").ToString = "" Then : conn.Close()
  280. If 選擇_tb.Text = "" Then : MsgBox("沒有選擇要刪除了料號 。")
  281. Else
  282. Dim aa1 As MsgBoxResult = MsgBox("確定要刪除該筆資料?", MsgBoxStyle.OkCancel)
  283. If aa1 = MsgBoxResult.Ok Then
  284. PA1 = 選擇_tb.Text : SQL_倉儲明細表刪除() : conn.Close() : 選擇_tb.Text = "" : Set_單據明細()
  285. End If
  286. End If
  287. Else
  288. conn.Close() : MsgBox("已入庫的資料不可刪除 。")
  289. End If
  290. Else
  291. conn.Close() : MsgBox("資料錯誤,請聯繫系統開發人員 。")
  292. End If
  293. End Sub
  294. End Class