Option Strict Off Public Class 特支費審核 Dim RI As Integer = -1 Dim SK As String = "要查找的 KEY" Dim Str As String = Application.StartupPath Dim 新項次 As String Dim NUM1 As Integer Dim 對話框(14) As String Private Sub Set_清單1() Dim ds1 As New DataSet : 清單_dgv.DataSource = Nothing : ds1.Clear() 清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 清單_dgv.ColumnHeadersHeight = 50 : 清單_dgv.AllowUserToAddRows = False SQL_特支費與傭金清單_核准() : da.Fill(ds1) : 清單_dgv.DataSource = ds1.Tables(0) : conn.Close() 清單_dgv.Columns(0).FillWeight = 120 : 清單_dgv.Columns(1).Visible = False : 清單_dgv.Columns(2).FillWeight = 170 : 清單_dgv.Columns(3).FillWeight = 80 清單_dgv.Columns(4).Visible = False : 清單_dgv.Columns(5).Visible = False : 清單_dgv.Columns(6).Visible = False : 清單_dgv.Columns(7).Visible = False End Sub Private Sub Set_零用金清單() If 首次開啟 = True Then : Else Dim ds As New DataSet : 明細_dgv.DataSource = Nothing : ds.Clear() 明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 明細_dgv.ColumnHeadersHeight = 25 : 明細_dgv.AllowUserToAddRows = False : 明細_dgv.RowTemplate.Height = 35 If 小間距_ch.Checked = False And 中間距_ch.Checked = False And 大間距_ch.Checked = True Then : 明細_dgv.RowTemplate.Height = 65 ElseIf 小間距_ch.Checked = False And 中間距_ch.Checked = True And 大間距_ch.Checked = False Then : 明細_dgv.RowTemplate.Height = 45 ElseIf 小間距_ch.Checked = True And 中間距_ch.Checked = False And 大間距_ch.Checked = False Then : 明細_dgv.RowTemplate.Height = 25 : End If PA = 單據_tb.Text : 表頭(11) = "會" : 表頭(12) = "出" : SQL2 = "" : SQL_特支費與傭金明細() : da.Fill(ds) : 明細_dgv.DataSource = ds.Tables(0) : conn.Close() 明細_dgv.Columns(0).Visible = False : 明細_dgv.Columns(1).FillWeight = 80 : 明細_dgv.Columns(2).FillWeight = 120 : 明細_dgv.Columns(3).FillWeight = 400 明細_dgv.Columns(4).Visible = False : 明細_dgv.Columns(5).FillWeight = 140 : 明細_dgv.Columns(6).FillWeight = 400 : 明細_dgv.Columns(7).Visible = False 明細_dgv.Columns(8).Visible = False : 明細_dgv.Columns(9).Visible = False : 明細_dgv.Columns(10).Visible = False 明細_dgv.Columns(1).ReadOnly = True : 明細_dgv.Columns(2).ReadOnly = True : 明細_dgv.Columns(3).ReadOnly = True : 明細_dgv.Columns(5).ReadOnly = True 明細_dgv.Columns(6).ReadOnly = True 明細_dgv.Columns(5).DefaultCellStyle.Format = "#,##0" 明細_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter 明細_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter 明細_dgv.EditMode = DataGridViewEditMode.EditOnEnter 總金額_tb.Text = "0" Dim mycol1 As DataGridViewImageColumn = 明細_dgv.Columns(表頭(7)) : mycol1.ImageLayout = DataGridViewImageCellLayout.Zoom Dim mycol2 As DataGridViewImageColumn = 明細_dgv.Columns(表頭(8)) : mycol2.ImageLayout = DataGridViewImageCellLayout.Zoom For i As Integer = 0 To 明細_dgv.Rows.Count - 1 明細_dgv.Rows(i).Cells(表頭(7)).Value = My.Resources.add_2 : 明細_dgv.Rows(i).Cells(表頭(8)).Value = My.Resources.Close 總金額_tb.Text = Val(總金額_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(5)).Value If 明細_dgv(9, i).Value = True Or 明細_dgv(10, i).Value = True Then : 明細_dgv(5, i).ReadOnly = True : End If Next i 總金額_tb.Text = Format(Val(總金額_tb.Text), "#,##0") End If End Sub Private Sub Set_日期格式轉換() DTP = Format(Today(), "yyyy/MM/dd") & "-" & Format(TimeOfDay(), "HH:mm:ss") : DTP1 = Format(Today(), "yyyyMMdd") End Sub Private Sub 語言轉換讀取() If 系統語言 = "繁體中文" Then : 語言 = "CH" : ElseIf 系統語言 = "English" Then : 語言 = "EN" : ElseIf 系統語言 = "Indonesian" Then : 語言 = "IN" : End If Me.Text = 系統語言字典("H001-276-" & 語言) : ToolTip1.ToolTipTitle = 系統語言字典("G000-108-" & 語言) : 表頭(2) = 系統語言字典("H904-104-" & 語言) 表頭(3) = 系統語言字典("H204-125-" & 語言) : 表頭(4) = 系統語言字典("H304-100-" & 語言) : 表頭(5) = 系統語言字典("H204-109-" & 語言) 表頭(6) = 系統語言字典("H204-123-" & 語言) : 表頭(7) = 系統語言字典("H304-101-" & 語言) : 表頭(8) = 系統語言字典("H304-102-" & 語言) Label8.Text = 系統語言字典("H304-103-" & 語言) : 對話框(0) = 系統語言字典("H906-111-" & 語言) : 對話框(1) = 系統語言字典("H206-134-" & 語言) 對話框(2) = 系統語言字典("H206-135-" & 語言) : 對話框(3) = 系統語言字典("G000-110-" & 語言) : 對話框(4) = 系統語言字典("H704-121-" & 語言) 對話框(5) = 系統語言字典("G000-218-" & 語言) : 對話框(6) = 系統語言字典("G000-119-" & 語言) : 對話框(7) = 系統語言字典("H204-131-" & 語言) 對話框(8) = 系統語言字典("G000-120-" & 語言) : 對話框(9) = 系統語言字典("G000-124-" & 語言) : 對話框(10) = 系統語言字典("H304-106-" & 語言) 對話框(11) = 系統語言字典("H304-107-" & 語言) : 表頭(13) = 系統語言字典("H305-106-" & 語言) : 對話框(12) = 系統語言字典("G000-221-" & 語言) 表頭(0) = 系統語言字典("G000-217-" & 語言) : Label1.Text = 系統語言字典("G000-217-" & 語言) : 表頭(1) = 系統語言字典("H904-103-" & 語言) Label3.Text = 系統語言字典("H904-103-" & 語言) : 對話框(13) = 系統語言字典("G000-117-" & 語言) : 對話框(14) = 系統語言字典("H906-107-" & 語言) End Sub Private Sub 新增項目_bt_MouseEnter(sender As Object, e As EventArgs) Handles 核准_bt.MouseEnter ToolTip1.SetToolTip(Me.核准_bt, 對話框(1)) End Sub Private Sub 刪除項目_bt_MouseEnter(sender As Object, e As EventArgs) Handles 作廢_bt.MouseEnter ToolTip1.SetToolTip(Me.作廢_bt, 對話框(2)) End Sub Private Sub 支付品項() 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 甲方條件下拉清單讀取() SQL合約條件讀取() : 合約編號1_cb.Items.Clear() : 合約編號1_cb.Items.Add("") : While (dr.Read()) : 合約編號1_cb.Items.Add(dr("約號甲方")) : End While : conn.Close() End Sub Private Sub 特支費審核_Load(sender As Object, e As EventArgs) Handles MyBase.Load Me.MdiParent = HX_PGS_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True 風格() : H(315) = True : 介面 = "H315" : 語言轉換讀取() : 顯示說明(999, False) Panel1.SendToBack() MyMod.清單字體大小調整() 清單_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value) 明細_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value) End Sub Private Sub 特支費審核_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown 支付品項() : 甲方條件下拉清單讀取() : Set_清單1() : SQL_特支費與傭金申請明細預設() : 首次開啟 = False : WEB說明頁面.BringToFront() End Sub Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True End Sub Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True End Sub Private Sub 系統說明_bt_Click(sender As Object, e As EventArgs) Handles 系統說明_bt.Click 介面 = "H315" : WEB說明頁面.Show() End Sub Private Sub 語轉扭_bt_Click(sender As Object, e As EventArgs) Handles 語轉扭_bt.Click H(304) = True : 介面 = "H315" : 支付品項() : 語言轉換讀取() : Set_清單1() : Set_零用金清單() End Sub Private Sub 特支費審核_Closed(sender As Object, e As EventArgs) Handles MyBase.Closed H(304) = False : MyMod.虛擬桌面開啟() End Sub Private Sub 清單_dgv_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 清單_dgv.CellClick If e.RowIndex = -1 Then : Else PA = 清單_dgv(0, e.RowIndex).Value.ToString : PA1 = 清單_dgv(1, e.RowIndex).Value.ToString : PA2 = 清單_dgv(2, e.RowIndex).Value.ToString 單據_tb.Text = PA : TextBox2.Text = PA1 : 申請人_tb.Text = PA2 : 首次開啟 = False : Set_零用金清單() If 明細_dgv.Rows.Count = 0 Then For w As Integer = 0 To 9999 If 合約編號1_cb.Items.Count > 2999 Then : MGB(對話框(12), 1) : Else For I As Integer = 0 To 3000 : PPBB(I) = "" : Next For I As Integer = 0 To 合約編號1_cb.Items.Count - 1 : PPBB(I) = 合約編號1_cb.Items(I).ToString : NN1 = I : Next 下拉清單_2.ShowDialog() : 合約編號1_cb.Text = PPAA End If If 合約編號1_cb.Text = "" Then : MGB(對話框(13), 1) : Else : Exit For : End If Next For w As Integer = 0 To 9999 If 選擇品項_cb.Items.Count > 2999 Then : MGB(對話框(12), 1) : Else For I As Integer = 0 To 3000 : PPBB(I) = "" : Next For I As Integer = 0 To 選擇品項_cb.Items.Count - 1 : PPBB(I) = 選擇品項_cb.Items(I).ToString : NN1 = I : Next 下拉清單_2.ShowDialog() : 選擇品項_cb.Text = PPAA End If If 選擇品項_cb.Text = "" Then : MGB(對話框(13), 1) : Else : Exit For : End If Next 新增項目_bt.PerformClick() End If End If End Sub Private Sub 明細_dgv_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(1, e.RowIndex).Value.ToString : 合約編號1_cb.Text = 明細_dgv(2, e.RowIndex).Value.ToString : 選擇品項_cb.Text = 明細_dgv(3, e.RowIndex).Value.ToString End If End Sub Private Sub 明細_dgv_CellContentCl(sender As Object, e As DataGridViewCellEventArgs) Handles 明細_dgv.CellEndEdit If e.RowIndex = -1 Then : Else 總金額_tb.Text = "0" For i As Integer = 0 To 明細_dgv.Rows.Count - 1 總金額_tb.Text = Val(總金額_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(5)).Value Next i 總金額_tb.Text = Format(Val(總金額_tb.Text), "#,##0") End If End Sub Private Sub 選擇品項_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 選擇品項_cb.SelectedIndexChanged 選擇品項編號_cb.SelectedIndex = 選擇品項_cb.SelectedIndex End Sub Private Sub 存檔() For i As Integer = 0 To 明細_dgv.Rows.Count - 1 資料數 = 明細_dgv.Rows.Count : MyMod.進度條() PA = 單據_tb.Text : PA1 = 明細_dgv.Rows(i).Cells(表頭(3)).Value : PA2 = 明細_dgv.Rows(i).Cells(4).Value : PA3 = 明細_dgv.Rows(i).Cells(表頭(5)).Value PA4 = 明細_dgv.Rows(i).Cells(表頭(6)).Value : PA5 = 明細_dgv.Rows(i).Cells(2).Value.ToString : SQL_特支費與傭金存檔() Next : HX_PGS_ERP_SYS.ToolStripProgressBar1.Value = 0 : 最終數 = 0 End Sub Private Sub 開單() Set_日期格式轉換() : Dim NUM1 As Integer SQL_特支費與傭金最後一筆() If dr.Read() Then : NUM1 = Strings.Right(dr("流水號").ToString, 3) : End If : NUM1 += 1 If NUM1 < 10 Then : 單據_tb.Text = "PC-" & DTP1 & "-00" & NUM1 ElseIf NUM1 > 9 And NUM1 < 100 Then : 單據_tb.Text = "PC-" & DTP1 & "-0" & NUM1 ElseIf NUM1 > 99 Then : 單據_tb.Text = "PC-" & DTP1 & "-" & NUM1 : End If PA = 單據_tb.Text : 申請人_tb.Text = gUserName : SQL_特支費與傭金控制表新增() End Sub Private Sub 新增項目_bt_Click(sender As Object, e As EventArgs) Handles 新增項目_bt.Click 首次開啟 = False If 選擇品項_cb.Text = "" Then : MGB(對話框(10), 1) : Else If 合約編號1_cb.Text = "" Then : MGB(對話框(11), 1) : Else If 單據_tb.Text = "" Then : 開單() : End If 存檔() : PA = 單據_tb.Text : SQL_特支費與傭金明細項次讀取() If dr.Read() Then : 新項次 = dr("項次") : Else : 新項次 = "00" : End If : NUM1 = Double.Parse(新項次) + 1 If NUM1 < 10 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = NUM1 : End If PA35 = 選擇品項編號_cb.Text : PA36 = 合約編號1_cb.Text : PA45 = 新項次 : SQL_特支費與傭金明細新增() : Set_零用金清單() End If End If End Sub Private Sub 刪除項目_bt_Click(sender As Object, e As EventArgs) Handles 刪除項目_bt.Click 首次開啟 = False If 項次_tb.Text = "" Then : MGB(對話框(7), 1) : Else : 存檔() : PA = 單據_tb.Text : PA45 = 項次_tb.Text SQL_特支費與傭金明細指定刪除() : Set_零用金清單() Dim NUM1 As Integer = 0 For i As Integer = 0 To 明細_dgv.Rows.Count - 1 NUM1 += 1 : If NUM1 < 10 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = NUM1 : End If PA45 = 新項次 : PA44 = 明細_dgv.Rows(i).Cells(表頭(3)).Value : SQL_特支費與傭金明細項次更換() Next : Set_零用金清單() : MGB(對話框(8), 1) End If : conn.Close() End Sub Private Sub 重新讀取_bt_Click(sender As Object, e As EventArgs) Handles 重新讀取_bt.Click 首次開啟 = False : Set_清單1() End Sub Private Sub 小間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 小間距_ch.CheckedChanged Set_零用金清單() End Sub Private Sub 中間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 中間距_ch.CheckedChanged Set_零用金清單() End Sub Private Sub 大間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 大間距_ch.CheckedChanged Set_零用金清單() End Sub Private Sub 縮放1_bt_Click(sender As Object, e As EventArgs) Handles 縮放1_bt.Click If Panel2.Visible = True Then Panel2.Visible = False : Panel3.Location = New System.Drawing.Point(0, 0) : Panel3.Size = New System.Drawing.Point(Panel3.Size.Width + 334, Panel3.Size.Height) Else Panel2.Visible = True : Panel3.Location = New System.Drawing.Point(334, 0) : Panel3.Size = New System.Drawing.Point(Panel3.Size.Width - 334, Panel3.Size.Height) End If End Sub Private Sub 核准_bt_Click(sender As Object, e As EventArgs) Handles 核准_bt.Click Set_日期格式轉換() : PA1 = gUserName : SQL_特支費_審核() : PA1 = "" : Set_清單1() : 明細_dgv.DataSource = Nothing : MGB(對話框(14), 1) '---LINE_AUTO 部門主管------------------------------------------------------------------------------------------------------------------------------------------ SQL_主管名稱(2, 23) : If dr.Read Then : 出納人員 = dr("姓名").ToString : End If If 登入人IP = 測試IP Then : Else LIN訊息通知("CC205", "李協叡", 單據_tb.Text) : LIN訊息通知("CC205", 出納人員, 單據_tb.Text) End If End Sub Private Sub 作廢_bt_Click(sender As Object, e As EventArgs) Handles 作廢_bt.Click Set_日期格式轉換() : PA1 = "作廢-" & gUserName : SQL_特支費_審核() : PA1 = "" : Set_清單1() : 明細_dgv.DataSource = Nothing : MGB(對話框(0), 1) End Sub Private Sub 風格() If 深色風格 = False Then Me.BackColor = SystemColors.Control '----------------黑------------------------------------------- 小間距_ch.ForeColor = Color.Black : 中間距_ch.ForeColor = Color.Black : 大間距_ch.ForeColor = Color.Black : Label1.ForeColor = Color.Black Label3.ForeColor = Color.Black : Label8.ForeColor = Color.Black 單據_tb.BackColor = Color.White : 單據_tb.ForeColor = Color.Black : 總金額_tb.BackColor = Color.White : 總金額_tb.ForeColor = Color.Black 語轉扭_bt.BackColor = Color.White : 語轉扭_bt.ForeColor = Color.Black : 申請人_tb.BackColor = Color.White : 申請人_tb.ForeColor = Color.Black 合約編號1_cb.BackColor = Color.White : 合約編號1_cb.ForeColor = Color.Black : 選擇品項_cb.BackColor = Color.White : 選擇品項_cb.ForeColor = Color.Black 新增項目_bt.BackColor = Color.White : 刪除項目_bt.BackColor = Color.White : 縮放1_bt.BackColor = Color.White 重新讀取_bt.BackColor = Color.White : 系統說明_bt.BackColor = Color.White : 核准_bt.BackColor = Color.White 作廢_bt.BackColor = Color.White 清單_dgv.EnableHeadersVisualStyles = True : 清單_dgv.BackgroundColor = Color.White : 清單_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black 清單_dgv.DefaultCellStyle.BackColor = Color.White : 清單_dgv.DefaultCellStyle.ForeColor = Color.Black 明細_dgv.EnableHeadersVisualStyles = True : 明細_dgv.BackgroundColor = Color.White : 明細_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black 明細_dgv.DefaultCellStyle.BackColor = Color.White : 明細_dgv.DefaultCellStyle.ForeColor = Color.Black Else Me.BackColor = Color.Black '----------------黑------------------------------------------- 小間距_ch.ForeColor = Color.White : 中間距_ch.ForeColor = Color.White : 大間距_ch.ForeColor = Color.White : Label1.ForeColor = Color.White Label3.ForeColor = Color.White : Label8.ForeColor = Color.White 單據_tb.BackColor = Color.DimGray : 單據_tb.ForeColor = Color.White : 總金額_tb.BackColor = Color.DimGray : 總金額_tb.ForeColor = Color.White 語轉扭_bt.BackColor = Color.DimGray : 語轉扭_bt.ForeColor = Color.White : 申請人_tb.BackColor = Color.DimGray : 申請人_tb.ForeColor = Color.White 合約編號1_cb.BackColor = Color.DimGray : 合約編號1_cb.ForeColor = Color.White : 選擇品項_cb.BackColor = Color.DimGray : 選擇品項_cb.ForeColor = Color.White 新增項目_bt.BackColor = Color.DimGray : 刪除項目_bt.BackColor = Color.DimGray : 縮放1_bt.BackColor = Color.DimGray 重新讀取_bt.BackColor = Color.DimGray : 系統說明_bt.BackColor = Color.DimGray : 核准_bt.BackColor = Color.DimGray 作廢_bt.BackColor = Color.DimGray 清單_dgv.EnableHeadersVisualStyles = False : 清單_dgv.BackgroundColor = Color.DimGray : 清單_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White 清單_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 清單_dgv.DefaultCellStyle.BackColor = Color.Black : 清單_dgv.DefaultCellStyle.ForeColor = Color.White 明細_dgv.EnableHeadersVisualStyles = False : 明細_dgv.BackgroundColor = Color.DimGray : 明細_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White 明細_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 明細_dgv.DefaultCellStyle.BackColor = Color.Black : 明細_dgv.DefaultCellStyle.ForeColor = Color.White End If End Sub End Class