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.

Frm_BG_OUT_SUM.vb 5.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. Imports System.Data.SqlClient
  2. Imports System.Net
  3. Imports Microsoft.Office.Interop
  4. Public Class Frm_BG_OUT_SUM
  5. Dim cmd As New SqlCommand
  6. Dim da As New SqlDataAdapter
  7. Dim my_year111 As Integer
  8. Dim my_month111 As Integer
  9. Dim sql As String
  10. Dim conn As New SqlConnection
  11. Private Sub Frm_BG_OUT_SUM_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  12. conn.ConnectionString = connstring
  13. conn.Open()
  14. End Sub
  15. Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
  16. cmd.Connection = conn
  17. sql = "SELECT DATE1 AS 日期,XNO AS 手册号, NO AS 报关单号, NAME AS 料件, QTY AS 数量, cast(total as numeric(10,4)) AS 货值,cast(total/qty as numeric(10,4)) AS 单价, fee as 工缴费,cast(fee/qty as numeric(10,2)) AS 工缴费单价,comment AS 客户, des AS 目的地 FROM RT_BG_out where date1 between '" & String.Format("{0:d}", dtp1.Value) & "' and '" & String.Format("{0:d}", dtp2.Value) & "' order by date1 desc"
  18. cmd.CommandText = sql
  19. Dim da As New SqlDataAdapter
  20. Dim dt As New DataTable
  21. da.SelectCommand = cmd
  22. da.Fill(dt)
  23. dgv1.DataSource = dt
  24. dgv1.Columns(0).Width = 100
  25. dgv1.Columns(1).Width = 120
  26. dgv1.Columns(2).Width = 160
  27. dgv1.Columns(3).Width = 100
  28. dgv1.Columns(4).Width = 80
  29. '-------边角料
  30. sql = "SELECT P.手册号, P.料件, SUM(P.数量) AS 成品数量, RT_BG_BJL_RATE.NAME AS 名称, RT_BG_BJL_RATE.PERCENTS AS 比例,
  31. CAST(SUM(P.数量) * RT_BG_BJL_RATE.PERCENTS / 100 AS NUMERIC(10, 2)) AS 产出
  32. FROM (SELECT date1 AS 日期, xno AS 手册号, NO AS 报关单号, name AS 料件, qty AS 数量, CAST(TOTAL AS numeric(10, 4))
  33. AS 货值, CAST(TOTAL / qty AS numeric(10, 4)) AS 单价, FEE AS 工缴费, CAST(FEE / qty AS numeric(10, 2))
  34. AS 工缴费单价, COMMENT AS 客户, DES AS 目的地
  35. FROM RT_BG_OUT
  36. WHERE (date1 between '" & String.Format("{0:d}", dtp1.Value) & "' and '" & String.Format("{0:d}", dtp2.Value) & "')) AS P INNER JOIN
  37. RT_BG_BJL_RATE ON P.料件 = RT_BG_BJL_RATE.PRODUCT
  38. GROUP BY P.手册号, P.料件, RT_BG_BJL_RATE.NAME, RT_BG_BJL_RATE.PERCENTS"
  39. cmd.CommandText = sql
  40. dt = New DataTable
  41. da.SelectCommand = cmd
  42. da.Fill(dt)
  43. DataGridView1.DataSource = dt
  44. DataGridView1.Columns(0).Width = 120
  45. DataGridView1.Columns(1).Width = 100
  46. DataGridView1.Columns(2).Width = 85
  47. DataGridView1.Columns(3).Width = 50
  48. DataGridView1.Columns(4).Width = 50
  49. DataGridView1.Columns(5).Width = 80
  50. sql = "SELECT Q.手册号,Q.名称,SUM(产出) FROM (SELECT P.手册号, P.料件, SUM(P.数量) AS 成品数量, RT_BG_BJL_RATE.NAME AS 名称, RT_BG_BJL_RATE.PERCENTS AS 比例,
  51. CAST(SUM(P.数量) * RT_BG_BJL_RATE.RATE*RT_BG_BJL_RATE.PERCENTS / 100 AS NUMERIC(10, 2)) AS 产出
  52. FROM (SELECT date1 AS 日期, xno AS 手册号, NO AS 报关单号, name AS 料件, qty AS 数量, CAST(TOTAL AS numeric(10, 4))
  53. AS 货值, CAST(TOTAL / qty AS numeric(10, 4)) AS 单价, FEE AS 工缴费, CAST(FEE / qty AS numeric(10, 2))
  54. AS 工缴费单价, COMMENT AS 客户, DES AS 目的地
  55. FROM RT_BG_OUT
  56. WHERE (date1 between '" & String.Format("{0:d}", dtp1.Value) & "' and '" & String.Format("{0:d}", dtp2.Value) & "')) AS P INNER JOIN
  57. RT_BG_BJL_RATE ON P.料件 = RT_BG_BJL_RATE.PRODUCT
  58. GROUP BY P.手册号, P.料件, RT_BG_BJL_RATE.NAME, RT_BG_BJL_RATE.RATE,RT_BG_BJL_RATE.PERCENTS) AS Q GROUP BY 手册号,名称"
  59. cmd.CommandText = sql
  60. dt = New DataTable
  61. da.SelectCommand = cmd
  62. da.Fill(dt)
  63. DataGridView2.DataSource = dt
  64. DataGridView2.Columns(0).Width = 120
  65. DataGridView2.Columns(1).Width = 100
  66. DataGridView2.Columns(2).Width = 85
  67. sql = "SELECT NAME AS 料件, cast(sum(QTY) as numeric(10,2)) AS 数量, cast(sum(total) as numeric(10,2)) AS 总价 FROM RT_BG_out where date1 between '" & String.Format("{0:d}", dtp1.Value) & "' and '" & String.Format("{0:d}", dtp2.Value) & "' group by name"
  68. cmd.CommandText = sql
  69. dt = New DataTable
  70. da.Fill(dt)
  71. dgv_matl.DataSource = dt
  72. sql = "SELECT xno as 手册号, name AS 料件, cast(sum(QTY) as numeric(10,2)) AS 数量,count(*) as 笔数, cast(sum(total) as numeric(10,2)) AS 总价 FROM RT_BG_out where date1 between '" & String.Format("{0:d}", dtp1.Value) & "' and '" & String.Format("{0:d}", dtp2.Value) & "' group by xno,name order by xno"
  73. cmd.CommandText = sql
  74. dt = New DataTable
  75. da.Fill(dt)
  76. dgv_XNO.DataSource = dt
  77. dgv_XNO.Columns(0).Width = 130
  78. dgv_XNO.Columns(1).Width = 100
  79. dgv_XNO.Columns(2).Width = 80
  80. dgv_XNO.Columns(3).Width = 60
  81. dgv_XNO.Columns(4).Width = 100
  82. End Sub
  83. End Class