Aplikační formulář Přehled palet
Přehled palet - programový kód - Editace záznamu
 Tisk

Přehled palet - programový kód - Editace záznamu

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