If FormState = Form_State.Edit_RecordState Then
KeyPreview = True
Call ContextMnu()
Call CapsLock()
Call SexItem()
Call StatusItem()
Call DepartmentOfficeItem()
Call MonthlyIncomeItem()
Me.btnSave.Text = "Update"
Me.Text = "Edit Record"
Try
With cnn
If .State <> ConnectionState.Open Then
.ConnectionString = StrConnection()
.Open()
With da
.SelectCommand = New OleDbCommand()
.SelectCommand.CommandText = "SELECT * FROM [Members] WHERE (MemberID = @MemberID)"
.SelectCommand.Parameters.Add("@MemberID", OleDbType.VarChar, 50, "MemberID").Value = ShowBind.ToString()
.SelectCommand.Connection = cnn
End With
'If Modify or Edit record...Update
'Systax on how to update without using Commandbuilder...
With da
.UpdateCommand = New OleDbCommand()
.UpdateCommand.CommandText = "UPDATE [Members] SET [MemberID] = @MemberID , [LastName] = @LastName , [FirstName] = @FirstName , [MiddleName] = @MiddleName , [Address] = @Address , " & _
"[ContactNumber] = @ContactNumber , [Sex] = @Sex , [Status] = @Status , [Age] = @Age , [EmployeeIDNumber] = @EmployeeIDNumber , [PositionTitle] = @PositionTitle , " & _
"[DepartmentOffice] = @DepartmentOffice , [OfficeLocalNumber] = @OfficeLocalNumber , [AccountNumber] = @AccountNumber , [MonthlyIncome] = @MonthlyIncome , [MemberPic] = @MemberPic WHERE ([MemberID] = @MemberID_Syntax)"
.UpdateCommand.Connection = cnn
.UpdateCommand.Parameters.Add("@MemberID", OleDbType.VarWChar, 50, "MemberID")
.UpdateCommand.Parameters.Add("@LastName", OleDbType.VarWChar, 50, "LastName")
.UpdateCommand.Parameters.Add("@FirstName", OleDbType.VarWChar, 50, "FirstName")
.UpdateCommand.Parameters.Add("@MiddleName", OleDbType.VarWChar, 50, "MiddleName")
.UpdateCommand.Parameters.Add("@Address", OleDbType.VarWChar, 50, "Address")
.UpdateCommand.Parameters.Add("@ContactNumber", OleDbType.VarWChar, 50, "ContactNumber")
.UpdateCommand.Parameters.Add("@Sex", OleDbType.VarWChar, 50, "Sex")
.UpdateCommand.Parameters.Add("@Status", OleDbType.VarWChar, 50, "Status")
.UpdateCommand.Parameters.Add("@Age", OleDbType.VarWChar, 50, "Age")
.UpdateCommand.Parameters.Add("@EmployeeIDNumber", OleDbType.VarWChar, 50, "EmployeeIDNumber")
.UpdateCommand.Parameters.Add("@PositionTitle", OleDbType.VarWChar, 50, "PositionTitle")
.UpdateCommand.Parameters.Add("@DepartmentOffice", OleDbType.VarWChar, 50, "DepartmentOffice")
.UpdateCommand.Parameters.Add("@OfficeLocalNumber", OleDbType.VarWChar, 50, "OfficeLocalNumber")
.UpdateCommand.Parameters.Add("@AccountNumber", OleDbType.VarWChar, 50, "AccountNumber")
.UpdateCommand.Parameters.Add("@MonthlyIncome", OleDbType.VarWChar, 50, "MonthlyIncome")
.UpdateCommand.Parameters.Add("@MemberPic", OleDbType.Binary, 0, "MemberPic")
'To handle error like (Concurrency violation: The UpdateCommand affected 0 of the expected 1 records...)
'DataRow Version Original...
.UpdateCommand.Parameters.Add(New System.Data.OleDb.OleDbParameter("@MemberID_Syntax", System.Data.OleDb.OleDbType.VarWChar, 50, _
System.Data.ParameterDirection.Input, False, _
CType(0, Byte), CType(0, Byte), "MemberID", _
DataRowVersion.Original, True))
End With
dt2.Clear()
da.Fill(dt2, "Members")
Me.txtMemberIDNumber.DataBindings.Clear()
Me.txtMemberIDNumber.DataBindings.Add(New Binding("Text", dt2, "Members.MemberID", True))
Me.txtLastName.DataBindings.Clear()
Me.txtLastName.DataBindings.Add(New Binding("Text", dt2, "Members.LastName", True))
Me.txtFirstName.DataBindings.Clear()
Me.txtFirstName.DataBindings.Add(New Binding("Text", dt2, "Members.FirstName", True))
Me.txtMiddleName.DataBindings.Clear()
Me.txtMiddleName.DataBindings.Add(New Binding("Text", dt2, "Members.MiddleName", True))
Me.txtAddress.DataBindings.Clear()
Me.txtAddress.DataBindings.Add(New Binding("Text", dt2, "Members.Address", True))
Me.txtContactNumber.DataBindings.Clear()
Me.txtContactNumber.DataBindings.Add(New Binding("Text", dt2, "Members.ContactNumber", True))
Me.cboSex.DataBindings.Clear()
Me.cboSex.DataBindings.Add(New Binding("Text", dt2, "Members.Sex", True))
Me.cboStatus.DataBindings.Clear()
Me.cboStatus.DataBindings.Add(New Binding("Text", dt2, "Members.Status", True))
Me.txtAge.DataBindings.Clear()
Me.txtAge.DataBindings.Add(New Binding("Text", dt2, "Members.Age", True))
Me.txtEmployeeIDNumber.DataBindings.Clear()
Me.txtEmployeeIDNumber.DataBindings.Add(New Binding("Text", dt2, "Members.EmployeeIDNumber", True))
Me.txtPositionTitle.DataBindings.Clear()
Me.txtPositionTitle.DataBindings.Add(New Binding("Text", dt2, "Members.PositionTitle", True))
Me.cboDepartmentOffice.DataBindings.Clear()
Me.cboDepartmentOffice.DataBindings.Add(New Binding("Text", dt2, "Members.DepartmentOffice", True))
Me.txtOfficeLocalNumber.DataBindings.Clear()
Me.txtOfficeLocalNumber.DataBindings.Add(New Binding("Text", dt2, "Members.OfficeLocalNumber", True))
Me.txtAccountNumber.DataBindings.Clear()
Me.txtAccountNumber.DataBindings.Add(New Binding("Text", dt2, "Members.AccountNumber", True))
Me.cboMonthlyIncome.DataBindings.Clear()
Me.cboMonthlyIncome.DataBindings.Add(New Binding("Text", dt2, "Members.MonthlyIncome", True))
Memb = Members
Me.PicMember.Image = Members.PictureBox1.Image
End If
End With
Catch ex As Exception
MsgBox(ex.Message(), MsgBoxStyle.Critical, "Error")
Finally
cnn.Close()
End Try
Exit Sub
End If