Swazi Nkosi
asked on
Search button
This is my code can you help me with the code for the search button
Public Class frmTrainer
  Dim Mode As String
  Dim path As String = " Provider=Microsoft.ACE.OLE DB.12.0;Da ta Source=C:\Users\mandlak\De sktop\Swaz i Nkosi\CPISAT9910280197089. accdb"
  Private Function GetNextTrainerNo()
    Dim TrainerNo As Integer
    Try
      Dim connection As New OleDb.OleDbConnection
      Dim command As New OleDb.OleDbCommand
      Dim table As New Data.DataTable
      connection.ConnectionStrin g = path
      connection.Open()
      command.Connection = connection
      command.CommandText = "SELECT TOP 1 Trainer_No FROM Trainer ORDER BY Trainer_No DESC"
      table.Load(command.Execute Reader())
      connection.Close()
      If table.Rows.Count > 0 Then
        If Integer.TryParse(table(0)( "Trainer_N o").ToStri ng(), TrainerNo) Then
          TrainerNo = TrainerNo + 1
        End If
      Else
        TrainerNo = 221
      End If
    Catch ex As Exception
      MessageBox.Show(ex.ToStrin g)
    End Try
    Return TrainerNo
  End Function
  Private Function GetScaleID()
    Dim ScaleID As Integer
    Try
      Dim connection As New OleDb.OleDbConnection
      Dim command As New OleDb.OleDbCommand
      Dim table As New Data.DataTable
      connection.ConnectionStrin g = path
      connection.Open()
      command.Connection = connection
      command.CommandText = "SELECT TOP 1 Scale_ID FROM Trainer ORDER BY Trainer_No DESC"
      table.Load(command.Execute Reader())
      connection.Close()
      If table.Rows.Count > 0 Then
        If Integer.TryParse(table(0)( "Scale_ID" ).ToString (), ScaleID) Then
        End If
      End If
    Catch ex As Exception
      MessageBox.Show(ex.ToStrin g)
    End Try
    Return ScaleID
  End Function
  Private Function GetMonthlySalary()
    Dim MonthlySalary As Integer
    Try
      Dim connection As New OleDb.OleDbConnection
      Dim command As New OleDb.OleDbCommand
      Dim table As New Data.DataTable
      connection.ConnectionStrin g = path
      connection.Open()
      command.Connection = connection
      command.CommandText = "SELECT Monthly_Salary FROM Trainer ORDER BY Trainer_ID DESC"
      table.Load(command.Execute Reader())
      connection.Close()
      If table.Rows.Count > 0 Then
        If Integer.TryParse(table(0)( "Monthly_S alary").To String(), MonthlySalary) Then
        End If
      End If
    Catch ex As Exception
      MessageBox.Show(ex.ToStrin g)
    End Try
    Return MonthlySalary
  End Function
  Private Sub GetTrainers()
    txtID.Text = ""
    txtName.Text = ""
    txtSurnamr.Text = ""
    txtContactNo.Text = ""
    txtClassType.Text = ""
    txtmonthlysalary.Text = ""
    txtScaleID.Text = ""
    txtTrainerNo.Text = ""
    Try
      Dim connection As New OleDb.OleDbConnection
      Dim command As New OleDb.OleDbCommand
      Dim table As New Data.DataTable
      connection.ConnectionStrin g = path
      connection.Open()
      command.Connection = connection
      command.CommandText = "SELECT* FROM Trainer ORDER BY Trainer_No"
      table.Load(command.Execute Reader())
      connection.Close()
      grvTrainer.DataSource = table
    Catch ex As Exception
      MessageBox.Show(ex.ToStrin g)
    End Try
  End Sub
  Private Sub GetTrainer(ByVal pID As Integer)
    Try
      Dim connection As New OleDb.OleDbConnection
      Dim command As New OleDb.OleDbCommand
      Dim table As New Data.DataTable
      connection.ConnectionStrin g = path
      connection.Open()
      command.Connection = connection
      command.CommandText = "SELECT* FROM Trainer WHERE ID=@ID"
      Dim parID = New OleDb.OleDbParameter("@ID" , pID)
      command.Parameters.Add(par ID)
      table.Load(command.Execute Reader())
      connection.Close()
      If table.Rows.Count > 0 Then
        txtID.Text = table(0)("ID").ToString
        txtName.Text = table(0)("Trainer_Name").T oString
        txtSurnamr.Text = table(0)("Trainer_Surname" ).ToString
        txtContactNo.Text = table(0)("Contact_No").ToS tring
        txtClassType.Text = table(0)("Class_Type").ToS tring
        txtmonthlysalary.Text = table(0)("Monthly_Salary") .ToString
        txtScaleID.Text = table(0)("Scale_ID").ToStr ing
        txtTrainerNo.Text = table(0)("Trainer_No").ToS tring
      End If
    Catch ex As Exception
      MessageBox.Show(ex.ToStrin g)
    End Try
  End Sub
  Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
    grvTrainer.Enabled = False
    btnAdd.Enabled = False
    btnUpdate.Enabled = False
    btnDelete.Enabled = False
    'Enabling for the Add event
    btnSubmit.Enabled = True
    btnCancel.Enabled = True
    Mode = "INSERT"
    txtID.Text = ""
    txtName.Text = ""
    txtSurnamr.Text = ""
    txtContactNo.Text = ""
    txtClassType.Text = ""
    txtmonthlysalary.Text = GetMonthlySalary().ToStrin g
    txtScaleID.Text = GetScaleID().ToString
    txtTrainerNo.Text = GetNextTrainerNo().ToStrin g()
  End Sub
  Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles btnDelete.Click
    If grvTrainer.Rows.Count > 0 Then
      If MessageBox.Show("Want to delete?", "Confirm delete?", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult .Yes Then
        Try
          Dim connection As New OleDb.OleDbConnection
          Dim command As New OleDb.OleDbCommand
          connection.ConnectionStrin g = path
          connection.Open()
          command.Connection = connection
          command.CommandText = "DELETE FROM Trainer WHERE ID = @ID"
          Dim parID = New OleDb.OleDbParameter("@ID" , grvTrainer.CurrentRow.Cell s("ID").Va lue)
          command.Parameters.Add(par ID)
          command.ExecuteNonQuery()
          connection.Close()
          GetTrainers()
        Catch ex As Exception
          MessageBox.Show(ex.ToStrin g)
        End Try
      End If
    Else
      MessageBox.Show("There are no records to delete......")
    End If
  End Sub
  Private Sub frmTrainer_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    GetTrainers()
    btnSubmit.Enabled = False
    btnCancel.Enabled = False
    Mode = ""
  End Sub
  Private Sub btnSubmit_Click(sender As Object, e As EventArgs) Handles btnSubmit.Click
    If String.IsNullOrEmpty(txtNa me.Text) Then
      MessageBox.Show("Please enter a name")
      Return
    End If
    If String.IsNullOrEmpty(txtSu rnamr.Text ) Then
      MessageBox.Show("Please enter a surname")
      Return
    End If
    If String.IsNullOrEmpty(txtCo ntactNo.Te xt) Then
      MessageBox.Show("Please enter the contact no")
      Return
    End If
    If String.IsNullOrEmpty(txtCl assType.Te xt) Then
      MessageBox.Show("Please enter the class type")
      Return
    End If
    Select Case Mode
      Case "INSERT"
        Try
          Dim connection As New OleDb.OleDbConnection
          Dim command As New OleDb.OleDbCommand
          connection.ConnectionStrin g = path
          connection.Open()
          command.Connection = connection
          command.CommandText = "INSERT INTO Trainer (Trainer_Name, Trainer_Surname,Contact_No ,Class_Typ e,Monthly_ Salary,Sca le_ID,Trai ner_No)VAL UES(@Name, @Surname, @ContactNo, @ClassType, @MonthlySalary,ScaleID, @TrainerNo)"
          Dim parName = New OleDb.OleDbParameter("@Nam e", txtName.Text)
          Dim parSurname = New OleDb.OleDbParameter("@Sur name", txtSurnamr.Text)
          Dim parContactNo = New OleDb.OleDbParameter("@Con tactNo", txtContactNo.Text)
          Dim parClassType = New OleDb.OleDbParameter("@Cla ssType", txtClassType.Text)
          Dim parMonthlySalary = New OleDb.OleDbParameter("@Mon thlySalary ", txtmonthlysalary.Text)
          Dim parScaleID = New OleDb.OleDbParameter("@Sca leID", txtScaleID.Text)
          Dim parTrainerNo = New OleDb.OleDbParameter("@Tra inerNo", txtTrainerNo.Text)
          command.Parameters.Add(par Name)
          command.Parameters.Add(par Surname)
          command.Parameters.Add(par ContactNo)
          command.Parameters.Add(par ClassType)
          command.Parameters.Add(par MonthlySal ary)
          command.Parameters.Add(par ScaleID)
          command.Parameters.Add(par TrainerNo)
          command.ExecuteNonQuery()
          connection.Close()
          GetTrainers()
        Catch ex As Exception
          MessageBox.Show(ex.ToStrin g)
        End Try
      Case "UPDATE"
        Try
          Dim connection As New OleDb.OleDbConnection
          Dim command As New OleDb.OleDbCommand
          connection.ConnectionStrin g = path
          connection.Open()
          command.Connection = connection
          command.CommandText = "UPDATE Trainer SET Trainer_Name=@Name, Trainer_Surname=@Surname, Contact_No=@ContactNo, Class_Type=@ClassType WHERE ID = @ID"
          Dim parName = New OleDb.OleDbParameter("@Nam e", txtName.Text)
          Dim parSurname = New OleDb.OleDbParameter("@Sur name", txtSurnamr.Text)
          Dim parID = New OleDb.OleDbParameter("@ID" , txtID.Text)
          Dim parContactNo = New OleDb.OleDbParameter("@Con tactNo", txtContactNo.Text)
          Dim parClassType = New OleDb.OleDbParameter("@Cla ssType", txtClassType.Text)
          'Adding Parameters to the command object
          command.Parameters.Add(Par Name)
          command.Parameters.Add(par Surname)
          command.Parameters.Add(par ID)
          command.Parameters.Add(par ContactNo)
          command.Parameters.Add(par ClassType)
          'Executing Parameters
          command.ExecuteNonQuery()
          connection.Close()
          GetTrainers()
        Catch ex As Exception
          MessageBox.Show(ex.ToStrin g())
        End Try
      Case Else
        MessageBox.Show("Nothing to Submit")
    End Select
    Mode = ""
    grvTrainer.Enabled = True
    btnSubmit.Enabled = False
    btnCancel.Enabled = False
    btnAdd.Enabled = True
    btnDelete.Enabled = True
    btnUpdate.Enabled = True
  End Sub
  Private Sub grvTrainer_CellContentClic k(sender As Object, e As DataGridViewCellEventArgs) Handles grvTrainer.CellContentClic k
    Dim ID As Integer
    If Integer.TryParse(grvTraine r.CurrentR ow.Cells(" ID").Value .ToString( ), ID) Then
      GetTrainer(ID)
    End If
  End Sub
  Private Sub btnCancel_Click(sender As Object, e As EventArgs) Handles btnCancel.Click
    grvTrainer.Enabled = True
    btnSubmit.Enabled = False
    btnCancel.Enabled = False
    btnAdd.Enabled = True
    btnDelete.Enabled = True
    btnUpdate.Enabled = True
    Mode = ""
    If grvTrainer.Rows.Count > 0 Then
      Dim ID As Integer
      If Integer.TryParse(grvTraine r.CurrentR ow.Cells(" ID").Value .ToString( ), ID) Then
        GetTrainer(ID)
      End If
      txtID.Text = ""
      txtName.Text = ""
      txtSurnamr.Text = ""
      txtContactNo.Text = ""
      txtClassType.Text = ""
      txtmonthlysalary.Text = ""
      txtScaleID.Text = ""
      txtTrainerNo.Text = ""
    End If
  End Sub
  Private Sub btnUpdate_Click(sender As Object, e As EventArgs) Handles btnUpdate.Click
    btnAdd.Enabled = False
    btnDelete.Enabled = False
    btnUpdate.Enabled = False
    btnSubmit.Enabled = True
    btnCancel.Enabled = True
    Mode = "UPDATE"
  End Sub
  Private Sub BtnExit_Click(sender As Object, e As EventArgs) Handles btnExit.Click
    Application.Exit()
  End Sub
 Â
End Class
Public Class frmTrainer
  Dim Mode As String
  Dim path As String = " Provider=Microsoft.ACE.OLE
  Private Function GetNextTrainerNo()
    Dim TrainerNo As Integer
    Try
      Dim connection As New OleDb.OleDbConnection
      Dim command As New OleDb.OleDbCommand
      Dim table As New Data.DataTable
      connection.ConnectionStrin
      connection.Open()
      command.Connection = connection
      command.CommandText = "SELECT TOP 1 Trainer_No FROM Trainer ORDER BY Trainer_No DESC"
      table.Load(command.Execute
      connection.Close()
      If table.Rows.Count > 0 Then
        If Integer.TryParse(table(0)(
          TrainerNo = TrainerNo + 1
        End If
      Else
        TrainerNo = 221
      End If
    Catch ex As Exception
      MessageBox.Show(ex.ToStrin
    End Try
    Return TrainerNo
  End Function
  Private Function GetScaleID()
    Dim ScaleID As Integer
    Try
      Dim connection As New OleDb.OleDbConnection
      Dim command As New OleDb.OleDbCommand
      Dim table As New Data.DataTable
      connection.ConnectionStrin
      connection.Open()
      command.Connection = connection
      command.CommandText = "SELECT TOP 1 Scale_ID FROM Trainer ORDER BY Trainer_No DESC"
      table.Load(command.Execute
      connection.Close()
      If table.Rows.Count > 0 Then
        If Integer.TryParse(table(0)(
        End If
      End If
    Catch ex As Exception
      MessageBox.Show(ex.ToStrin
    End Try
    Return ScaleID
  End Function
  Private Function GetMonthlySalary()
    Dim MonthlySalary As Integer
    Try
      Dim connection As New OleDb.OleDbConnection
      Dim command As New OleDb.OleDbCommand
      Dim table As New Data.DataTable
      connection.ConnectionStrin
      connection.Open()
      command.Connection = connection
      command.CommandText = "SELECT Monthly_Salary FROM Trainer ORDER BY Trainer_ID DESC"
      table.Load(command.Execute
      connection.Close()
      If table.Rows.Count > 0 Then
        If Integer.TryParse(table(0)(
        End If
      End If
    Catch ex As Exception
      MessageBox.Show(ex.ToStrin
    End Try
    Return MonthlySalary
  End Function
  Private Sub GetTrainers()
    txtID.Text = ""
    txtName.Text = ""
    txtSurnamr.Text = ""
    txtContactNo.Text = ""
    txtClassType.Text = ""
    txtmonthlysalary.Text = ""
    txtScaleID.Text = ""
    txtTrainerNo.Text = ""
    Try
      Dim connection As New OleDb.OleDbConnection
      Dim command As New OleDb.OleDbCommand
      Dim table As New Data.DataTable
      connection.ConnectionStrin
      connection.Open()
      command.Connection = connection
      command.CommandText = "SELECT* FROM Trainer ORDER BY Trainer_No"
      table.Load(command.Execute
      connection.Close()
      grvTrainer.DataSource = table
    Catch ex As Exception
      MessageBox.Show(ex.ToStrin
    End Try
  End Sub
  Private Sub GetTrainer(ByVal pID As Integer)
    Try
      Dim connection As New OleDb.OleDbConnection
      Dim command As New OleDb.OleDbCommand
      Dim table As New Data.DataTable
      connection.ConnectionStrin
      connection.Open()
      command.Connection = connection
      command.CommandText = "SELECT* FROM Trainer WHERE ID=@ID"
      Dim parID = New OleDb.OleDbParameter("@ID"
      command.Parameters.Add(par
      table.Load(command.Execute
      connection.Close()
      If table.Rows.Count > 0 Then
        txtID.Text = table(0)("ID").ToString
        txtName.Text = table(0)("Trainer_Name").T
        txtSurnamr.Text = table(0)("Trainer_Surname"
        txtContactNo.Text = table(0)("Contact_No").ToS
        txtClassType.Text = table(0)("Class_Type").ToS
        txtmonthlysalary.Text = table(0)("Monthly_Salary")
        txtScaleID.Text = table(0)("Scale_ID").ToStr
        txtTrainerNo.Text = table(0)("Trainer_No").ToS
      End If
    Catch ex As Exception
      MessageBox.Show(ex.ToStrin
    End Try
  End Sub
  Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
    grvTrainer.Enabled = False
    btnAdd.Enabled = False
    btnUpdate.Enabled = False
    btnDelete.Enabled = False
    'Enabling for the Add event
    btnSubmit.Enabled = True
    btnCancel.Enabled = True
    Mode = "INSERT"
    txtID.Text = ""
    txtName.Text = ""
    txtSurnamr.Text = ""
    txtContactNo.Text = ""
    txtClassType.Text = ""
    txtmonthlysalary.Text = GetMonthlySalary().ToStrin
    txtScaleID.Text = GetScaleID().ToString
    txtTrainerNo.Text = GetNextTrainerNo().ToStrin
  End Sub
  Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles btnDelete.Click
    If grvTrainer.Rows.Count > 0 Then
      If MessageBox.Show("Want to delete?", "Confirm delete?", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult
        Try
          Dim connection As New OleDb.OleDbConnection
          Dim command As New OleDb.OleDbCommand
          connection.ConnectionStrin
          connection.Open()
          command.Connection = connection
          command.CommandText = "DELETE FROM Trainer WHERE ID = @ID"
          Dim parID = New OleDb.OleDbParameter("@ID"
          command.Parameters.Add(par
          command.ExecuteNonQuery()
          connection.Close()
          GetTrainers()
        Catch ex As Exception
          MessageBox.Show(ex.ToStrin
        End Try
      End If
    Else
      MessageBox.Show("There are no records to delete......")
    End If
  End Sub
  Private Sub frmTrainer_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    GetTrainers()
    btnSubmit.Enabled = False
    btnCancel.Enabled = False
    Mode = ""
  End Sub
  Private Sub btnSubmit_Click(sender As Object, e As EventArgs) Handles btnSubmit.Click
    If String.IsNullOrEmpty(txtNa
      MessageBox.Show("Please enter a name")
      Return
    End If
    If String.IsNullOrEmpty(txtSu
      MessageBox.Show("Please enter a surname")
      Return
    End If
    If String.IsNullOrEmpty(txtCo
      MessageBox.Show("Please enter the contact no")
      Return
    End If
    If String.IsNullOrEmpty(txtCl
      MessageBox.Show("Please enter the class type")
      Return
    End If
    Select Case Mode
      Case "INSERT"
        Try
          Dim connection As New OleDb.OleDbConnection
          Dim command As New OleDb.OleDbCommand
          connection.ConnectionStrin
          connection.Open()
          command.Connection = connection
          command.CommandText = "INSERT INTO Trainer (Trainer_Name, Trainer_Surname,Contact_No
          Dim parName = New OleDb.OleDbParameter("@Nam
          Dim parSurname = New OleDb.OleDbParameter("@Sur
          Dim parContactNo = New OleDb.OleDbParameter("@Con
          Dim parClassType = New OleDb.OleDbParameter("@Cla
          Dim parMonthlySalary = New OleDb.OleDbParameter("@Mon
          Dim parScaleID = New OleDb.OleDbParameter("@Sca
          Dim parTrainerNo = New OleDb.OleDbParameter("@Tra
          command.Parameters.Add(par
          command.Parameters.Add(par
          command.Parameters.Add(par
          command.Parameters.Add(par
          command.Parameters.Add(par
          command.Parameters.Add(par
          command.Parameters.Add(par
          command.ExecuteNonQuery()
          connection.Close()
          GetTrainers()
        Catch ex As Exception
          MessageBox.Show(ex.ToStrin
        End Try
      Case "UPDATE"
        Try
          Dim connection As New OleDb.OleDbConnection
          Dim command As New OleDb.OleDbCommand
          connection.ConnectionStrin
          connection.Open()
          command.Connection = connection
          command.CommandText = "UPDATE Trainer SET Trainer_Name=@Name, Trainer_Surname=@Surname, Contact_No=@ContactNo, Class_Type=@ClassType WHERE ID = @ID"
          Dim parName = New OleDb.OleDbParameter("@Nam
          Dim parSurname = New OleDb.OleDbParameter("@Sur
          Dim parID = New OleDb.OleDbParameter("@ID"
          Dim parContactNo = New OleDb.OleDbParameter("@Con
          Dim parClassType = New OleDb.OleDbParameter("@Cla
          'Adding Parameters to the command object
          command.Parameters.Add(Par
          command.Parameters.Add(par
          command.Parameters.Add(par
          command.Parameters.Add(par
          command.Parameters.Add(par
          'Executing Parameters
          command.ExecuteNonQuery()
          connection.Close()
          GetTrainers()
        Catch ex As Exception
          MessageBox.Show(ex.ToStrin
        End Try
      Case Else
        MessageBox.Show("Nothing to Submit")
    End Select
    Mode = ""
    grvTrainer.Enabled = True
    btnSubmit.Enabled = False
    btnCancel.Enabled = False
    btnAdd.Enabled = True
    btnDelete.Enabled = True
    btnUpdate.Enabled = True
  End Sub
  Private Sub grvTrainer_CellContentClic
    Dim ID As Integer
    If Integer.TryParse(grvTraine
      GetTrainer(ID)
    End If
  End Sub
  Private Sub btnCancel_Click(sender As Object, e As EventArgs) Handles btnCancel.Click
    grvTrainer.Enabled = True
    btnSubmit.Enabled = False
    btnCancel.Enabled = False
    btnAdd.Enabled = True
    btnDelete.Enabled = True
    btnUpdate.Enabled = True
    Mode = ""
    If grvTrainer.Rows.Count > 0 Then
      Dim ID As Integer
      If Integer.TryParse(grvTraine
        GetTrainer(ID)
      End If
      txtID.Text = ""
      txtName.Text = ""
      txtSurnamr.Text = ""
      txtContactNo.Text = ""
      txtClassType.Text = ""
      txtmonthlysalary.Text = ""
      txtScaleID.Text = ""
      txtTrainerNo.Text = ""
    End If
  End Sub
  Private Sub btnUpdate_Click(sender As Object, e As EventArgs) Handles btnUpdate.Click
    btnAdd.Enabled = False
    btnDelete.Enabled = False
    btnUpdate.Enabled = False
    btnSubmit.Enabled = True
    btnCancel.Enabled = True
    Mode = "UPDATE"
  End Sub
  Private Sub BtnExit_Click(sender As Object, e As EventArgs) Handles btnExit.Click
    Application.Exit()
  End Sub
 Â
End Class
and just where is your search button?
ASKER
I haven't added it. That why im asking for help so that I could add it in my code
ASKER
Can anyone assist me, please
ASKER
@DavidJohnson
Do you have the code for the search button?
Do you have the code for the search button?
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
asked and answered with no feedback
Open in new window