This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Public Class Frm_Main Private Sub Btn_Level_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Level.Click Dim ndialog As New Frm_Level_R ndialog.ShowDialog() End Sub Private Sub Btn_Type_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Type.Click Dim ndialog As New Frm_Type_R ndialog.ShowDialog() End Sub Private Sub Btn_Master_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Master.Click Dim ndialog As New Frm_Master_R ndialog.ShowDialog() End Sub Private Sub Btn_Trans_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Trans.Click Dim ndialog As New Frm_Schedule_T ndialog.ShowDialog() End Sub Private Sub Frm_Main_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load conn = New MySqlConnection(connStr) If conn.State = ConnectionState.Closed Then conn.Open() End If End Sub Private Sub Btn_Search_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Search.Click Dim ndialog As New Frm_Query_T ndialog.ShowDialog() End Sub End Class
Private Sub Btn_Add_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Add.Click Txt_detail.Text = "" idclick = 0 Txt_detail.Enabled = True Btn_Add.Enabled = False Btn_Edit.Enabled = False Txt_detail.Focus() End Sub
Btn_Add
Btn_Edit
Btn_Edit Label2
Txt_detail
Dgv_Output
Txt_Search Label1 1
Private Sub Btn_Edit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Edit.Click Txt_detail.Enabled = True Btn_Add.Enabled = False Btn_Edit.Enabled = False End Sub
Private Sub Btn_Save_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Save.Click Dim sqlSave As String = "" Dim sqlUpdate As String = "" If Trim(Txt_detail.Text) = "" Then MessageBox.Show("กรณากรอกชอระดบชน", "กรอกขอมลยงไมครบ", MessageBoxButtons.OK, MessageBoxIcon.Error) Txt_detail.Focus() Exit Sub End If If idclick = 0 Then idgen = Findid() sqlSave = "insert into level_r(lvr_code,lvr_desc) values(" & idgen & ",'" & Trim(Txt_detail.Text) & "') " cmd = New MySqlCommand(sqlSave, conn) cmd.ExecuteNonQuery() temp_showrecord = idgen MessageBox.Show("ท าการเพมขอมลเรยบรอยแลว", "ผลการเพมขอมล", MessageBoxButtons.OK, MessageBoxIcon.Information) Else sqlUpdate = "update level_r set lvr_desc = '" & Trim(Txt_detail.Text) & "' where lvr_code = " & idclick & " " cmd = New MySqlCommand(sqlUpdate, conn) cmd.ExecuteNonQuery() temp_showrecord = idclick
MessageBox.Show("ท าการแกไขเรยบรอยแลว", "ผลการแกไขขอมล", MessageBoxButtons.OK, MessageBoxIcon.Information) End If Btn_Add.Enabled = True Btn_Edit.Enabled = True showrecord() End Sub
Private Sub Txt_Search_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Txt_Search.TextChanged showrecord() End Sub 2. ก าหนดขอมลการลา
Btn_Add Btn_Edit
Txt_detail
Btn_Save
Label2
Dgv_Output
Txt_Search Label1
Public Class Frm_Type_R Dim temp_showrecord, idgen, idclick As Integer Dim reccnt As Integer Dim cmd As MySqlCommand = Nothing Private Sub Frm_Type_R_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load conn = New MySqlConnection(connStr) If conn.State = ConnectionState.Closed Then conn.Open() End If idgen = 0 idclick = 0 showrecord() End Sub Private Sub Btn_Save_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Save.Click Dim sqlSave As String = "" Dim sqlUpdate As String = "" If Trim(Txt_detail.Text) = "" Then MessageBox.Show("กรณากรอกชอประเภทการลา", "กรอกขอมลยงไมครบ", MessageBoxButtons.OK, MessageBoxIcon.Error) Txt_detail.Focus() Exit Sub End If If idclick = 0 Then idgen = Findid() sqlSave = "insert into type_r(tyr_code,tyr_desc) values(" & idgen & ",'" & Trim(Txt_detail.Text) & "') " cmd = New MySqlCommand(sqlSave, conn) cmd.ExecuteNonQuery() temp_showrecord = idgen MessageBox.Show("ท าการเพมขอมลเรยบรอยแลว", "ผลการเพมขอมล", MessageBoxButtons.OK, MessageBoxIcon.Information) Else sqlUpdate = "update type_r set tyr_desc = '" & Trim(Txt_detail.Text) & "' where tyr_code = " & idclick & " " cmd = New MySqlCommand(sqlUpdate, conn) cmd.ExecuteNonQuery() temp_showrecord = idclick MessageBox.Show("ท าการแกไขเรยบรอยแลว", "ผลการแกไขขอมล", MessageBoxButtons.OK, MessageBoxIcon.Information) End If Btn_Add.Enabled = True Btn_Edit.Enabled = True showrecord() End Sub
Function Findid() As Integer Try Dim da1 As MySqlDataAdapter = Nothing ' ประกาศตวแปรส าหรบจดเกบ DataAdapter Dim ds1 As New DataSet ' ประกาศตวแปรส าหรบจดเกบ DataSet Dim dt1 As DataTable = Nothing ' ประกาศตวแปรส าหรบจดเกบ DataTable Dim sqlSearch As String sqlSearch = "select max(tyr_code)+1 as mxvalue from type_r " da1 = New MySqlDataAdapter(sqlSearch, conn) da1.Fill(ds1, "sess") dt1 = ds1.Tables("sess") Return dt1.Rows(0).Item("mxvalue") Catch Return 1 End Try End Function Private Sub showrecord() Dgv_Output.Columns.Clear() Dgv_Output.DataSource = Nothing Dim da As MySqlDataAdapter = Nothing ' ประกาศตวแปรส าหรบจดเกบ DataAdapter Dim ds As New DataSet ' ประกาศตวแปรส าหรบจดเกบ DataSet Dim dt As DataTable = Nothing ' ประกาศตวแปรส าหรบจดเกบ DataTable Dim sqlselect As String sqlselect = " select tyr_desc,tyr_code from type_r where tyr_desc like '%" & Trim(Txt_Search.Text) & "%' order by 1 " ds = New DataSet da = New MySqlDataAdapter(sqlselect, conn) da.Fill(ds, "dataset1") dt = ds.Tables("dataset1") Dgv_Output.DataSource = dt Dgv_Output.Columns(0).HeaderText = "ประเภทการลา" Dgv_Output.Columns(0).Width = 390 Dgv_Output.Columns(1).Visible = False selected() End Sub Private Sub selected() Dim RowCount, i, Vtemp, Vbefore As Integer RowCount = Dgv_Output.Rows.Count For i = 0 To RowCount - 1 Step +1 Vbefore = Dgv_Output.Rows(i).Cells(1).Value If Vbefore = temp_showrecord Then Vtemp = i i = RowCount - 1 Dgv_Output.Rows(Vtemp).Cells(0).Selected = True idclick = Dgv_Output.Rows(Vtemp).Cells(1).Value Txt_detail.Text = Dgv_Output.Rows(Vtemp).Cells(0).Value.ToString() End If Next End Sub
Private Sub Dgv_Output_SelectionChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Dgv_Output.SelectionChanged reccnt = Dgv_Output.CurrentRow.Index idclick = Dgv_Output.Rows(reccnt).Cells(1).Value Txt_detail.Text = Dgv_Output.Rows(reccnt).Cells(0).Value.ToString() Txt_detail.Enabled = False Btn_Add.Enabled = True Btn_Edit.Enabled = True End Sub 'Private Sub Dgv_Output_ColumnAdded(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewColumnEventArgs) Handles Dgv_Output.ColumnAdded ' Dgv_Output.Columns.Item(e.Column.Index).SortMode = DataGridViewColumnSortMode.NotSortable 'End Sub Private Sub Txt_detail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Txt_detail.KeyPress If Asc(e.KeyChar) = 13 Then If Trim(Txt_detail.Text) = "" Then Txt_detail.Focus() Else Btn_Save.Focus() End If End If End Sub Private Sub Btn_Add_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Add.Click Txt_detail.Text = "" idclick = 0 Txt_detail.Enabled = True Btn_Add.Enabled = False Btn_Edit.Enabled = False Txt_detail.Focus() End Sub Private Sub Btn_Edit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Edit.Click Txt_detail.Enabled = True Btn_Add.Enabled = False Btn_Edit.Enabled = False End Sub Private Sub Txt_Search_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Txt_Search.TextChanged showrecord() End Sub End Class
3. ก าหนดขอมลนกเรยน
การพมพโคด
Public Class Frm_Add_Edit_Master Dim cmd As MySqlCommand = Nothing Dim level_code As Integer Private Sub Frm_Add_Edit_Master_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load conn = New MySqlConnection(connStr) If conn.State = ConnectionState.Closed Then conn.Open() End If
Label1
Txt_Search
Btn_Add Btn_Edit
Dgv_Output
Label1-8
Text
Txt_Stdcode
Txt_Prename
Txt_Fname
Txt_Lname Txt_Level
Btn_Level
Txt_Nickname
Btn_Save Btn_Cancel
If save_flag = "EDIT" Then Txt_Stdcode.ReadOnly = True LoadEdit(gb_std_code) End If End Sub Private Sub LoadEdit(ByVal stdcode As String) Dim da As MySqlDataAdapter = Nothing ' ประกาศตวแปรส าหรบจดเกบ DataAdapter Dim ds As New DataSet ' ประกาศตวแปรส าหรบจดเกบ DataSet Dim dt As DataTable = Nothing ' ประกาศตวแปรส าหรบจดเกบ DataTable Dim sqlselect As String sqlselect = " select str_pre_name,str_fname,str_lname,str_nickname,str_level,lvr_desc from student_r,level_r where str_level=lvr_code and str_code = '" & stdcode & "' " ds = New DataSet da = New MySqlDataAdapter(sqlselect, conn) da.Fill(ds, "dataset1") dt = ds.Tables("dataset1") If dt.Rows.Count > 0 Then Txt_Stdcode.Text = stdcode Txt_Prename.Text = dt.Rows(0).Item("str_pre_name").ToString Txt_Fname.Text = dt.Rows(0).Item("str_fname").ToString Txt_Lname.Text = dt.Rows(0).Item("str_lname").ToString Txt_Nickname.Text = dt.Rows(0).Item("str_nickname").ToString Txt_Level.Text = dt.Rows(0).Item("lvr_desc").ToString level_code = dt.Rows(0).Item("str_level").ToString End If End Sub Private Sub Btn_Save_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Save.Click If Trim(Txt_Stdcode.Text) = "" Then MessageBox.Show("กรณากรอกรหสประจ าตวนกเรยน", "กรอกขอมลยงไมครบ", MessageBoxButtons.OK, MessageBoxIcon.Error) Txt_Stdcode.Focus() Exit Sub ElseIf Trim(Txt_Prename.Text) = "" Then MessageBox.Show("กรณากรอกค าน าหนาชอ", "กรอกขอมลยงไมครบ", MessageBoxButtons.OK, MessageBoxIcon.Error) Txt_Prename.Focus() Exit Sub ElseIf Trim(Txt_Fname.Text) = "" Then MessageBox.Show("กรณากรอกชอ", "กรอกขอมลยงไมครบ", MessageBoxButtons.OK, MessageBoxIcon.Error) Txt_Fname.Focus() Exit Sub ElseIf Trim(Txt_Lname.Text) = "" Then MessageBox.Show("กรณากรอกนามสกล", "กรอกขอมลยงไมครบ", MessageBoxButtons.OK, MessageBoxIcon.Error) Txt_Lname.Focus() Exit Sub ElseIf Trim(Txt_Nickname.Text) = "" Then MessageBox.Show("กรณากรอกชอเลนนกเรยน", "กรอกขอมลยงไมครบ", MessageBoxButtons.OK, MessageBoxIcon.Error) Txt_Nickname.Focus() Exit Sub ElseIf Trim(Txt_Level.Text) = "" Then
MessageBox.Show("กรณาเลอกระดบชน", "กรอกขอมลยงไมครบ", MessageBoxButtons.OK, MessageBoxIcon.Error) Txt_Level.Focus() Exit Sub End If Dim sqlText As String = "" If save_flag = "ADD" Then sqlText = "insert into student_r(str_code,str_pre_name,str_fname,str_lname,str_nickname,str_level) values('" & Trim(Txt_Stdcode.Text) & "','" & Trim(Txt_Prename.Text) & "','" & Trim(Txt_Fname.Text) & "','" & Trim(Txt_Lname.Text) & "','" & Trim(Txt_Nickname.Text) & "'," & level_code & ") " cmd = New MySqlCommand(sqlText, conn) cmd.ExecuteNonQuery() MessageBox.Show("ท าการเพมขอมลเรยบรอยแลว", "ผลการเพมขอมล", MessageBoxButtons.OK, MessageBoxIcon.Information) Else sqlText = "update student_r set str_pre_name = '" & Trim(Txt_Prename.Text) & "',str_fname = '" & Trim(Txt_Fname.Text) & "', str_lname = '" & Trim(Txt_Lname.Text) & "',str_nickname = '" & Trim(Txt_Nickname.Text) & "',str_level=" & level_code & " where str_code= '" & Trim(Txt_Stdcode.Text) & "' " cmd = New MySqlCommand(sqlText, conn) cmd.ExecuteNonQuery() MessageBox.Show("ท าการแกไขเรยบรอยแลว", "ผลการแกไขขอมล", MessageBoxButtons.OK, MessageBoxIcon.Information) End If gb_std_code = Trim(Txt_Stdcode.Text) click_flag = True Me.Close() End Sub Private Sub Txt_Stdcode_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Txt_Stdcode.KeyPress If Asc(e.KeyChar) = 13 Then If Trim(Txt_Stdcode.Text) = "" Then Txt_Stdcode.Focus() Else Txt_Prename.Focus() End If End If End Sub Private Sub Txt_Prename_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Txt_Prename.KeyPress If Asc(e.KeyChar) = 13 Then If Trim(Txt_Prename.Text) = "" Then Txt_Prename.Focus() Else Txt_Fname.Focus() End If End If End Sub Private Sub Txt_Fname_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Txt_Fname.KeyPress If Asc(e.KeyChar) = 13 Then If Trim(Txt_Fname.Text) = "" Then Txt_Fname.Focus()
Else Txt_Lname.Focus() End If End If End Sub Private Sub Txt_Lname_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Txt_Lname.KeyPress If Asc(e.KeyChar) = 13 Then If Trim(Txt_Lname.Text) = "" Then Txt_Lname.Focus() Else Txt_Nickname.Focus() End If End If End Sub Private Sub Txt_Nickname_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Txt_Nickname.KeyPress If Asc(e.KeyChar) = 13 Then If Trim(Txt_Nickname.Text) = "" Then Txt_Nickname.Focus() Else Btn_Level.Focus() End If End If End Sub Private Sub Btn_Level_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Level.Click click_flag = False Dim ndialog As New Frm_Load_Level ndialog.ShowDialog() If click_flag = True Then Txt_Level.Text = gb_level_name level_code = gb_level_code End If End Sub End Class
การแกไขขอมลนกเรยนทเลอก การพมพโคด Public Class Frm_Master_R Dim std_code As String Private Sub Frm_Master_R_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load conn = New MySqlConnection(connStr) If conn.State = ConnectionState.Closed Then conn.Open() End If showrecord() End Sub
Label1
Txt_Search
Btn_Add
Btn_Edit
Dgv_Output
สามารถแกไข ขอมลตามชองขอความและบนทกขอมล
Private Sub showrecord() Dgv_Output.Columns.Clear() Dgv_Output.DataSource = Nothing Dim da As MySqlDataAdapter = Nothing ' ประกาศตวแปรส าหรบจดเกบ DataAdapter Dim ds As New DataSet ' ประกาศตวแปรส าหรบจดเกบ DataSet Dim dt As DataTable = Nothing ' ประกาศตวแปรส าหรบจดเกบ DataTable Dim sqlselect As String sqlselect = " select str_code,str_pre_name,str_fname,str_lname,str_nickname,str_level,lvr_desc from student_r,level_r where str_level=lvr_code and concat(str_code,str_fname,str_lname,str_nickname,lvr_desc) like '%" & Trim(Txt_Search.Text) & "%' order by 3 " ds = New DataSet da = New MySqlDataAdapter(sqlselect, conn) da.Fill(ds, "dataset1") dt = ds.Tables("dataset1") Dgv_Output.DataSource = dt Dgv_Output.Columns(0).HeaderText = "รหสนกเรยน" Dgv_Output.Columns(0).Width = 120 Dgv_Output.Columns(1).HeaderText = "ค าน าหนาชอ" Dgv_Output.Columns(1).Width = 110 Dgv_Output.Columns(2).HeaderText = "ชอ" Dgv_Output.Columns(2).Width = 140 Dgv_Output.Columns(3).HeaderText = "นามสกล" Dgv_Output.Columns(3).Width = 140 Dgv_Output.Columns(4).HeaderText = "ชอเลน" Dgv_Output.Columns(4).Width = 100 Dgv_Output.Columns(5).Visible = False Dgv_Output.Columns(6).HeaderText = "ระดบชน" Dgv_Output.Columns(6).Width = 150 selected() End Sub Private Sub selected() Dim RowCount, i, Vtemp, Vbefore As Integer RowCount = Dgv_Output.Rows.Count For i = 0 To RowCount - 1 Step +1 Vbefore = Dgv_Output.Rows(i).Cells(0).Value If Vbefore = gb_std_code Then Vtemp = i i = RowCount - 1 Dgv_Output.Rows(Vtemp).Cells(0).Selected = True End If Next End Sub Private Sub Dgv_Output_SelectionChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Dgv_Output.SelectionChanged Try Dim reccnt As Integer reccnt = Dgv_Output.CurrentRow.Index std_code = Dgv_Output.Rows(reccnt).Cells(0).Value Btn_Add.Enabled = True Btn_Edit.Enabled = True Catch ex As Exception End Try
End Sub 'Private Sub Dgv_Output_ColumnAdded(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewColumnEventArgs) Handles Dgv_Output.ColumnAdded ' Dgv_Output.Columns.Item(e.Column.Index).SortMode = DataGridViewColumnSortMode.NotSortable 'End Sub
การพมพโคด (ดบเบลคลก ทปมขอมลนกเรยน) Private Sub Btn_Add_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Add.Click click_flag = False save_flag = "ADD" Dim ndialog As New Frm_Add_Edit_Master ndialog.ShowDialog() If click_flag = True Then Txt_Search.Text = "" showrecord() End If End Sub
การพมพโคด (ดบเบลคลก ทปมแกไขขอมลนกเรยนทเลอก) Private Sub Btn_Edit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Edit.Click save_flag = "EDIT" gb_std_code = std_code Dim ndialog As New Frm_Add_Edit_Master ndialog.ShowDialog() If click_flag = True Then Txt_Search.Text = "" showrecord() End If End Sub Private Sub Txt_Search_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Txt_Search.TextChanged showrecord() End Sub Private Sub Dgv_Output_CellMouseDoubleClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellMouseEventArgs) Handles Dgv_Output.CellMouseDoubleClick Dim reccnt As Integer reccnt = Dgv_Output.CurrentRow.Index std_code = Dgv_Output.Rows(reccnt).Cells(0).Value save_flag = "EDIT" gb_std_code = std_code Dim ndialog As New Frm_Add_Edit_Master
Dgv_Output
ndialog.ShowDialog() If click_flag = True Then Txt_Search.Text = "" showrecord() End If End Sub End Class
บนทกขอมลการลาของนกเรยน
Public Class Frm_Schedule_T Dim tmp_fdate, tmp_tdate, tmp_stdcode, tmp_remark, tmp_typename, student_code, level_code As String Dim tmp_typecode As Integer Dim cmd As MySqlCommand Private Sub Btn_Add_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Add.Click click_flag = False gb_fdate = Mid(fdate.Value.Date, 1, 10) gb_tdate = Mid(tdate.Value.Date, 1, 10) save_flag = "ADD" Dim ndialog As New Frm_Add_Edit_Schedule_T ndialog.ShowDialog() If click_flag = True Then showrecord() End If End Sub
Txt_Search
Label2 Label1 tdate
fdate
Label3
Btn_Add
Btn_Edit
Dgv_Output
Private Sub showrecord() Dgv_Output.Columns.Clear() Dgv_Output.DataSource = Nothing Dim da As MySqlDataAdapter = Nothing ' ประกาศตวแปรส าหรบจดเกบ DataAdapter Dim ds As New DataSet ' ประกาศตวแปรส าหรบจดเกบ DataSet Dim dt As DataTable = Nothing ' ประกาศตวแปรส าหรบจดเกบ DataTable Dim sqlselect As String sqlselect = " select sdt_fdate,sdt_tdate ,sdt_std_code,str_pre_name, str_fname,str_lname,str_nickname,lvr_desc,tyr_desc,sdt_remark,sdt_tcode from schedule_t,student_r,level_r,type_r" sqlselect &= " where sdt_std_code = str_code and str_level=lvr_code and sdt_tcode = tyr_code and concat(str_code,str_fname,str_lname,str_nickname,lvr_desc) like '%" & Trim(Txt_Search.Text) & "%' " sqlselect &= " and ( sdt_fdate between '" & fdate.Value.Date.ToString("yyyy-MM-dd") & "' and '" & tdate.Value.Date.ToString("yyyy-MM-dd") & "' or sdt_tdate between '" & fdate.Value.Date.ToString("yyyy-MM-dd") & "' and '" & tdate.Value.Date.ToString("yyyy-MM-dd") & "')" sqlselect &= " order by sdt_fdate,str_fname " ds = New DataSet da = New MySqlDataAdapter(sqlselect, conn) da.Fill(ds, "dataset1") dt = ds.Tables("dataset1") Dgv_Output.DataSource = dt Dgv_Output.Columns(0).HeaderText = "วนทเรมลา" Dgv_Output.Columns(0).Width = 120 Dgv_Output.Columns(0).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter Dgv_Output.Columns(1).HeaderText = "วนทสนสดลา" Dgv_Output.Columns(1).Width = 110 Dgv_Output.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter Dgv_Output.Columns(2).HeaderText = "รหสนกเรยน" Dgv_Output.Columns(2).Width = 110 Dgv_Output.Columns(3).HeaderText = "ค าน าหนาชอ" Dgv_Output.Columns(3).Width = 100 Dgv_Output.Columns(4).HeaderText = "ชอ" Dgv_Output.Columns(4).Width = 140 Dgv_Output.Columns(5).HeaderText = "นามสกล" Dgv_Output.Columns(5).Width = 140 Dgv_Output.Columns(6).HeaderText = "ชอเลน" Dgv_Output.Columns(6).Width = 100 Dgv_Output.Columns(7).HeaderText = "ระดบชน" Dgv_Output.Columns(7).Width = 150 Dgv_Output.Columns(8).HeaderText = "ประเภทการลา" Dgv_Output.Columns(8).Width = 150 Dgv_Output.Columns(9).HeaderText = "หมายเหต" Dgv_Output.Columns(9).Width = 150 Dgv_Output.Columns(10).Visible = False Dim col11 As DataGridViewLinkColumn = New DataGridViewLinkColumn() With col11 .HeaderText = "แกไข" .Name = "ED" .Text = "แกไข" .UseColumnTextForLinkValue = True .AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells
.CellTemplate.Style.BackColor = Color.Honeydew End With Dgv_Output.Columns.Add(col11) Dim col12 As DataGridViewLinkColumn = New DataGridViewLinkColumn() With col12 .HeaderText = "ลบทง" .Name = "DL" .Text = "ลบทง" .UseColumnTextForLinkValue = True .AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells .CellTemplate.Style.BackColor = Color.Honeydew End With Dgv_Output.Columns.Add(col12) End Sub Private Sub Frm_Schedule_T_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load conn = New MySqlConnection(connStr) If conn.State = ConnectionState.Closed Then conn.Open() End If showrecord() End Sub Private Sub fdate_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tdate.ValueChanged, fdate.ValueChanged If tdate.Value.Date < fdate.Value.Date Then tdate.Text = fdate.Text End If showrecord() End Sub Private Sub Btn_Edit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Edit.Click click_flag = False gb_fdate = tmp_fdate gb_tdate = tmp_tdate gb_std_code = tmp_stdcode gb_type_code = tmp_typecode gb_type_name = tmp_typename gb_remark = tmp_remark save_flag = "EDIT" Dim ndialog As New Frm_Add_Edit_Schedule_T ndialog.ShowDialog() If click_flag = True Then showrecord() End If End Sub Private Sub Dgv_Output_SelectionChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Dgv_Output.SelectionChanged Try Dim reccnt As Integer reccnt = Dgv_Output.CurrentRow.Index tmp_fdate = Dgv_Output.Rows(reccnt).Cells(0).Value tmp_tdate = Dgv_Output.Rows(reccnt).Cells(1).Value tmp_stdcode = Dgv_Output.Rows(reccnt).Cells(2).Value tmp_remark = Dgv_Output.Rows(reccnt).Cells(9).Value tmp_typecode = Dgv_Output.Rows(reccnt).Cells(10).Value
tmp_typename = Dgv_Output.Rows(reccnt).Cells(8).Value Btn_Add.Enabled = True Btn_Edit.Enabled = True Catch ex As Exception End Try End Sub Private Sub Dgv_Output_CellMouseDoubleClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellMouseEventArgs) Handles Dgv_Output.CellMouseDoubleClick Dim reccnt As Integer reccnt = Dgv_Output.CurrentRow.Index gb_fdate = Dgv_Output.Rows(reccnt).Cells(0).Value gb_tdate = Dgv_Output.Rows(reccnt).Cells(1).Value gb_std_code = Dgv_Output.Rows(reccnt).Cells(2).Value gb_type_code = Dgv_Output.Rows(reccnt).Cells(10).Value gb_type_name = Dgv_Output.Rows(reccnt).Cells(8).Value gb_remark = Dgv_Output.Rows(reccnt).Cells(9).Value save_flag = "EDIT" Dim ndialog As New Frm_Add_Edit_Schedule_T ndialog.ShowDialog() If click_flag = True Then showrecord() End If End Sub Private Sub Dgv_Output_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles Dgv_Output.CellClick If Dgv_Output.Columns(e.ColumnIndex).Name = "ED" Then Dim reccnt As Integer reccnt = Dgv_Output.CurrentRow.Index gb_fdate = Dgv_Output.Rows(reccnt).Cells(0).Value gb_tdate = Dgv_Output.Rows(reccnt).Cells(1).Value gb_std_code = Dgv_Output.Rows(reccnt).Cells(2).Value gb_type_code = Dgv_Output.Rows(reccnt).Cells(10).Value gb_type_name = Dgv_Output.Rows(reccnt).Cells(8).Value gb_remark = Dgv_Output.Rows(reccnt).Cells(9).Value save_flag = "EDIT" Dim ndialog As New Frm_Add_Edit_Schedule_T ndialog.ShowDialog() If click_flag = True Then showrecord() End If End If If Dgv_Output.Columns(e.ColumnIndex).Name = "DL" Then Dim reccnt As Integer reccnt = Dgv_Output.CurrentRow.Index tmp_fdate = Dgv_Output.Rows(reccnt).Cells(0).Value tmp_tdate = Dgv_Output.Rows(reccnt).Cells(1).Value tmp_stdcode = Dgv_Output.Rows(reccnt).Cells(2).Value tmp_remark = Dgv_Output.Rows(reccnt).Cells(9).Value tmp_typecode = Dgv_Output.Rows(reccnt).Cells(10).Value tmp_typename = Dgv_Output.Rows(reccnt).Cells(8).Value Dim dsrt As DialogResult = MessageBox.Show("ทานตองการลบขอมลรายการนใชหรอไม", "ยนยนการลบขอมล", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If dsrt = Windows.Forms.DialogResult.Yes Then Dim sqlText As String = "" sqlText = "delete from schedule_t where sdt_std_code ='" & tmp_stdcode & "' and sdt_fdate = '" & tmp_fdate & "' and sdt_tdate = '" & tmp_tdate & "' and sdt_tcode = " & tmp_typecode & " " cmd = New MySqlCommand(sqlText, conn) cmd.ExecuteNonQuery() MessageBox.Show("ลบขอมลเรยบรอย", "ผลการลบขอมล", MessageBoxButtons.OK, MessageBoxIcon.Information) showrecord() End If End If End Sub End Class
Rdb_All Rdb_Type Btn_Type Rdb_Student Txt_Student
Txt_Type
Btn_OK
Label2 Label3 tdate
fdate
Btn_Student
Public Class Frm_Query_T Dim type_code As Integer Dim student_code As String Private Sub Btn_Type_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Type.Click click_flag = False Dim ndialog As New Frm_Load_Type ndialog.ShowDialog() If click_flag = True Then Txt_Type.Text = gb_type_name type_code = gb_type_code End If End Sub Private Sub Frm_Query_T_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load conn = New MySqlConnection(connStr) If conn.State = ConnectionState.Closed Then conn.Open() End If End Sub Private Sub Rdb_Type_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Rdb_Type.CheckedChanged If Rdb_Type.Checked = True Then Btn_Type.Enabled = True Else Btn_Type.Enabled = False Txt_Type.Text = "" type_code = 0 End If End Sub Private Sub Rdb_Student_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Rdb_Student.CheckedChanged If Rdb_Student.Checked = True Then Btn_Student.Enabled = True Else Btn_Student.Enabled = False Txt_Student.Text = "" student_code = "" End If End Sub Private Sub fdate_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tdate.ValueChanged, fdate.ValueChanged If tdate.Value.Date < fdate.Value.Date Then tdate.Text = fdate.Text End If End Sub Private Sub Btn_OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_OK.Click If Rdb_Type.Checked = True Then If Txt_Type.Text = "" Then MessageBox.Show("กรณาเลอกระดบชนเรยนกอน", "เลอกขอมลยงไมครบ", MessageBoxButtons.OK, MessageBoxIcon.Error) Txt_Type.Focus()
Exit Sub End If End If If Rdb_Student.Checked = True Then If Txt_Student.Text = "" Then MessageBox.Show("กรณาเลอกนกเรยนกอน", "เลอกขอมลยงไมครบ", MessageBoxButtons.OK, MessageBoxIcon.Error) Txt_Student.Focus() Exit Sub End If End If showrecord() End Sub Private Sub Btn_Student_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Student.Click click_flag = False Dim ndialog As New Frm_Load_Student ndialog.ShowDialog() If click_flag = True Then student_code = gb_std_code Txt_Student.Text = gb_std_name End If End Sub Private Sub showrecord() Dgv_Output.Columns.Clear() Dgv_Output.DataSource = Nothing Dim da As MySqlDataAdapter = Nothing ' ประกาศตวแปรส าหรบจดเกบ DataAdapter Dim ds As New DataSet ' ประกาศตวแปรส าหรบจดเกบ DataSet Dim dt As DataTable = Nothing ' ประกาศตวแปรส าหรบจดเกบ DataTable Dim sqlselect As String sqlselect = " select sdt_fdate,sdt_tdate,sdt_std_code,str_pre_name,str_fname,str_lname,str_nickname,lvr_desc,tyr_desc,sdt_remark,sdt_tcode from schedule_t,student_r,level_r,type_r" sqlselect &= " where sdt_std_code = str_code and str_level=lvr_code and sdt_tcode = tyr_code and ( sdt_fdate between '" & fdate.Value.Date.ToString("yyyy-MM-dd") & "' and '" & tdate.Value.Date.ToString("yyyy-MM-dd") & "' or sdt_tdate between '" & fdate.Value.Date.ToString("yyyy-MM-dd") & "' and '" & tdate.Value.Date.ToString("yyyy-MM-dd") & "') " If Rdb_Type.Checked = True Then sqlselect &= " and sdt_tcode = '" & type_code & "' " End If If Rdb_Student.Checked = True Then sqlselect &= " and sdt_std_code = '" & student_code & "' " End If sqlselect &= " order by sdt_fdate,str_fname " ds = New DataSet da = New MySqlDataAdapter(sqlselect, conn) da.Fill(ds, "dataset1") dt = ds.Tables("dataset1")