123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235 |
- Option Strict Off
- Public Class 銷售退貨申請
- ReadOnly ds1 As New DataSet : ReadOnly ds2 As New DataSet
- Dim EDR As Integer = 0 : Dim ESTR As String
- Private Sub Set_銷售清單()
- 物料清單_dgv.DataSource = Nothing : ds1.Clear()
- 物料清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
- 物料清單_dgv.ColumnHeadersHeight = 25
- 物料清單_dgv.AllowUserToAddRows = False
- 物料清單_dgv.ClipboardCopyMode = DataGridViewClipboardCopyMode.EnableWithoutHeaderText
- 物料清單_dgv.MultiSelect = True
- SQL_銷售退貨申請_彙總()
- da.Fill(ds1) : 物料清單_dgv.DataSource = ds1.Tables(0) : conn.Close()
- 物料清單_dgv.Columns(0).FillWeight = 150 : 物料清單_dgv.Columns(1).FillWeight = 90 : 物料清單_dgv.Columns(2).Visible = False : 物料清單_dgv.Columns(3).FillWeight = 100
- 物料清單_dgv.Columns(4).Visible = False : 物料清單_dgv.Columns(5).FillWeight = 90 : 物料清單_dgv.Columns(6).Visible = False : 物料清單_dgv.Columns(7).Visible = False
- 物料清單_dgv.Columns(8).Visible = False : 物料清單_dgv.Columns(9).Visible = False
-
- For i As Integer = 0 To 物料清單_dgv.Rows.Count - 1
- If 物料清單_dgv.Rows(i).Cells("業務比例").Value.ToString = "" Then : 物料清單_dgv.Rows(i).Cells("業務比例").Value = 0 : End If
- If 物料清單_dgv.Rows(i).Cells("司機比例").Value.ToString = "" Then : 物料清單_dgv.Rows(i).Cells("司機比例").Value = 0 : End If
- Next
- End Sub
- Private Sub Set_單據明細()
- 明細_dgv.DataSource = Nothing : ds2.Clear() : 明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing : 明細_dgv.ColumnHeadersHeight = 25
- 明細_dgv.AllowUserToAddRows = False : 明細_dgv.ClipboardCopyMode = DataGridViewClipboardCopyMode.EnableWithoutHeaderText : 明細_dgv.MultiSelect = True
- SQL_銷售退貨申請_清單()
- da.Fill(ds2) : 明細_dgv.DataSource = ds2.Tables(0) : conn.Close()
-
- 明細_dgv.Columns(6).DefaultCellStyle.Format = "#,##0" : 明細_dgv.Columns(7).DefaultCellStyle.Format = "#,##0"
- 明細_dgv.Columns(8).DefaultCellStyle.Format = "#,##0.0000" : 明細_dgv.Columns(9).DefaultCellStyle.Format = "#,##0" : 明細_dgv.Columns(10).DefaultCellStyle.Format = "#,##0"
- 明細_dgv.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(1).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
- 明細_dgv.Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(2).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
- 明細_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
- 明細_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
- 明細_dgv.Columns(8).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(8).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
- 明細_dgv.Columns(9).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(9).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
- 明細_dgv.Columns(10).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(10).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
- 明細_dgv.Columns(12).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(12).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
- 明細_dgv.Columns(13).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(13).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
-
- 明細_dgv.Columns(0).Visible = False : 明細_dgv.Columns(1).FillWeight = 30 : 明細_dgv.Columns(2).FillWeight = 80 : 明細_dgv.Columns(3).FillWeight = 150
- 明細_dgv.Columns(4).FillWeight = 80 : 明細_dgv.Columns(5).FillWeight = 80 : 明細_dgv.Columns(6).FillWeight = 50 : 明細_dgv.Columns(7).FillWeight = 50
- 明細_dgv.Columns(8).Visible = False : 明細_dgv.Columns(9).Visible = False : 明細_dgv.Columns(10).Visible = False : 明細_dgv.Columns(11).FillWeight = 100
- 明細_dgv.Columns(12).FillWeight = 80 : 明細_dgv.Columns(13).FillWeight = 50 : 明細_dgv.Columns(14).Visible = False : 明細_dgv.Columns(15).Visible = False
-
- 明細_dgv.EditMode = DataGridViewEditMode.EditOnEnter
- 明細_dgv.Columns(1).ReadOnly = True : 明細_dgv.Columns(2).ReadOnly = True : 明細_dgv.Columns(3).ReadOnly = True : 明細_dgv.Columns(4).ReadOnly = True
- 明細_dgv.Columns(5).ReadOnly = True : 明細_dgv.Columns(6).ReadOnly = True : 明細_dgv.Columns(8).ReadOnly = True : 明細_dgv.Columns(9).ReadOnly = True
- 明細_dgv.Columns(10).ReadOnly = True : 明細_dgv.Columns(12).ReadOnly = True
-
- For i As Integer = 0 To 明細_dgv.Rows.Count - 1
- 明細_dgv(1, i).Value = i + 1
- Next
- End Sub
- Private Sub ComboBox2下拉表單資料載入()
- SQL_客戶資料表_下拉清單讀取()
- 客戶_cb.Items.Clear() : 客戶編號_cb.Items.Clear()
- While (dr.Read()) : 客戶_cb.Items.Add(dr("簡稱")) : 客戶編號_cb.Items.Add(dr("編號")) : End While : conn.Close()
- End Sub
- Private Sub ComboBox6下拉表單資料載入()
- SQL_員工名稱下拉清單()
- 業務_cb.Items.Clear() : 司機_cb.Items.Clear()
- While (dr.Read()) : 業務_cb.Items.Add(dr("名稱")) : 司機_cb.Items.Add(dr("名稱")) : End While : conn.Close()
- End Sub
- Private Sub ComboBox7下拉表單資料載入()
- SQL_傭金比例下拉清單()
- 業務比例_cb.Items.Clear() : 司機比例_cb.Items.Clear()
- While (dr.Read()) : 業務比例_cb.Items.Add(Format(dr("比例"), "#,##0.0")) : 司機比例_cb.Items.Add(Format(dr("比例"), "#,##0.0")) : End While : conn.Close()
- End Sub
- Private Sub 銷售退貨清單_Load(sender As Object, e As EventArgs) Handles MyBase.Load
- Me.MdiParent = MAOJI_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
- 單據編號_tb.Enabled = False : 客戶公司_tb.Enabled = False : 統編_tb.Enabled = False : 電話_tb.Enabled = False : 付款方式_tb.Enabled = False
- 手機_tb.Enabled = False : 料號_tb.Enabled = False : 店面地址_tb.Enabled = False : 郵號_tb.Enabled = False : 送貨地址_tb.Enabled = False
- 供應商編號_tb.Enabled = False : 選擇_tb.Enabled = False : 可退貨數_tb.Enabled = False : 傳真_tb.Enabled = False : 成本金額_nud.Enabled = False
- 匯率_nud.Enabled = False : 本單售價_nud.Enabled = False : 客戶_cb.Enabled = False : 業務比例_cb.Enabled = False : 業務_cb.Enabled = False
- 司機_cb.Enabled = False : 司機比例_cb.Enabled = False : 銷售下單_dtp.Enabled = False : 客戶交期_dtp.Enabled = False : 倉名編號_tb.Visible = False
- 狀態_tb.Visible = False : 客戶編號_cb.Visible = False
- ComboBox2下拉表單資料載入() : ComboBox6下拉表單資料載入() : ComboBox7下拉表單資料載入() : Set_銷售清單()
- End Sub
- Private Sub DataGridView2_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 物料清單_dgv.CellClick
- If e.RowIndex = -1 Then : Else
- ComboBox6下拉表單資料載入() : ComboBox7下拉表單資料載入() : 供應商編號_tb.Text = "" : 料號_tb.Text = "" : 可退貨數_tb.Text = ""
- 退貨數_nud.Value = 0 : 成本金額_nud.Value = 0 : 匯率_nud.Value = 0 : 本單售價_nud.Value = 0
- 單據編號_tb.Text = 物料清單_dgv.Rows(e.RowIndex).Cells("單據編號").Value.ToString : 客戶編號_cb.Text = 物料清單_dgv.Rows(e.RowIndex).Cells("客戶編號").Value.ToString
- 狀態_tb.Text = 物料清單_dgv.Rows(e.RowIndex).Cells("狀態").Value.ToString : 銷售下單_dtp.Value = 物料清單_dgv.Rows(e.RowIndex).Cells("銷售下單").Value.ToString
- 客戶交期_dtp.Value = 物料清單_dgv.Rows(e.RowIndex).Cells("客戶交期").Value.ToString : 業務_cb.Text = 物料清單_dgv.Rows(e.RowIndex).Cells("業務").Value.ToString
- 業務比例_cb.Text = Format(物料清單_dgv.Rows(e.RowIndex).Cells("業務比例").Value, "#,##0.0") : 司機_cb.Text = 物料清單_dgv.Rows(e.RowIndex).Cells("司機").Value.ToString
- 司機比例_cb.Text = Format(物料清單_dgv.Rows(e.RowIndex).Cells("司機比例").Value, "#,##0.0") : 列印用SQL = 單據編號_tb.Text
- Set_單據明細() : 客戶資料()
- End If
- End Sub
- Private Sub DataGridView3_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 明細_dgv.CellClick
- If e.RowIndex = -1 Then : Else
- 供應商編號_tb.Text = 明細_dgv.Rows(e.RowIndex).Cells("供應商編號").Value.ToString : 選擇_tb.Text = 明細_dgv.Rows(e.RowIndex).Cells("資料流水號").Value.ToString
- 料號_tb.Text = 明細_dgv.Rows(e.RowIndex).Cells("料號").Value.ToString : 本單售價_nud.Value = 明細_dgv.Rows(e.RowIndex).Cells("售價").Value
- 匯率_nud.Value = 明細_dgv.Rows(e.RowIndex).Cells("匯率").Value : 成本金額_nud.Value = 明細_dgv.Rows(e.RowIndex).Cells("台幣單價").Value
- PA = 明細_dgv.Rows(e.RowIndex).Cells("倉名").Value.ToString
- SQL_倉名編號取得()
- If (dr.Read()) Then : 倉名編號_tb.Text = dr("倉名編號") : End If : conn.Close()
- 可退貨數_tb.Text = "0"
- For i As Integer = 0 To 明細_dgv.Rows.Count - 1
- If 明細_dgv.Rows(i).Cells("料號").Value.ToString = 料號_tb.Text And 明細_dgv.Rows(i).Cells("供應商編號").Value.ToString = 供應商編號_tb.Text Then
- 可退貨數_tb.Text = Val(可退貨數_tb.Text) + 明細_dgv.Rows(i).Cells("數量").Value.ToString
- End If
- Next
- End If
- End Sub
- Private Sub DataGridView3_CellEnter(sender As Object, e As DataGridViewCellEventArgs) Handles 明細_dgv.CellEnter
- For i As Integer = 0 To 明細_dgv.Rows.Count - 1
- 明細_dgv.Rows(i).Cells("台幣單價").Value = 明細_dgv.Rows(i).Cells("單價").Value * 明細_dgv.Rows(i).Cells("匯率").Value
- 明細_dgv.Rows(i).Cells("出貨成本_台幣").Value = 明細_dgv.Rows(i).Cells("單價").Value * 明細_dgv.Rows(i).Cells("匯率").Value * 明細_dgv.Rows(i).Cells("數量").Value
- 明細_dgv(1, i).Value = i + 1
- Next i
- End Sub
- Private Sub 客戶資料()
- conn.Close()
- If 客戶編號_cb.Text = "CI00000000" Then
- SQL_銷售退貨申請_客戶資料_零售一()
- If (dr.Read()) Then
- 付款方式_tb.Text = dr("付款方式")
- End If : conn.Close()
- SQL_銷售退貨申請_客戶資料_零售二()
- If (dr.Read()) Then
- 客戶公司_tb.Text = dr("客戶名稱") : 手機_tb.Text = dr("手機") : 電話_tb.Text = dr("電話") : 傳真_tb.Text = dr("傳真") : 郵號_tb.Text = dr("郵遞區號")
- 店面地址_tb.Text = dr("店面地址") : 送貨地址_tb.Text = dr("送貨地址") : 統編_tb.Text = dr("統一編號")
- End If : conn.Close()
- Else
- SQL_銷售退貨申請_客戶資料_銷售二()
- If (dr.Read()) Then
- 客戶公司_tb.Text = dr("店名") : 手機_tb.Text = dr("手機") : 電話_tb.Text = dr("電話") : 傳真_tb.Text = dr("傳真") : 郵號_tb.Text = dr("店面地址郵遞區號")
- 店面地址_tb.Text = dr("店面地址") : 送貨地址_tb.Text = dr("送貨地址") : 統編_tb.Text = dr("統編") : 付款方式_tb.Text = dr("付款方式")
- End If : conn.Close()
- End If
- End Sub
- Private Sub ComboBox2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 客戶_cb.SelectedIndexChanged
- 客戶編號_cb.SelectedIndex = 客戶_cb.SelectedIndex : 客戶資料()
- End Sub
- Private Sub ComboBox3_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 客戶編號_cb.SelectedIndexChanged
- 客戶_cb.SelectedIndex = 客戶編號_cb.SelectedIndex : 客戶資料()
- End Sub
- Private Sub Set_日期格式轉換()
- DTP = Format(銷售下單_dtp.Value, "yyyy/MM/dd") : DTP1 = Format(銷售下單_dtp.Value, "yyyyMMdd") : DTP2 = Format(客戶交期_dtp.Value, "yyyy/MM/dd")
- End Sub
- Private Sub Set_自動生成流水號()
- SQL_倉儲明細表流水號最後一筆()
- If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("資料流水號").ToString, 8)) : Else : EDR = 0 : End If : conn.Close() : EDR += 1
- If EDR < 10 Then : ESTR = "WD" & "0000000" & EDR
- ElseIf EDR > 9 And EDR < 100 Then : ESTR = "WD" & "000000" & EDR
- ElseIf EDR > 99 And EDR < 1000 Then : ESTR = "WD" & "00000" & EDR
- ElseIf EDR > 999 And EDR < 10000 Then : ESTR = "WD" & "0000" & EDR
- ElseIf EDR > 9999 And EDR < 100000 Then : ESTR = "WD" & "000" & EDR
- ElseIf EDR > 99999 And EDR < 100000 Then : ESTR = "WD" & "00" & EDR
- ElseIf EDR > 999999 And EDR < 1000000 Then : ESTR = "WD" & "0" & EDR
- ElseIf EDR > 9999999 Then : ESTR = "WD" & EDR : End If
- End Sub
- Private Sub 存檔1()
- Dim SSDD As Integer = 0
- For i As Integer = 0 To 明細_dgv.Rows.Count - 1
- 資料數 = 明細_dgv.Rows.Count : MyModule1.進度條()
- PA1 = 明細_dgv.Rows(i).Cells("資料流水號").Value
- SQL_倉儲明細表_入庫日期讀取()
- If dr.Read() Then
- If dr("入庫日期").ToString = "" Then
- NU1 = 明細_dgv.Rows(i).Cells("單價").Value : NU2 = 明細_dgv.Rows(i).Cells("數量").Value
- PA1 = 明細_dgv.Rows(i).Cells("備註").Value : PA2 = DTP2 : PA3 = 明細_dgv.Rows(i).Cells("資料流水號").Value
- SQL_出貨單申請_倉儲明細表修改_出庫() : conn.Close()
- Else
- conn.Close() : SSDD += 1
- End If
- End If
- Next : MAOJI_ERP_SYS.ToolStripProgressBar1.Value = 0 : 最終數 = 0 : If SSDD = 0 Then : Else : End If
- End Sub
- Private Sub Set_新增明細()
- PA1 = ESTR : PA2 = 單據編號_tb.Text : PA3 = 供應商編號_tb.Text : PA4 = 料號_tb.Text : NU1 = 成本金額_nud.Value : NU2 = 匯率_nud.Value : NU3 = 0 : NU4 = 退貨數_nud.Value * -1
- PA5 = "銷售出庫" : PA6 = DTP : PA7 = 客戶編號_cb.Text : NU5 = 本單售價_nud.Value : PA8 = 倉名編號_tb.Text : PA9 = DTP2
- SQL_銷售退貨申請_倉儲明細表新增() : conn.Close() : MsgBox("資料新增完畢 。") : Set_單據明細()
- End Sub
- Private Sub Button1_Click(sender As Object, e As EventArgs) Handles 新增物料到退貨單_bt.Click
- If 料號_tb.Text = "" Then : MsgBox("料號沒有選擇") : Else
- If 客戶編號_cb.Text = "" Then : MsgBox("客戶沒有選擇") : Else
- If 退貨數_nud.Value = 0 Then : MsgBox("數量不可為零") : Else
- If 單據編號_tb.Text = "" Then
- '----------------------自动生成單據編號-------------------------------------------------------------------------
- Dim NUM1 As Integer : Set_日期格式轉換()
- For i As Integer = 1 To 999
- NUM1 = 0 + i
- If NUM1 < 10 Then : 單據編號_tb.Text = "WD-" & DTP1 & "-00" & NUM1
- ElseIf NUM1 > 9 And NUM1 < 100 Then : 單據編號_tb.Text = "WD-" & DTP1 & "-0" & NUM1
- ElseIf NUM1 > 99 Then : 單據編號_tb.Text = "WD-" & DTP1 & "-" & NUM1 : End If
- PA1 = 單據編號_tb.Text : 列印用SQL = 單據編號_tb.Text : SQL_倉儲明細表生成單據編號()
- If dr.Read() Then : Else : i = 999 : conn.Close() : End If : conn.Close()
- Next
- Set_自動生成流水號() : 選擇_tb.Text = ESTR : conn.Close() : 存檔1() : Set_新增明細() : Set_銷售清單()
- Else
- Set_日期格式轉換() : Set_自動生成流水號() : 選擇_tb.Text = ESTR : conn.Close() : 存檔1() : Set_新增明細()
- End If
- End If
- End If
- End If
- End Sub
- Private Sub Button3_Click(sender As Object, e As EventArgs) Handles 修改存檔_bt.Click
- Set_日期格式轉換() : 存檔1() : Set_單據明細() : Set_銷售清單() : MsgBox("資料修改,存檔完畢 。")
- End Sub
- Private Sub NumericUpDown1_ValueChanged(sender As Object, e As EventArgs) Handles 退貨數_nud.ValueChanged
- If 退貨數_nud.Value > Val(可退貨數_tb.Text) Then : MsgBox("退貨數量不可能大於訂貨數 。") : 退貨數_nud.Value = 0 : End If
- End Sub
- '-----------------------------滑鼠右鍵------------------------------------------------------------------------------------------------------------------------------------------
- Private Sub 重新整理ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 重新整理ToolStripMenuItem.Click
- ComboBox2下拉表單資料載入() : ComboBox6下拉表單資料載入() : ComboBox7下拉表單資料載入() : Set_銷售清單()
- End Sub
- Private Sub 新增物料到銷售退貨單ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 新增物料到銷售退貨單ToolStripMenuItem.Click
- Me.新增物料到退貨單_bt.PerformClick()
- End Sub
- Private Sub 刪除採購單中選中的物料ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 刪除採購單中選中的物料ToolStripMenuItem.Click
- PA1 = 選擇_tb.Text : SQL_倉儲明細表_出庫日期讀取()
- If dr.Read() Then
- If dr("出庫日期") = "" Then : conn.Close()
- If 選擇_tb.Text = "" Then : MsgBox("沒有選擇要刪除了料號 。")
- Else
- Dim aa1 As MsgBoxResult = MsgBox("確定要刪除該筆資料?", MsgBoxStyle.OkCancel)
- If aa1 = MsgBoxResult.Ok Then
- PA1 = 選擇_tb.Text : SQL_倉儲明細表刪除() : conn.Close()
- '-----------------最後一筆資料刪除時要把零售客戶紀錄中的資料一起刪除-----------------------------------------------------
- If 明細_dgv.Rows.Count = 1 Then : SQL_出貨單申請_零售客戶記錄表刪除() : conn.Close() : End If : 選擇_tb.Text = "" : Set_單據明細()
- End If
- End If
- Else
- conn.Close() : MsgBox("已入庫的資料不可刪除 。")
- End If
- End If
- End Sub
- Private Sub 修改存檔ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 修改存檔ToolStripMenuItem.Click
- Me.修改存檔_bt.PerformClick()
- End Sub
- End Class
|