No Description
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.

FrmSPRAY.vb 3.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. Imports System.Data.SqlClient
  2. Imports System.Reflection
  3. Public Class FrmSPRAY
  4. Dim cmd As New SqlCommand
  5. Dim da As New SqlDataAdapter
  6. Dim dt As New DataTable
  7. Dim sql As String
  8. Private Sub FrmSPRAY_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  9. Dim conn As New SqlConnection
  10. conn.ConnectionString = connstring
  11. conn.Open()
  12. cmd.Connection = conn
  13. Dim dt As New DataTable
  14. sql = "SELECT YEAR(DATE) AS 年,MONTH(DATE) AS 月,SUM(T_WEIGHT) AS 重量1,SUM(B_WEIGHT) AS 重量2,SUM(T2_WEIGHT) AS 重量3,SUM(B2_WEIGHT) AS 重量4,SUM(TOTAL) AS 合计,count(*) as 鼓数 FROM RT_RETAN_RECORD_D where date is not null GROUP BY YEAR(DATE),MONTH(DATE) ORDER BY YEAR(DATE),MONTH(DATE) DESC"
  15. sql = "SELECT YEAR(RT_Spray_daily.date) AS 年, MONTH(RT_Spray_daily.date) AS 月, RT_Spray_daily.card AS 卡号, RT_RETAN_RECORD.CUST AS 客户, RT_RETAN_RECORD.COLOR AS 颜色, RT_RETAN_RECORD.SOURCE AS 皮源," &
  16. " case when RT_RETAN_RECORD.TECH like N'%小刘%' then N'刘祥超' when RT_RETAN_RECORD.TECH like N'刘%' then N'刘祥超' else RT_RETAN_RECORD.TECH end AS 技术员,MAX(RT_Spray_daily.times) AS 喷皮次数, CASE WHEN P LIKE N'%王%' THEN '王' WHEN p LIKE N'%李%' THEN '李' WHEN p LIKE N'%颜%' THEN N'颜' ELSE '其他' END AS 喷台, RT_RETAN_RECORD.wb_weight as 心皮重
  17. " &
  18. " FROM RT_Spray_daily LEFT OUTER JOIN " &
  19. " RT_RETAN_RECORD ON RT_Spray_daily.card = RT_RETAN_RECORD.CARD " &
  20. " GROUP BY YEAR(RT_Spray_daily.date), MONTH(RT_Spray_daily.date), RT_Spray_daily.card, RT_RETAN_RECORD.TECH, " &
  21. " RT_RETAN_RECORD.COLOR, RT_RETAN_RECORD.SOURCE, RT_RETAN_RECORD.CUST,p ,
  22. RT_RETAN_RECORD.wb_weight " &
  23. " ORDER BY 年 DESC, 月 DESC"
  24. cmd.CommandText = sql
  25. da.SelectCommand = cmd
  26. da.Fill(dt)
  27. DGV_SPRAY.DataSource = dt
  28. DGV_SPRAY.Columns(0).Width = 60
  29. DGV_SPRAY.Columns(1).Width = 60
  30. DGV_SPRAY.Columns(2).Width = 140
  31. DGV_SPRAY.Columns(3).Width = 90
  32. DGV_SPRAY.Columns(4).Width = 100
  33. DGV_SPRAY.Columns(5).Width = 80
  34. DGV_SPRAY.Columns(6).Width = 80
  35. DGV_SPRAY.Columns(7).Width = 60
  36. DGV_SPRAY.Columns(8).Width = 80
  37. Dim DT1 As New DataTable
  38. sql = "SELECT Expr1 AS 年, Expr2 AS 月, SUM(Expr3) AS 次数, COUNT(*) AS 鼓数, CAST(SUM(Expr3)/COUNT(*) AS NUMERIC(10,2)) AS 平均每鼓 " &
  39. " FROM (SELECT YEAR(date) AS Expr1, MONTH(date) AS Expr2, card, MAX(times) AS Expr3 " &
  40. " FROM RT_Spray_daily " &
  41. " GROUP BY YEAR(date), MONTH(date), card) AS p " &
  42. " GROUP BY Expr1, Expr2 order by expr1 desc, expr2 desc"
  43. cmd.CommandText = sql
  44. da.SelectCommand = cmd
  45. da.Fill(DT1)
  46. DGV_SUM.DataSource = DT1
  47. DGV_SUM.Columns(0).Width = 60
  48. DGV_SUM.Columns(1).Width = 60
  49. DGV_SUM.Columns(2).Width = 60
  50. DGV_SUM.Columns(3).Width = 60
  51. DGV_SUM.Columns(4).Width = 80
  52. End Sub
  53. End Class