설명 없음
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

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. Option Strict Off
  2. Public Class 庫存管理
  3. ReadOnly ds1 As New DataSet
  4. Private Sub DGV2讀取前設定()
  5. DataGridView2.DataSource = Nothing : ds1.Clear()
  6. DataGridView2.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  7. DataGridView2.ColumnHeadersHeight = 25
  8. DataGridView2.AllowUserToAddRows = False
  9. ConnOpen()
  10. End Sub
  11. Private Sub DGV2讀取後設定()
  12. CmdSet_For_DGV() : da.Fill(ds1) : DataGridView2.DataSource = ds1.Tables(0) : conn.Close()
  13. End Sub
  14. Private Sub 讀取庫存資料表()
  15. If PA = "" Then
  16. DGV2讀取前設定()
  17. SQL1 = "SELECT 零件進銷存報表.零件編號, 零件進銷存報表.進貨日期, 零件成本紀錄表.品牌, 零件成本紀錄表.品名, 零件成本紀錄表.型號及備註, 零件成本紀錄表.進貨單價, " &
  18. "SUM(CONVERT(FLOAT, 零件進銷存報表.進貨數量)) - SUM(CONVERT(FLOAT, 零件進銷存報表.出貨數量)) AS 庫存數量, 零件成本紀錄表.安全庫存, CONVERT(FLOAT, 零件成本紀錄表.進貨單價) * " &
  19. "(SUM(CONVERT(FLOAT, 零件進銷存報表.進貨數量)) - SUM(CONVERT(FLOAT, 零件進銷存報表.出貨數量))) AS 庫存成本, CONVERT(FLOAT, 零件成本紀錄表.進貨單價) * " &
  20. "(SUM(CONVERT(FLOAT, 零件進銷存報表.進貨數量)) - SUM(CONVERT(FLOAT, 零件進銷存報表.出貨數量))) * 零件進銷存報表.匯率 AS 台幣庫存成本, 零件進銷存報表.匯率, " &
  21. "零件成本紀錄表.供應商 FROM 零件進銷存報表 INNER JOIN 零件成本紀錄表 ON 零件進銷存報表.零件編號 = 零件成本紀錄表.流水碼 WHERE (零件進銷存報表.進貨確認 = '1') " &
  22. "GROUP BY 零件進銷存報表.零件編號, 零件進銷存報表.進貨日期, 零件成本紀錄表.品牌, 零件成本紀錄表.品名, 零件成本紀錄表.型號及備註, 零件成本紀錄表.進貨單價, " &
  23. "零件成本紀錄表.安全庫存, 零件進銷存報表.匯率, 零件成本紀錄表.供應商 " &
  24. "HAVING (SUM(CONVERT(FLOAT, 零件進銷存報表.進貨數量)) - SUM(CONVERT(FLOAT, 零件進銷存報表.出貨數量)) <> 0) ORDER BY 零件進銷存報表.進貨日期 DESC"
  25. 列印用SQL1 = SQL1 : DGV2讀取後設定() : Set_自動彙總1()
  26. Else
  27. DGV2讀取前設定()
  28. SQL1 = "SELECT 零件進銷存報表.零件編號, 零件進銷存報表.進貨日期, 零件成本紀錄表.品牌, 零件成本紀錄表.品名, 零件成本紀錄表.型號及備註, 零件成本紀錄表.進貨單價, " &
  29. "SUM(CONVERT(FLOAT, 零件進銷存報表.進貨數量)) - SUM(CONVERT(FLOAT, 零件進銷存報表.出貨數量)) AS 庫存數量, 零件成本紀錄表.安全庫存, CONVERT(FLOAT, 零件成本紀錄表.進貨單價) * " &
  30. "(SUM(CONVERT(FLOAT, 零件進銷存報表.進貨數量)) - SUM(CONVERT(FLOAT, 零件進銷存報表.出貨數量))) AS 庫存成本, CONVERT(FLOAT, 零件成本紀錄表.進貨單價) * " &
  31. "(SUM(CONVERT(FLOAT, 零件進銷存報表.進貨數量)) - SUM(CONVERT(FLOAT, 零件進銷存報表.出貨數量))) * 零件進銷存報表.匯率 AS 台幣庫存成本, 零件進銷存報表.匯率, " &
  32. "零件成本紀錄表.供應商 FROM 零件進銷存報表 INNER JOIN 零件成本紀錄表 ON 零件進銷存報表.零件編號 = 零件成本紀錄表.流水碼 " &
  33. "WHERE (零件進銷存報表.進貨確認 = '1') AND (零件進銷存報表.零件編號 LIKE N'%" & PA & "%') OR " &
  34. "(零件進銷存報表.進貨確認 = '1') AND (零件進銷存報表.進貨日期 LIKE N'%" & PA & "%') OR " &
  35. "(零件進銷存報表.進貨確認 = '1') AND (零件成本紀錄表.品牌 LIKE N'%" & PA & "%') OR " &
  36. "(零件進銷存報表.進貨確認 = '1') AND (零件成本紀錄表.品名 LIKE N'%" & PA & "%') OR " &
  37. "(零件進銷存報表.進貨確認 = '1') AND (零件成本紀錄表.型號及備註 LIKE N'%" & PA & "%') OR " &
  38. "(零件進銷存報表.進貨確認 = '1') AND (零件成本紀錄表.進貨單價 LIKE N'%" & PA & "%') OR " &
  39. "(零件進銷存報表.進貨確認 = '1') AND (零件成本紀錄表.供應商 LIKE N'%" & PA & "%') OR " &
  40. "(零件進銷存報表.進貨確認 = '1') AND (零件成本紀錄表.型號及備註 LIKE N'%" & PA & "%') " &
  41. "GROUP BY 零件進銷存報表.零件編號, 零件進銷存報表.進貨日期, 零件成本紀錄表.品牌, 零件成本紀錄表.品名, 零件成本紀錄表.型號及備註, 零件成本紀錄表.進貨單價, " &
  42. "零件成本紀錄表.安全庫存, 零件進銷存報表.匯率, 零件成本紀錄表.供應商 " &
  43. "HAVING (SUM(CONVERT(FLOAT, 零件進銷存報表.進貨數量)) - SUM(CONVERT(FLOAT, 零件進銷存報表.出貨數量)) <> 0) ORDER BY 零件進銷存報表.進貨日期 DESC"
  44. 列印用SQL1 = SQL1 : DGV2讀取後設定() : Set_自動彙總1()
  45. End If
  46. End Sub
  47. Private Sub Set_grid2()
  48. DataGridView2.Columns(0).Width = 80 : DataGridView2.Columns(1).Width = 90 : DataGridView2.Columns(2).Width = 100 : DataGridView2.Columns(3).Width = 215
  49. DataGridView2.Columns(4).Width = 245 : DataGridView2.Columns(5).Width = 80 : DataGridView2.Columns(6).Width = 85 : DataGridView2.Columns(7).Width = 85
  50. DataGridView2.Columns(8).Width = 85 : DataGridView2.Columns(9).Width = 85 : DataGridView2.Columns(10).Width = 60 : DataGridView2.Columns(11).Width = 80
  51. DataGridView2.Columns(6).DefaultCellStyle.Format = "#,##0" : DataGridView2.Columns(7).DefaultCellStyle.Format = "#,##0"
  52. DataGridView2.Columns(8).DefaultCellStyle.Format = "#,##0.00" : DataGridView2.Columns(9).DefaultCellStyle.Format = "#,##0.00"
  53. End Sub
  54. Private Sub Set_自動彙總1()
  55. Dim 數量加總 As Double = 0 : Dim 金額加總1 As Double = 0 : Dim 金額加總2 As Double = 0
  56. For i As Integer = 0 To DataGridView2.Rows.Count - 1
  57. If DataGridView2.RowCount = 0 Then : TextBox13.Text = "0" : Else : 數量加總 += DataGridView2.Rows(i).Cells("庫存數量").Value : End If
  58. Next i
  59. For i As Integer = 0 To DataGridView2.Rows.Count - 1
  60. If DataGridView2.RowCount = 0 Then : TextBox16.Text = "0" : Else : 金額加總1 += DataGridView2.Rows(i).Cells("庫存成本").Value : End If
  61. Next i
  62. For i As Integer = 0 To DataGridView2.Rows.Count - 1
  63. If DataGridView2.RowCount = 0 Then : TextBox17.Text = "0" : Else : 金額加總2 += DataGridView2.Rows(i).Cells("台幣庫存成本").Value : End If
  64. Next i
  65. TextBox13.Text = Format(Val(數量加總), "#,##0")
  66. TextBox16.Text = Format(Val(金額加總1), "#,##0.00")
  67. TextBox17.Text = Format(Val(金額加總2), "#,##0.00")
  68. End Sub
  69. Private Sub 庫存管理_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  70. Me.MdiParent = GCM_ERP_SYS
  71. Me.WindowState = 2
  72. 讀取庫存資料表() : Set_grid2()
  73. End Sub
  74. Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove
  75. timeNow = 0
  76. GCM_ERP_SYS.Timer1.Enabled = False
  77. GCM_ERP_SYS.Timer1.Enabled = True
  78. End Sub
  79. Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress
  80. timeNow = 0
  81. GCM_ERP_SYS.Timer1.Enabled = False
  82. GCM_ERP_SYS.Timer1.Enabled = True
  83. End Sub
  84. Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
  85. PA = InputBox("請輸入要查詢零件的資料")
  86. 讀取庫存資料表() : Set_grid2()
  87. PA = ""
  88. End Sub
  89. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  90. 列印(0) = True
  91. 列印清單.Show()
  92. End Sub
  93. End Class