Brak opisu
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 19KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312
  1. Option Strict Off
  2. Public Class 零件成本建檔
  3. ReadOnly ds As New DataSet
  4. Private Sub DGV1讀取前設定()
  5. DataGridView1.DataSource = Nothing : ds.Clear()
  6. DataGridView1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  7. DataGridView1.ColumnHeadersHeight = 25
  8. DataGridView1.AllowUserToAddRows = False
  9. ConnOpen()
  10. End Sub
  11. Private Sub DGV1讀取後設定()
  12. CmdSet_For_DGV() : da.Fill(ds) : DataGridView1.DataSource = ds.Tables(0) : conn.Close()
  13. End Sub
  14. Private Sub 讀取成本資料表()
  15. If ComboBox3.Text = "" Or ComboBox3.Text = "-請選擇-" Then
  16. DGV1讀取前設定()
  17. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 ORDER BY 科目"
  18. Else
  19. DGV1讀取前設定()
  20. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (科目 ='" & ComboBox3.Text &
  21. "') ORDER BY 科目"
  22. End If
  23. DGV1讀取後設定()
  24. End Sub
  25. Private Sub 下拉表單資料載入()
  26. ConnOpen()
  27. SQL1 = "SELECT 品牌 FROM 品牌資料"
  28. cmd.CommandText = SQL1 : cmd.Connection = conn : dr = cmd.ExecuteReader
  29. ComboBox1.Items.Clear()
  30. While (dr.Read())
  31. ComboBox1.Items.Add(dr("品牌"))
  32. End While
  33. conn.Close()
  34. ConnOpen()
  35. SQL1 = "SELECT 供應商 FROM 供應商資料表"
  36. cmd.CommandText = SQL1 : cmd.Connection = conn : dr = cmd.ExecuteReader
  37. ComboBox2.Items.Clear()
  38. While (dr.Read())
  39. ComboBox2.Items.Add(dr("供應商"))
  40. End While
  41. conn.Close()
  42. End Sub
  43. Private Sub 格式設定()
  44. Button1.Enabled = False : Button2.Enabled = False : Button3.Enabled = False
  45. End Sub
  46. Private Sub Set_grid1()
  47. DataGridView1.Columns(0).Width = 100 : DataGridView1.Columns(1).Width = 90 : DataGridView1.Columns(2).Width = 100
  48. DataGridView1.Columns(3).Width = 130 : DataGridView1.Columns(4).Width = 350 : DataGridView1.Columns(5).Width = 350
  49. DataGridView1.Columns(6).Width = 100 : DataGridView1.Columns(7).Width = 80
  50. End Sub
  51. Private Sub DataGridView1_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles DataGridView1.CellClick
  52. If e.RowIndex = -1 Then : Else
  53. TextBox1.Text = DataGridView1(0, e.RowIndex).Value.ToString : ComboBox1.Text = DataGridView1(1, e.RowIndex).Value.ToString
  54. ComboBox2.Text = DataGridView1(2, e.RowIndex).Value.ToString : ComboBox3.Text = DataGridView1(3, e.RowIndex).Value.ToString
  55. TextBox2.Text = DataGridView1(4, e.RowIndex).Value.ToString : TextBox3.Text = DataGridView1(5, e.RowIndex).Value.ToString
  56. ComboBox4.Text = DataGridView1(7, e.RowIndex).Value.ToString
  57. TEXT1 = DataGridView1(6, e.RowIndex).Value.ToString : TextBox4.Text = Format(Val(TEXT1), "#,##0.0")
  58. If ComboBox4.Text = "RMB" Then
  59. TextBox10.Text = Format(Val(CStr(Math.Round((Double.Parse(TEXT1) * ER), 2))), "#,##0.0")
  60. Else
  61. TextBox10.Text = Format(Val(TEXT1), "#,##0.0")
  62. End If
  63. End If
  64. End Sub
  65. Private Sub 零件成本建檔_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  66. Me.MdiParent = GCM_ERP_SYS
  67. Me.WindowState = 2
  68. 讀取成本資料表() : 下拉表單資料載入() : 格式設定() : Set_grid1()
  69. ConnOpen()
  70. SQL1 = "SELECT 匯率 FROM 匯率表 WHERE (對應 = '人民幣兌台幣')"
  71. CmdSet_For_dr()
  72. If dr.Read() Then : TextBox9.Text = dr("匯率").ToString : End If
  73. ER = Double.Parse(dr("匯率").ToString)
  74. conn.Close() : dr.Close()
  75. End Sub
  76. Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove
  77. timeNow = 0
  78. GCM_ERP_SYS.Timer1.Enabled = False
  79. GCM_ERP_SYS.Timer1.Enabled = True
  80. End Sub
  81. Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress
  82. timeNow = 0
  83. GCM_ERP_SYS.Timer1.Enabled = False
  84. GCM_ERP_SYS.Timer1.Enabled = True
  85. End Sub
  86. Private Sub CheckBox2_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox2.CheckedChanged
  87. If CheckBox2.Checked = True Then
  88. Button1.Enabled = True : Button2.Enabled = True : Button3.Enabled = True
  89. Else
  90. 格式設定()
  91. End If
  92. End Sub
  93. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  94. If IsNumeric(TextBox4.Text) = True Then
  95. If InStr(TextBox4.Text, ",") = False Then
  96. If ComboBox1.Text = "" Or ComboBox2.Text = "" Or ComboBox3.Text = "-請選擇-" Or ComboBox4.Text = "" Or TextBox2.Text = "" Then
  97. MsgBox("科目或品名欄位不可空白")
  98. Else
  99. Dim NUM1 As Integer
  100. For NUM1 = 0 To 999999
  101. If NUM1 < 10 Then
  102. TextBox8.Text = "PA" & "00000" & NUM1
  103. ElseIf NUM1 > 9 And NUM1 < 100 Then
  104. TextBox8.Text = "PA" & "0000" & NUM1
  105. ElseIf NUM1 > 99 And NUM1 < 1000 Then
  106. TextBox8.Text = "PA" & "000" & NUM1
  107. ElseIf NUM1 > 999 And NUM1 < 10000 Then
  108. TextBox8.Text = "PA" & "00" & NUM1
  109. ElseIf NUM1 > 9999 And NUM1 < 100000 Then
  110. TextBox8.Text = "PA" & "0" & NUM1
  111. ElseIf NUM1 > 99999 Then
  112. TextBox8.Text = "PA" & NUM1
  113. End If
  114. ConnOpen()
  115. SQL1 = "SELECT 流水碼 FROM 零件成本紀錄表 WHERE (流水碼 ='" & TextBox8.Text & "')"
  116. CmdSet_For_dr()
  117. If dr.Read() Then : TextBox1.Text = dr("流水碼").ToString : Else : TextBox1.Text = "" : End If
  118. conn.Close()
  119. If TextBox1.Text = "" Then
  120. TextBox1.Text = TextBox8.Text : TextBox8.Text = "可用"
  121. NUM1 = 999999
  122. End If
  123. Next
  124. If TextBox8.Text = "可用" Then
  125. ConnOpen()
  126. SQL1 = "INSERT INTO 零件成本紀錄表 (流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別, 安全庫存) VALUES ('" & TextBox1.Text &
  127. "','" & ComboBox1.Text & "','" & ComboBox2.Text & "','" & ComboBox3.Text & "','" & TextBox2.Text & "','" & TextBox3.Text &
  128. "','" & TextBox4.Text & "','" & ComboBox4.Text & "', '0')"
  129. cmd.Connection = conn : cmd.CommandText = SQL1 : cmd.ExecuteNonQuery()
  130. MsgBox("新增完成")
  131. conn.Close()
  132. End If
  133. End If
  134. Else
  135. MsgBox("進貨成本資料非數字")
  136. End If
  137. Else
  138. MsgBox("進貨成本資料非數字")
  139. End If
  140. CheckBox2.Checked = False
  141. 讀取成本資料表() : Set_grid1()
  142. End Sub
  143. Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
  144. If IsNumeric(TextBox4.Text) = True Then
  145. If InStr(TextBox4.Text, ",") = False Then
  146. ConnOpen()
  147. SQL1 = "UPDATE 零件成本紀錄表 SET 品牌 = '" & ComboBox1.Text & "', 供應商 = '" & ComboBox2.Text & "', 科目 = '" & ComboBox3.Text &
  148. "', 品名 = '" & TextBox2.Text & "', 型號及備註 = '" & TextBox3.Text & "', 進貨單價 = '" & TextBox4.Text &
  149. "', 幣別 = '" & ComboBox4.Text & "' WHERE (流水碼 = '" & TextBox1.Text & "')"
  150. cmd.CommandText = SQL1 : cmd.ExecuteNonQuery()
  151. MsgBox("修改完成")
  152. conn.Close()
  153. Else
  154. MsgBox("進貨成本資料非數字")
  155. End If
  156. Else
  157. MsgBox("進貨成本資料非數字")
  158. End If
  159. CheckBox2.Checked = False
  160. 讀取成本資料表() : Set_grid1()
  161. End Sub
  162. Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
  163. SQL1 = "DELETE FROM 零件成本紀錄表 WHERE (流水碼 = '" & TextBox1.Text & "')"
  164. cmd.CommandText = SQL1 : cmd.Connection = conn
  165. ConnOpen()
  166. Dim aa As MsgBoxResult
  167. aa = MsgBox("確定要刪除該筆資料?", MsgBoxStyle.OkCancel)
  168. If aa = MsgBoxResult.Ok Then : cmd.ExecuteNonQuery() : MsgBox("刪除完成") : End If
  169. conn.Close()
  170. CheckBox2.Checked = False : ComboBox3.Text = "-請選擇-"
  171. 讀取成本資料表() : Set_grid1()
  172. End Sub
  173. Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click
  174. 供應商資料.Show()
  175. End Sub
  176. Private Sub CheckBox7_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox7.CheckedChanged
  177. If CheckBox7.Checked = True Then
  178. CheckBox3.Checked = False : CheckBox4.Checked = False : CheckBox5.Checked = False : CheckBox6.Checked = False : ComboBox3.Text = "-請選擇-"
  179. End If
  180. End Sub
  181. Private Sub CheckBox6_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox6.CheckedChanged
  182. If CheckBox6.Checked = True Then : CheckBox7.Checked = False : End If
  183. End Sub
  184. Private Sub CheckBox5_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox5.CheckedChanged
  185. If CheckBox5.Checked = True Then : CheckBox7.Checked = False : End If
  186. End Sub
  187. Private Sub CheckBox3_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox3.CheckedChanged
  188. If CheckBox3.Checked = True Then : CheckBox7.Checked = False : End If
  189. End Sub
  190. Private Sub CheckBox4_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox4.CheckedChanged
  191. If CheckBox4.Checked = True Then : CheckBox7.Checked = False : End If
  192. End Sub
  193. Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
  194. If CheckBox7.Checked = True Then
  195. 讀取成本資料表() : 下拉表單資料載入()
  196. ElseIf CheckBox6.Checked = True And CheckBox5.Checked = True And CheckBox3.Checked = True And CheckBox4.Checked = True Then
  197. If ComboBox1.Text = "" Or ComboBox2.Text = "" Or ComboBox3.Text = "" Or ComboBox3.Text = "-請選擇-" Or ComboBox4.Text = "" Then : MsgBox("選項不能空白") : Else
  198. DGV1讀取前設定()
  199. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (品牌 ='" & ComboBox1.Text &
  200. "' AND 供應商 ='" & ComboBox2.Text & "' AND 科目 ='" & ComboBox3.Text & "' AND 幣別 ='" & ComboBox4.Text & "') ORDER BY 科目"
  201. DGV1讀取後設定()
  202. End If
  203. ElseIf CheckBox5.Checked = True And CheckBox3.Checked = True And CheckBox4.Checked = True Then
  204. If ComboBox2.Text = "" Or ComboBox3.Text = "" Or ComboBox3.Text = "-請選擇-" Or ComboBox4.Text = "" Then : MsgBox("選項不能空白") : Else
  205. DGV1讀取前設定()
  206. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (供應商 ='" & ComboBox2.Text &
  207. "' AND 科目 ='" & ComboBox3.Text & "' AND 幣別 ='" & ComboBox4.Text & "') ORDER BY 科目"
  208. DGV1讀取後設定()
  209. End If
  210. ElseIf CheckBox6.Checked = True And CheckBox3.Checked = True And CheckBox4.Checked = True Then
  211. If ComboBox1.Text = "" Or ComboBox3.Text = "" Or ComboBox3.Text = "-請選擇-" Or ComboBox4.Text = "" Then : MsgBox("選項不能空白") : Else
  212. DGV1讀取前設定()
  213. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (品牌 ='" & ComboBox1.Text &
  214. "' AND 科目 ='" & ComboBox3.Text & "' AND 幣別 ='" & ComboBox4.Text & "') ORDER BY 科目"
  215. DGV1讀取後設定()
  216. End If
  217. ElseIf CheckBox6.Checked = True And CheckBox5.Checked = True And CheckBox4.Checked = True Then
  218. If ComboBox1.Text = "" Or ComboBox2.Text = "" Or ComboBox4.Text = "" Then : MsgBox("選項不能空白") : Else
  219. DGV1讀取前設定()
  220. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (品牌 ='" & ComboBox1.Text &
  221. "' AND 供應商 ='" & ComboBox2.Text & "' AND 幣別 ='" & ComboBox4.Text & "') ORDER BY 科目"
  222. DGV1讀取後設定()
  223. End If
  224. ElseIf CheckBox6.Checked = True And CheckBox5.Checked = True And CheckBox3.Checked = True Then
  225. If ComboBox1.Text = "" Or ComboBox2.Text = "" Or ComboBox3.Text = "" Or ComboBox3.Text = "-請選擇-" Then : MsgBox("選項不能空白") : Else
  226. DGV1讀取前設定()
  227. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (品牌 ='" & ComboBox1.Text &
  228. "' AND 供應商 ='" & ComboBox2.Text & "' AND 科目 ='" & ComboBox3.Text & "') ORDER BY 科目"
  229. DGV1讀取後設定()
  230. End If
  231. ElseIf CheckBox3.Checked = True And CheckBox4.Checked = True Then
  232. If ComboBox3.Text = "" Or ComboBox3.Text = "-請選擇-" Or ComboBox4.Text = "" Then : MsgBox("選項不能空白") : Else
  233. DGV1讀取前設定()
  234. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (科目 ='" & ComboBox3.Text &
  235. "' AND 幣別 ='" & ComboBox4.Text & "') ORDER BY 科目"
  236. DGV1讀取後設定()
  237. End If
  238. ElseIf CheckBox5.Checked = True And CheckBox4.Checked = True Then
  239. If ComboBox2.Text = "" Or ComboBox4.Text = "" Then : MsgBox("選項不能空白") : Else
  240. DGV1讀取前設定()
  241. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (供應商 ='" & ComboBox2.Text &
  242. "' AND 幣別 ='" & ComboBox4.Text & "') ORDER BY 科目"
  243. DGV1讀取後設定()
  244. End If
  245. ElseIf CheckBox5.Checked = True And CheckBox3.Checked = True Then
  246. If ComboBox2.Text = "" Or ComboBox3.Text = "" Or ComboBox3.Text = "-請選擇-" Then : MsgBox("選項不能空白") : Else
  247. DGV1讀取前設定()
  248. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (供應商 ='" & ComboBox2.Text &
  249. "' AND 科目 ='" & ComboBox3.Text & "') ORDER BY 科目"
  250. DGV1讀取後設定()
  251. End If
  252. ElseIf CheckBox6.Checked = True And CheckBox4.Checked = True Then
  253. If ComboBox1.Text = "" Or ComboBox4.Text = "" Then : MsgBox("選項不能空白") : Else
  254. DGV1讀取前設定()
  255. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (品牌 ='" & ComboBox1.Text &
  256. "' AND 幣別 ='" & ComboBox4.Text & "') ORDER BY 科目"
  257. DGV1讀取後設定()
  258. End If
  259. ElseIf CheckBox6.Checked = True And CheckBox3.Checked = True Then
  260. If ComboBox1.Text = "" Or ComboBox3.Text = "" Or ComboBox3.Text = "-請選擇-" Then : MsgBox("選項不能空白") : Else
  261. DGV1讀取前設定()
  262. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (品牌 ='" & ComboBox1.Text &
  263. "' AND 科目 ='" & ComboBox3.Text & "') ORDER BY 科目"
  264. DGV1讀取後設定()
  265. End If
  266. ElseIf CheckBox6.Checked = True And CheckBox5.Checked = True Then
  267. If ComboBox1.Text = "" Or ComboBox2.Text = "" Then : MsgBox("選項不能空白") : Else
  268. DGV1讀取前設定()
  269. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (品牌 ='" & ComboBox1.Text &
  270. "' AND 供應商 ='" & ComboBox2.Text & "') ORDER BY 科目"
  271. DGV1讀取後設定()
  272. End If
  273. ElseIf CheckBox6.Checked = True Then
  274. If ComboBox1.Text = "" Then : MsgBox("選項不能空白") : Else
  275. DGV1讀取前設定()
  276. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (品牌 ='" & ComboBox1.Text &
  277. "') ORDER BY 科目"
  278. DGV1讀取後設定()
  279. End If
  280. ElseIf CheckBox5.Checked = True Then
  281. If ComboBox2.Text = "" Then : MsgBox("選項不能空白") : Else
  282. DGV1讀取前設定()
  283. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (供應商 ='" & ComboBox2.Text &
  284. "') ORDER BY 科目"
  285. DGV1讀取後設定()
  286. End If
  287. ElseIf CheckBox3.Checked = True Then
  288. If ComboBox3.Text = "" Or ComboBox3.Text = "-請選擇-" Then : MsgBox("選項不能空白") : Else
  289. DGV1讀取前設定()
  290. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (科目 ='" & ComboBox3.Text &
  291. "') ORDER BY 科目"
  292. DGV1讀取後設定()
  293. End If
  294. ElseIf CheckBox4.Checked = True Then
  295. If ComboBox4.Text = "" Then : MsgBox("選項不能空白") : Else
  296. DGV1讀取前設定()
  297. SQL1 = "SELECT 流水碼, 品牌, 供應商, 科目, 品名, 型號及備註, 進貨單價, 幣別 FROM 零件成本紀錄表 WHERE (幣別 ='" & ComboBox4.Text &
  298. "') ORDER BY 科目"
  299. DGV1讀取後設定()
  300. End If
  301. End If
  302. Set_grid1()
  303. End Sub
  304. Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
  305. 品牌清單.Show()
  306. End Sub
  307. Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
  308. 下拉表單資料載入()
  309. End Sub
  310. End Class