Public Class 銷售審查表 Dim xlApp As Microsoft.Office.Interop.Excel.Application ReadOnly xlBook As Microsoft.Office.Interop.Excel.Workbook Dim xlSheet As Microsoft.Office.Interop.Excel.Worksheet Dim 頁面(3) As Boolean Private Sub Set_天心銷售單() Dim ds1 As New DataSet 清單1_dgv.DataSource = Nothing : ds1.Clear() 清單1_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 清單1_dgv.ColumnHeadersHeight = 25 清單1_dgv.AllowUserToAddRows = False SQL_天心銷售單("已轉審查") da1.Fill(ds1) : 清單1_dgv.DataSource = ds1.Tables(0) : conn.Close() 清單1_dgv.Columns(0).FillWeight = 100 : 清單1_dgv.Columns(0).ReadOnly = True For I As Integer = 1 To 14 : 清單1_dgv.Columns(I).Visible = False : Next End Sub Private Sub 清單1_dgv_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 清單1_dgv.RowPostPaint For I As Integer = 0 To 清單1_dgv.Rows.Count - 1 If 清單1_dgv.Rows(I).Cells("還未完單").Value.ToString = "" Then : 清單1_dgv.Rows(I).DefaultCellStyle.BackColor = Color.LightGreen : End If Next End Sub Private Sub Set_天心受訂明細() Dim ds1 As New DataSet 清單1_1_dgv.DataSource = Nothing : ds1.Clear() 清單1_1_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 清單1_1_dgv.ColumnHeadersHeight = 40 清單1_1_dgv.AllowUserToAddRows = False SQL_天心銷售單明細(訂單號_tb.Text, "已轉審查") da1.Fill(ds1) : 清單1_1_dgv.DataSource = ds1.Tables(0) : conn.Close() 清單1_1_dgv.Columns(0).Visible = False : 清單1_1_dgv.Columns(1).FillWeight = 30 : 清單1_1_dgv.Columns(3).FillWeight = 80 : 清單1_1_dgv.Columns(5).FillWeight = 40 清單1_1_dgv.Columns(2).Visible = False : 清單1_1_dgv.Columns(6).FillWeight = 40 : 清單1_1_dgv.Columns(7).FillWeight = 40 : 清單1_1_dgv.Columns(8).FillWeight = 60 清單1_1_dgv.Columns(10).Visible = False : 清單1_1_dgv.Columns(11).FillWeight = 40 : 清單1_1_dgv.Columns(12).FillWeight = 60 : 清單1_1_dgv.Columns(13).FillWeight = 60 清單1_1_dgv.Columns(9).FillWeight = 60 清單1_1_dgv.Columns(5).DefaultCellStyle.Format = "#,##0" : 清單1_1_dgv.Columns(7).DefaultCellStyle.Format = "#,##0.00" 清單1_1_dgv.Columns(8).DefaultCellStyle.Format = "#,##0.00" 清單1_1_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight 清單1_1_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter 清單1_1_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter 清單1_1_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter 清單1_1_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight 清單1_1_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter 清單1_1_dgv.Columns(8).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight 清單1_1_dgv.Columns(8).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter 總數量_lb.Text = "0" : 總金額_lb.Text = "0" For I As Integer = 0 To 13 : 清單1_1_dgv.Columns(I).ReadOnly = True : Next For I As Integer = 0 To 清單1_1_dgv.Rows.Count - 1 清單1_1_dgv.Rows(I).Cells(1).Value = I + 1 : 清單1_1_dgv.Rows(I).Cells("選擇").Value = False If IsDBNull(清單1_1_dgv.Rows(I).Cells("已轉").Value) Then : 清單1_1_dgv.Rows(I).Cells("已轉").Value = False : End If 總數量_lb.Text = CInt(總數量_lb.Text) + 清單1_1_dgv.Rows(I).Cells("數量").Value 總金額_lb.Text = CInt(總金額_lb.Text) + 清單1_1_dgv.Rows(I).Cells("金額").Value Next 總數量_lb.Text = Strings.Format(CInt(總數量_lb.Text), "#,##0") : 總金額_lb.Text = Strings.Format(CInt(總金額_lb.Text), "#,##0") End Sub Private Sub Set_銷售單() Dim ds1 As New DataSet 清單2_dgv.DataSource = Nothing : ds1.Clear() 清單2_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 清單2_dgv.ColumnHeadersHeight = 25 清單2_dgv.AllowUserToAddRows = False SQL_訂單控制表() da1.Fill(ds1) : 清單2_dgv.DataSource = ds1.Tables(0) : conn.Close() 清單2_dgv.Columns(0).FillWeight = 100 : 清單2_dgv.Columns(0).ReadOnly = True For I As Integer = 1 To 10 : 清單2_dgv.Columns(I).Visible = False : Next End Sub Private Sub Set_銷售單明細() Dim ds1 As New DataSet 清單2_1_dgv.DataSource = Nothing : ds1.Clear() 清單2_1_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 清單2_1_dgv.ColumnHeadersHeight = 25 清單2_1_dgv.AllowUserToAddRows = False SQL_訂單明細表(客戶訂單_bt.Text) da1.Fill(ds1) : 清單2_1_dgv.DataSource = ds1.Tables(0) : conn.Close() 清單2_1_dgv.Columns(0).FillWeight = 20 : 清單2_1_dgv.Columns(5).FillWeight = 30 : 清單2_1_dgv.Columns(4).FillWeight = 30 : 清單2_1_dgv.Columns(6).FillWeight = 60 清單2_1_dgv.Columns(2).FillWeight = 80 : 清單2_1_dgv.Columns(3).FillWeight = 80 : 清單2_1_dgv.Columns("流水號").Visible = False : 清單2_1_dgv.Columns("選擇").Visible = False 清單2_1_dgv.Columns(0).ReadOnly = True : 清單2_1_dgv.Columns(1).ReadOnly = True : 清單2_1_dgv.Columns(4).ReadOnly = True : 清單2_1_dgv.Columns(5).ReadOnly = True For I As Integer = 7 To 14 : 清單2_1_dgv.Columns(I).FillWeight = 80 : Next 清單2_1_dgv.Columns(4).DefaultCellStyle.Format = "#,##0" : 清單2_1_dgv.Columns(5).DefaultCellStyle.Format = "#,##0.00" 清單2_1_dgv.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight 清單2_1_dgv.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter 清單2_1_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight 清單2_1_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter 清單2_1_dgv.EditMode = DataGridViewEditMode.EditOnEnter For I As Integer = 0 To 清單2_1_dgv.Rows.Count - 1 : 清單2_1_dgv.Rows(I).Cells(0).Value = I + 1 : 清單2_1_dgv.Rows(I).Cells("選擇").Value = False : Next 清單1_dgv格式() End Sub Private Sub 清單1_dgv格式() If 清單2_1_dgv.Rows.Count > 0 Then If 頁面(0) = True And 頁面(1) = False And 頁面(2) = False And 頁面(3) = False Then 清單2_1_dgv.Columns(5).Visible = True For I As Integer = 7 To 14 : 清單2_1_dgv.Columns(I).Visible = False : Next ElseIf 頁面(0) = False And 頁面(1) = True And 頁面(2) = False And 頁面(3) = False Then 清單2_1_dgv.Columns(5).Visible = False For I As Integer = 7 To 8 : 清單2_1_dgv.Columns(I).Visible = True : Next For I As Integer = 9 To 14 : 清單2_1_dgv.Columns(I).Visible = False : Next ElseIf 頁面(0) = False And 頁面(1) = False And 頁面(2) = True And 頁面(3) = False Then 清單2_1_dgv.Columns(5).Visible = False For I As Integer = 7 To 8 : 清單2_1_dgv.Columns(I).Visible = False : Next For I As Integer = 9 To 11 : 清單2_1_dgv.Columns(I).Visible = True : Next For I As Integer = 12 To 14 : 清單2_1_dgv.Columns(I).Visible = False : Next ElseIf 頁面(0) = False And 頁面(1) = False And 頁面(2) = False And 頁面(3) = True Then 清單2_1_dgv.Columns(5).Visible = False For I As Integer = 7 To 11 : 清單2_1_dgv.Columns(I).Visible = False : Next For I As Integer = 12 To 14 : 清單2_1_dgv.Columns(I).Visible = True : Next End If End If End Sub Private Sub 清單1_dgv_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles 清單1_dgv.CellClick If e.RowIndex = -1 Then : Else 訂單號_tb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("受訂單號").Value.ToString : 受訂日期_dtp.Value = 清單1_dgv.Rows(e.RowIndex).Cells("受訂日期").Value.ToString 預交日期_dtp.Value = 清單1_dgv.Rows(e.RowIndex).Cells("預交日期").Value.ToString : 客戶編號_tb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("客戶編號").Value.ToString 客戶名稱_tb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("客戶名稱").Value.ToString : 統一編號_tb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("統一編號").Value.ToString 連絡電話_tb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("連絡電話").Value.ToString : 送貨地址_tb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("送貨地址").Value.ToString 傳真_tb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("傳真").Value.ToString : 經辦業務_tb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("經辦業務").Value.ToString 交易方式_tb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("交易方式").Value.ToString : 備註_tb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("備註").Value.ToString 幣別_tb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("幣別").Value.ToString : 匯率_tb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("匯率").Value.ToString Set_天心受訂明細() : 資料比對() End If End Sub Private Sub 資料比對() Dim 通知 As Boolean = False For I As Integer = 0 To 清單1_1_dgv.Rows.Count - 1 If 清單1_1_dgv.Rows(I).Cells("已轉").Value = False Then If 清單1_1_dgv.Rows(I).Cells("訂單號").Value.ToString = 客戶訂單_bt.Text And 客戶訂單_bt.Text <> "" Then 清單1_1_dgv.Rows(I).Cells("選擇").Value = True : 通知 = True End If End If Next If 通知 = True Then Dim result As DialogResult = MessageBox.Show("系統在受訂單 [ " & 訂單號_tb.Text & "] 的資料中找到可以轉移到 訂單審查表 [ " & 客戶訂單_bt.Text & "] 的資料,是否將資料加入?", "請選擇", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If result = DialogResult.Yes Then : 增加明細_bt.PerformClick() : End If End If End Sub Private Sub 清單_dgv_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles 清單1_1_dgv.CellClick If e.RowIndex = -1 Then : Else If 清單1_1_dgv.Rows(e.RowIndex).Cells("已轉").Value = False Then If 清單1_1_dgv.Rows(e.RowIndex).Cells("訂單號").Value.ToString = "" Then If 清單1_1_dgv.Rows(e.RowIndex).Cells("選擇").Value = False Then 清單1_1_dgv.Rows(e.RowIndex).Cells("選擇").Value = True Else : 清單1_1_dgv.Rows(e.RowIndex).Cells("選擇").Value = False : End If End If End If End If End Sub Private Sub 清單_dgv_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 清單1_1_dgv.RowPostPaint For i As Integer = 0 To 清單1_1_dgv.Rows.Count - 1 If 清單1_1_dgv("選擇", i).Value = True Then 清單1_1_dgv.Rows(i).DefaultCellStyle.BackColor = Color.LightGreen Else : 清單1_1_dgv.Rows(i).DefaultCellStyle.BackColor = Color.White : End If Next End Sub Private Sub 清單2_dgv_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles 清單2_dgv.CellClick If e.RowIndex = -1 Then : Else SQL1 = "SELECT 客戶訂單, 客戶名稱, 接收日期, 訂單效期, 交運條件, 付款條件, 業務審批, 生管審批, 製造審批, 品保審批, 總經理 FROM 訂單審查控制表 ORDER BY 客戶訂單 DESC" 客戶訂單_bt.Text = 清單2_dgv.Rows(e.RowIndex).Cells("客戶訂單").Value.ToString : 客戶名稱_cb.Text = 清單2_dgv.Rows(e.RowIndex).Cells("客戶名稱").Value.ToString 接收日期_dtp.Value = 清單2_dgv.Rows(e.RowIndex).Cells("接收日期").Value.ToString : 訂單效期_dtp.Value = 清單2_dgv.Rows(e.RowIndex).Cells("訂單效期").Value.ToString 交運條件_cb.Text = 清單2_dgv.Rows(e.RowIndex).Cells("交運條件").Value.ToString : 付款條件_cb.Text = 清單2_dgv.Rows(e.RowIndex).Cells("付款條件").Value.ToString 業務審批_tb.Text = 清單2_dgv.Rows(e.RowIndex).Cells("業務審批").Value.ToString : 生管審批_tb.Text = 清單2_dgv.Rows(e.RowIndex).Cells("生管審批").Value.ToString 製造審批_tb.Text = 清單2_dgv.Rows(e.RowIndex).Cells("製造審批").Value.ToString : 品保審批_tb.Text = 清單2_dgv.Rows(e.RowIndex).Cells("品保審批").Value.ToString 總經理_tb.Text = 清單2_dgv.Rows(e.RowIndex).Cells("總經理").Value.ToString Set_銷售單明細() : 資料比對() End If End Sub Private Sub 清單2_1_dgv_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 清單2_1_dgv.MouseUp Dim 位置Y As Integer = 清單2_1_dgv.SelectedCells(0).ColumnIndex : Dim 位置 As Integer = 清單2_1_dgv.SelectedCells(0).RowIndex If 位置Y = 0 Or 位置Y = 1 Or 位置Y = 4 Or 位置Y = 5 Then If 清單2_1_dgv.Rows(位置).Cells("選擇").Value = False Then : 清單2_1_dgv.Rows(位置).Cells("選擇").Value = True Else : 清單2_1_dgv.Rows(位置).Cells("選擇").Value = False : End If End If End Sub Private Sub 清單2_1_dgv_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 清單2_1_dgv.RowPostPaint For i As Integer = 0 To 清單2_1_dgv.Rows.Count - 1 If 清單2_1_dgv("選擇", i).Value = True Then 清單2_1_dgv.Rows(i).DefaultCellStyle.BackColor = Color.LightGreen Else : 清單2_1_dgv.Rows(i).DefaultCellStyle.BackColor = Color.White : End If Next End Sub Private Sub 下拉清單刷新() SQL_訂單_客戶名稱() : 客戶名稱_cb.Items.Clear() : While (dr1.Read()) : 客戶名稱_cb.Items.Add(dr1("客戶名稱")) : End While SQL_訂單_交運條件() : 交運條件_cb.Items.Clear() : While (dr1.Read()) : 交運條件_cb.Items.Add(dr1("交運條件")) : End While SQL_訂單_付款條件() : 付款條件_cb.Items.Clear() : While (dr1.Read()) : 付款條件_cb.Items.Add(dr1("付款條件")) : End While End Sub Private Sub 銷售審查表_Load(sender As Object, e As EventArgs) Handles MyBase.Load Me.MdiParent = HT_ERP_SELLINGPI : Me.WindowState = 2 : Me.AutoScroll = True 首次進入 = True 客戶訂單_bt.ReadOnly = True : 頁面(0) = True : 頁面(1) = False : 頁面(2) = False : 頁面(3) = False 首次進入 = False End Sub Private Sub 銷售審查表_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown Set_天心銷售單() : Set_銷售單() : 下拉清單刷新() End Sub Private Sub 導入受訂單_bt_Click(sender As Object, e As EventArgs) Handles 導入受訂單_bt.Click With 開啟檔案 .Title = "選擇 Excel 檔案" .Filter = "Excel 檔案 (*.xls;*.xlsx)|*.xls;*.xlsx" .FilterIndex = 1 ' 預設選項 .RestoreDirectory = True ' 關閉後回到先前的資料夾 .Multiselect = False ' 限制只能選擇單一檔案 End With : Dim file_name As String If 開啟檔案.ShowDialog = Windows.Forms.DialogResult.OK Then Try file_name = 開啟檔案.FileName xlApp = CreateObject("Excel.Application") xlApp.DisplayAlerts = True xlApp.Visible = True xlApp.Workbooks.Open(file_name) xlSheet = xlApp.Worksheets(1) : xlSheet.Activate() Dim 檔案 As String = xlSheet.Cells(1, 2).value If 檔案 = "受 訂 單" Then 訂單號_tb.Text = Strings.Mid(xlSheet.Cells(6, 7).value, 6, 50) : 受訂日期_dtp.Value = xlSheet.Cells(2, 2).value 預交日期_dtp.Value = Strings.Mid(xlSheet.Cells(7, 7).value, 6, 50) : 客戶編號_tb.Text = Strings.Mid(xlSheet.Cells(6, 2).value, 6, 4) 客戶名稱_tb.Text = Strings.Mid(xlSheet.Cells(6, 2).value, 10, 50) : 統一編號_tb.Text = Strings.Mid(xlSheet.Cells(7, 2).value, 6, 50) 連絡電話_tb.Text = Strings.Mid(xlSheet.Cells(8, 2).value, 6, 50) : 送貨地址_tb.Text = Strings.Mid(xlSheet.Cells(9, 2).value, 6, 50) 傳真_tb.Text = Strings.Mid(xlSheet.Cells(8, 4).value, 6, 50) : 經辦業務_tb.Text = Strings.Mid(xlSheet.Cells(8, 7).value, 11, 50) 交易方式_tb.Text = Strings.Mid(xlSheet.Cells(42, 2).value, 6, 100) : 備註_tb.Text = Strings.Mid(xlSheet.Cells(43, 2).value, 9, 100) 幣別_tb.Text = xlSheet.Cells(3, 3).value : 匯率_tb.Text = xlSheet.Cells(3, 4).value xlApp.Visible = False If 訂單號_tb.Text <> "" Then SQL_受訂控制表查詢(訂單號_tb.Text) If dr1.Read Then MsgBox("該檔案已經存在系統中,不需要重複導入!!") : xlApp.Visible = True : xlApp.Quit() : xlApp = Nothing : Exit Sub Else SQL_受訂控制表新增(訂單號_tb.Text, Strings.Format(受訂日期_dtp.Value, "yyyy/MM/dd"), Strings.Format(預交日期_dtp.Value, "yyyy/MM/dd"), 客戶編號_tb.Text, 客戶名稱_tb.Text, 統一編號_tb.Text, 連絡電話_tb.Text, 送貨地址_tb.Text, 傳真_tb.Text, 經辦業務_tb.Text, 交易方式_tb.Text, 備註_tb.Text, 幣別_tb.Text, 匯率_tb.Text) End If Dim NUM1 As Integer : Dim 流水號 As String = "" SQL_受訂明細表刪除(訂單號_tb.Text) : SQL_受訂明細表查詢() If dr1.Read Then : NUM1 = Strings.Right(dr1("流水號"), 5) : Else : NUM1 = 0 : End If For i As Integer = 11 To 99999 Dim 判斷 As String = xlSheet.Cells(i, 2).value : If Strings.Left(判斷, 4) = "" Or Strings.Left(判斷, 4) = "交易方式" Then : Exit For : End If NUM1 += 1 If NUM1 < 10 Then : 流水號 = "SO-" & Strings.Format(Today(), "yyyyMMdd") & "-0000" & NUM1 ElseIf NUM1 > 9 And NUM1 < 100 Then : 流水號 = "SO-" & Strings.Format(Today(), "yyyyMMdd") & "-000" & NUM1 ElseIf NUM1 > 99 And NUM1 < 1000 Then : 流水號 = "SO-" & Strings.Format(Today(), "yyyyMMdd") & "-00" & NUM1 ElseIf NUM1 > 999 And NUM1 < 10000 Then : 流水號 = "SO-" & Strings.Format(Today(), "yyyyMMdd") & "-0" & NUM1 ElseIf NUM1 > 9999 Then : 流水號 = "SO-" & Strings.Format(Today(), "yyyyMMdd") & "-" & NUM1 : End If SQL_受訂明細表新增(流水號, 訂單號_tb.Text, xlSheet.Cells(i, 2).value, xlSheet.Cells(i, 3).value, xlSheet.Cells(i, 4).value, xlSheet.Cells(i, 5).value, xlSheet.Cells(i, 6).value, xlSheet.Cells(i, 7).value, xlSheet.Cells(i, 8).value, xlSheet.Cells(i, 10).value, xlSheet.Cells(i, 11).value) Next Else : xlApp.Visible = True : xlApp.Quit() : xlApp = Nothing : MsgBox("導入的資料有問題,請重新確認,或是通知系統管理員!!") : Exit Sub : End If Else : xlApp.Visible = True : xlApp.Quit() : xlApp = Nothing : MsgBox("您選擇的檔案並不是[受訂單],該介面目前不能導入非受訂單的檔案!!") : Exit Sub : End If Catch ex As Exception : MsgBox(ex.Message) : End Try xlApp.Visible = True : xlApp.Quit() : xlApp = Nothing : MsgBox("資料導入完成") : Set_天心銷售單() : Set_天心受訂明細() End If End Sub Private Sub 刪除受訂單_bt_Click(sender As Object, e As EventArgs) Handles 刪除受訂單_bt.Click If CC(8) = False Then : MsgBox("您的帳號沒有刪除資料的權限!!") : Else If 訂單號_tb.Text <> "" Then : Dim 不可刪除 As Boolean = False For I As Integer = 0 To 清單1_1_dgv.Rows.Count - 1 : If 清單1_1_dgv.Rows(I).Cells("已轉").Value = True Then : 不可刪除 = True : Exit For : End If : Next If 不可刪除 = False Then Dim result As DialogResult = MessageBox.Show("請再次確認您是否要從外掛系統中刪除受訂單 [ " & 訂單號_tb.Text & "] 的資料?", "請選擇", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If result = DialogResult.Yes Then SQL_受訂控制表刪除(訂單號_tb.Text) : SQL_受訂明細表刪除(訂單號_tb.Text) : MsgBox("資料刪除完成!!") Set_天心銷售單() : 清單1_1_dgv.DataSource = Nothing 訂單號_tb.Text = "" : 受訂日期_dtp.Value = Today() : 預交日期_dtp.Value = Today() : 客戶編號_tb.Text = "" : 客戶名稱_tb.Text = "" : 統一編號_tb.Text = "" 連絡電話_tb.Text = "" : 送貨地址_tb.Text = "" : 傳真_tb.Text = "" : 經辦業務_tb.Text = "" : 交易方式_tb.Text = "" : 備註_tb.Text = "" End If Else : MsgBox("該受訂單的資料已經有引用在 COMMERCIAL INVOICE 無法刪除!!") : End If Else : MsgBox("請選擇要刪除的受訂單!!") : End If End If End Sub Private Sub 重新讀取_bt_Click(sender As Object, e As EventArgs) Handles 重新讀取_bt.Click Set_天心銷售單() End Sub Private Sub 增加明細_bt_Click(sender As Object, e As EventArgs) Handles 增加明細_bt.Click If 客戶訂單_bt.Text = "" Then : MsgBox("必須要先生成訂單審查表才能做轉移的操作!!") : Else If 客戶訂單_bt.ReadOnly = False Then : MsgBox("存檔後才能操作!!") : Else If CC(7) = False Then : MsgBox("您的帳號沒有編輯資料的權限!!") : Else SQL_訂單控制表重複檢查(訂單號_tb.Text, 客戶訂單_bt.Text) If dr1.Read Then : MsgBox("該受訂單已經有轉移到外掛系統中,不需要重複轉移!!") : Else For i As Integer = 0 To 清單1_1_dgv.Rows.Count - 1 If 清單1_1_dgv.Rows(i).Cells("選擇").Value = True Then SQL_訂單明細表新增(清單1_1_dgv.Rows(i).Cells("流水號").Value.ToString, 客戶訂單_bt.Text, "[" & 清單1_1_dgv.Rows(i).Cells("產品編號").Value.ToString & "] " & 清單1_1_dgv.Rows(i).Cells("產品名稱").Value.ToString, 清單1_1_dgv.Rows(i).Cells("貨號").Value.ToString, 清單1_1_dgv.Rows(i).Cells("貨號").Value.ToString, 清單1_1_dgv.Rows(i).Cells("數量").Value.ToString, 清單1_1_dgv.Rows(i).Cells("單價").Value.ToString, Strings.Format(預交日期_dtp.Value, "yyyy/MM/dd"), "", "", "", "", "", "", "", "", 訂單號_tb.Text) SQL_受訂明細表轉移標註(清單1_1_dgv.Rows(i).Cells("流水號").Value.ToString, "1", "已轉審查") End If Next : Set_銷售單明細() : Set_天心受訂明細() : Set_天心銷售單() : MsgBox("資料轉移完成!!") End If End If End If End If End Sub Private Sub 刪除明細_bt_Click(sender As Object, e As EventArgs) Handles 刪除明細_bt.Click If 客戶訂單_bt.ReadOnly = False Then : MsgBox("存檔後才能操作!!") : Else If CC(7) = False Then : MsgBox("您的帳號沒有編輯資料的權限!!") : Else If 客戶訂單_bt.Text = "" Then : MsgBox("沒有選擇 [訂單審查表] 無法轉移受訂單明細資料,請先選擇 [訂單審查表]!!") : Else For I As Integer = 0 To 清單2_1_dgv.Rows.Count - 1 If 清單2_1_dgv.Rows(I).Cells("選擇").Value = True Then SQL_訂單明細表刪除(清單2_1_dgv.Rows(I).Cells("流水號").Value.ToString, 客戶訂單_bt.Text) SQL_受訂明細表轉移標註(清單2_1_dgv.Rows(I).Cells("流水號").Value.ToString, "0", "已轉審查") End If Next : Set_銷售單明細() : Set_天心受訂明細() : Set_天心銷售單() : MsgBox("選定的資料已從 [訂單審查表] 中撤回受訂單中!!") End If End If End If End Sub Private Sub 新增_bt_Click(sender As Object, e As EventArgs) Handles 新增_bt.Click If CC(7) = False Then : MsgBox("您的帳號沒有編輯資料的權限!!") : Else 客戶訂單_bt.ReadOnly = False : 客戶訂單_bt.Text = "" : 客戶名稱_cb.Text = "" : 接收日期_dtp.Value = Today() : 訂單效期_dtp.Value = Today() 交運條件_cb.Text = "" : 付款條件_cb.Text = "" : 業務審批_tb.Text = "" : 生管審批_tb.Text = "" : 製造審批_tb.Text = "" : 品保審批_tb.Text = "" 總經理_tb.Text = "" : 清單2_1_dgv.DataSource = Nothing End If End Sub Private Sub 存檔_bt_Click(sender As Object, e As EventArgs) Handles 存檔_bt.Click Dim 不可存檔 As Boolean = False : Dim 通知(3) As String If 客戶訂單_bt.Text = "" Then : 通知(0) = 客戶訂單_lb.Text & "," : 不可存檔 = True : End If If 客戶名稱_cb.Text = "" Then : 通知(1) = 客戶名稱_lb.Text & "," : 不可存檔 = True : End If If 交運條件_cb.Text = "" Then : 通知(2) = 交運條件_lb.Text & "," : 不可存檔 = True : End If If 付款條件_cb.Text = "" Then : 通知(3) = 付款條件_lb.Text & "," : 不可存檔 = True : End If If 不可存檔 = False Then SQL_訂單控制表查詢(客戶訂單_bt.Text) If dr1.Read Then SQL_訂單控制表修改(客戶訂單_bt.Text, 客戶名稱_cb.Text, Strings.Format(接收日期_dtp.Value, "yyyy/MM/dd"), Strings.Format(訂單效期_dtp.Value, "yyyy/MM/dd"), 交運條件_cb.Text, 付款條件_cb.Text, 業務審批_tb.Text, 生管審批_tb.Text, 製造審批_tb.Text, 品保審批_tb.Text, 總經理_tb.Text) Else SQL_訂單控制表新增(客戶訂單_bt.Text, 客戶名稱_cb.Text, Strings.Format(接收日期_dtp.Value, "yyyy/MM/dd"), Strings.Format(訂單效期_dtp.Value, "yyyy/MM/dd"), 交運條件_cb.Text, 付款條件_cb.Text, 業務審批_tb.Text, 生管審批_tb.Text, 製造審批_tb.Text, 品保審批_tb.Text, 總經理_tb.Text) End If For I As Integer = 0 To 清單2_1_dgv.Rows.Count - 1 SQL_訂單明細表修改(清單2_1_dgv.Rows(I).Cells("流水號").Value.ToString, 客戶訂單_bt.Text, 清單2_1_dgv.Rows(I).Cells("品名").Value.ToString, 清單2_1_dgv.Rows(I).Cells("件號").Value.ToString, 清單2_1_dgv.Rows(I).Cells("圖面編號").Value.ToString, 清單2_1_dgv.Rows(I).Cells("數量").Value.ToString, 清單2_1_dgv.Rows(I).Cells("單價").Value.ToString, 清單2_1_dgv.Rows(I).Cells("交期").Value.ToString, 清單2_1_dgv.Rows(I).Cells("外包製程").Value.ToString, 清單2_1_dgv.Rows(I).Cells("材料").Value.ToString, 清單2_1_dgv.Rows(I).Cells("標準製造程序").Value.ToString, 清單2_1_dgv.Rows(I).Cells("射蠟模具").Value.ToString, 清單2_1_dgv.Rows(I).Cells("CNC程式").Value.ToString, 清單2_1_dgv.Rows(I).Cells("使用量具").Value.ToString, 清單2_1_dgv.Rows(I).Cells("量測設備").Value.ToString, 清單2_1_dgv.Rows(I).Cells("標準檢驗程序").Value.ToString) Next : 客戶訂單_bt.ReadOnly = True : MsgBox("存檔完成!!") : Set_銷售單() : Set_銷售單明細() : 下拉清單刷新() : 資料比對() Else : MsgBox(通知(0) & 通知(1) & 通知(2) & 通知(3) & "不可以空白,請注意資料完整性!!") End If End Sub Private Sub 刪除發票_bt_Click(sender As Object, e As EventArgs) Handles 刪除發票_bt.Click If CC(8) = False Then : MsgBox("您的帳號沒有刪除資料的權限!!") : Else If 客戶訂單_bt.Text <> "" Then Dim result As DialogResult = MessageBox.Show("請再次確認您是否要從外掛系統中刪除銷售審查表 [ " & 客戶訂單_bt.Text & "] 的資料?", "請選擇", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If result = DialogResult.Yes Then SQL_訂單控制表刪除(客戶訂單_bt.Text) For I As Integer = 0 To 清單2_1_dgv.Rows.Count - 1 SQL_訂單明細表刪除(清單2_1_dgv.Rows(I).Cells("流水號").Value.ToString, 客戶訂單_bt.Text) SQL_受訂明細表轉移標註(清單2_1_dgv.Rows(I).Cells("流水號").Value.ToString, "0", "已轉審查") Next : MsgBox("資料刪除完成!!") Set_銷售單() : Set_天心受訂明細() : Set_天心銷售單() : 客戶訂單_bt.Text = "" : 客戶名稱_cb.Text = "" : 接收日期_dtp.Value = Today() : 訂單效期_dtp.Value = Today() 交運條件_cb.Text = "" : 付款條件_cb.Text = "" : 業務審批_tb.Text = "" : 生管審批_tb.Text = "" : 製造審批_tb.Text = "" : 品保審批_tb.Text = "" 總經理_tb.Text = "" : 清單2_1_dgv.DataSource = Nothing End If Else : MsgBox("請選擇要刪除的訂單!!") : End If End If End Sub Private Sub 業務_bt_Click(sender As Object, e As EventArgs) Handles 業務_bt.Click 頁面(0) = True : 頁面(1) = False : 頁面(2) = False : 頁面(3) = False : 清單1_dgv格式() End Sub Private Sub 生管_bt_Click(sender As Object, e As EventArgs) Handles 生管_bt.Click 頁面(0) = False : 頁面(1) = True : 頁面(2) = False : 頁面(3) = False : 清單1_dgv格式() End Sub Private Sub 製造_bt_Click(sender As Object, e As EventArgs) Handles 製造_bt.Click 頁面(0) = False : 頁面(1) = False : 頁面(2) = True : 頁面(3) = False : 清單1_dgv格式() End Sub Private Sub 品保_bt_Click(sender As Object, e As EventArgs) Handles 品保_bt.Click 頁面(0) = False : 頁面(1) = False : 頁面(2) = False : 頁面(3) = True : 清單1_dgv格式() End Sub Private Sub 列印_bt_Click(sender As Object, e As EventArgs) Handles 列印_bt.Click End Sub End Class