V dalším kroku napíšeme programový kód, který nám umožní editovat záznamy. Napíšeme kód pro tlačítka btnOdstranit, btnUlozit, btnVratit, btnVlozit. V regiónu #Region "Tlacitka zmeny stavu" poté naprogramuje změnu stavu palety. Dalším regiónem je #Region "Vlozeni noveho zaznamu".
#Region "Editace zaznamu"
#Region "Ridici tlacitka"
Private Sub btnOdstranit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOdstranit.Click
Dim vys As MsgBoxResult
If Me.txtMnoz_Pa.Text <> 0 Then
MsgBox("Nelze odstanit paletu s nenulovým obsahem", MsgBoxStyle.Information Or MsgBoxStyle.OkOnly)
Else
vys = MsgBox("Opravdu zrušit paletu " & TblPaletyBindingSource.Current("Cislo_Pa") & "?", MsgBoxStyle.YesNo Or MsgBoxStyle.Question, "Smazat")
If vys = MsgBoxResult.Yes Then
'Odpoved byla "ano"
Me.TblPaletyBindingSource.RemoveCurrent()
End If
End If
End Sub
Private Sub btnZmenit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnZmenit.Click
'zablokovat jiné možnosti, než změnu materiálu
'Kontrola, že paleta je vyskladněná
If Me.TblPaletyBindingSource.Current("Stav_pa") <> "V" Then
MsgBox("Paleta " + TblPaletyBindingSource.Current("Cislo_Pa") + " není vyskladněná ", MsgBoxStyle.OkOnly)
Exit Sub
End If
Me.pnlNavig.Enabled = False
Me.pnlEdit.Enabled = False
Me.pnlStav.Enabled = False
Me.pnlPrirad.Enabled = False
Me.btnZavrit.Enabled = False
Me.dgvTblPalety.Enabled = False
'zviditelnit potvrzovací skupinu
Me.pnlPotvrdit.Visible = True
'uvolnit pole pro editaci
Me.txtAdr_Ulo.Enabled = True
Me.txtAdr_Ulo.Focus()
End Sub
Private Sub btnUlozit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUlozit.Click
Dim num As Integer
Try
Me.Validate()
Me.TblPaletyBindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll(Me.DsPaletyMaterial)
If cmbCislo_Mat.Enabled Then
Me.cmbCislo_Mat.Enabled = False
Me.cmbCislo_Mat.DropDownStyle = ComboBoxStyle.DropDown 'umoznime zobrazit prazdnou hodnotu
End If
Me.pnlNavig.Enabled = True
Me.pnlEdit.Enabled = True
Me.pnlStav.Enabled = True
Me.btnZavrit.Enabled = True
Me.pnlPrirad.Enabled = True
Me.dgvTblPalety.Enabled = True
If Integer.TryParse(Me.cmbCislo_Mat.Text, num) Then
Me.btnZmenaObsahuPalety.Enabled = True
Me.btnRezervace.Enabled = False
Else
Me.btnZmenaObsahuPalety.Enabled = False
Me.btnRezervace.Enabled = True
End If
Me.pnlPotvrdit.Visible = False
Me.txtAdr_Ulo.Enabled = False
Me.cmbTyp_pa.Enabled = False
Me.cmbCislo_Mat.Enabled = False
Catch ex As Exception
MsgBox(ex.ToString, MsgBoxStyle.Critical Or MsgBoxStyle.OkOnly, "Chyba")
End Try
End Sub
Private Sub btnVratit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVratit.Click
'Odvolání změn
Dim num As Integer
If cmbCislo_Mat.Enabled Then
Me.cmbCislo_Mat.Enabled = False
Me.cmbCislo_Mat.DropDownStyle = ComboBoxStyle.DropDown
End If
Me.TblPaletyBindingSource.CancelEdit()
Me.pnlNavig.Enabled = True
Me.pnlEdit.Enabled = True
Me.pnlStav.Enabled = True
Me.btnZavrit.Enabled = True
Me.pnlPrirad.Enabled = True
Me.dgvTblPalety.Enabled = True
If Integer.TryParse(Me.cmbCislo_Mat.Text, num) Then
Me.btnZmenaObsahuPalety.Enabled = True
Me.btnRezervace.Enabled = False
Else
Me.btnZmenaObsahuPalety.Enabled = False
Me.btnRezervace.Enabled = True
End If
Me.pnlPotvrdit.Visible = False
Me.txtAdr_Ulo.Enabled = False
Me.cmbTyp_pa.Enabled = False
Me.cmbCislo_Mat.Enabled = False
End Sub
Private Sub btnVlozit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVlozit.Click
'zablokovat jiné možnosti, než vlozeni palety
Me.pnlNavig.Enabled = False
Me.pnlEdit.Enabled = False
Me.pnlStav.Enabled = False
Me.btnZavrit.Enabled = False
Me.pnlPrirad.Enabled = False
Me.btnZmenaObsahuPalety.Enabled = False
Me.btnZavrit.Enabled = False
Me.dgvTblPalety.Enabled = False
Me.lblCislo.Visible = True
Me.pnlVlozit.Visible = True
Me.mtxtVlozit.Text = ""
Me.mtxtVlozit.Focus()
End Sub
#End Region
#Region "Tlacitka zmeny stavu"
Private Sub btnZaskladnit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnZaskladnit.Click
Me.TblPaletyBindingSource.Current("Stav_Pa") = "D"
Me.TblPaletyBindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll(Me.DsPaletyMaterial)
Me.btnZaskladnit.Enabled = False
Me.btnZaskladneno.Enabled = True
Me.btnVyskladneno.Enabled = True
End Sub
Private Sub btnVyskladnit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVyskladnit.Click
Me.TblPaletyBindingSource.Current("Stav_Pa") = "D"
Me.TblPaletyBindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll(Me.DsPaletyMaterial)
Me.btnZaskladneno.Enabled = True
Me.btnVyskladneno.Enabled = True
Me.btnVyskladnit.Enabled = False
End Sub
Private Sub btnVyskladneno_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVyskladneno.Click
Me.TblPaletyBindingSource.Current("Stav_Pa") = "V"
Me.TblPaletyBindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll(Me.DsPaletyMaterial)
Me.btnZaskladnit.Enabled = True
Me.btnZaskladneno.Enabled = False
Me.btnVyskladneno.Enabled = False
End Sub
Private Sub btnZaskladneno_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnZaskladneno.Click
Me.TblPaletyBindingSource.Current("Stav_Pa") = "Z"
Me.TblPaletyBindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll(Me.DsPaletyMaterial)
Me.btnZaskladneno.Enabled = False
Me.btnVyskladneno.Enabled = False
Me.btnVyskladnit.Enabled = True
End Sub
#End Region
#Region "Vlozeni noveho zaznamu"
Private Sub btnVlozitPotvrdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVlozitPotvrdit.Click
Dim foundIndex As Integer
Dim VkladanyText As String = Me.mtxtVlozit.Text.Trim
If VkladanyText.Length < 4 Then
MsgBox("Číslo palety 0000 až 9999", MsgBoxStyle.Information Or MsgBoxStyle.OkOnly, "Chyba")
Exit Sub
End If
foundIndex = Me.TblPaletyBindingSource.Find("Cislo_Pa", VkladanyText)
If foundIndex >= 0 Then
MsgBox("Taková paleta již existuje", MsgBoxStyle.Information Or MsgBoxStyle.OkOnly)
Else
Me.lblCislo.Visible = False
Me.pnlVlozit.Visible = False
Me.pnlPotvrdit.Visible = True
Me.txtAdr_Ulo.Enabled = True
Me.cmbTyp_pa.Enabled = True
'nastaveni pocatecnich hodnot pro nove zaznamy
With Me.DsPaletyMaterial.tblPalety
.Cislo_PaColumn.DefaultValue = Me.mtxtVlozit.Text.Trim
.Adr_UloColumn.DefaultValue = "Mimo"
.Typ_paColumn.DefaultValue = "M"
.Stav_PaColumn.DefaultValue = "V"
.Mnoz_PaColumn.DefaultValue = 0
.KomentColumn.DefaultValue = ""
End With
Me.TblPaletyBindingSource.AddNew()
Me.txtAdr_Ulo.Focus()
End If
End Sub
Private Sub btnVlozitZrusit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVlozitZrusit.Click
'obnovení tlačítek
Me.pnlNavig.Enabled = True
Me.pnlEdit.Enabled = True
Me.pnlStav.Enabled = True
Me.btnZavrit.Enabled = True
Me.pnlPrirad.Enabled = True
Me.dgvTblPalety.Enabled = True
If Me.cmbCislo_Mat.Text.Trim <> "" Then
Me.btnZmenaObsahuPalety.Enabled = True
Me.btnRezervace.Enabled = False
Else
Me.btnZmenaObsahuPalety.Enabled = False
Me.btnRezervace.Enabled = True
End If
Me.lblCislo.Visible = False
Me.pnlVlozit.Visible = False
End Sub
Private Sub mtxtVlozit_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles mtxtVlozit.TextChanged
Dim VkladanyText As String = Me.mtxtVlozit.Text.Trim
Me.ErrorProvider.SetError(sender, "")
If VkladanyText.Length < 4 Then
Me.ErrorProvider.SetError(Me.mtxtVlozit, "Číslo palety 0000 až 9999")
End If
End Sub
#End Region
#End Region