123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- Imports System.Data.SqlClient
- Imports System.Reflection
- Public Class Frm_Chem_IO
- Dim cmd As New SqlCommand
- Dim da As New SqlDataAdapter
- Dim sql As String
- Dim colorArray(10) As Color
- Dim conn As New SqlConnection
- Private Sub FrmChem_IO_Load(sender As Object, e As EventArgs) Handles MyBase.Load
-
- Me.MdiParent = FrmMDI
-
-
-
- Dim DT1 As New DataTable
- Dim DT2 As New DataTable
- Dim DT3 As New DataTable
-
- conn.ConnectionString = connstring
- conn.Open()
-
- cmd.Connection = conn
-
- sql = "SELECT YEAR(RT_SYS_CHEM_OUT.DATE) AS 年, MONTH(RT_SYS_CHEM_OUT.DATE) AS 月, cast(SUM(RT_SYS_CHEM_OUT.WEIGHT) as numeric(10,0)) AS '用量(KG)', cast(SUM(RT_SYS_CHEM_MAIN.price * RT_SYS_CHEM_OUT.WEIGHT) as numeric(10,0)) AS 金额,cast(SUM(RT_SYS_CHEM_MAIN.price * RT_SYS_CHEM_OUT.WEIGHT)/SUM(RT_SYS_CHEM_OUT.WEIGHT) as numeric(10,1)) as 平均单价 " &
- "FROM RT_SYS_CHEM_OUT LEFT OUTER JOIN RT_SYS_CHEM_MAIN ON RT_SYS_CHEM_OUT.NAME = RT_SYS_CHEM_MAIN.name GROUP BY YEAR(RT_SYS_CHEM_OUT.DATE), MONTH(RT_SYS_CHEM_OUT.DATE) order by YEAR(RT_SYS_CHEM_OUT.DATE) desc, MONTH(RT_SYS_CHEM_OUT.DATE) desc "
- cmd.CommandText = sql
-
- da.SelectCommand = cmd
- da.Fill(DT1)
- DGV_use.DataSource = DT1 '----领料
-
-
- sql = "SELECT YEAR(RT_CHEM_STOCK_MONTH2.date) AS 年, MONTH(RT_CHEM_STOCK_MONTH2.date) AS 月, " &
- " CAST(SUM(RT_CHEM_STOCK_MONTH2.stock1 * RT_SYS_CHEM_MAIN.price) " &
- " + SUM(RT_CHEM_STOCK_MONTH2.stock2 * RT_SYS_CHEM_MAIN.price) " &
- " + SUM(RT_CHEM_STOCK_MONTH2.stock3 * RT_SYS_CHEM_MAIN.price) AS numeric(10, 0)) AS 库存金额, " &
- " CAST(SUM(RT_CHEM_STOCK_MONTH2.stock1) + SUM(RT_CHEM_STOCK_MONTH2.stock2) " &
- " + SUM(RT_CHEM_STOCK_MONTH2.stock3) AS numeric(10, 0)) AS 库存重量 " &
- " FROM RT_CHEM_STOCK_MONTH2 LEFT OUTER JOIN " &
- " RT_SYS_CHEM_MAIN ON RT_CHEM_STOCK_MONTH2.name = RT_SYS_CHEM_MAIN.name " &
- " GROUP BY YEAR(RT_CHEM_STOCK_MONTH2.date), MONTH(RT_CHEM_STOCK_MONTH2.date) " &
- " ORDER BY 年 DESC, 月 DESC"
-
- cmd.CommandText = sql
-
- da.SelectCommand = cmd
- da.Fill(DT2)
- dgv_stock.DataSource = DT2 '---盘点库存
-
-
-
- End Sub
-
- Private Sub DGV_use_CellMouseUp(sender As Object, e As DataGridViewCellMouseEventArgs) Handles DGV_use.CellMouseUp
-
- Dim dt As New DataTable
-
- sql = "SELECT NAME AS 品名, CAST(Expr1 AS numeric(10, 0)) AS 用量, price AS 单价, CLASS1 AS 分类, DEP AS 部门, " &
- " CAST(Expr1 * price AS numeric(10, 0)) AS 金额 " &
- " FROM (SELECT RT_SYS_CHEM_OUT.NAME, SUM(RT_SYS_CHEM_OUT.WEIGHT) AS Expr1, " &
- " CASE WHEN new_price Is NULL THEN CAST(RT_SYS_CHEM_MAIN.price AS numeric(10, 2)) " &
- " ELSE CAST(new_price AS numeric(10, 2)) END AS price, RT_SYS_CHEM_MAIN.CLASS1, " &
- " RT_SYS_CHEM_MAIN.DEP " &
- " FROM RT_SYS_CHEM_OUT LEFT OUTER JOIN " &
- " RT_SYS_CHEM_MAIN ON RT_SYS_CHEM_OUT.NAME = RT_SYS_CHEM_MAIN.name " &
- " WHERE (MONTH(RT_SYS_CHEM_OUT.DATE) = '" & DGV_use.Rows(DGV_use.CurrentRow.Index).Cells("月").Value & "') " &
- " GROUP BY RT_SYS_CHEM_OUT.NAME, RT_SYS_CHEM_MAIN.new_price, RT_SYS_CHEM_MAIN.price, " &
- " RT_SYS_CHEM_MAIN.CLASS1, RT_SYS_CHEM_MAIN.DEP) AS p "
-
-
-
- sql = "SELECT class2 AS 类别, SUM(用量) AS '用量(公斤)', SUM(金额) AS '金额(人民币)' ,cast(sum(用量)/sum(sum(用量)) over() as numeric(10,2)) as 重量比例 " &
- " ,cast(sum(金额)/sum(sum(金额)) over() as numeric(10,2)) as 金额比例 FROM (SELECT NAME AS 品名, CAST(Expr1 AS numeric(10, 0)) AS 用量, " &
- " CASE WHEN class1 LIKE N'%油脂%' THEN '油脂' WHEN (class1 = N'染料' OR " &
- " class1 LIKE N'%钛%') " &
- " THEN '染料' WHEN class1 = N'基础化工' THEN N'基础化工' ELSE '其他' END AS class2, DEP AS 部门, " &
- " CAST(Expr1 * price AS numeric(10, 0)) AS 金额 " &
- " FROM (SELECT RT_SYS_CHEM_OUT.NAME, SUM(RT_SYS_CHEM_OUT.WEIGHT) AS Expr1, " &
- " CASE WHEN new_price IS NULL THEN CAST(RT_SYS_CHEM_MAIN.price AS numeric(10, " &
- " 2)) ELSE CAST(new_price AS numeric(10, 2)) END AS price, RT_SYS_CHEM_MAIN.CLASS1, " &
- " RT_SYS_CHEM_MAIN.DEP " &
- " FROM RT_SYS_CHEM_OUT LEFT OUTER JOIN " &
- " RT_SYS_CHEM_MAIN ON " &
- " RT_SYS_CHEM_OUT.NAME = RT_SYS_CHEM_MAIN.name " &
- " WHERE (MONTH(RT_SYS_CHEM_OUT.DATE) = '" & DGV_use.Rows(DGV_use.CurrentRow.Index).Cells("月").Value & "') " &
- " GROUP BY RT_SYS_CHEM_OUT.NAME, RT_SYS_CHEM_MAIN.new_price, " &
- " RT_SYS_CHEM_MAIN.price, RT_SYS_CHEM_MAIN.CLASS1, RT_SYS_CHEM_MAIN.DEP) " &
- " AS p " &
- " WHERE (DEP IS NULL)) AS q " &
- " GROUP BY class2"
-
-
-
-
-
-
-
-
-
-
-
- cmd.CommandText = sql
-
- da.SelectCommand = cmd
- da.Fill(dt)
- dgv1.DataSource = dt '----领料
-
-
-
- dgv1.Columns(0).Width = 80
- dgv1.Columns(1).Width = 90
- dgv1.Columns(2).Width = 90
-
- dgv1.Columns(3).Width = 100
-
-
- End Sub
- End Class
|