Option Strict Off Public Class 系統開發點檢控制表 ReadOnly ds, ds1 As New DataSet Private Sub Set_清單1() DataGridView1.DataSource = Nothing : ds.Clear() DataGridView1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing DataGridView1.ColumnHeadersHeight = 25 DataGridView1.AllowUserToAddRows = False ConnOpen() SQL1 = "SELECT 項一, 項二, 項三,項一 AS [項1], 項二 AS [項2], 項三 AS [項3], 內容, 狀態 FROM 系統開發點檢表基本資料 ORDER BY 項一, 項二, 項三" CmdSet_For_DGV() : da.Fill(ds) : DataGridView1.DataSource = ds.Tables(0) : conn.Close() : Set_grid() End Sub Private Sub Set_grid() DataGridView1.Columns(0).Visible = False : DataGridView1.Columns(1).Visible = False : DataGridView1.Columns(2).Visible = False DataGridView1.Columns(3).Width = 60 : DataGridView1.Columns(4).Width = 60 : DataGridView1.Columns(5).Width = 60 : DataGridView1.Columns(6).Width = 700 DataGridView1.Columns(7).Width = 60 For i As Integer = 0 To DataGridView1.Rows.Count - 1 If Strings.Right(DataGridView1.Rows(i).Cells("項2").Value, 2) = "00" Then DataGridView1.Rows(i).Cells("項2").Value = "" End If If Strings.Right(DataGridView1.Rows(i).Cells("項3").Value, 2) = "00" Then DataGridView1.Rows(i).Cells("項3").Value = "" End If Next End Sub Private Sub Set_清單2() DataGridView2.DataSource = Nothing : ds1.Clear() DataGridView2.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing DataGridView2.ColumnHeadersHeight = 25 DataGridView2.AllowUserToAddRows = False ConnOpen() SQL1 = "SELECT 項一, 項二, 項三, 內容, 狀態 FROM 系統開發點檢表基本資料 WHERE 項一 LIKE '" & TextBox1.Text & "' ORDER BY 項一, 項二, 項三" CmdSet_For_DGV() : da.Fill(ds1) : DataGridView2.DataSource = ds1.Tables(0) : conn.Close() : Set_grid1() End Sub Private Sub Set_grid1() DataGridView2.Columns(0).Width = 60 : DataGridView2.Columns(1).Width = 60 : DataGridView2.Columns(2).Width = 60 : DataGridView2.Columns(3).Width = 650 DataGridView2.Columns(4).Width = 60 End Sub Private Sub ComboBox1下拉表單資料載入() conn.Close() ConnOpen() SQL1 = "SELECT 內容 FROM 系統開發點檢表基本資料 WHERE (RIGHT(項二, 2) LIKE '00')" CmdSet_For_dr() ComboBox1.Items.Clear() While (dr.Read()) : ComboBox1.Items.Add(dr("內容")) : End While conn.Close() End Sub Private Sub 系統開發點檢控制表_Load(sender As Object, e As EventArgs) Handles MyBase.Load Me.MdiParent = GCM_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True Set_清單1() : ComboBox1下拉表單資料載入() End Sub Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove timeNow = 0 GCM_ERP_SYS.Timer1.Enabled = False GCM_ERP_SYS.Timer1.Enabled = True End Sub Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress timeNow = 0 GCM_ERP_SYS.Timer1.Enabled = False GCM_ERP_SYS.Timer1.Enabled = True End Sub Private Sub DataGridView2_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView2.CellClick If e.RowIndex = -1 Then : Else TextBox2.Text = DataGridView2.Rows(e.RowIndex).Cells("項二").Value : TextBox3.Text = DataGridView2.Rows(e.RowIndex).Cells("項三").Value TextBox4.Text = DataGridView2.Rows(e.RowIndex).Cells("內容").Value : ComboBox2.Text = DataGridView2.Rows(e.RowIndex).Cells("狀態").Value End If End Sub Private Sub DataGridView1_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles DataGridView1.RowPostPaint Dim linePen As New Pen(Color.Blue, 2) If e.RowIndex = DataGridView1.Rows.Count - 1 Then Exit Sub Else If DataGridView1(0, e.RowIndex).Value.ToString <> DataGridView1(0, e.RowIndex + 1).Value.ToString Then Dim startX As Integer = IIf(DataGridView1.RowHeadersVisible, DataGridView1.RowHeadersWidth, 0) Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1 Dim endX As Integer = startX + DataGridView1.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - DataGridView1.HorizontalScrollingOffset e.Graphics.DrawLine(linePen, startX, startY, endX, startY) Exit Sub End If End If End Sub Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged ConnOpen() SQL1 = "SELECT 項一 FROM 系統開發點檢表基本資料 WHERE 內容 LIKE N'" & ComboBox1.Text & "'" cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader If dr.Read() Then : TextBox1.Text = dr("項一") : End If conn.Close() Set_清單2() End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click If TextBox1.Text = "" Or TextBox2.Text = "" Or TextBox3.Text = "" Or TextBox4.Text = "" Or ComboBox2.Text = "" Then MsgBox("資料不齊全,請重新確認。") Else ConnOpen() SQL1 = "SELECT 項一 FROM 系統開發點檢表基本資料 WHERE 項二 LIKE N'" & TextBox2.Text & "' AND 項三 LIKE N'" & TextBox3.Text & "'" cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader If dr.Read() Then : conn.Close() MsgBox("項二資料重複,請重新確認。") Else conn.Close() ConnOpen() SQL1 = "SELECT 項一 FROM 系統開發點檢表基本資料 WHERE 項三 LIKE N'" & TextBox3.Text & "'" cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader If dr.Read() Then : conn.Close() MsgBox("項三資料重複,請重新確認。") Else conn.Close() ConnOpen() SQL1 = "SELECT 項一 FROM 系統開發點檢表基本資料 WHERE 內容 LIKE N'" & TextBox4.Text & "'" cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader If dr.Read() Then : conn.Close() MsgBox("內容資料重複,請重新確認。") Else conn.Close() ConnOpen() SQL1 = "INSERT INTO 系統開發點檢表基本資料 (項一, 項二, 項三, 內容, 狀態) VALUES (N'" & TextBox1.Text & "',N'" & TextBox2.Text & "',N'" & TextBox3.Text & "', N'" & TextBox4.Text & "', '" & ComboBox2.Text & "')" CmdSet_For_dr() : conn.Close() MsgBox("新增完成") : Set_清單1() : Set_清單2() End If End If End If End If End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click If TextBox1.Text = "" Or TextBox2.Text = "" Or TextBox3.Text = "" Or TextBox4.Text = "" Or ComboBox2.Text = "" Then MsgBox("資料不齊全,請重新確認。") Else ConnOpen() SQL1 = "SELECT 項一 FROM 系統開發點檢表基本資料 WHERE 內容 LIKE N'" & TextBox4.Text & "'" cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader If dr.Read() Then : conn.Close() MsgBox("內容資料重複,請重新確認。") Else conn.Close() ConnOpen() SQL1 = "UPDATE 系統開發點檢表基本資料 SET 內容 = '" & TextBox4.Text & "', 狀態 = '" & ComboBox2.Text & "' WHERE (項一 LIKE '" & TextBox1.Text & "' AND 項二 LIKE '" & TextBox2.Text & "' AND 項三 LIKE '" & TextBox3.Text & "')" cmd.CommandText = SQL1 : cmd.ExecuteNonQuery() : conn.Close() : conn.Close() MsgBox("新增完成") : Set_清單1() : Set_清單2() End If End If End Sub Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click SQL1 = "DELETE FROM 系統開發點檢表基本資料 WHERE (項一 LIKE '" & TextBox1.Text & "' AND 項二 LIKE '" & TextBox2.Text & "' AND 項三 LIKE '" & TextBox3.Text & "')" cmd.CommandText = SQL1 : cmd.Connection = conn ConnOpen() Dim aa As MsgBoxResult aa = MsgBox("確定要刪除該筆資料?", MsgBoxStyle.OkCancel) If aa = MsgBoxResult.Ok Then : cmd.ExecuteNonQuery() : cmd.ExecuteNonQuery() : MsgBox("刪除完成") : End If conn.Close() : conn.Close() : Set_清單1() : Set_清單2() End Sub End Class