暂无描述
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

盤盈盤損申請.vb 28KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432
  1. Option Strict Off
  2. Public Class 盤盈盤損申請
  3. ReadOnly ds As New DataSet : ReadOnly ds1 As New DataSet : ReadOnly ds2 As New DataSet : ReadOnly ds3 As New DataSet
  4. Dim 首次開啟 As Boolean = False : Dim NUM1 As Integer : Dim EDR As Integer = 0 : Dim ESTR As String
  5. Private Sub Set_清單()
  6. 物料清單_dgv.DataSource = Nothing : ds.Clear()
  7. 物料清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  8. 物料清單_dgv.ColumnHeadersHeight = 40
  9. 物料清單_dgv.AllowUserToAddRows = False
  10. 物料清單_dgv.RowTemplate.Height = 25
  11. PA1 = "" : PA2 = "" : PA2 = 供應商編碼_cb.Text : PA1 = 查詢_tb.Text
  12. SQL_盤盈盤損申請_物料清單()
  13. da.Fill(ds) : 物料清單_dgv.DataSource = ds.Tables(0) : conn.Close()
  14. 物料清單_dgv.Columns(0).FillWeight = 90 : 物料清單_dgv.Columns(1).FillWeight = 100 : 物料清單_dgv.Columns(2).FillWeight = 250
  15. 物料清單_dgv.Columns(3).FillWeight = 60 : 物料清單_dgv.Columns(4).Visible = False
  16. 物料清單_dgv.Columns(5).FillWeight = 40 : 物料清單_dgv.Columns(6).Visible = False
  17. 物料清單_dgv.Columns(0).ReadOnly = True : 物料清單_dgv.Columns(1).ReadOnly = True : 物料清單_dgv.Columns(2).ReadOnly = True
  18. 物料清單_dgv.Columns(3).ReadOnly = True : 物料清單_dgv.Columns(4).ReadOnly = True : 物料清單_dgv.Columns(5).ReadOnly = True
  19. 物料清單_dgv.Columns("庫存").DefaultCellStyle.Format = "#,##0"
  20. 物料清單_dgv.Columns("庫存").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  21. 物料清單_dgv.Columns("庫存").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  22. 資料筆數_tb.Text = 物料清單_dgv.Rows.Count
  23. For i As Integer = 0 To 物料清單_dgv.Rows.Count - 1
  24. 資料數 = 物料清單_dgv.Rows.Count : MyModule1.進度條()
  25. If 物料清單_dgv("庫存", i).Value.ToString = "" Then : 物料清單_dgv("庫存", i).Value = 0 : End If
  26. If 物料清單_dgv("未出庫", i).Value.ToString = "" Then : 物料清單_dgv("未出庫", i).Value = 0 : End If
  27. Next : YD_ERP_SYS.ToolStripProgressBar1.Value = 0 : 最終數 = 0
  28. End Sub
  29. Private Sub Set_清單2()
  30. 調庫單據_dgv.DataSource = Nothing : ds2.Clear()
  31. 調庫單據_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  32. 調庫單據_dgv.ColumnHeadersHeight = 25
  33. 調庫單據_dgv.AllowUserToAddRows = False
  34. 調庫單據_dgv.RowTemplate.Height = 25
  35. SQL_盤盈盤損申請_單據()
  36. da.Fill(ds2) : 調庫單據_dgv.DataSource = ds2.Tables(0) : conn.Close()
  37. 調庫單據_dgv.Columns(0).FillWeight = 200 : 調庫單據_dgv.Columns(1).Visible = False : 調庫單據_dgv.Columns(2).Visible = False
  38. 調庫單據_dgv.Columns(0).ReadOnly = True : 調庫單據_dgv.Columns(1).ReadOnly = True : 調庫單據_dgv.Columns(2).ReadOnly = True
  39. End Sub
  40. Private Sub Set_清單1()
  41. 調庫明細_dgv.DataSource = Nothing : ds1.Clear()
  42. 調庫明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  43. 調庫明細_dgv.ColumnHeadersHeight = 40
  44. 調庫明細_dgv.AllowUserToAddRows = False
  45. 調庫明細_dgv.RowTemplate.Height = 35
  46. PA20 = 調庫單號_tb.Text
  47. SQL_盤盈盤損申請_明細()
  48. da.Fill(ds1) : 調庫明細_dgv.DataSource = ds1.Tables(0) : conn.Close()
  49. 調庫明細_dgv.Columns(0).Visible = False : 調庫明細_dgv.Columns(1).FillWeight = 100 : 調庫明細_dgv.Columns(2).FillWeight = 100 : 調庫明細_dgv.Columns(3).FillWeight = 75
  50. 調庫明細_dgv.Columns(4).FillWeight = 200 : 調庫明細_dgv.Columns(5).FillWeight = 100 : 調庫明細_dgv.Columns(6).FillWeight = 100 : 調庫明細_dgv.Columns(7).FillWeight = 50
  51. 調庫明細_dgv.Columns(8).FillWeight = 50 : 調庫明細_dgv.Columns(9).FillWeight = 75 : 調庫明細_dgv.Columns(10).FillWeight = 100 : 調庫明細_dgv.Columns(11).FillWeight = 35
  52. 調庫明細_dgv.Columns("盤盈").DefaultCellStyle.Format = "#,##0" : 調庫明細_dgv.Columns("盤損").DefaultCellStyle.Format = "#,##0"
  53. 調庫明細_dgv.Columns("盤盈").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  54. 調庫明細_dgv.Columns("盤盈").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  55. 調庫明細_dgv.Columns("盤損").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  56. 調庫明細_dgv.Columns("盤損").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  57. 調庫明細_dgv.Columns(1).ReadOnly = True : 調庫明細_dgv.Columns(2).ReadOnly = True : 調庫明細_dgv.Columns(3).ReadOnly = True : 調庫明細_dgv.Columns(4).ReadOnly = True
  58. 調庫明細_dgv.Columns(5).ReadOnly = True : 調庫明細_dgv.Columns(6).ReadOnly = True : 調庫明細_dgv.Columns(9).ReadOnly = True : 調庫明細_dgv.Columns(11).ReadOnly = True
  59. 調庫明細_dgv.EditMode = DataGridViewEditMode.EditOnEnter : 資料筆數1_tb.Text = 調庫明細_dgv.Rows.Count
  60. End Sub
  61. Private Sub Set_清單3()
  62. 區域庫存_dgv.DataSource = Nothing : ds3.Clear()
  63. 區域庫存_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  64. 區域庫存_dgv.ColumnHeadersHeight = 25
  65. 區域庫存_dgv.AllowUserToAddRows = False
  66. 區域庫存_dgv.RowTemplate.Height = 25
  67. PA20 = 料號_tb.Text : SQL_倉名_物料分配查詢()
  68. da.Fill(ds3) : 區域庫存_dgv.DataSource = ds3.Tables(0) : conn.Close()
  69. 區域庫存_dgv.Columns(0).FillWeight = 200 : 區域庫存_dgv.Columns(1).FillWeight = 80
  70. 區域庫存_dgv.Columns(0).ReadOnly = True : 區域庫存_dgv.Columns(1).ReadOnly = True
  71. 區域庫存_dgv.Columns("可用").DefaultCellStyle.Format = "#,##0"
  72. 區域庫存_dgv.Columns("可用").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  73. 區域庫存_dgv.Columns("可用").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  74. End Sub
  75. Private Sub 供應商_下拉表單資料載入()
  76. BL1 = False : PA3 = "" : PA4 = ""
  77. If 地區_cb.Text = "" Then : PA3 = ""
  78. ElseIf 地區_cb.Text = "北部" Then : PA3 = "2"
  79. ElseIf 地區_cb.Text = "南部" Then : PA3 = "3"
  80. ElseIf 地區_cb.Text = "材料" Then : PA3 = "9"
  81. ElseIf 地區_cb.Text = "調貨" Then : PA3 = "Y"
  82. End If
  83. SQL_盤盈盤損申請_供應商_下拉清單() : 供應商_cb.Items.Clear() : 供應商編碼_cb.Items.Clear()
  84. While (dr.Read()) : 供應商_cb.Items.Add(dr("簡稱")) : 供應商編碼_cb.Items.Add(dr("編號")) : End While : conn.Close()
  85. End Sub
  86. Private Sub 倉儲狀態_cb_下拉表單資料載入()
  87. SQL_倉儲狀態_下拉清單() : 倉儲狀態_cb.Items.Clear() : 儲態編號_cb.Items.Clear()
  88. While (dr.Read()) : 倉儲狀態_cb.Items.Add(dr("狀態")) : 儲態編號_cb.Items.Add(dr("編碼")) : End While : conn.Close()
  89. End Sub
  90. Private Sub 訂製狀態_cb_下拉表單資料載入()
  91. SQL_訂製狀態_下拉清單() : 訂製狀態_cb.Items.Clear() : 訂製編碼_cb.Items.Clear()
  92. While (dr.Read()) : 訂製狀態_cb.Items.Add(dr("訂製")) : 訂製編碼_cb.Items.Add(dr("編碼")) : End While : conn.Close()
  93. End Sub
  94. Private Sub 指定倉庫_cb_下拉表單資料載入()
  95. If 需要全部庫存區域清單_ch.Checked = True Then
  96. SQL_倉名_下拉清單()
  97. Else
  98. If 料號_tb.Text = "" Then
  99. SQL_倉名_下拉清單()
  100. Else
  101. PA20 = 料號_tb.Text : SQL_倉名_下拉清單_有條件()
  102. End If
  103. End If
  104. 指定倉庫_cb.Items.Clear()
  105. While (dr.Read()) : 指定倉庫_cb.Items.Add(dr("倉名")) : End While : conn.Close()
  106. If 指定倉庫_cb.Items.Count = 0 Then
  107. SQL_倉名_下拉清單()
  108. While (dr.Read()) : 指定倉庫_cb.Items.Add(dr("倉名")) : End While : conn.Close()
  109. End If
  110. End Sub
  111. Private Sub 盤盈盤損申請_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  112. Me.MdiParent = YD_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  113. 料號_tb.Enabled = False : 供應商編碼_tb.Visible = False '--------------------控件隱藏、操作許可設定與其他基本顯示設定
  114. 指定倉庫_cb_下拉表單資料載入() : 訂製狀態_cb_下拉表單資料載入() : 倉儲狀態_cb_下拉表單資料載入()
  115. 首次開啟 = False : Set_清單() : Set_清單2() : 首次開啟 = True '--------------------資料讀取
  116. If YD_ERP_SYS.Size.Width > 1440 And YD_ERP_SYS.Size.Height > 900 Then
  117. 字體_NUD.Value = 9
  118. ElseIf YD_ERP_SYS.Size.Width <= 1440 And YD_ERP_SYS.Size.Height <= 900 Then
  119. 字體_NUD.Value = 7.6
  120. End If
  121. End Sub
  122. Private Sub 盤盈盤損申請_SizeChanged(sender As Object, e As EventArgs) Handles MyBase.SizeChanged
  123. If YD_ERP_SYS.Size.Width > 1440 And YD_ERP_SYS.Size.Height > 900 Then
  124. 字體_NUD.Value = 9
  125. ElseIf YD_ERP_SYS.Size.Width <= 1440 And YD_ERP_SYS.Size.Height <= 900 Then
  126. 字體_NUD.Value = 8
  127. End If
  128. End Sub
  129. Private Sub 區域庫存_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 區域庫存_dgv.CellClick
  130. If e.RowIndex = -1 Then : Else
  131. 指定倉庫_cb.Text = 區域庫存_dgv.Rows(e.RowIndex).Cells("倉名").Value
  132. End If
  133. End Sub
  134. Private Sub 調庫單據_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 調庫單據_dgv.CellClick
  135. If 開立庫存調整單_bt.Enabled = True Then
  136. If e.RowIndex = -1 Then : Else
  137. 調庫單號_tb.Text = 調庫單據_dgv.Rows(e.RowIndex).Cells("執行單號").Value : 申請人_tb.Text = 調庫單據_dgv.Rows(e.RowIndex).Cells("申請人").Value
  138. 申請日期_dtp.Value = 調庫單據_dgv.Rows(e.RowIndex).Cells("申請日期").Value
  139. Set_清單1()
  140. End If
  141. End If
  142. End Sub
  143. Private Sub 調庫明細_dgv_CellEndEdit(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 調庫明細_dgv.CellEndEdit
  144. If (Val(調庫明細_dgv.Rows(e.RowIndex).Cells("盤盈").Value) = 0 And Val(調庫明細_dgv.Rows(e.RowIndex).Cells("盤損").Value) = 0) Or
  145. (Val(調庫明細_dgv.Rows(e.RowIndex).Cells("盤盈").Value) <> 0 And Val(調庫明細_dgv.Rows(e.RowIndex).Cells("盤損").Value) <> 0) Then
  146. MsgBox("盤營與盤損不能同時為零或同時有數量")
  147. Set_清單1()
  148. Exit Sub
  149. End If
  150. End Sub
  151. Private Sub 調庫明細_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 調庫明細_dgv.CellClick
  152. If e.RowIndex = -1 Then : Else
  153. 項次_tb.Text = 調庫明細_dgv(0, e.RowIndex).Value.ToString
  154. 物料圖1_pb.Image = Nothing : PA1 = 調庫明細_dgv.Rows(e.RowIndex).Cells("料號").Value : SQL_物料檔案_是否有圖()
  155. If dr.Read() Then
  156. If dr("是否有圖") = True Then
  157. 物料圖1_pb.BackgroundImage = Nothing
  158. PA = 調庫明細_dgv.Rows(e.RowIndex).Cells("料號").Value : SQL_物料圖庫_圖片顯示() '--------------------圖片顯示
  159. While dr.Read() = True
  160. Dim unused As Byte() = New Byte(-1) {}
  161. Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte())
  162. Dim oStream As New MemoryStream(bytes)
  163. 物料圖1_pb.Image = Bitmap.FromStream(oStream)
  164. End While
  165. conn.Close()
  166. 物料圖1_pb.SizeMode = 4
  167. Else
  168. 物料圖1_pb.BackgroundImage = My.Resources.底圖1 : 物料圖1_pb.BackgroundImageLayout = 3
  169. 物料圖1_pb.Image = Nothing
  170. End If
  171. End If : conn.Close()
  172. End If
  173. End Sub
  174. Private Sub 物料清單_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 物料清單_dgv.CellClick
  175. If 首次開啟 = True Then
  176. If e.RowIndex = -1 Then : Else
  177. 料號_tb.Text = 物料清單_dgv("料號", e.RowIndex).Value.ToString : 供應商編碼_tb.Text = 物料清單_dgv("供應商", e.RowIndex).Value.ToString
  178. 品名_tb.Text = 物料清單_dgv("品名", e.RowIndex).Value.ToString : 最大庫存量_tb.Text = 物料清單_dgv("最低庫存量", e.RowIndex).Value.ToString
  179. 庫存量_tb.Text = Val(物料清單_dgv("庫存", e.RowIndex).Value.ToString)
  180. 可申請_tb.Text = Val(物料清單_dgv("庫存", e.RowIndex).Value.ToString) - Val(物料清單_dgv("未出庫", e.RowIndex).Value.ToString)
  181. 物料圖_pb.Image = Nothing : PA1 = 料號_tb.Text : SQL_物料檔案_是否有圖()
  182. If dr.Read() Then
  183. If dr("是否有圖") = True Then
  184. 物料圖_pb.BackgroundImage = Nothing
  185. PA = 料號_tb.Text : SQL_物料圖庫_圖片顯示() '--------------------圖片顯示
  186. While dr.Read() = True
  187. Dim unused As Byte() = New Byte(-1) {}
  188. Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte())
  189. Dim oStream As New MemoryStream(bytes)
  190. 物料圖_pb.Image = Bitmap.FromStream(oStream)
  191. End While
  192. conn.Close()
  193. 物料圖_pb.SizeMode = 4
  194. Else
  195. 物料圖_pb.BackgroundImage = My.Resources.底圖1 : 物料圖_pb.BackgroundImageLayout = 3
  196. 物料圖_pb.Image = Nothing
  197. End If
  198. End If : conn.Close()
  199. 指定倉庫_cb_下拉表單資料載入()
  200. 訂製狀態_cb_下拉表單資料載入() : 倉儲狀態_cb_下拉表單資料載入()
  201. End If
  202. End If
  203. End Sub
  204. Private Sub 物料清單_dgv_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 物料清單_dgv.RowPostPaint
  205. Dim linePen As New Pen(Color.Blue, 2)
  206. If e.RowIndex = 物料清單_dgv.Rows.Count - 1 Then : Exit Sub : Else
  207. If 物料清單_dgv("供應商", e.RowIndex).Value.ToString <> 物料清單_dgv("供應商", e.RowIndex + 1).Value.ToString Then
  208. Dim startX As Integer = IIf(物料清單_dgv.RowHeadersVisible, 物料清單_dgv.RowHeadersWidth, 0) : Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  209. Dim endX As Integer = startX + 物料清單_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 物料清單_dgv.HorizontalScrollingOffset
  210. e.Graphics.DrawLine(linePen, startX, startY, endX, startY) : Exit Sub
  211. End If
  212. End If
  213. End Sub
  214. Private Sub 地區_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 地區_cb.SelectedIndexChanged
  215. If 地區_cb.Text = "" And 查詢_tb.Text = "" Then
  216. 供應商_cb.Items.Clear() : 供應商編碼_cb.Items.Clear() : Set_清單()
  217. ElseIf 地區_cb.Text = "" Then
  218. 查詢_tb.Text = "" : 供應商_cb.Items.Clear() : 供應商編碼_cb.Items.Clear()
  219. ElseIf 地區_cb.Text <> "" Then
  220. 查詢_tb.Text = "" : 供應商_下拉表單資料載入()
  221. End If
  222. End Sub
  223. Private Sub 供應商_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 供應商_cb.SelectedIndexChanged
  224. If 地區_cb.Text <> "" Then
  225. 查詢_tb.Text = "" : 供應商編碼_cb.SelectedIndex = 供應商_cb.SelectedIndex
  226. End If
  227. End Sub
  228. Private Sub 供應商編碼_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 供應商編碼_cb.SelectedIndexChanged
  229. If 地區_cb.Text <> "" Then
  230. 查詢_tb.Text = "" : 供應商_cb.SelectedIndex = 供應商編碼_cb.SelectedIndex : 供應商編碼_tb.Text = 供應商編碼_cb.Text : Set_清單()
  231. End If
  232. End Sub
  233. Private Sub 清空_bt_Click(sender As Object, e As EventArgs) Handles 清空_bt.Click
  234. 查詢_tb.Text = "" : 地區_cb.Text = ""
  235. End Sub
  236. Private Sub 查詢_tb_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles 查詢_tb.KeyPress
  237. If e.KeyChar = Chr(13) Then
  238. 供應商_cb.Items.Clear() : 供應商編碼_cb.Items.Clear()
  239. PA = 查詢_tb.Text : Set_清單() : 地區_cb.Text = ""
  240. End If
  241. End Sub
  242. Private Sub 指定倉庫_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 指定倉庫_cb.SelectedIndexChanged
  243. PA6 = 指定倉庫_cb.Text : SQL_指定倉儲_資料讀取()
  244. If dr.Read() Then : 倉庫級別_tb.Text = dr("倉級") : 倉庫編號_tb.Text = dr("倉名編號") : End If : conn.Close()
  245. End Sub
  246. Private Sub 倉儲狀態_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 倉儲狀態_cb.SelectedIndexChanged
  247. 儲態編號_cb.SelectedIndex = 倉儲狀態_cb.SelectedIndex
  248. End Sub
  249. Private Sub 儲態編號_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 儲態編號_cb.SelectedIndexChanged
  250. 倉儲狀態_cb.SelectedIndex = 儲態編號_cb.SelectedIndex
  251. End Sub
  252. Private Sub 訂製狀態_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 訂製狀態_cb.SelectedIndexChanged
  253. 訂製編碼_cb.SelectedIndex = 訂製狀態_cb.SelectedIndex
  254. End Sub
  255. Private Sub 訂製編碼_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 訂製編碼_cb.SelectedIndexChanged
  256. 訂製狀態_cb.SelectedIndex = 訂製編碼_cb.SelectedIndex
  257. End Sub
  258. Private Sub 盤損數_nud_ValueChanged(sender As Object, e As EventArgs) Handles 盤損數_nud.ValueChanged
  259. If 盤損數_nud.Value > 0 Then
  260. 盤盈數_nud.Value = 0
  261. If 盤損數_nud.Value > Val(庫存量_tb.Text) Then
  262. MsgBox("盤損數量不可能大於目前的庫存量!!")
  263. 盤損數_nud.Value = 0
  264. End If
  265. End If
  266. End Sub
  267. Private Sub 盤盈數_nud_ValueChanged(sender As Object, e As EventArgs) Handles 盤盈數_nud.ValueChanged
  268. If 盤盈數_nud.Value > 0 Then
  269. 盤損數_nud.Value = 0
  270. End If
  271. End Sub
  272. Private Sub Set_日期格式轉換()
  273. DTP = Format(申請日期_dtp.Value, "yyyy/MM/dd") : DTP1 = Format(Today(), "yyyyMMdd")
  274. End Sub
  275. Private Sub 開立庫存調整單_bt_Click(sender As Object, e As EventArgs) Handles 開立庫存調整單_bt.Click
  276. Set_日期格式轉換()
  277. For i As Integer = 1 To 999
  278. NUM1 = 0 + i
  279. If NUM1 < 10 Then : 調庫單號_tb.Text = "WH-" & DTP1 & "-00" & NUM1
  280. ElseIf NUM1 > 9 And NUM1 < 100 Then : 調庫單號_tb.Text = "WH-" & DTP1 & "-0" & NUM1
  281. ElseIf NUM1 > 99 Then : 調庫單號_tb.Text = "WH-" & DTP1 & "-" & NUM1
  282. End If
  283. PA1 = 調庫單號_tb.Text
  284. SQL_倉儲明細執行單號_執行單號驗證()
  285. If dr.Read() Then : Else : i = 999 : conn.Close() : End If : conn.Close()
  286. Next
  287. SQL_倉儲明細執行單號_新增() : Set_清單2() : Set_清單1() : conn.Close()
  288. 申請人_tb.Text = gUserName
  289. 開立庫存調整單_bt.Enabled = False : 開立庫存調整單_tsm.Enabled = False
  290. End Sub
  291. Private Sub 選定內容加入庫存調整申請單_bt_Click(sender As Object, e As EventArgs) Handles 選定內容加入庫存調整申請單_bt.Click
  292. If 調庫單號_tb.Text = "" Then
  293. MsgBox("請先案開立庫存調整單建立新單號或是選擇未審核的庫存調整單!!")
  294. Else
  295. If 料號_tb.Text = "" Then
  296. MsgBox("請選擇物料,調整庫存需要指定物料!!")
  297. Else
  298. If 儲態編號_cb.Text = "" Then
  299. MsgBox("倉儲狀態是一定要選擇的!!")
  300. Else
  301. If 訂製狀態_cb.Text = "" Then
  302. MsgBox("物品的訂製狀態也是一定要選擇的!!")
  303. Else
  304. If 盤損數_nud.Value > Val(庫存量_tb.Text) Then
  305. MsgBox("盤損數量不可能小於庫存數量!!")
  306. 盤損數_nud.Value = 0
  307. Else
  308. If 盤損數_nud.Value = 0 And 盤盈數_nud.Value = 0 Then
  309. MsgBox("盤盈盤損最少選一種,兩者都為零是不容許的!!")
  310. Else
  311. PA1 = 調庫單號_tb.Text : PA2 = 料號_tb.Text : PA3 = 倉庫編號_tb.Text
  312. SQL_倉儲明細表_確認單據是否申請()
  313. If dr.Read() Then
  314. conn.Close() : MsgBox("該料號已經在本單據中申請過了,如要修改,請直接到單據中尋找並修改。")
  315. Else
  316. SQL_倉儲明細表_最後一筆資料()
  317. If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("資料流水號").ToString, 9)) : Else : EDR = 0 : End If
  318. conn.Close() : EDR += 1
  319. If EDR < 10 Then : ESTR = "WH" & "00000000" & EDR
  320. ElseIf EDR > 9 And EDR < 100 Then : ESTR = "WH" & "0000000" & EDR
  321. ElseIf EDR > 99 And EDR < 1000 Then : ESTR = "WH" & "000000" & EDR
  322. ElseIf EDR > 999 And EDR < 10000 Then : ESTR = "WH" & "00000" & EDR
  323. ElseIf EDR > 9999 And EDR < 100000 Then : ESTR = "WH" & "0000" & EDR
  324. ElseIf EDR > 99999 And EDR < 100000 Then : ESTR = "WH" & "000" & EDR
  325. ElseIf EDR > 999999 And EDR < 1000000 Then : ESTR = "WH" & "00" & EDR
  326. ElseIf EDR > 9999999 And EDR < 10000000 Then : ESTR = "WH" & "0" & EDR
  327. ElseIf EDR > 99999999 Then : ESTR = "WH" & EDR : End If
  328. Set_日期格式轉換()
  329. PA3 = ESTR : PA4 = 調庫單號_tb.Text : PA5 = 倉庫級別_tb.Text : PA6 = 倉庫編號_tb.Text : NU1 = 盤盈數_nud.Value : NU2 = 盤損數_nud.Value
  330. PA7 = 儲態編號_cb.Text : PA8 = 訂製編碼_cb.Text : PA9 = 申請人_tb.Text
  331. If 盤盈數_nud.Value = 0 And 盤損數_nud.Value > 0 Then
  332. SQL_盤盈盤損申請_倉儲明細表_盤損出庫新增()
  333. ElseIf 盤盈數_nud.Value > 0 And 盤損數_nud.Value = 0 Then
  334. SQL_盤盈盤損申請_倉儲明細表_盤盈入庫新增()
  335. End If : conn.Close()
  336. Set_清單1() : Set_清單2() : Set_清單()
  337. End If
  338. End If
  339. End If
  340. End If
  341. End If
  342. End If
  343. End If
  344. End Sub
  345. Private Sub 存檔_bt_Click(sender As Object, e As EventArgs) Handles 存檔_bt.Click
  346. If 調庫單號_tb.Text = "" Or 料號_tb.Text = "" Then
  347. MsgBox("沒有選擇庫存調整單據!!")
  348. Else
  349. For i As Integer = 0 To 調庫明細_dgv.Rows.Count - 1
  350. 資料數 = 調庫明細_dgv.Rows.Count : MyModule1.進度條()
  351. PA10 = 調庫明細_dgv.Rows(i).Cells("備註").Value : PA11 = 調庫明細_dgv.Rows(i).Cells("資料流水號").Value
  352. NU1 = 調庫明細_dgv.Rows(i).Cells("盤盈").Value : NU2 = 調庫明細_dgv.Rows(i).Cells("盤損").Value
  353. SQL_倉儲明細表_出入庫及修改() : conn.Close()
  354. Next
  355. MsgBox("存檔完成!!") : YD_ERP_SYS.ToolStripProgressBar1.Value = 0 : 最終數 = 0
  356. Set_清單1() : Set_清單2()
  357. 開立庫存調整單_bt.Enabled = True : 開立庫存調整單_tsm.Enabled = True
  358. End If
  359. End Sub
  360. Private Sub 刪除請購單上點選資料_bt_Click(sender As Object, e As EventArgs) Handles 刪除單據上點選的資料_bt.Click
  361. If 調庫單號_tb.Text = "" Then
  362. MsgBox("沒有選擇庫存調整單據!!")
  363. Else
  364. If 項次_tb.Text = "" Then
  365. MsgBox("沒有選擇要刪除的明細!!")
  366. Else
  367. Dim aa1 As MsgBoxResult = MsgBox("你確定要刪除這筆資料?", MsgBoxStyle.OkCancel)
  368. If aa1 = MsgBoxResult.Ok Then
  369. PA1 = 項次_tb.Text : SQL_倉儲明細表_刪除二() : conn.Close()
  370. Set_清單1()
  371. End If
  372. End If
  373. End If
  374. End Sub
  375. Private Sub 刪除_bt_Click(sender As Object, e As EventArgs) Handles 刪除_bt.Click
  376. Dim aa1 As MsgBoxResult = MsgBox("你確定要刪除這張庫存調整單?", MsgBoxStyle.OkCancel)
  377. If aa1 = MsgBoxResult.Ok Then
  378. PA1 = 調庫單號_tb.Text : SQL_倉儲明細表_刪除() : SQL_倉儲明細執行單號_刪除() : conn.Close()
  379. 調庫單號_tb.Text = "" : 申請人_tb.Text = "" : 項次_tb.Text = ""
  380. 調庫明細_dgv.DataSource = Nothing : ds1.Clear()
  381. Set_清單2()
  382. End If
  383. End Sub
  384. Private Sub 需要全部庫存區域清單_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 需要全部庫存區域清單_ch.CheckedChanged
  385. 指定倉庫_cb_下拉表單資料載入()
  386. End Sub
  387. '-----------------------------滑鼠右鍵--------------------------------------------------------------------------------------------------------------------------------------
  388. Private Sub 重新整理_tsm_Click(sender As Object, e As EventArgs) Handles 重新整理_tsm.Click
  389. 清空_bt.PerformClick() : Set_清單2() : Set_清單1()
  390. End Sub
  391. Private Sub 開立庫存調整單_tsm_Click(sender As Object, e As EventArgs) Handles 開立庫存調整單_tsm.Click
  392. 開立庫存調整單_bt.PerformClick()
  393. End Sub
  394. Private Sub 選定內容加入庫存調整申請單_tsm_Click(sender As Object, e As EventArgs) Handles 選定內容加入庫存調整申請單_tsm.Click
  395. 選定內容加入庫存調整申請單_bt.PerformClick()
  396. End Sub
  397. Private Sub 存檔_tsm_Click(sender As Object, e As EventArgs) Handles 存檔_tsm.Click
  398. 存檔_bt.PerformClick()
  399. End Sub
  400. Private Sub 刪除庫存調整單據上點選的資料_tsm_Click(sender As Object, e As EventArgs) Handles 刪除庫存調整單據上點選的資料_tsm.Click
  401. 刪除單據上點選的資料_bt.PerformClick()
  402. End Sub
  403. Private Sub 刪除庫存調整單據_tsm_Click(sender As Object, e As EventArgs) Handles 刪除庫存調整單據_tsm.Click
  404. 刪除_bt.PerformClick()
  405. End Sub
  406. Private Sub 字體_NUD_ValueChanged(sender As Object, e As EventArgs) Handles 字體_NUD.ValueChanged
  407. 調庫單據_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 字體_NUD.Value)
  408. 調庫明細_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 字體_NUD.Value)
  409. 區域庫存_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 字體_NUD.Value)
  410. 物料清單_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 字體_NUD.Value)
  411. End Sub
  412. End Class