Option Strict Off
Option Explicit On

Imports fatd_faturamento.BLL.Repositorio
Imports fatd_faturamento.ENTIDADE

Friend Class frmCadastroClassificacaoTipos
    Inherits System.Windows.Forms.Form
    Dim vResp As Short
    Dim vNew As Boolean

#Region "Propriedades"

    Private Sub frmCadClassificacaoTipos_Load(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles MyBase.Load

        Try
            lClear()
        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub txtDescricao_Enter(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles txtDescricao.Enter

        Try

            With Me.txtDescricao
                .SelectionStart = 0
                .SelectionLength = Len(.Text)
            End With

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub txtDescricao_Leave(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles txtDescricao.Leave

        Try

            With Me.txtDescricao
                .Text = Strings.UCase(.Text)
            End With

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub txtIdAtendComClaGru_Enter(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles txtIdAtendComClaGru.Enter

        Try

            With Me.txtIdAtendComClaGru
                .Text = Replace(.Text, ".", "")
                .SelectionStart = 0
                .SelectionLength = Len(.Text)
            End With

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try


    End Sub

    Private Sub txtIdAtendComClaGru_Leave(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles txtIdAtendComClaGru.Leave

        Try

            With Me.txtIdAtendComClaGru
                If IsNumeric(.Text) Then
                    SetaCodigo("atend_com_cla_gru", CInt(.Text))
                    .Text = IIf(Len(.Text) = 0, 0, .Text)
                Else
                    Me.txtDsAtendComClaGru.Text = String.Empty
                End If
            End With

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub txtIdAtendComClaGru_KeyPress(ByVal eventSender As System.Object, ByVal eventArgs As System.Windows.Forms.KeyPressEventArgs) Handles txtIdAtendComClaGru.KeyPress

        Dim KeyAscii As Short = Asc(eventArgs.KeyChar)

        Try

            If KeyAscii = System.Windows.Forms.Keys.Return Then
                TabEnter(KeyAscii, eventArgs)
            ElseIf KeyAscii <> System.Windows.Forms.Keys.Back And (KeyAscii < System.Windows.Forms.Keys.D0 Or KeyAscii > System.Windows.Forms.Keys.D9) Then
                KeyAscii = 0
            End If

            eventArgs.KeyChar = Chr(KeyAscii)

            If KeyAscii = 0 Then
                eventArgs.Handled = True
            End If


        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try


    End Sub

    Private Sub txtPrazoHorasUrbano_Enter(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles txtPrazoHorasUrbano.Enter

        Try

            With Me.txtPrazoHorasUrbano
                .Text = Replace(.Text, ".", "")
                .SelectionStart = 0
                .SelectionLength = Len(.Text)
            End With

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub txtPrazoHorasUrbano_Leave(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles txtPrazoHorasUrbano.Leave


        Try

            With Me.txtPrazoHorasUrbano
                If IsNumeric(.Text) Then
                    .Text = VB6.Format(IIf(Len(.Text) = 0, 0, .Text), "#,##0.00")
                End If
            End With

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub txtPrazoHorasUrbano_KeyPress(ByVal eventSender As System.Object, ByVal eventArgs As System.Windows.Forms.KeyPressEventArgs) Handles txtPrazoHorasUrbano.KeyPress

        Dim KeyAscii As Short = Asc(eventArgs.KeyChar)


        Try

            If KeyAscii = System.Windows.Forms.Keys.Return Then
                TabEnter(KeyAscii, eventArgs)
            ElseIf KeyAscii <> System.Windows.Forms.Keys.Back And (KeyAscii < System.Windows.Forms.Keys.D0 Or KeyAscii > System.Windows.Forms.Keys.D9) Then

                If KeyAscii = System.Windows.Forms.Keys.Delete Then
                    KeyAscii = System.Windows.Forms.Keys.Snapshot
                End If

                If KeyAscii <> System.Windows.Forms.Keys.Snapshot Then
                    KeyAscii = 0
                Else

                    If InStr(1, Me.txtPrazoHorasUrgenteNaoUrbano.Text, ",") > 0 Then
                        KeyAscii = 0
                    End If

                End If

            End If

            eventArgs.KeyChar = Chr(KeyAscii)

            If KeyAscii = 0 Then
                eventArgs.Handled = True
            End If

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub txtPrazoHorasNaoUrbano_Enter(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles txtPrazoHorasNaoUrbano.Enter

        Try

            With Me.txtPrazoHorasNaoUrbano
                .Text = Replace(.Text, ".", "")
                .SelectionStart = 0
                .SelectionLength = Len(.Text)
            End With

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub txtPrazoHorasNaoUrbano_Leave(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles txtPrazoHorasNaoUrbano.Leave


        Try

            With Me.txtPrazoHorasNaoUrbano
                If IsNumeric(.Text) Then
                    .Text = VB6.Format(IIf(Len(.Text) = 0, 0, .Text), "#,##0.00")
                End If
            End With

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub txtPrazoHorasNaoUrbano_KeyPress(ByVal eventSender As System.Object, ByVal eventArgs As System.Windows.Forms.KeyPressEventArgs) Handles txtPrazoHorasNaoUrbano.KeyPress

        Dim KeyAscii As Short = Asc(eventArgs.KeyChar)


        Try

            If KeyAscii = System.Windows.Forms.Keys.Return Then
                TabEnter(KeyAscii, eventArgs)
            ElseIf KeyAscii <> System.Windows.Forms.Keys.Back And (KeyAscii < System.Windows.Forms.Keys.D0 Or KeyAscii > System.Windows.Forms.Keys.D9) Then

                If KeyAscii = System.Windows.Forms.Keys.Delete Then
                    KeyAscii = System.Windows.Forms.Keys.Snapshot
                End If

                If KeyAscii <> System.Windows.Forms.Keys.Snapshot Then
                    KeyAscii = 0
                Else

                    If InStr(1, Me.txtPrazoHorasUrgenteNaoUrbano.Text, ",") > 0 Then
                        KeyAscii = 0
                    End If

                End If

            End If

            eventArgs.KeyChar = Chr(KeyAscii)

            If KeyAscii = 0 Then
                eventArgs.Handled = True
            End If

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try
    End Sub

    Private Sub txtPrazoHorasUrgenteUrbano_Enter(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles txtPrazoHorasUrgenteUrbano.Enter


        Try

            With Me.txtPrazoHorasUrgenteUrbano
                .Text = Replace(.Text, ".", "")
                .SelectionStart = 0
                .SelectionLength = Len(.Text)
            End With

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub txtPrazoHorasUrgenteUrbano_Leave(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles txtPrazoHorasUrgenteUrbano.Leave


        Try

            With Me.txtPrazoHorasUrgenteUrbano
                If IsNumeric(.Text) Then
                    .Text = VB6.Format(IIf(Len(.Text) = 0, 0, .Text), "#,##0.00")
                End If
            End With

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub txtPrazoHorasUrgenteUrbano_KeyPress(ByVal eventSender As System.Object, ByVal eventArgs As System.Windows.Forms.KeyPressEventArgs) Handles txtPrazoHorasUrgenteUrbano.KeyPress

        Dim KeyAscii As Short = Asc(eventArgs.KeyChar)


        Try

            If KeyAscii = System.Windows.Forms.Keys.Return Then
                TabEnter(KeyAscii, eventArgs)
            ElseIf KeyAscii <> System.Windows.Forms.Keys.Back And (KeyAscii < System.Windows.Forms.Keys.D0 Or KeyAscii > System.Windows.Forms.Keys.D9) Then

                If KeyAscii = System.Windows.Forms.Keys.Delete Then
                    KeyAscii = System.Windows.Forms.Keys.Snapshot
                End If

                If KeyAscii <> System.Windows.Forms.Keys.Snapshot Then
                    KeyAscii = 0
                Else

                    If InStr(1, Me.txtPrazoHorasUrgenteNaoUrbano.Text, ",") > 0 Then
                        KeyAscii = 0
                    End If

                End If

            End If

            eventArgs.KeyChar = Chr(KeyAscii)

            If KeyAscii = 0 Then
                eventArgs.Handled = True
            End If

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try
    End Sub

    Private Sub txtPrazoHorasUrgenteNaoUrbano_Enter(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles txtPrazoHorasUrgenteNaoUrbano.Enter

        Try

            With Me.txtPrazoHorasUrgenteNaoUrbano
                .Text = Replace(.Text, ".", "")
                .SelectionStart = 0
                .SelectionLength = Len(.Text)
            End With

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub txtPrazoHorasUrgenteNaoUrbano_Leave(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles txtPrazoHorasUrgenteNaoUrbano.Leave

        Try

            With Me.txtPrazoHorasUrgenteNaoUrbano
                If IsNumeric(.Text) Then
                    .Text = VB6.Format(IIf(Len(.Text) = 0, 0, .Text), "#,##0.00")
                End If
            End With

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub txtPrazoHorasUrgenteNaoUrbano_KeyPress(ByVal eventSender As System.Object, ByVal eventArgs As System.Windows.Forms.KeyPressEventArgs) Handles txtPrazoHorasUrgenteNaoUrbano.KeyPress

        Dim KeyAscii As Short = Asc(eventArgs.KeyChar)


        Try

            If KeyAscii = System.Windows.Forms.Keys.Return Then
                TabEnter(KeyAscii, eventArgs)
            ElseIf KeyAscii <> System.Windows.Forms.Keys.Back And (KeyAscii < System.Windows.Forms.Keys.D0 Or KeyAscii > System.Windows.Forms.Keys.D9) Then

                If KeyAscii = System.Windows.Forms.Keys.Delete Then
                    KeyAscii = System.Windows.Forms.Keys.Snapshot
                End If

                If KeyAscii <> System.Windows.Forms.Keys.Snapshot Then
                    KeyAscii = 0
                Else

                    If InStr(1, Me.txtPrazoHorasUrgenteNaoUrbano.Text, ",") > 0 Then
                        KeyAscii = 0
                    End If

                End If

            End If

            eventArgs.KeyChar = Chr(KeyAscii)

            If KeyAscii = 0 Then
                eventArgs.Handled = True
            End If

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub chkSituacaoCortado_CheckStateChanged(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles chkSituacaoCortado.CheckStateChanged


        Try

            If Me.chkSituacaoDesligado.CheckState = 0 And Me.chkSituacaoLigado.CheckState = 0 And Me.chkSituacaoDesativado.CheckState = 0 And Me.chkSituacaoNaoLigado.CheckState = 0 Then
                Me.chkSituacaoCortado.CheckState = System.Windows.Forms.CheckState.Checked
            End If

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub chkSituacaoDesativado_CheckStateChanged(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles chkSituacaoDesativado.CheckStateChanged


        Try

            If Me.chkSituacaoDesligado.CheckState = 0 And Me.chkSituacaoLigado.CheckState = 0 And Me.chkSituacaoCortado.CheckState = 0 And Me.chkSituacaoNaoLigado.CheckState = 0 Then
                Me.chkSituacaoDesativado.CheckState = System.Windows.Forms.CheckState.Checked
            End If

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub chkSituacaoDesligado_CheckStateChanged(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles chkSituacaoDesligado.CheckStateChanged


        Try

            If Me.chkSituacaoCortado.CheckState = 0 And Me.chkSituacaoLigado.CheckState = 0 And Me.chkSituacaoDesativado.CheckState = 0 And Me.chkSituacaoNaoLigado.CheckState = 0 Then
                Me.chkSituacaoDesligado.CheckState = System.Windows.Forms.CheckState.Checked
            End If

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub chkSituacaoLigado_CheckStateChanged(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles chkSituacaoLigado.CheckStateChanged


        Try

            If Me.chkSituacaoCortado.CheckState = 0 And Me.chkSituacaoDesligado.CheckState = 0 And Me.chkSituacaoDesativado.CheckState = 0 And Me.chkSituacaoNaoLigado.CheckState = 0 Then
                Me.chkSituacaoLigado.CheckState = System.Windows.Forms.CheckState.Checked
            End If

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub chkSituacaoNaoLigado_CheckStateChanged(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles chkSituacaoNaoLigado.CheckStateChanged


        Try

            If Me.chkSituacaoDesligado.CheckState = 0 And Me.chkSituacaoLigado.CheckState = 0 And Me.chkSituacaoCortado.CheckState = 0 And Me.chkSituacaoDesativado.CheckState = 0 Then
                Me.chkSituacaoNaoLigado.CheckState = System.Windows.Forms.CheckState.Checked
            End If

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub cmdLocalizar_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles cmdLocalizar.Click

        Try
            frmLocalizadorGeral.SetParametros("atend_com_cla_det", "Classificação Tipos", Me, "ORDER BY `idatend_com_cla_gru` ASC, `id` ASC ")
            frmLocalizadorGeral.Show()
        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub cmdLocalizarAtendComClaGru_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles cmdLocalizarAtendComClaGru.Click

        Try
            frmLocalizadorGeral.SetParametros("atend_com_cla_gru", "Classificação Grupos", Me)
            frmLocalizadorGeral.Show()
        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub cmdFechar_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles cmdFechar.Click

        Try

            lClose()

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub cmdExcluir_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles cmdExcluir.Click

        Dim objAtendComClaDet As New entidadeAtendComClaDet


        Try

            If Trim(Me.txtId.Text) <> "0" Then

                vResp = MessageBox.Show("Esta operação não possui retorno!" & vbCrLf & vbCrLf & "Tem certeza de que deseja excluir este registro?", "Confirmação de Exclusão", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question)

                If vResp = DialogResult.Yes Then

                    objAtendComClaDet.ID = Convert.ToInt32(txtId.Text)
                    objAtendComClaDet.IDATEND_COM_CLA_GRU = Convert.ToInt32(txtIdAtendComClaGru.Text)

                    If Not lDelete(objAtendComClaDet) Then

                        MessageBox.Show("Classificação de Tipos não pode ser excluído!", "Confirmação de Exclusão", MessageBoxButtons.OK, MessageBoxIcon.Information)

                        vResp = MessageBox.Show("Esta operação não possui retorno!" & vbCrLf & vbCrLf & "Tem certeza de que deseja desativar este registro?", "Confirmação de Exclusão", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question)

                        If vResp = DialogResult.Yes Then

                            If Not lUpdate_1(objAtendComClaDet) Then
                                MessageBox.Show("Classificação de Tipos não pode ser alterado!", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                                Exit Sub
                            Else
                                MessageBox.Show("Classificação de Tipos alterado com sucesso!", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                                SetaCodigo("atend_com_cla_det", CInt(Me.txtId.Text), CInt(Me.txtIdAtendComClaGru.Text))
                            End If

                        ElseIf vResp = DialogResult.Cancel Then
                            Exit Sub
                        End If

                    Else
                        MessageBox.Show("Classificação de Tipos excluído com sucesso!", "Confirmação de Exclusão", MessageBoxButtons.OK, MessageBoxIcon.Information)
                        frmCadClassificacaoTipos_Load(Me, New System.EventArgs())
                    End If

                ElseIf vResp = DialogResult.Cancel Then
                    Exit Sub
                End If

            End If

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try


    End Sub

    Private Sub cmdSalvar_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles cmdSalvar.Click

        Dim objAtendComClaDet As New entidadeAtendComClaDet
        Dim repositorioAtendComClaDet As New repositorioAtendComClaDet

        Dim vlist

        Try

            If vNew = True Then

                If Me.txtId.Text = "0" Then

                    If lInsert() Then

                        MessageBox.Show("Classificação de Tipos criada com sucesso!", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)

                        objAtendComClaDet.IDATEND_COM_CLA_GRU = CInt(Me.txtIdAtendComClaGru.Text)

                        vlist = repositorioAtendComClaDet.SelectMax(objAtendComClaDet)

                        For Each objAtendComClaDetFor As entidadeAtendComClaDet In vlist
                            Me.txtId.Text = CStr(CInt(IIf(IsDBNull(objAtendComClaDetFor.ID), 0, objAtendComClaDetFor.ID)))
                        Next

                        SetaCodigo("atend_com_cla_det", CInt(Me.txtId.Text), CInt(Me.txtIdAtendComClaGru.Text))

                    Else
                        MessageBox.Show("Classificação de Tipos não pode ser criada!", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                        Exit Sub
                    End If

                End If

            Else

                If Me.txtId.Text <> "0" Then

                    If lUpdate() Then

                        MessageBox.Show("Classificação de Tipos atualizada com sucesso!", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)

                        objAtendComClaDet.IDATEND_COM_CLA_GRU = CInt(Me.txtIdAtendComClaGru.Text)

                        vlist = repositorioAtendComClaDet.SelectMax(objAtendComClaDet)

                        For Each objAtendComClaDetFor As entidadeAtendComClaDet In vlist
                            Me.txtId.Text = CStr(CInt(IIf(IsDBNull(objAtendComClaDetFor.ID), 0, objAtendComClaDetFor.ID)))
                        Next

                        SetaCodigo("atend_com_cla_det", CInt(Me.txtId.Text), CInt(Me.txtIdAtendComClaGru.Text))

                    Else
                        MessageBox.Show("Classificação de Tipos não pode ser atualizada!", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                        Exit Sub
                    End If

                End If

            End If


        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try



    End Sub

    Private Sub cmdNovo_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles cmdNovo.Click

        Try

            lNew()

        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub frmCadClassificacaoTipos_FormClosed(ByVal eventSender As System.Object, ByVal eventArgs As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed

        Try
            If Not vfrmOld Is Nothing Then
                vfrmOld.Enabled = True
            End If
        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub frmCadClassificacaoTipos_KeyPress(ByVal eventSender As System.Object, ByVal eventArgs As System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress

        Dim KeyAscii As Short = Asc(eventArgs.KeyChar)

        Try

            If KeyAscii = System.Windows.Forms.Keys.Escape Then
                Call cmdFechar_Click(cmdFechar, New System.EventArgs())
            ElseIf KeyAscii = System.Windows.Forms.Keys.Return Then
                TabEnter(KeyAscii, eventArgs)
            End If

            eventArgs.KeyChar = Chr(KeyAscii)

            If KeyAscii = 0 Then
                eventArgs.Handled = True
            End If


        Catch ex As Exception
            MessageBox.Show("Ocorreu um Erro Inesperado. Favor, Contate o Administrador do Sistema ou a Equipe de Suporte de sua localidade! ", "Fatal - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub



#End Region

#Region "Métodos"

    Private Sub lNew()

        Try

            vNew = True

            lClear()

        Catch ex As Exception
            Exit Sub
        End Try

    End Sub

    Private Sub lClear()

        Try

            Me.txtId.Text = "0"
            Me.txtIdAtendComClaGru.Text = "0"
            Me.txtDsAtendComClaGru.Text = String.Empty
            Me.txtDescricao.Text = String.Empty
            Me.txtPrazoHorasUrbano.Text = "0,00"
            Me.txtPrazoHorasNaoUrbano.Text = "0,00"
            Me.txtPrazoHorasUrgenteUrbano.Text = "0,00"
            Me.txtPrazoHorasUrgenteNaoUrbano.Text = "0,00"
            Me.chkDiasHorasUteis.CheckState = System.Windows.Forms.CheckState.Unchecked
            Me.cmbNivelGravidade.SelectedIndex = 1
            Me.chkSituacaoLigado.CheckState = System.Windows.Forms.CheckState.Checked
            Me.chkSituacaoCortado.CheckState = System.Windows.Forms.CheckState.Checked
            Me.chkSituacaoDesligado.CheckState = System.Windows.Forms.CheckState.Checked
            Me.chkSituacaoDesativado.CheckState = System.Windows.Forms.CheckState.Checked
            Me.chkSituacaoNaoLigado.CheckState = System.Windows.Forms.CheckState.Checked
            Me.chkMedicaoCroqui.CheckState = System.Windows.Forms.CheckState.Unchecked
            Me.chkMedicaoMedidor.CheckState = System.Windows.Forms.CheckState.Unchecked
            Me.chkMedicaoRamal.CheckState = System.Windows.Forms.CheckState.Unchecked
            Me.chkMedicaoVerifica.CheckState = System.Windows.Forms.CheckState.Unchecked
            Me.lblSituacao.Text = String.Empty

        Catch ex As Exception
            Exit Sub
        End Try

    End Sub

    Private Sub lClose()

        Try

            Close()

        Catch ex As Exception
            Exit Sub
        End Try

    End Sub

    Public Sub SetaParametros(ByRef frmOld As System.Windows.Forms.Form)

        Try

            vfrmOld = frmOld
            vfrmOld.Enabled = False

        Catch ex As Exception
            Exit Sub
        End Try

    End Sub

    Public Sub SetaCodigo(ByVal astrTabela As String, ByVal alngId_A As Integer, Optional ByVal alngId_B As Integer = 0, Optional ByVal alngId_C As Integer = 0, Optional ByVal alngId_D As Integer = 0)

        Dim lstrAux As String
        Dim lintAux As Short
        Dim lintNiG As Short

        Dim vlist

        Dim objAtendComClaDet As New entidadeAtendComClaDet
        Dim repositorioAtendComClaDet As New repositorioAtendComClaDet

        Dim objAtendComClaGru As New entidadeAtendComClaGru
        Dim repositorioAtendComClaGru As New repositorioAtendComClaGru

        Try

            If alngId_A > 0 Then

                If astrTabela.ToUpper() = "ATEND_COM_CLA_DET" Then

                    objAtendComClaDet.ID = alngId_A

                    If alngId_B > 0 Then
                        objAtendComClaDet.IDATEND_COM_CLA_GRU = alngId_B
                    End If

                    vlist = repositorioAtendComClaDet.Select(objAtendComClaDet)

                    If vlist.Count > 0 Then

                        For Each objAtendComClaDetFor As entidadeAtendComClaDet In vlist


                            Me.txtId.Text = CInt(IIf(IsDBNull(objAtendComClaDetFor.ID), 0, objAtendComClaDetFor.ID))
                            Me.txtIdAtendComClaGru.Text = CInt(IIf(IsDBNull(objAtendComClaDetFor.IDATEND_COM_CLA_GRU), 0, objAtendComClaDetFor.IDATEND_COM_CLA_GRU))
                            Me.txtDescricao.Text = Trim(IIf(IsDBNull(objAtendComClaDetFor.DESCRICAO), "", objAtendComClaDetFor.DESCRICAO))
                            Me.txtPrazoHorasUrbano.Text = CInt(IIf(IsDBNull(objAtendComClaDetFor.PRAZO_HORAS_URBANO), 0, objAtendComClaDetFor.PRAZO_HORAS_URBANO))
                            Me.txtPrazoHorasNaoUrbano.Text = CInt(IIf(IsDBNull(objAtendComClaDetFor.PRAZO_HORAS_NAO_URBANO), 0, objAtendComClaDetFor.PRAZO_HORAS_NAO_URBANO))
                            Me.txtPrazoHorasUrgenteUrbano.Text = CInt(IIf(IsDBNull(objAtendComClaDetFor.PRAZO_HORAS_URGENTE_URBANO), 0, objAtendComClaDetFor.PRAZO_HORAS_URGENTE_URBANO))
                            Me.txtPrazoHorasUrgenteNaoUrbano.Text = CInt(IIf(IsDBNull(objAtendComClaDetFor.PRAZO_HORAS_URGENTE_NAO_URBANO), 0, objAtendComClaDetFor.PRAZO_HORAS_URGENTE_NAO_URBANO))
                            Me.chkDiasHorasUteis.CheckState = CShort(IIf(IsDBNull(objAtendComClaDetFor.DIAS_HORAS_UTEIS), 0, objAtendComClaDetFor.DIAS_HORAS_UTEIS))
                            lintNiG = CShort(IIf(IsDBNull(objAtendComClaDetFor.NIVEL_GRAVIDADE), 0, objAtendComClaDetFor.NIVEL_GRAVIDADE))
                            cmbNivelGravidade.SelectedIndex = lintNiG
                            lstrAux = Trim(IIf(IsDBNull(objAtendComClaDetFor.REGRA_SITUACAO), "L", objAtendComClaDetFor.REGRA_SITUACAO))
                            Me.chkSituacaoLigado.CheckState = IIf(InStr(1, lstrAux, "L") > 0, 1, 0)
                            Me.chkSituacaoCortado.CheckState = IIf(InStr(1, lstrAux, "C") > 0, 1, 0)
                            Me.chkSituacaoDesligado.CheckState = IIf(InStr(1, lstrAux, "D") > 0, 1, 0)
                            Me.chkSituacaoDesativado.CheckState = IIf(InStr(1, lstrAux, "I") > 0, 1, 0)
                            Me.chkSituacaoNaoLigado.CheckState = IIf(InStr(1, lstrAux, "N") > 0, 1, 0)
                            Me.chkMedicaoCroqui.CheckState = CShort(IIf(IsDBNull(objAtendComClaDetFor.REGRA_CROQUI), 0, objAtendComClaDetFor.REGRA_CROQUI))
                            Me.chkMedicaoMedidor.CheckState = CShort(IIf(IsDBNull(objAtendComClaDetFor.REGRA_MEDIDOR), 0, objAtendComClaDetFor.REGRA_MEDIDOR))
                            Me.chkMedicaoRamal.CheckState = CShort(IIf(IsDBNull(objAtendComClaDetFor.REGRA_RAMAL), 0, objAtendComClaDetFor.REGRA_RAMAL))
                            Me.chkMedicaoVerifica.CheckState = CShort(IIf(IsDBNull(objAtendComClaDetFor.REGRA_VERIFICAMEDIDOR), 0, objAtendComClaDetFor.REGRA_VERIFICAMEDIDOR))
                            Me.lblSituacao.Text = "Situação: " & Trim(IIf(IsDBNull(objAtendComClaDetFor.SITUACAO), "Ativo", objAtendComClaDetFor.SITUACAO)) & "  -  último acesso: " & BuscaNomeUsuario(CInt(IIf(IsDBNull(objAtendComClaDetFor.IDUSUARIOS), 0, objAtendComClaDetFor.IDUSUARIOS)))

                            vNew = False

                            txtIdAtendComClaGru_Leave(txtIdAtendComClaGru, New System.EventArgs())

                            LigDesCamposAutomatico()

                            If Me.txtDescricao.Enabled Then
                                Me.txtDescricao.Focus()
                            End If


                        Next

                    Else
                        MessageBox.Show("Não foi possível encontrar o registro!", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                    End If

                ElseIf astrTabela.ToUpper() = "ATEND_COM_CLA_GRU" Then

                    objAtendComClaGru.ID = alngId_A

                    vlist = repositorioAtendComClaGru.Select(objAtendComClaGru)

                    If vlist.Count > 0 Then

                        For Each objAtendComClaGruFor As entidadeAtendComClaGru In vlist

                            Me.txtIdAtendComClaGru.Text = CInt(IIf(IsDBNull(objAtendComClaGruFor.ID), 0, objAtendComClaGruFor.ID))
                            Me.txtDsAtendComClaGru.Text = Trim(IIf(IsDBNull(objAtendComClaGruFor.DESCRICAO), "", objAtendComClaGruFor.DESCRICAO))

                        Next

                    Else
                        MessageBox.Show("Não foi possível encontrar o registro!", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                    End If

                End If

            End If

        Catch ex As Exception
            Exit Sub
        End Try


    End Sub

    Private Sub LigDesCamposAutomatico()

        Try

            Me.txtIdAtendComClaGru.Enabled = (CInt(IIf(IsNumeric(Me.txtIdAtendComClaGru.Text), Me.txtIdAtendComClaGru.Text, 0)) >= 1000)
            Me.cmdLocalizarAtendComClaGru.Enabled = (CInt(IIf(IsNumeric(Me.txtIdAtendComClaGru.Text), Me.txtIdAtendComClaGru.Text, 0)) >= 1000)
            Me.txtDescricao.Enabled = (CInt(IIf(IsNumeric(Me.txtIdAtendComClaGru.Text), Me.txtIdAtendComClaGru.Text, 0)) >= 1000)

        Catch ex As Exception
            Exit Sub
        End Try

    End Sub

    Private Function lInsert() As Boolean

        Dim lstrAux As String

        Dim objAtendComClaDet As New entidadeAtendComClaDet
        Dim repositorioAtendComClaDet As New repositorioAtendComClaDet

        Try

            lstrAux = String.Empty
            lstrAux = lstrAux & IIf(Me.chkSituacaoLigado.CheckState = 1, "L", "")
            lstrAux = lstrAux & IIf(Me.chkSituacaoCortado.CheckState = 1, "C", "")
            lstrAux = lstrAux & IIf(Me.chkSituacaoDesligado.CheckState = 1, "D", "")
            lstrAux = lstrAux & IIf(Me.chkSituacaoDesativado.CheckState = 1, "I", "")
            lstrAux = lstrAux & IIf(Me.chkSituacaoNaoLigado.CheckState = 1, "N", "")

            objAtendComClaDet.IDATEND_COM_CLA_GRU = Convert.ToInt32(Trim(IIf(String.IsNullOrEmpty((txtIdAtendComClaGru.Text)), "0", txtIdAtendComClaGru.Text)))
            objAtendComClaDet.DESCRICAO = Trim(IIf(String.IsNullOrEmpty((txtDescricao.Text)), " ", Replace(Trim(Me.txtDescricao.Text), "'", "\'")))
            objAtendComClaDet.PRAZO_HORAS_URBANO = Convert.ToDouble(Trim(IIf(String.IsNullOrEmpty((txtPrazoHorasUrbano.Text)), "0", Me.txtPrazoHorasUrbano.Text)))
            objAtendComClaDet.PRAZO_HORAS_NAO_URBANO = Convert.ToDouble(Trim(IIf(String.IsNullOrEmpty((txtPrazoHorasNaoUrbano.Text)), "0", Me.txtPrazoHorasNaoUrbano.Text)))
            objAtendComClaDet.PRAZO_HORAS_URGENTE_URBANO = Convert.ToDouble(Trim(IIf(String.IsNullOrEmpty((txtPrazoHorasUrgenteUrbano.Text)), "0", Me.txtPrazoHorasUrgenteUrbano.Text)))
            objAtendComClaDet.PRAZO_HORAS_URGENTE_NAO_URBANO = Convert.ToDouble(Trim(IIf(String.IsNullOrEmpty((txtPrazoHorasUrgenteNaoUrbano.Text)), "0", Me.txtPrazoHorasUrgenteNaoUrbano.Text)))
            objAtendComClaDet.DIAS_HORAS_UTEIS = Convert.ToInt32(IIf(Me.chkDiasHorasUteis.CheckState = 0, 0, 1))
            objAtendComClaDet.NIVEL_GRAVIDADE = Convert.ToInt32(cmbNivelGravidade.SelectedIndex)
            objAtendComClaDet.REGRA_SITUACAO = Trim(IIf(String.IsNullOrEmpty((lstrAux)), " ", lstrAux))
            objAtendComClaDet.REGRA_CROQUI = IIf(Me.chkMedicaoCroqui.CheckState = 0, 0, 1)
            objAtendComClaDet.REGRA_MEDIDOR = Convert.ToInt32(IIf(Me.chkMedicaoMedidor.CheckState = 0, 0, 1))
            objAtendComClaDet.REGRA_RAMAL = Convert.ToInt32(IIf(Me.chkMedicaoRamal.CheckState = 0, 0, 1))
            objAtendComClaDet.REGRA_VERIFICAMEDIDOR = Convert.ToInt32(IIf(Me.chkMedicaoVerifica.CheckState = 0, 0, 1))
            objAtendComClaDet.SITUACAO = "Ativo"
            objAtendComClaDet.IDUSUARIOS = Convert.ToInt32(Trim(IIf(String.IsNullOrEmpty((vUsuario.ID)), "0", vUsuario.ID)))

            repositorioAtendComClaDet.Insert(objAtendComClaDet)

            Return True
        Catch ex As Exception
            Return False
        End Try

    End Function

    Private Function lUpdate() As Boolean

        Dim lstrAux As String

        Dim objAtendComClaDet As New entidadeAtendComClaDet
        Dim repositorioAtendComClaDet As New repositorioAtendComClaDet


        Try

            lstrAux = String.Empty
            lstrAux = lstrAux & IIf(Me.chkSituacaoLigado.CheckState = 1, "L", "")
            lstrAux = lstrAux & IIf(Me.chkSituacaoCortado.CheckState = 1, "C", "")
            lstrAux = lstrAux & IIf(Me.chkSituacaoDesligado.CheckState = 1, "D", "")
            lstrAux = lstrAux & IIf(Me.chkSituacaoDesativado.CheckState = 1, "I", "")
            lstrAux = lstrAux & IIf(Me.chkSituacaoNaoLigado.CheckState = 1, "N", "")

            objAtendComClaDet.ID = Convert.ToInt32(Trim(IIf(String.IsNullOrEmpty((txtId.Text)), "0", txtId.Text)))
            objAtendComClaDet.IDATEND_COM_CLA_GRU = Convert.ToInt32(Trim(IIf(String.IsNullOrEmpty((txtIdAtendComClaGru.Text)), "0", txtIdAtendComClaGru.Text)))
            objAtendComClaDet.DESCRICAO = Trim(IIf(String.IsNullOrEmpty((txtDescricao.Text)), " ", Replace(Trim(Me.txtDescricao.Text), "'", "\'")))
            objAtendComClaDet.PRAZO_HORAS_URBANO = Convert.ToDouble(Trim(IIf(String.IsNullOrEmpty((txtPrazoHorasUrbano.Text)), "0", Me.txtPrazoHorasUrbano.Text)))
            objAtendComClaDet.PRAZO_HORAS_NAO_URBANO = Convert.ToDouble(Trim(IIf(String.IsNullOrEmpty((txtPrazoHorasNaoUrbano.Text)), "0", Me.txtPrazoHorasNaoUrbano.Text)))
            objAtendComClaDet.PRAZO_HORAS_URGENTE_URBANO = Convert.ToDouble(Trim(IIf(String.IsNullOrEmpty((txtPrazoHorasUrgenteUrbano.Text)), "0", Me.txtPrazoHorasUrgenteUrbano.Text)))
            objAtendComClaDet.PRAZO_HORAS_URGENTE_NAO_URBANO = Convert.ToDouble(Trim(IIf(String.IsNullOrEmpty((txtPrazoHorasUrgenteNaoUrbano.Text)), "0", Me.txtPrazoHorasUrgenteNaoUrbano.Text)))
            objAtendComClaDet.DIAS_HORAS_UTEIS = Convert.ToInt32(IIf(Me.chkDiasHorasUteis.CheckState = 0, 0, 1))
            objAtendComClaDet.NIVEL_GRAVIDADE = Convert.ToInt32(cmbNivelGravidade.SelectedIndex)
            objAtendComClaDet.REGRA_SITUACAO = Trim(IIf(String.IsNullOrEmpty((lstrAux)), " ", lstrAux))
            objAtendComClaDet.REGRA_CROQUI = IIf(Me.chkMedicaoCroqui.CheckState = 0, 0, 1)
            objAtendComClaDet.REGRA_MEDIDOR = Convert.ToInt32(IIf(Me.chkMedicaoMedidor.CheckState = 0, 0, 1))
            objAtendComClaDet.REGRA_RAMAL = Convert.ToInt32(IIf(Me.chkMedicaoRamal.CheckState = 0, 0, 1))
            objAtendComClaDet.REGRA_VERIFICAMEDIDOR = Convert.ToInt32(IIf(Me.chkMedicaoVerifica.CheckState = 0, 0, 1))
            objAtendComClaDet.SITUACAO = "Ativo"
            objAtendComClaDet.IDUSUARIOS = Convert.ToInt32(Trim(IIf(String.IsNullOrEmpty((vUsuario.ID)), "0", vUsuario.ID)))


            repositorioAtendComClaDet.Update(objAtendComClaDet)

            Return True
        Catch ex As Exception
            Return False
        End Try

    End Function

    Private Function lUpdate_1(ByRef objAtendComClaDet As entidadeAtendComClaDet) As Boolean
        Dim repositorioAtendComClaDet As New repositorioAtendComClaDet
        Try

            repositorioAtendComClaDet.Update_1(objAtendComClaDet)

            Return True
        Catch ex As Exception
            Return False
        End Try
    End Function

    Private Function lDelete(ByRef objAtendComClaDet As entidadeAtendComClaDet) As Boolean
        Dim repositorioAtendComClaDet As New repositorioAtendComClaDet
        Try

            repositorioAtendComClaDet.Delete(objAtendComClaDet)

            Return True
        Catch ex As Exception
            Return False
        End Try
    End Function

#End Region


End Class