123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953 |
- Imports System.Data.SqlClient
- Imports Microsoft.Office.Interop.Excel.XlBordersIndex
- Imports Microsoft.Office.Core.XlConstants
- Imports Microsoft.Office.Interop.Excel.XlLineStyle
- Imports Microsoft.Office.Core.XlBorderWeight
- Imports Microsoft.Office.Interop.Excel.XlThemeColor
- Imports Microsoft.Office.Interop.Excel.Constants
- Imports System.Data.OleDb
-
- 'Imports Microsoft.Office.Interop.Excel
-
-
-
- Public Class Frm_CHEM_container
- Dim cmd As New SqlCommand
- Dim conn As New SqlConnection
- Dim dr As SqlDataReader
- Dim da As New SqlDataAdapter
- Dim dt As New DataTable
-
- Dim sql As String = ""
- Dim ds As New DataSet
- Dim combo As New DataGridViewComboBoxColumn
- Dim xlApp As Microsoft.Office.Interop.Excel.Application
- Dim xlBook As Microsoft.Office.Interop.Excel.Workbook
- Dim xlSheet As Microsoft.Office.Interop.Excel.Worksheet
- Private Sub FrmCHEM_CONTAINER_Load(sender As Object, e As EventArgs) Handles MyBase.Load
-
-
- conn.ConnectionString = connstring
- conn.Open()
- Dim dt1 As New DataTable
- Me.MdiParent = FrmMDI
-
- cmd.Connection = conn
-
-
- sql = "update rt_chem_container set etd='' where etd like '%1900-01-01%'"
- cmd.CommandText = sql
- cmd.ExecuteScalar()
-
-
- sql = "update rt_chem_container set eta='' where eta like '%1900-01-01%'"
- cmd.CommandText = sql
- cmd.ExecuteScalar()
-
-
- 'sql = "select date as 日期,contract_no as 合同,supplier as 供应商 ,serial as 序号 from rt_chem_container where year(date)='2020' group by contract_no,date,supplier,serial order by date desc "
- 'cmd.CommandText = sql
- 'da.SelectCommand = cmd
- 'da.Fill(ds)
- 'dgv_main.DataSource = ds.Tables(0)
-
-
-
- sql = "select contract_no as 合同号,supplier as 供应商,original as 产地, name as 品名, qty as 数量, coin as 币别, price as 单价,etd as 装船日, eta as 到港日, received as 验收 from rt_chem_container where serial='0'"
- cmd.CommandText = sql
- da.SelectCommand = cmd
- da.Fill(dt)
- dgv_detail.DataSource = dt
-
-
- sql = "SELECT RT_CHEM_CONTAINER.date AS 日期, RT_CHEM_CONTAINER.CONTRACT_NO AS 合同号, RT_CHEM_CONTAINER.name AS 品名, RT_SYS_CHEM_MAIN.CLASS2 as 海关分类, RT_CHEM_CONTAINER.SUPPLIER AS 供应商, RT_CHEM_CONTAINER.ORIGINAL AS 产地, RT_CHEM_CONTAINER.qty AS 数量, RT_CHEM_CONTAINER.coin AS 币别, RT_CHEM_CONTAINER.price AS 单价,RT_CHEM_CONTAINER.deposit AS 订金,case when deposit is null then cast(RT_CHEM_CONTAINER.qty*RT_CHEM_CONTAINER.price as numeric(10,2)) else cast(RT_CHEM_CONTAINER.qty*RT_CHEM_CONTAINER.price-cast(deposit as numeric(10,1)) as numeric(10,2)) end as 尾款, RT_CHEM_CONTAINER.etd AS 装船日, RT_CHEM_CONTAINER.eta AS 到港日, received as 验收, RT_CHEM_CONTAINER.serial, RT_CHEM_CONTAINER.item FROM RT_CHEM_CONTAINER LEFT OUTER JOIN RT_SYS_CHEM_MAIN ON RT_CHEM_CONTAINER.name = RT_SYS_CHEM_MAIN.name WHERE (RT_CHEM_CONTAINER.received IS NULL) ORDER BY RT_CHEM_CONTAINER.DATE DESC,CONTRACT_NO"
- cmd.CommandText = sql
- da.SelectCommand = cmd
- da.Fill(dt1)
- dgv_pending.DataSource = dt1
-
-
- dgv_pending.Columns(1).Width = 100
- dgv_pending.Columns(2).Width = 180
- dgv_pending.Columns(8).Width = 60
- dgv_pending.Columns(7).Width = 60
- dgv_pending.Columns(6).Width = 80
- dgv_pending.Columns(4).Width = 70
- dgv_pending.Columns(5).Width = 70
- dgv_pending.Columns(9).Width = 85
- dgv_pending.Columns(10).Width = 85
- dgv_pending.Columns(11).Width = 100
- dgv_pending.Columns(12).Width = 100
- dgv_pending.Columns(14).Width = 60
-
-
- 'dgv_pending.Columns(12).Visible = False
- 'dgv_pending.Columns(13).Visible = False
- dgv_pending.AllowUserToAddRows = False
-
-
-
- Dim my_combo As New DataGridViewColumn
-
-
-
- combo.DisplayIndex = 13
- combo.Width = 150
-
- combo.HeaderText = "手册号"
- combo.DataPropertyName = "手册号" '資料行名稱
- combo.Name = "手册号"
-
-
-
-
- sql = "SELECT NO FROM RT_BG_MAIN WHERE checked<>'true' ORDER BY NO"
- cmd.CommandText = sql
-
- dr = cmd.ExecuteReader
-
- While dr.Read
- combo.Items.Add(dr("NO"))
- End While
- combo.Items.Add("一般贸易")
- dr.Close()
-
-
-
-
- dgv_pending.Columns.Add(combo)
- 'dgv_pending.Columns.Insert(13, combo)
-
-
-
- 'dgv_pending.Columns(15).Visible = False
- 'dgv_pending.Columns(16).Visible = False
-
-
- ' Button7.PerformClick()
-
-
-
-
-
-
- End Sub
- Private Sub dgv_main_CellContentClick(sender As Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgv_main.CellContentClick
-
-
- dt.Clear()
-
- sql = "select contract_no as 合同号,supplier as 供应商,original as 产地, name as 品名, qty as 数量, coin as 币别, price as 单价,etd as 装船日, eta as 到港日, received as 验收 from rt_chem_container where serial='" & dgv_main.Rows(dgv_main.CurrentRow.Index).Cells("序号").Value & "'"
- cmd.CommandText = sql
- da.SelectCommand = cmd
- da.Fill(dt)
- dgv_detail.DataSource = dt
-
-
-
-
-
-
-
- End Sub
-
- Private Sub TextBox1_KeyUp(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles txtChem.KeyUp
-
- ' ListBox1.Items.Clear()
- ' sql = "select NAME,SUPPLIER from RT_SYS_CHEM_MAIN WHERE NAME LIKE N'%" & txtChem.Text & "%'"
-
- ' sql = "SELECT RT_SYS_CHEM_MAIN.name, RT_CHEM_IN_PRICE.SUPPLIER " &
- '" FROM RT_SYS_CHEM_MAIN LEFT OUTER JOIN RT_CHEM_IN_PRICE ON RT_SYS_CHEM_MAIN.name = RT_CHEM_IN_PRICE.NAME WHERE RT_SYS_CHEM_MAIN.NAME LIKE N'%" & txtChem.Text & "%' GROUP BY RT_SYS_CHEM_MAIN.name, RT_CHEM_IN_PRICE.SUPPLIER"
- ' cmd.CommandText = sql
- ' dr = cmd.ExecuteReader
- ' While dr.Read
- ' ListBox1.Items.Add(dr("NAME") & vbTab & dr("SUPPLIER"))
- ' End While
- ' dr.Close()
-
-
- If e.KeyCode <> Keys.Enter Then
- ListBox1.Items.Clear()
-
- sql = "select name from RT_SYS_CHEM_MAIN "
- cmd.CommandText = sql
- dr = cmd.ExecuteReader
- While dr.Read
- ListBox1.Items.Add(dr("NAME"))
- End While
- dr.Close()
-
-
-
-
- Else
-
- If ListBox1.Items.Count <> 0 Then
- ListBox1.Focus()
- ListBox1.SelectedIndex = 0
- Else
- 'txttime.Focus()
- End If
-
-
- End If
-
-
- End Sub
-
- Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
-
-
- Dim no As Integer = 0
- Dim matl_no As String = ""
- Dim quantity As Integer = 0
- Dim coin As String = ""
- Dim price As Double = 0
- sql = "select serial from rt_chem_container order by serial desc"
- cmd.CommandText = sql
- no = cmd.ExecuteScalar
- no += 1
-
-
-
-
- 'matl_no = InputBox("請輸入化料編號")
- 'quantity = InputBox("請輸入數量")
-
-
- 'sql = "select coin,pur_unit from tblmaterial where matl_no='" & matl_no & "'"
- 'cmd.CommandText = sql
- 'dr = cmd.ExecuteReader
- 'If dr.Read Then
- ' coin = dr("coin")
- ' price = dr("pur_unit")
- 'Else
- ' coin = InputBox("請輸入幣別" & vbCrLf & "美金 人民幣 台幣 歐元 港幣")
- ' price = InputBox("請輸入單價")
- 'End If
- 'dr.Close()
-
-
- 'sql = "insert into tblchem_container (po_no,item,matl_no,quantity,coin,price) values ('" & dgv_main.Rows(dgv_main.CurrentRow.Index).Cells("採購單號").Value & "','" & no + 1 & "','" & matl_no & "','" & quantity & "','" & coin & "','" & price & "')"
- 'cmd.CommandText = sql
- 'cmd.ExecuteNonQuery()
-
-
- For x As Integer = 0 To dgv_detail.Rows.Count - 2
-
- sql = "insert into RT_chem_container (item,serial,date,contract_no,name,qty,coin,price,etd,eta,supplier,original) values ('" & x + 1 & "','" & no & "','" & String.Format("{0:d}", DateTimePicker1.Value) & "','" & dgv_detail.Rows(x).Cells("合同号").Value & "',N'" & dgv_detail.Rows(x).Cells("品名").Value & "','" & dgv_detail.Rows(x).Cells("数量").Value & "','" & dgv_detail.Rows(x).Cells("币别").Value & "','" & dgv_detail.Rows(x).Cells("单价").Value & "','" & dgv_detail.Rows(x).Cells("装船日").Value & "','" & dgv_detail.Rows(x).Cells("到港日").Value & "',N'" & dgv_detail.Rows(x).Cells("供应商").Value & "',N'" & dgv_detail.Rows(x).Cells("产地").Value & "')"
- cmd.CommandText = sql
- cmd.ExecuteNonQuery()
- no = no + 1
- Next
-
-
- 'For Each Row As DataGridViewRow In dgv_detail.Rows
- ' dgv_detail.Rows.Remove(Row)
- 'Next
-
-
-
- 'For x As Integer = 0 To dgv_detail.Rows.Count - 1
- ' dgv_detail.Rows.RemoveAt(x)
- 'Next
-
-
-
-
-
-
-
- MsgBox("新增完成")
-
-
-
- dgv_main.Refresh()
- dgv_pending.Refresh()
- End Sub
-
- Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
-
-
-
- 'dgv_detail.ColumnCount = 6
- 'dgv_detail.Columns(0).Name = "日期"
- 'dgv_detail.Columns(1).Name = "序号"
- 'dgv_detail.Columns(2).Name = "品名"
- 'dgv_detail.Columns(3).Name = "供应商"
- 'dgv_detail.Columns(4).Name = "数量"
- 'dgv_detail.Columns(5).Name = "单价"
-
- 'Dim cmb As New DataGridViewComboBoxColumn
- 'cmb.HeaderText = "币别"
- 'cmb.Name = "币别"
- 'cmb.MaxDropDownItems = 4
- 'cmb.Items.Add("美金")
- 'cmb.Items.Add("人民币")
- '' cmb.Items.Add("100")
- 'dgv_detail.
-
-
-
-
- Dim my_qty As Double = InputBox("请输入数量")
- Dim my_coin As String = InputBox("请输入币别",, "USD")
-
-
-
- sql = "select * from rt_sys_chem_main where name=N'" & txtChem.Text & "'"
- cmd.CommandText = sql
-
- dr = cmd.ExecuteReader
-
- Dim myDataRow As DataRow
- myDataRow = dt.NewRow
-
- While dr.Read
-
- Dim my_price As Double = InputBox("请输入单价",, dr("price_usd"))
-
-
-
- myDataRow(0) = dr("supplier")
- myDataRow(1) = dr("origin")
- myDataRow(2) = dr("name")
- myDataRow(3) = my_qty
- myDataRow(4) = my_coin
- myDataRow(5) = my_price
- 'myDataRow(6) = ""
- 'myDataRow(7) = ""
-
-
-
-
- End While
- dr.Close()
-
- dt.Rows.InsertAt(myDataRow, dt.Rows.Count)
-
-
-
-
- End Sub
-
- Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
- dt.Clear()
- End Sub
-
- Private Sub ListBox1_KeyUp(sender As Object, e As KeyEventArgs) Handles ListBox1.KeyUp
-
- txtChem.Text = ListBox1.SelectedItem
-
- End Sub
-
- Private Sub dgv_detail_EditingControlShowing(sender As Object, e As DataGridViewEditingControlShowingEventArgs) Handles dgv_detail.EditingControlShowing
-
- Dim autoText As TextBox = CType(e.Control, TextBox)
-
- If dgv_detail.CurrentCell.OwningColumn.Name = "品名" Then
- autoText.AutoCompleteMode = AutoCompleteMode.Suggest
- autoText.AutoCompleteSource = AutoCompleteSource.CustomSource
-
-
- Dim acsc As New AutoCompleteStringCollection
-
-
- sql = "select name from RT_SYS_CHEM_MAIN where NAME LIKE N'%" & txtChem.Text & "%'"
- cmd.CommandText = sql
- dr = cmd.ExecuteReader
- While dr.Read
- acsc.Add(dr("name"))
- End While
- dr.Close()
-
- autoText.AutoCompleteCustomSource = acsc
-
- ElseIf dgv_detail.CurrentCell.OwningColumn.Name = "供应商" Then
-
- autoText.AutoCompleteMode = AutoCompleteMode.Suggest
- autoText.AutoCompleteSource = AutoCompleteSource.CustomSource
-
-
- Dim acsc As New AutoCompleteStringCollection
-
-
- sql = "select supplier from RT_supplier"
- cmd.CommandText = sql
- dr = cmd.ExecuteReader
- While dr.Read
- acsc.Add(dr("supplier"))
- End While
- dr.Close()
-
- autoText.AutoCompleteCustomSource = acsc
-
-
-
- ElseIf dgv_detail.CurrentCell.OwningColumn.Name = "产地" Then
-
- autoText.AutoCompleteMode = AutoCompleteMode.Suggest
- autoText.AutoCompleteSource = AutoCompleteSource.CustomSource
-
-
- Dim acsc As New AutoCompleteStringCollection
-
-
-
- acsc.Add("上海")
- acsc.Add("山东")
- acsc.Add("台湾")
- acsc.Add("德国")
- acsc.Add("印度")
- acsc.Add("广东")
- acsc.Add("西班牙")
- acsc.Add("美国")
- acsc.Add("荷兰")
- acsc.Add("义大利")
- acsc.Add("新加坡")
-
-
-
-
-
-
- autoText.AutoCompleteCustomSource = acsc
-
- ElseIf dgv_detail.CurrentCell.OwningColumn.Name = "供应商" Then
-
- autoText.AutoCompleteMode = AutoCompleteMode.Suggest
- autoText.AutoCompleteSource = AutoCompleteSource.CustomSource
-
-
- Dim acsc As New AutoCompleteStringCollection
-
-
- sql = "select supplier from RT_supplier"
- cmd.CommandText = sql
- dr = cmd.ExecuteReader
- While dr.Read
- acsc.Add(dr("supplier"))
- End While
- dr.Close()
-
- autoText.AutoCompleteCustomSource = acsc
-
-
-
- Else
-
-
- autoText.AutoCompleteMode = AutoCompleteMode.None
-
- End If
-
-
-
-
-
-
- End Sub
-
- Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
-
- sql = "select * from "
-
-
-
-
- For x As Integer = 0 To dgv_pending.Rows.Count - 1
-
- sql = "select * from rt_chem_container where serial='"
-
- sql = "update RT_chem_container set qty=" & dgv_pending.Rows(x).Cells("数量").Value & ",xno=N'" & dgv_pending.Rows(x).Cells("手册号").Value & "',contract_no=N'" & dgv_pending.Rows(x).Cells("合同号").Value & "',etd=N'" & dgv_pending.Rows(x).Cells("装船日").Value & "',deposit='" & dgv_pending.Rows(x).Cells("订金").Value & "',eta=N'" & dgv_pending.Rows(x).Cells("到港日").Value & "' where serial='" & dgv_pending.Rows(x).Cells("serial").Value & "' and name=N'" & dgv_pending.Rows(x).Cells("品名").Value & "'"
- cmd.CommandText = sql
- cmd.ExecuteNonQuery()
-
-
- Next
-
- dgv_pending.Refresh()
- MsgBox("更新完成")
-
- End Sub
-
- Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click '--验收
-
-
-
- Dim bno As String = InputBox("请输入报关单号")
-
-
-
-
-
- Dim dd() As String
- Dim d As String
- Dim my_count As Integer = 0
- Dim my_no As String = ""
- Dim chem_lot As String = ""
-
- dd = Split(String.Format("{0:d}", DateTimePicker2.Value), "/")
- If Len(dd(1)) = 1 Then
- dd(1) = "0" & dd(1)
- End If
- If Len(dd(2)) = 1 Then
- dd(2) = "0" & dd(2)
- End If
- d = Microsoft.VisualBasic.Right(dd(0), 2) & dd(1) & dd(2)
-
-
-
- Dim my_id As Integer = 0
-
-
- sql = "select id from rt_bg_in_detail order by id desc"
- cmd.CommandText = sql
- my_id = cmd.ExecuteScalar + 1
-
-
-
-
-
-
- For x As Integer = 0 To dgv_pending.Rows.Count - 1
-
- If dgv_pending.Rows(x).Cells("验收").Value.ToString <> "" Then
-
- sql = "update RT_chem_container set contract_no='" & dgv_pending.Rows(x).Cells("合同号").Value & "',etd='" & dgv_pending.Rows(x).Cells("装船日").Value & "',eta='" & dgv_pending.Rows(x).Cells("到港日").Value & "',received='" & dgv_pending.Rows(x).Cells("验收").Value & "',bg_date='" & dd(0) & dd(1) & dd(2) & "' where serial='" & dgv_pending.Rows(x).Cells("serial").Value & "'"
- cmd.CommandText = sql
- cmd.ExecuteNonQuery()
-
-
-
- 'sql = "insert into rt_chem_lot (name,lot_no,qty,coin,price,w,r) values ('" & dgv_pending.Rows(x).Cells("品名").Value & "','" & chem_lot & "','" & dgv_pending.Rows(x).Cells("数量").Value & "','" & Trim(dgv_pending.Rows(x).Cells("币别").Value) & "','" & dgv_pending.Rows(x).Cells("单价").Value & "','0','0')"
- 'cmd.CommandText = sql
- 'cmd.ExecuteNonQuery()
-
-
-
- If dgv_pending.Rows(x).Cells(0).Value <> "一般贸易" Then
-
- sql = "insert into rt_bg_in_detail (DATE1,no,origin,xno,name,bg_date,qty,price,matl_name,id) values('" & String.Format("{0:d}", DateTimePicker2.Value) & "','" & bno & "',N'" & dgv_pending.Rows(x).Cells("产地").Value & "','" & dgv_pending.Rows(x).Cells(0).Value & "',N'" &
- dgv_pending.Rows(x).Cells("海关分类").Value & "','" & dd(0) & dd(1) & dd(2) & "','" & dgv_pending.Rows(x).Cells("数量").Value & "','" & dgv_pending.Rows(x).Cells("单价").Value & "',N'" & dgv_pending.Rows(x).Cells("品名").Value & "','" & my_id & "')"
-
- cmd.CommandText = sql
- cmd.ExecuteNonQuery()
-
-
-
- sql = "update rt_bg_in_detail set date1='" & dd(0) & dd(1) & dd(2) & "' where id='" & my_id & "'"
- cmd.CommandText = sql
- cmd.ExecuteNonQuery()
-
-
-
-
- End If
-
-
- ' cmd.ExecuteScalar()
- my_id = my_id + 1
- End If
-
-
- Next
-
-
-
- MsgBox("更新完成")
- Dim dt1 As New DataTable
-
-
- sql = "SELECT RT_CHEM_CONTAINER.date AS 日期, RT_CHEM_CONTAINER.CONTRACT_NO AS 合同号,
- RT_CHEM_CONTAINER.name AS 品名, RT_SYS_CHEM_MAIN.CLASS2 as 海关分类, RT_CHEM_CONTAINER.SUPPLIER AS 供应商,
- RT_CHEM_CONTAINER.ORIGINAL AS 产地, RT_CHEM_CONTAINER.qty AS 数量, RT_CHEM_CONTAINER.coin AS 币别,
- RT_CHEM_CONTAINER.price AS 单价, RT_CHEM_CONTAINER.etd AS 装船日, RT_CHEM_CONTAINER.eta AS 到港日, received as 验收,
- RT_CHEM_CONTAINER.serial, RT_CHEM_CONTAINER.item
- FROM RT_CHEM_CONTAINER LEFT OUTER JOIN
- RT_SYS_CHEM_MAIN ON RT_CHEM_CONTAINER.name = RT_SYS_CHEM_MAIN.name
- WHERE (RT_CHEM_CONTAINER.received IS NULL)"
- cmd.CommandText = sql
- da.SelectCommand = cmd
- da.Fill(dt1)
- dgv_pending.DataSource = dt1
- dgv_pending.Refresh()
-
-
-
- End Sub
-
- Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
- For x As Integer = 0 To dgv_pending.Rows.Count - 1
-
- sql = "select xno from rt_chem_container where serial='" & dgv_pending.Rows(x).Cells("serial").Value & "'"
- cmd.CommandText = sql
-
-
- dgv_pending.Rows(x).Cells("手册号").Value = cmd.ExecuteScalar
-
- Next
- End Sub
-
- Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click
-
-
- Dim xlApp As Microsoft.Office.Interop.Excel.Application
- Dim xlBook As Microsoft.Office.Interop.Excel.Workbook
- Dim xlSheet As Microsoft.Office.Interop.Excel.Worksheet
- Dim xlrange As Microsoft.Office.Interop.Excel.Range
-
- xlApp = CreateObject("Excel.Application")
-
- xlBook = xlApp.Workbooks.Add
-
- xlApp.DisplayAlerts = False
- xlApp.Visible = True
- xlBook.Activate()
- xlBook.Parent.Windows(1).Visible = True
- xlSheet = xlBook.Worksheets(1)
- xlSheet.Activate()
-
-
-
- 'my_vb_project()
-
-
-
- Dim Vba As Microsoft.Vbe.Interop.VBComponent = Nothing
- For xh As Int32 = 1 To xlApp.VBE.ActiveVBProject.VBComponents.Count
- If xlApp.VBE.ActiveVBProject.VBComponents.Item(xh).Name = "my_module1" Then
- xlApp.VBE.ActiveVBProject.VBComponents.Remove(xlApp.VBE.ActiveVBProject.VBComponents.Item(xh))
- Exit For
- End If
- Next
-
-
- xlApp.VBE.ActiveVBProject.VBComponents.Add(Microsoft.Vbe.Interop.vbext_ComponentType.vbext_ct_StdModule).Name = "my_module1"
- For xh As Int16 = 1 To xlApp.VBE.ActiveVBProject.VBComponents.Count
- If xlApp.VBE.ActiveVBProject.VBComponents.Item(xh).Name = "my_module1" Then
- Vba = xlApp.VBE.ActiveVBProject.VBComponents.Item(xh)
- End If
- Next
-
-
-
-
- Vba.CodeModule.AddFromString("Public Sub Macro2_create_button()" & vbCr &
- " " & vbCr &
- " Rows(""1:1"").Select " & vbCr &
- " Selection.RowHeight = 50.25 " & vbCr &
- " ActiveSheet.Buttons.Add (50, 1.5, 60, 40).Select " & vbCr &
- " Selection.OnAction = ""Macro_1"" " & vbCr &
- " Selection.Characters.Text = ""皮革整理剂"" " & vbCr &
- " ActiveSheet.Buttons.Add(120, 1.5, 60, 40).Select " & vbCr &
- " Selection.OnAction = ""Macro_2"" " & vbCr &
- " Selection.Characters.Text = ""有机鞣料"" " & vbCr &
- " ActiveSheet.Buttons.Add(190, 1.5, 60, 40).Select " & vbCr &
- " Selection.OnAction = ""Macro_3"" " & vbCr &
- " Selection.Characters.Text = ""无机鞣料 "" " & vbCr &
- " ActiveSheet.Buttons.Add(260, 1.5, 60, 40).Select " & vbCr &
- " Selection.OnAction = ""Macro_4"" " & vbCr &
- " Selection.Characters.Text = ""复鞣助剂"" " & vbCr &
- " ActiveSheet.Buttons.Add(330, 1.5, 60, 40).Select " & vbCr &
- " Selection.OnAction = ""Macro_5"" " & vbCr &
- " Selection.Characters.Text = ""表面活性剂"" " & vbCr &
- " ActiveSheet.Buttons.Add(400, 1.5, 60, 40).Select " & vbCr &
- " Selection.OnAction = ""Macro_6"" " & vbCr &
- " Selection.Characters.Text = ""合成油脂(矿)"" " & vbCr &
- " ActiveSheet.Buttons.Add(470, 1.5, 60, 40).Select " & vbCr &
- " Selection.OnAction = ""Macro_7"" " & vbCr &
- " Selection.Characters.Text = ""合成油脂"" " & vbCr &
- " ActiveSheet.Buttons.Add(540, 1.5, 60, 40).Select " & vbCr &
- " Selection.OnAction = ""Macro_8"" " & vbCr &
- " Selection.Characters.Text = ""制革染料 "" " & vbCr &
- " ActiveSheet.Buttons.Add(610, 1.5, 60, 40).Select " & vbCr &
- " Selection.OnAction = ""Macro_9"" " & vbCr &
- " Selection.Characters.Text = ""聚氨脂混合液"" " & vbCr &
- " ActiveSheet.Buttons.Add(680, 1.5, 60, 40).Select " & vbCr &
- " Selection.OnAction = ""Macro_10"" " & vbCr &
- " Selection.Characters.Text = ""PU树脂"" " & vbCr &
- " ActiveSheet.Buttons.Add(750, 1.5, 60, 40).Select " & vbCr &
- " Selection.OnAction = ""Macro_11"" " & vbCr &
- " Selection.Characters.Text = ""皮革促进剂"" " & vbCr &
- " end sub " & vbCr &
- " public sub macro_1() " & vbCr &
- " ActiveSheet.Range(""$A$6:$M$100"").AutoFilter Field:=4, Criteria1:=""皮革整理剂"" " & vbCr &
- " end sub" & vbCr &
- " public sub macro_2() " & vbCr &
- " ActiveSheet.Range(""$A$6:$M$100"").AutoFilter Field:=4, Criteria1:=""有机鞣料"" " & vbCr &
- " end sub" & vbCr &
- " public sub macro_3() " & vbCr &
- " ActiveSheet.Range(""$A$6:$M$100"").AutoFilter Field:=4, Criteria1:=""无机鞣料"" " & vbCr &
- " end sub" & vbCr &
- " public sub macro_4() " & vbCr &
- " ActiveSheet.Range(""$A$6:$M$100"").AutoFilter Field:=4, Criteria1:=""复鞣助剂"" " & vbCr &
- " end sub" & vbCr &
- " public sub macro_5() " & vbCr &
- " ActiveSheet.Range(""$A$6:$M$100"").AutoFilter Field:=4, Criteria1:=""表面活性剂"" " & vbCr &
- " end sub" & vbCr &
- " public sub macro_6() " & vbCr &
- " ActiveSheet.Range(""$A$6:$M$100"").AutoFilter Field:=4, Criteria1:=""合成油脂(矿)"" " & vbCr &
- " end sub" & vbCr &
- " public sub macro_7() " & vbCr &
- " ActiveSheet.Range(""$A$6:$M$100"").AutoFilter Field:=4, Criteria1:=""合成油脂"" " & vbCr &
- " end sub" & vbCr &
- " public sub macro_8() " & vbCr &
- " ActiveSheet.Range(""$A$6:$M$100"").AutoFilter Field:=4, Criteria1:=""制革染料"" " & vbCr &
- " end sub" & vbCr &
- " public sub macro_9() " & vbCr &
- " ActiveSheet.Range(""$A$6:$M$100"").AutoFilter Field:=4, Criteria1:=""聚氨脂混合液"" " & vbCr &
- " end sub" & vbCr &
- " public sub macro_10() " & vbCr &
- " ActiveSheet.Range(""$A$6:$M$100"").AutoFilter Field:=4, Criteria1:=""PU树脂"" " & vbCr &
- " end sub" & vbCr &
- " public sub macro_11() " & vbCr &
- " ActiveSheet.Range(""$A$6:$M$100"").AutoFilter Field:=4, Criteria1:=""皮革促进剂"" " & vbCr &
- " end sub")
-
-
-
-
-
-
-
-
-
-
- dgv_pending.SelectAll()
-
-
- dgv_pending.ClipboardCopyMode = DataGridViewClipboardCopyMode.EnableAlwaysIncludeHeaderText
- dgv_pending.RowHeadersVisible = False
-
- Clipboard.SetDataObject(dgv_pending.GetClipboardContent())
-
- ' xlSheet.PasteSpecial(Format:="文本", Link:=False, DisplayAsIcon:=False)
-
- ' xlSheet.PasteSpecial(Format:="unicode 文字", Link:=False, DisplayAsIcon:=False)
-
-
- xlSheet.Cells(5, 1).Select()
-
- xlSheet.Paste()
-
- 'xlSheet.PasteSpecial(Paste:=Microsoft.Office.Interop.Excel.XlPasteType.xlPasteValues, SkipBlanks:=False, Transpose:=False)
-
-
-
- xlSheet.Rows("5:100").select
-
- With xlApp.Selection
-
- .HorizontalAlignment = Microsoft.Office.Core.XlConstants.xlGeneral
- .VerticalAlignment = Microsoft.Office.Core.XlConstants.xlCenter
-
- .WrapText = False
- .Orientation = 0
- .AddIndent = False
- .IndentLevel = 0
- .ShrinkToFit = False
- .MergeCells = False
- End With
-
-
-
-
-
-
- sql = "SELECT NO FROM RT_BG_MAIN where checked='False' ORDER BY SERIAL"
- cmd.CommandText = sql
-
- da.SelectCommand = cmd
- da.Fill(dt)
-
- For x As Integer = 0 To dt.Rows.Count - 1
-
- xlSheet.Cells(3 + x, 1) = dt.Rows(x).Item("no")
-
-
- Next
-
- Dim dt1 As New DataTable
-
-
- sql = "SELECT NAME AS 品名 FROM RT_BG_MTL_NAME WHERE SERIAL <17 and serial>1 and serial<>7 and serial<>11 and serial<>12 and serial<>13 ORDER BY SERIAL"
- cmd.CommandText = sql
- da.SelectCommand = cmd
- da.Fill(dt1)
-
-
- For x As Integer = 0 To dt1.Rows.Count - 1 '---化工
-
- xlSheet.Cells(2, 2 + x) = dt1.Rows(x).Item("品名")
-
-
- For y = 0 To dt.Rows.Count - 1
- sql = "SELECT SUM(RT_CHEM_CONTAINER.qty) AS qty FROM RT_CHEM_CONTAINER INNER JOIN
- RT_SYS_CHEM_MAIN ON RT_CHEM_CONTAINER.name = RT_SYS_CHEM_MAIN.name
- WHERE (RT_CHEM_CONTAINER.received IS NULL) and class2 =N'" & dt1.Rows(x).Item("品名") & "' and xno='" & dt.Rows(y).Item("no") & "'"
- cmd.CommandText = sql
- dr = cmd.ExecuteReader
- If dr.Read Then
-
- xlSheet.Cells(3 + y, x + 2) = dr("qty")
-
- End If
- dr.Close()
- Next
-
-
-
-
-
- Next
-
-
-
- xlSheet.Columns("A:M").AutoFit
- xlSheet.Columns("A:M").Select
- With xlApp.Selection
- .HorizontalAlignment = Microsoft.Office.Core.XlConstants.xlLeft
- .VerticalAlignment = Microsoft.Office.Core.XlConstants.xlCenter
- .WrapText = False
- .Orientation = 0
- .AddIndent = False
- .IndentLevel = 0
- .ShrinkToFit = False
- .ReadingOrder = Microsoft.Office.Core.XlReadingOrder.xlContext
- .MergeCells = False
- End With
-
-
-
-
-
-
-
- xlSheet.Range("A5:M5").Select()
- xlApp.Selection.AutoFilter
-
-
-
- xlSheet.Range("A2:L4").Select()
- 'xlApp.Selection.Borders(xlDiagonalDown).LineStyle = xlNone
- 'xlApp.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
- With xlApp.Selection.Borders(xlEdgeLeft)
- .LineStyle = xlContinuous
- .ColorIndex = 0
- .TintAndShade = 0
- .Weight = xlThin
- End With
- With xlApp.Selection.Borders(xlEdgeTop)
- .LineStyle = xlContinuous
- .ColorIndex = 0
- .TintAndShade = 0
- .Weight = xlThin
- End With
- With xlApp.Selection.Borders(xlEdgeBottom)
- .LineStyle = xlContinuous
- .ColorIndex = 0
- .TintAndShade = 0
- .Weight = xlThin
- End With
- With xlApp.Selection.Borders(xlEdgeRight)
- .LineStyle = xlContinuous
- .ColorIndex = 0
- .TintAndShade = 0
- .Weight = xlThin
- End With
- With xlApp.Selection.Borders(xlInsideVertical)
- .LineStyle = xlContinuous
- .ColorIndex = 0
- .TintAndShade = 0
- .Weight = xlThin
- End With
- With xlApp.Selection.Borders(xlInsideHorizontal)
- .LineStyle = xlContinuous
- .ColorIndex = 0
- .TintAndShade = 0
- .Weight = xlThin
- End With
-
-
- xlSheet.Range("A5:M5").Select()
-
- With xlApp.Selection.Interior
- ' .Pattern = xlSolid
- '.PatternColorIndex = xlAutomatic
- .ThemeColor = xlThemeColorDark2
- .TintAndShade = -0.249977111117893
- .PatternTintAndShade = 0
- End With
-
- xlApp.Run("macro2_create_button")
-
- xlApp = Nothing
- xlSheet = Nothing
-
-
-
- End Sub
-
-
- Private Sub dgv_pending_DataError(sender As Object, e As DataGridViewDataErrorEventArgs) Handles dgv_pending.DataError
-
-
-
-
- End Sub
-
- Private Sub Button9_Click(sender As Object, e As EventArgs) Handles Button9.Click '-------查询未到订单
-
- sql = "SELECT RT_CHEM_CONTAINER.date AS 日期, RT_CHEM_CONTAINER.CONTRACT_NO AS 合同号, RT_CHEM_CONTAINER.name AS 品名, RT_SYS_CHEM_MAIN.CLASS2 as 海关分类, RT_CHEM_CONTAINER.SUPPLIER AS 供应商, RT_CHEM_CONTAINER.ORIGINAL AS 产地, RT_CHEM_CONTAINER.qty AS 数量, RT_CHEM_CONTAINER.coin AS 币别, RT_CHEM_CONTAINER.price AS 单价,RT_CHEM_CONTAINER.deposit AS 订金,case when deposit is null then cast(RT_CHEM_CONTAINER.qty*RT_CHEM_CONTAINER.price as numeric(10,1)) else cast(RT_CHEM_CONTAINER.qty*RT_CHEM_CONTAINER.price-cast(deposit as numeric(10,1)) as numeric(10,1)) end as 尾款, RT_CHEM_CONTAINER.etd AS 装船日, RT_CHEM_CONTAINER.eta AS 到港日, received as 验收, RT_CHEM_CONTAINER.serial, RT_CHEM_CONTAINER.item FROM RT_CHEM_CONTAINER LEFT OUTER JOIN RT_SYS_CHEM_MAIN ON RT_CHEM_CONTAINER.name = RT_SYS_CHEM_MAIN.name WHERE (RT_CHEM_CONTAINER.received IS NULL) ORDER BY RT_CHEM_CONTAINER.DATE DESC,CONTRACT_NO,RT_CHEM_CONTAINER.name"
- cmd.CommandText = sql
- da.SelectCommand = cmd
- Dim dt1 As New DataTable
- da.Fill(dt1)
- dgv_pending.DataSource = dt1
-
-
- For x As Integer = 0 To dgv_pending.Rows.Count - 1
-
- sql = "select xno from rt_chem_container where serial='" & dgv_pending.Rows(x).Cells("serial").Value & "' AND NAME =N'" & dgv_pending.Rows(x).Cells("品名").Value & "'"
- cmd.CommandText = sql
-
-
- dgv_pending.Rows(x).Cells("手册号").Value = cmd.ExecuteScalar
-
- Next
-
-
-
-
- sql = "SELECT XNO AS 手册号, 海关分类, SUM(数量) AS 数量
- FROM (SELECT TOP (100) PERCENT RT_CHEM_CONTAINER.DATE AS 日期,
- RT_CHEM_CONTAINER.CONTRACT_NO AS 合同号, RT_CHEM_CONTAINER.NAME AS 品名,
- RT_SYS_CHEM_MAIN.CLASS2 AS 海关分类, RT_CHEM_CONTAINER.SUPPLIER AS 供应商,
- RT_CHEM_CONTAINER.ORIGINAL AS 产地, RT_CHEM_CONTAINER.QTY AS 数量,
- RT_CHEM_CONTAINER.COIN AS 币别, RT_CHEM_CONTAINER.PRICE AS 单价,
- RT_CHEM_CONTAINER.DEPOSIT AS 订金, CASE WHEN deposit IS NULL
- THEN CAST(RT_CHEM_CONTAINER.qty * RT_CHEM_CONTAINER.price AS numeric(10, 1))
- ELSE CAST(RT_CHEM_CONTAINER.qty * RT_CHEM_CONTAINER.price - CAST(deposit AS numeric(10, 1))
- AS numeric(10, 1)) END AS 尾款, RT_CHEM_CONTAINER.ETD AS 装船日,
- RT_CHEM_CONTAINER.ETA AS 到港日, RT_CHEM_CONTAINER.RECEIVED AS 验收,
- RT_CHEM_CONTAINER.SERIAL, RT_CHEM_CONTAINER.ITEM, RT_CHEM_CONTAINER.XNO
- FROM RT_CHEM_CONTAINER LEFT OUTER JOIN
- RT_SYS_CHEM_MAIN ON RT_CHEM_CONTAINER.NAME = RT_SYS_CHEM_MAIN.NAME
- WHERE (RT_CHEM_CONTAINER.RECEIVED IS NULL)
- ORDER BY 日期 DESC, 合同号, 品名) AS p
- GROUP BY XNO, 海关分类
- ORDER BY 手册号, 海关分类"
-
- cmd.CommandText = sql
- da.SelectCommand = cmd
- dt1 = New DataTable
- da.Fill(dt1)
- dgv_sum.DataSource = dt1
-
- dgv_sum.Columns(0).Width = 120
-
-
-
- End Sub
- End Class
|