Ei kuvausta
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.

FrmInProcess.vb 9.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320
  1. Imports System.Data.SqlClient
  2. Imports System.Net
  3. Imports System.Reflection
  4. Imports Microsfot.Office.Interop.Excel
  5. Public Class FrmInProcess
  6. Dim cmd As New SqlCommand
  7. Dim da As New SqlDataAdapter
  8. Dim sql As String
  9. Dim colorArray(10) As Color
  10. Dim conn As New SqlConnection
  11. Dim xlApp As Microsoft.Office.Interop.Excel.Application
  12. Dim xlBook As Microsoft.Office.Interop.Excel.Workbook
  13. Dim xlSheet As Microsoft.Office.Interop.Excel.Worksheet
  14. Dim xlRange As Microsoft.Office.Interop.Excel.Range
  15. Dim PTCache As Microsoft.Office.Interop.Excel.PivotCache
  16. Dim PT As Microsoft.Office.Interop.Excel.PivotTable
  17. Private Sub FrmInProcess_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  18. Dim dText As Decimal
  19. Dim DT1 As New DataTable
  20. Dim DT2 As New DataTable
  21. Dim DT3 As New DataTable
  22. conn.ConnectionString = connstring
  23. conn.Open()
  24. cmd.Connection = conn
  25. Me.MdiParent = FrmMDI
  26. DTP1.Value = "2023/02/28"
  27. Dim type As Type = dgv1.GetType()
  28. Dim pi As PropertyInfo = type.GetProperty("DoubleBuffered", System.Reflection.BindingFlags.Instance Or System.Reflection.BindingFlags.NonPublic)
  29. pi.SetValue(dgv1, True, Nothing)
  30. sql = "delete from rt_inprocess_crust where type is null"
  31. cmd.CommandText = sql
  32. cmd.ExecuteNonQuery()
  33. sql = "select date,card,cust,color,weight,tech,source,w_begin from RT_Inprocess_crust where date='" & DTP1.Value & "' and w_begin is not null"
  34. cmd.CommandText = sql
  35. cmd.ExecuteNonQuery()
  36. da.SelectCommand = cmd
  37. da.Fill(DT1)
  38. dgv1.DataSource = DT1
  39. sql = "select source,cast(sum(w_begin) as numeric(10,0)) as 心皮重 from RT_Inprocess_crust where date='" & DTP1.Value & "' and w_begin is not null group by source order by sum(w_begin) desc"
  40. DT1 = New DataTable
  41. cmd.CommandText = sql
  42. cmd.ExecuteNonQuery()
  43. da.SelectCommand = cmd
  44. da.Fill(DT1)
  45. dgv2.DataSource = DT1
  46. sql = "select cast(sum(w_begin)/2 as numeric(10,0)) as 心皮重 from RT_Inprocess_crust where date='" & DTP1.Value & "' and w_begin is not null "
  47. cmd.CommandText = sql
  48. txt_begin.Text = cmd.ExecuteScalar.ToString
  49. dText = Convert.ToDecimal(txt_begin.Text)
  50. txt_begin.Text = dText.ToString("###,###,###")
  51. sql = "select cast(sum(w_begin)/2 as numeric(10,0)) as 心皮重 from RT_Inprocess_crust where date='" & DTP1.Value & "' and w_begin is not null and type=N'反绒' "
  52. cmd.CommandText = sql
  53. TextBox1.Text = cmd.ExecuteScalar.ToString
  54. dText = Convert.ToDecimal(TextBox1.Text)
  55. TextBox1.Text = dText.ToString("###,###,###")
  56. sql = "select cast(sum(w_begin)/2 as numeric(10,0)) as 心皮重 from RT_Inprocess_crust where date='" & DTP1.Value & "' and w_begin is not null and type=N'反绒' and color like N'%黑色%' "
  57. cmd.CommandText = sql
  58. TextBox2.Text = cmd.ExecuteScalar.ToString
  59. dText = Convert.ToDecimal(TextBox2.Text)
  60. TextBox2.Text = dText.ToString("###,###,###")
  61. sql = "select cast(sum(w_begin)/2 as numeric(10,0)) as 心皮重 from RT_Inprocess_crust where date='" & DTP1.Value & "' and w_begin is not null and type=N'反绒' and color not like N'%黑色%' "
  62. cmd.CommandText = sql
  63. TextBox3.Text = cmd.ExecuteScalar.ToString
  64. dText = Convert.ToDecimal(TextBox3.Text)
  65. TextBox3.Text = dText.ToString("###,###,###")
  66. sql = "select cast(sum(w_begin)/2 as numeric(10,0)) as 心皮重 from RT_Inprocess_crust where date='" & DTP1.Value & "' and w_begin is not null and type=N'PU' "
  67. cmd.CommandText = sql
  68. TextBox4.Text = cmd.ExecuteScalar.ToString
  69. dText = Convert.ToDecimal(TextBox4.Text)
  70. TextBox4.Text = dText.ToString("###,###,###")
  71. sql = "select cast(sum(w_begin)/2 as numeric(10,0)) as 心皮重 from RT_Inprocess_crust where date='" & DTP1.Value & "' and w_begin is not null and type=N'PU' and color like N'%黑%' "
  72. cmd.CommandText = sql
  73. TextBox5.Text = cmd.ExecuteScalar.ToString
  74. dText = Convert.ToDecimal(TextBox5.Text)
  75. TextBox5.Text = dText.ToString("###,###,###")
  76. sql = "select cast(sum(w_begin)/2 as numeric(10,0)) as 心皮重 from RT_Inprocess_crust where date='" & DTP1.Value & "' and w_begin is not null and type=N'PU' and color not like N'%黑%' "
  77. cmd.CommandText = sql
  78. TextBox6.Text = cmd.ExecuteScalar.ToString
  79. dText = Convert.ToDecimal(TextBox6.Text)
  80. TextBox6.Text = dText.ToString("###,###,###")
  81. sql = "select cast(sum(bal_weight)/2 as numeric(10,0)) as bal_weight from (select card,cast(avg(bal_weight) as numeric(10,1)) as bal_weight from(SELECT RT_Inprocess_crust.date, RT_Inprocess_crust.type, RT_Inprocess_crust.card, RT_Inprocess_crust.card1,
  82. RT_Inprocess_crust.cust, RT_Inprocess_crust.color, RT_Inprocess_crust.weight, RT_Inprocess_crust.tech,
  83. RT_Inprocess_crust.source, RT_Inprocess_crust.thick, RT_Inprocess_crust.total_weight, RT_Inprocess_crust.bal_weight,
  84. Rt_spray_daily.date AS spray_date, RT_Inprocess_crust.w_begin
  85. FROM RT_Inprocess_crust LEFT OUTER JOIN
  86. Rt_spray_daily ON RT_Inprocess_crust.card = Rt_spray_daily.card where Rt_spray_daily.date is not null and RT_Inprocess_crust.date='" & DTP1.Value & "') as p group by card) as q"
  87. cmd.CommandText = sql
  88. TextBox13.Text = cmd.ExecuteScalar
  89. ' dim sText As String = textBox13.Text.Replace (",","")
  90. dText = Convert.ToDecimal(TextBox13.Text)
  91. TextBox13.Text = dText.ToString("###,###,###")
  92. 'Dim dr As SqlDataReader
  93. 'dgv1.RowTemplate.Height = 30
  94. 'dgv1.AllowUserToAddRows = False
  95. 'sql = "delete from rt_inprocess"
  96. 'cmd.CommandText = sql
  97. 'cmd.ExecuteNonQuery()
  98. 'sql = "insert into rt_inprocess(date,serial,card,word,cust,color,weight,tech,source,coma,comb,comc,comd) select date,serial,card,word,cust,color,weight,tech,source,coma,comb,comc,comd from rt_tm_month"
  99. 'cmd.CommandText = sql
  100. 'Dim a As Integer = cmd.ExecuteNonQuery()
  101. 'MsgBox(a)
  102. 'sql = "update rt_inprocess set io='start'"
  103. 'cmd.CommandText = sql
  104. 'cmd.ExecuteNonQuery()
  105. 'sql = "select * from rt_inprocess"
  106. 'cmd.CommandText = sql
  107. 'da.SelectCommand = cmd
  108. 'da.Fill(DT1)
  109. 'For x As Integer = 0 To DT1.Rows.Count - 1
  110. ' sql = "select * from "
  111. 'Next
  112. End Sub
  113. Private Sub Button11_Click(sender As Object, e As EventArgs) Handles Button11.Click '---导入期初
  114. Dim dt As New DataTable
  115. Dim file_name As String = ""
  116. Dim a As Integer = 0
  117. Dim my_count As Integer = 0
  118. If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
  119. file_name = OpenFileDialog1.FileName
  120. Else
  121. Exit Sub
  122. End If
  123. xlApp = CreateObject("Excel.Application")
  124. xlBook = xlApp.Workbooks.Open(file_name)
  125. xlApp.Visible = True
  126. 'xlApp.DisplayAlerts = False
  127. xlBook.Activate()
  128. xlBook.Parent.Windows(1).Visible = True
  129. If (xlApp.Cells(1, 1).value.ToString = "已修改") Then
  130. ' MsgBox("已修改过了,不用再修改")
  131. Else
  132. xlBook.ActiveSheet.rows("1:11").delete
  133. xlApp.Cells(1, 1) = "已修改"
  134. xlBook.Save()
  135. End If
  136. xlBook.Close()
  137. xlApp.Quit()
  138. Dim filepath As String = "k3/在制品"
  139. Dim sourceFileName As String = file_name
  140. Dim address2 As String = "ftp://" & my_ip & ":7788/" & filepath & "/" & OpenFileDialog1.SafeFileName
  141. Dim address3() As String
  142. address3 = Split(address2, "ftp://" & my_ip & ":7788/")
  143. Dim add4 As String
  144. add4 = "d:\k3\在制品\" & OpenFileDialog1.SafeFileName
  145. Dim userName As String = "matchy3c"
  146. Dim password As String = "Lafayette11"
  147. Dim showUI As Boolean = True
  148. Dim connectionTimeout As Integer = 500
  149. Dim client As WebClient = New WebClient
  150. client.Credentials = New NetworkCredential(userName, password)
  151. client.Proxy = GlobalProxySelection.GetEmptyWebProxy()
  152. client.UploadFile(address2, sourceFileName)
  153. sql = "delete from rt_inprocess_crust"
  154. cmd.CommandText = sql
  155. cmd.ExecuteScalar()
  156. sql = "Select * FROM OPENDATASOURCE ('Microsoft.ACE.OLEDB.12.0','Excel 12.0;HDR=Yes;IMEX=1;Database=" & add4 & "')... ['2022年10月 $']"
  157. cmd.CommandText = sql
  158. da.SelectCommand = cmd
  159. da.Fill(dt)
  160. ' dgv1.DataSource = dt
  161. Dim my_sqlbulk As New SqlBulkCopy(conn)
  162. my_sqlbulk.DestinationTableName = "dbo.rt_inprocess_crust"
  163. my_sqlbulk.WriteToServer(dt)
  164. MsgBox("导入完成")
  165. End Sub
  166. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  167. End Sub
  168. Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
  169. Dim file_name As String
  170. If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
  171. file_name = OpenFileDialog1.FileName
  172. Else
  173. Exit Sub
  174. End If
  175. End Sub
  176. End Class