123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- Imports System.Data.SqlClient
- Imports System.Reflection
- Imports System.Runtime.InteropServices
- Public Class Frmchem_nouse
- Dim cmd As New SqlCommand
- Dim da As New SqlDataAdapter
-
- Dim sql As String
- Dim conn As New SqlConnection
- Private Sub Frmchem_nouse_Load(sender As Object, e As EventArgs) Handles MyBase.Load
-
- 'Me.MdiParent = FrmMDI
-
- Dim type As Type = dgv30.GetType()
- Dim pi As PropertyInfo = type.GetProperty("DoubleBuffered", System.Reflection.BindingFlags.Instance Or System.Reflection.BindingFlags.NonPublic)
- pi.SetValue(dgv30, True, Nothing)
-
-
-
- conn.ConnectionString = connstring
- conn.Open()
-
-
- Dim dt As New DataTable
- cmd.Connection = conn
-
-
- sql = "SELECT 品名, 数量 AS 库存数, 单价, 化工类型, 供应商 " &
- " FROM (SELECT RT_SYS_CHEM_MAIN.stock1 + RT_SYS_CHEM_MAIN.stock2 + RT_SYS_CHEM_MAIN.stock3 AS 数量, " &
- " RT_SYS_CHEM_MAIN.name AS 品名, RT_SYS_CHEM_MAIN.price AS 单价, " &
- " RT_SYS_CHEM_MAIN.CLASS1 AS 化工类型, RT_SYS_CHEM_MAIN.supplier AS 供应商, " &
- " SUM(RT_SYS_CHEM_OUT.WEIGHT) AS 用量 " &
- " FROM RT_SYS_CHEM_MAIN LEFT OUTER JOIN " &
- " RT_SYS_CHEM_OUT ON RT_SYS_CHEM_MAIN.name = RT_SYS_CHEM_OUT.NAME " &
- " WHERE (RT_SYS_CHEM_MAIN.stock1 + RT_SYS_CHEM_MAIN.stock2 + RT_SYS_CHEM_MAIN.stock3 <> 0) " &
- " GROUP BY RT_SYS_CHEM_MAIN.name, " &
- " RT_SYS_CHEM_MAIN.stock1 + RT_SYS_CHEM_MAIN.stock2 + RT_SYS_CHEM_MAIN.stock3, " &
- " RT_SYS_CHEM_MAIN.price, RT_SYS_CHEM_MAIN.CLASS1, RT_SYS_CHEM_MAIN.supplier) " &
- " AS p " &
- " WHERE (用量 Is NULL) order by 品名 "
-
-
-
- cmd.CommandText = sql
-
- da.SelectCommand = cmd
-
- da.Fill(dt)
-
-
- dgv30.DataSource = dt
-
-
- dgv30.Columns(0).Width = 200
- dgv30.Columns(1).Width = 60
- dgv30.Columns(2).Width = 60
- dgv30.Columns(3).Width = 100
- dgv30.Columns(4).Width = 80
-
-
-
- Dim dt1 As New DataTable
-
- sql = "SELECT name as 品名, stock1+stock2+stock3 as 库存数, price as 单价, class1 as 化工类型, supplier as 供应商 FROM rt_sys_chem_main where stock1+stock2+stock3<>0 order by name "
-
- cmd.CommandText = sql
-
- da.SelectCommand = cmd
-
- da.Fill(dt1)
-
-
- dt1.Columns.Add("最后使用")
- dt1.Columns.Add("数量")
-
- Dim dr As SqlDataReader
-
- For x As Integer = 0 To dt1.Rows.Count - 1
-
- sql = "select top(1) convert(varchar,date,111) as date1,cast(sum(weight) as numeric(10,1)) as 重量 from rt_sys_chem_out where name =N'" & dt1.Rows(x).Item("品名") & "' group by date order by date desc"
- cmd.CommandText = sql
- dr = cmd.ExecuteReader
-
- While dr.Read
- dt1.Rows(x).Item("最后使用") = dr("date1")
- dt1.Rows(x).Item("数量") = dr("重量")
-
- End While
- dr.Close()
-
-
- Next
-
-
-
- dgv.DataSource = dt1
-
-
- dgv.Columns(0).Width = 200
- dgv.Columns(1).Width = 60
- dgv.Columns(2).Width = 60
- dgv.Columns(3).Width = 100
- dgv.Columns(4).Width = 80
-
-
-
-
- End Sub
- End Class
|