MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Erro na mudança de Status

    Compartilhe

    Maurício Bruno
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 224
    Registrado : 25/05/2015

    [Resolvido]Erro na mudança de Status

    Mensagem  Maurício Bruno em Qui 8 Jun - 13:17

    Boa Tarde!

    Preciso de uma ajuda, sei que estou pecando em coisa simples, mais não estou conseguindo achar o erro.

    O que acontece, que quando eu clico no botão salvar ele faz toda uma verificação de acordo com o Status, ele salva e limpa o formulário, porém, o status não esta mudando, creio que os End If estão incorretos.

    Segue o código do botão abaixo.

    Código:
    'AO CLICAR NO BOTÃO SALVAR
    Private Sub btn_salvar_Click()
    'ATUALIZAR O GRUPO DE ACESSO E O USUÁRIO
    Dim sUsuario, nUsuario As String
    Dim sGrupoUsuario As String
    sUsuario = Forms!Frm_IRM_Categorizar_Chamado!txtUser
    nUsuario = Nz(DLookup("[Usuário]", "Tbl_Cadastro_User", "[User Rede]= '" & sUsuario & "'"))
    sGrupoUsuario = Nz(DLookup("[Grupo de Acesso]", "Tbl_Cadastro_User", "[User Rede]= '" & sUsuario & "'"))
    Me.txt_Grupo_Usuario = sGrupoUsuario
    Me.txt_Usuario = nUsuario

    If MsgBox("Deseja salvar o Registro?", vbYesNo + vbQuestion, "Atenção!") = vbNo Then
    Me.Undo
    MsgBox "Registro Não Salvo!!!", vbCritical, "Atenção"

    'QUANDO CLICAR NO BOTÃO HABILITARÁ NOVAMENTE TODOS OS CAMPOS
    'CADASTRO
    Me.txt_n_chamado.Enabled = False
    Me.txt_dt_chamado.Enabled = False
    Me.txt_status.Enabled = True
    Me.txt_descrição.Enabled = False
    Me.txt_produto_assunto.Enabled = False
    Me.txt_variedade.Enabled = False
    Me.txt_manifestação.Enabled = False
    Me.txt_linha.Enabled = False
    Me.txt_grupo_manifestação.Enabled = False
    Me.txt_qtd_reclamada.Enabled = False
    Me.txt_tipo_manifestação.Enabled = False
    Me.txt_lote_chamado.Enabled = False
    'CATEGORIZAR
    Me.txt_grupo_tipo_manifestação.Enabled = False
    Me.txt_analise_risco.Enabled = False
    Me.txt_divisao_manifestação.Enabled = False
    Me.txt_codigo.Enabled = False
    Me.txt_produto.Enabled = False
    Me.txt_fase_manifestação.Enabled = False
    Me.txt_nivel_reclamação.Enabled = False
    Me.txt_tipo_desvio.Enabled = False
    Me.check_divergencia.Enabled = False
    Me.check_divergencia_corrigida.Enabled = False
    Me.txt_motivo_divergencia.Enabled = False
    'PESQUISA
    Me.txt_n_chamado_cons.Enabled = True
    Me.txt_tipo_desvio_cons.Enabled = True
    Me.txt_analise_risco_cons.Enabled = True
    Me.txt_status_cons.Enabled = True
    Me.list_consulta_categorizar.Enabled = True

    'DESABILITARÁ O BOTÃO FECHAR
    Me.btn_categorizar.Enabled = False
    Me.btn_alterar.Enabled = False
    Me.btn_solucionar.Enabled = False
    Me.btn_salvar.Enabled = False
    Me.btn_atualizar.Enabled = False
    Me.btn_excluir.Enabled = False
    Me.btn_cancelar.Enabled = False
    Me.btn_fechar.Enabled = True

    Else
    If txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.txt_nivel_reclamação = "NAO INVESTIGAR" _
        Or txt_Grupo_Usuario = "ADMINISTRADOR - IRM" And Me.txt_nivel_reclamação = "NAO INVESTIGAR" _
        Or txt_Grupo_Usuario = "INVESTIGAÇÃO - IRM" And Me.txt_nivel_reclamação = "NAO INVESTIGAR" _
        Then
            'INSERIR USUÁRIO NO CAMPO
            Me.txt_categorizado_por = txt_Usuario
            Me.txt_dt_categorização = Now

            'VERIFICARÁ SE OS CAMPOS ESTÃO VÁZIOS
            If check_divergencia = 0 Then
                Beep
            MsgBox "PREENCHIMENTO OBRIGATÓRIO - O Campo Divergência deve ser marcado.", vbOKOnly + vbExclamation, "AVISO"
            Me.check_divergencia.SetFocus
            Me.ast_obrig01.Visible = True
            Me.Rótulo136.ForeColor = vbRed
            Me.check_divergencia.SetFocus
                Else
                Me.ast_obrig01.Visible = False
                Me.Rótulo136.ForeColor = RGB(166, 166, 166)
            
            If IsNull(txt_motivo_divergencia) Then
                Beep
            MsgBox "PREENCHIMENTO OBRIGATÓRIO - O Campo Motivo da Divergência deve ser Preenchido.", vbOKOnly + vbExclamation, "AVISO"
            Me.txt_motivo_divergencia.Enabled = True
            Me.txt_motivo_divergencia.SetFocus
            Me.ast_obrig02.Visible = True
            Me.Rótulo137.ForeColor = vbRed
            Me.txt_motivo_divergencia.BackColor = 13231868
            Me.txt_motivo_divergencia.SetFocus
                Else
                Me.ast_obrig02.Visible = False
                Me.Rótulo137.ForeColor = RGB(166, 166, 166)
                Me.txt_motivo_divergencia.BackColor = RGB(255, 255, 255)

            'ALTERAR STATUS
            Me.txt_status.Enabled = True
            Me.txt_status = "NÃO INVESTIGAR"
            If txt_status = "NÃO INVESTIGAR" Then
            Me.txt_status.ForeColor = vbWhite
            Me.txt_status.BackColor = vbRed
            DoCmd.RunCommand acCmdSaveRecord
            MsgBox "Categorizado com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
            Me.txt_status.BackColor = RGB(236, 236, 236)
            Me.txt_status.ForeColor = vbBlack

    ElseIf txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = 0 _
    Or txt_Grupo_Usuario = "ADMINISTRADOR - IRM" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = 0 _
    Or txt_Grupo_Usuario = "INVESTIGAÇÃO - IRM" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = 0 _
    Then
            If IsNull(txt_motivo_divergencia) Then
            Beep
            MsgBox "PREENCHIMENTO OBRIGATÓRIO - O Campo Motivo da Divergência deve ser Preenchido.", vbOKOnly + vbExclamation, "AVISO"
            Me.txt_motivo_divergencia.Enabled = True
            Me.txt_motivo_divergencia.SetFocus
            Me.ast_obrig02.Visible = True
            Me.Rótulo137.ForeColor = vbRed
            Me.txt_motivo_divergencia.BackColor = 13231868
            Me.txt_motivo_divergencia.SetFocus
            Else
            Me.ast_obrig02.Visible = False
            Me.Rótulo137.ForeColor = RGB(166, 166, 166)
            Me.txt_motivo_divergencia.BackColor = RGB(255, 255, 255)

    'ALTERAR STATUS
    Me.txt_status.Enabled = True
    Me.txt_status = "CHAMADO DIVERGENTE"
    If txt_status = "CHAMADO DIVERGENTE" Then
    Me.txt_status.ForeColor = vbWhite
    Me.txt_status.BackColor = vbRed

    DoCmd.RunCommand acCmdSaveRecord
    MsgBox "Registro Não Salvo!!!", vbOKOnly + vbInformation, "AVISO"
    Me.txt_status.BackColor = RGB(236, 236, 236)
    Me.txt_status.ForeColor = vbBlack

    ElseIf txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.txt_status = "CHAMADO DIVERGENTE" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = -1 _
    Or txt_Grupo_Usuario = "SAC" And Me.txt_status = "CHAMADO DIVERGENTE" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = -1 _
    Then
    'INSERIR USUÁRIO NO CAMPO
    Me.txt_corrigido_por = txt_Usuario
    Me.txt_dt_correção = Now

    'ALTERAR STATUS
    Me.txt_status.Enabled = True
    Me.txt_status = "AGUARDANDO CATEGORIZAÇÃO"
    If txt_status = "AGUARDANDO CATEGORIZAÇÃO" Then
    Me.txt_status.ForeColor = vbBlack
    Me.txt_status.BackColor = vbYellow

    DoCmd.RunCommand acCmdSaveRecord
    MsgBox "Correção Salva com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
    Me.txt_status.BackColor = RGB(236, 236, 236)
    Me.txt_status.ForeColor = vbBlack

    ElseIf txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.txt_status = "AGUARDANDO CATEGORIZAÇÃO" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = -1 _
    Or txt_Grupo_Usuario = "ADMINISTRADOR - IRM" And Me.txt_status = "AGUARDANDO CATEGORIZAÇÃO" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = -1 _
    Or txt_Grupo_Usuario = "INVESTIGAÇÃO - IRM" And Me.txt_status = "AGUARDANDO CATEGORIZAÇÃO" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = -1 _
    Then
        'INSERIR USUÁRIO NO CAMPO
        Me.txt_categorizado_por = txt_Usuario
        Me.txt_dt_categorização = Now
        
        If MsgBox("A Divergência foi solucionada?", vbYesNo + vbQuestion, "Atenção!") = vbNo Then
        'ALTERAR STATUS
        Me.txt_status.Enabled = True
        Me.txt_status = "CHAMADO DIVERGENTE"
        If txt_status = "CHAMADO DIVERGENTE" Then
        Me.txt_status.ForeColor = vbWhite
        Me.txt_status.BackColor = vbRed
        
        DoCmd.RunCommand acCmdSaveRecord
        MsgBox "Categorizado com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
        Me.txt_status.BackColor = RGB(236, 236, 236)
        Me.txt_status.ForeColor = vbBlack
        
        Else
        'ALTERAR STATUS
        Me.txt_status.Enabled = True
        Me.txt_status = "AGUARDANDO INVESTIGAÇÃO"
        If txt_status = "AGUARDANDO INVESTIGAÇÃO" Then
        Me.txt_status.ForeColor = vbWhite
        Me.txt_status.BackColor = vbBlue
        
        DoCmd.RunCommand acCmdSaveRecord
        MsgBox "Categorizado com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
        Me.txt_status.BackColor = RGB(236, 236, 236)
        Me.txt_status.ForeColor = vbBlack

    ElseIf txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.check_divergencia = 0 And Me.check_divergencia_corrigida = 0 _
    Or txt_Grupo_Usuario = "ADMINISTRADOR - IRM" And Me.check_divergencia = 0 And Me.check_divergencia_corrigida = 0 _
    Or txt_Grupo_Usuario = "INVESTIGAÇÃO - IRM" And Me.check_divergencia = 0 And Me.check_divergencia_corrigida = 0 _
    Then
    'INSERIR USUÁRIO NO CAMPO
    Me.txt_categorizado_por = txt_Usuario
    Me.txt_dt_categorização = Now

    'ALTERAR STATUS
    Me.txt_status.Enabled = True
    Me.txt_status = "AGUARDANDO INVESTIGAÇÃO"
    If txt_status = "AGUARDANDO INVESTIGAÇÃO" Then
    Me.txt_status.ForeColor = vbWhite
    Me.txt_status.BackColor = vbBlue

    DoCmd.RunCommand acCmdSaveRecord
    MsgBox "Categorizado com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
    Me.txt_status.BackColor = RGB(236, 236, 236)
    Me.txt_status.ForeColor = vbBlack

    End If
    End If
    End If
    End If
    End If
    End If
    End If
    End If
    End If
    End If
    End If

    'AO INICIAR TODOS OS CAMPOS ESTARÃO LIMPOS
    DoCmd.GoToRecord acForm, "Frm_IRM_Categorizar_Chamado", acNewRec

    'QUANDO CLICAR NO BOTÃO HABILITARÁ NOVAMENTE TODOS OS CAMPOS
    'CADASTRO
    Me.txt_n_chamado.Enabled = False
    Me.txt_dt_chamado.Enabled = False
    Me.txt_status.Enabled = True
    Me.txt_descrição.Enabled = False
    Me.txt_produto_assunto.Enabled = False
    Me.txt_variedade.Enabled = False
    Me.txt_manifestação.Enabled = False
    Me.txt_linha.Enabled = False
    Me.txt_grupo_manifestação.Enabled = False
    Me.txt_qtd_reclamada.Enabled = False
    Me.txt_tipo_manifestação.Enabled = False
    Me.txt_lote_chamado.Enabled = False
    'CATEGORIZAR
    Me.txt_grupo_tipo_manifestação.Enabled = False
    Me.txt_analise_risco.Enabled = False
    Me.txt_divisao_manifestação.Enabled = False
    Me.txt_codigo.Enabled = False
    Me.txt_produto.Enabled = False
    Me.txt_fase_manifestação.Enabled = False
    Me.txt_nivel_reclamação.Enabled = False
    Me.txt_tipo_desvio.Enabled = False
    Me.check_divergencia.Enabled = False
    Me.check_divergencia_corrigida.Enabled = False
    Me.txt_motivo_divergencia.Enabled = False
    'PESQUISA
    Me.txt_n_chamado_cons.Enabled = True
    Me.txt_tipo_desvio_cons.Enabled = True
    Me.txt_analise_risco_cons.Enabled = True
    Me.txt_status_cons.Enabled = True
    Me.list_consulta_categorizar.Enabled = True

    'DESABILITARÁ O BOTÃO FECHAR
    Me.btn_categorizar.Enabled = False
    Me.btn_alterar.Enabled = False
    Me.btn_solucionar.Enabled = False
    Me.btn_salvar.Enabled = False
    Me.btn_atualizar.Enabled = False
    Me.btn_excluir.Enabled = False
    Me.btn_cancelar.Enabled = False
    Me.btn_fechar.Enabled = True

    'LIMPAR E FORMATAR CAMPOS
    Me.txt_status = ""
    Me.txt_status.BackColor = RGB(236, 236, 236)

    'MOVER CURSOR PARA O CAMPO
    DoCmd.GoToControl "btn_fechar"

    Exit Sub
    End If
    End Sub

    Desde já agradeço a ajuda e atenção.
    Anexos
    Erro.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (249 Kb) Baixado 3 vez(es)
    avatar
    Silvio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3672
    Registrado : 20/04/2011

    Re: [Resolvido]Erro na mudança de Status

    Mensagem  Silvio em Sex 9 Jun - 14:28

    Não consegui entender a lógica do teu programa,mas o que me chamou a atenção foi:

    Me.txt_status.Enabled = True
    Me.txt_status = "AGUARDANDO INVESTIGAÇÃO"--> experimente tirar esse
    If txt_status = "AGUARDANDO INVESTIGAÇÃO" Then
    Me.txt_status.ForeColor = vbWhite
    Me.txt_status.BackColor = vbBlue


    Tentei acrescentar alguma coisa a ele, para entender a sequencia, mas pelo que nos mandou, tornou-se difícil.


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    [Você precisa estar registrado e conectado para ver este link.]

    Maurício Bruno
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 224
    Registrado : 25/05/2015

    Erro na mudança de Status

    Mensagem  Maurício Bruno em Sex 9 Jun - 15:26

    Silvio,

    Primeiramente lhe peço desculpa se o que desenvolvi está confuso, porém, vou tentar explicar o que estou fazendo.

    Bom este desenvolvimento e uma tela de categorização de desvios, onde os usuários realizaram tratativas de acordo com o status do desvio.

    Os meus desvios ficam todos na listview, onde com um duplo clique no desvio ele retorna para a tela com o respectivo status e dados, onde os usuários de acordo com o seu grupo de acesso realizaram as tratativas.

    Até aqui tudo bem, porém, o meu problema está após um usuário que realizou as alterações irá salvar e o programa deverá realizar algumas verificações de acordo com algumas condições:

    1 – Se o meu grupo de acesso for “DESENVOLVEDOR” ou “ADMINISTRADOR” ou “INVESTIGAÇÃO – IRM” e o meu nível de status (txt_nivel_reclamação) for "NAO INVESTIGAR", tudo isto indiferente do status do desvio:
    > Os campos ”check_divergencia” e “txt_motivo_divergencia” serão campos de preenchimento obrigatório.
    > Se os campos estiverem preenchidos, ao salvar o status será alterado para "NÃO INVESTIGAR".

    2 – Se o meu grupo de acesso for “DESENVOLVEDOR” ou “ADMINISTRADOR” ou “INVESTIGAÇÃO – IRM” e o meu campo check_divergencia estiver marcado (-1) e o campo check_divergencia_corrigida não estiver marcado (0), tudo isto indiferente do status do desvio:
    > O campo ” txt_motivo_divergencia” será campo de preenchimento obrigatório.
    > Se o campo estiver preenchido, ao salvar o status será alterado para "CHAMADO DIVERGENTE".

    3 – Se o meu grupo de acesso for “DESENVOLVEDOR” ou “SAC” e os meus campos check_divergencia e o check_divergencia_corrigida estiverem marcados (-1), e o status do desvio for "CHAMADO DIVERGENTE":
    > Ao salvar o status será alterado para “AGUARDANDO CATEGORIZAÇÃO ".

    4 – Se o meu grupo de acesso for “DESENVOLVEDOR” ou “ADMINISTRADOR” ou “INVESTIGAÇÃO – IRM” e os meus campos check_divergencia e o check_divergencia_corrigida estiverem marcados (-1), e o status do desvio for "AGUARDANDO CATEGORIZAÇÃO":
    > Ao salvar haverá uma Msgbox A Divergência foi solucionada?
    > Se Não, o problema foi não solucionado o status será alterado para “CHAMADO DIVERGENTE".
    > Se SIM, o problema foi solucionado o status será alterado para “AGUARDANDO INVESTIGAÇÃO”.

    5 – Se o meu grupo de acesso for “DESENVOLVEDOR” ou “ADMINISTRADOR” ou “INVESTIGAÇÃO – IRM” e os meus campos check_divergencia e o check_divergencia_corrigida não estiverem marcados (0), tudo isto indiferente do status do desvio:
    > Ao salvar o status será alterado para “AGUARDANDO INVESTIGAÇÃO".

    Após salvar ele limpa os campos através do comando:

    Código:
    DoCmd.GoToRecord acForm, "Frm_IRM_Categorizar_Chamado", acNewRec

    E bloqueio os campos e botões novamente.

    Tentei descrever da melhor forma para você entender o estou tentando fazer, se não fui claro me avise para eu tentar ver uma melhor forma.

    Desde agradeço a atenção e ajuda.
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6505
    Registrado : 05/11/2009

    Re: [Resolvido]Erro na mudança de Status

    Mensagem  Alexandre Neves em Seg 12 Jun - 13:41

    Boa tarde,
    Não encontrei lógica nos end if
    Crie a estrutura dos if e end if e só depois coloque o código no local certo


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

    Maurício Bruno
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 224
    Registrado : 25/05/2015

    Erro na mudança de Status

    Mensagem  Maurício Bruno em Qua 14 Jun - 11:24

    Alexandre / Silvio,

    Boa Tarde!

    Agradeço primeiramente pela ajudar neste projeto.

    Refiz novamente o código utilizando somente um status para ver onde esta o erro, mesmo assim não esta funcionando corretamente. Segue anexo o que estou desenvolvendo.

    Código:
    'AO CLICAR NO BOTÃO SALVAR
    Private Sub btn_salvar_Click()
    'ATUALIZAR O GRUPO DE ACESSO E O USUÁRIO
    Dim sUsuario, nUsuario As String
    Dim sGrupoUsuario As String
    sUsuario = Forms!Frm_IRM_Categorizar_Chamado!txtUser
    nUsuario = Nz(DLookup("[Usuário]", "Tbl_Cadastro_User", "[User Rede]= '" & sUsuario & "'"))
    sGrupoUsuario = Nz(DLookup("[Grupo de Acesso]", "Tbl_Cadastro_User", "[User Rede]= '" & sUsuario & "'"))
    Me.txt_Grupo_Usuario = sGrupoUsuario
    Me.txt_Usuario = nUsuario

    If MsgBox("Deseja salvar o Registro?", vbYesNo + vbQuestion, "Atenção!") = vbNo Then
    Me.Undo
    MsgBox "Registro Não Salvo!!!", vbCritical, "Atenção"

    'QUANDO CLICAR NO BOTÃO HABILITARÁ NOVAMENTE TODOS OS CAMPOS
    'CADASTRO
    Me.txt_n_chamado.Enabled = False
    Me.txt_dt_chamado.Enabled = False
    Me.txt_status.Enabled = True
    Me.txt_descrição.Enabled = False
    Me.txt_produto_assunto.Enabled = False
    Me.txt_variedade.Enabled = False
    Me.txt_manifestação.Enabled = False
    Me.txt_linha.Enabled = False
    Me.txt_grupo_manifestação.Enabled = False
    Me.txt_qtd_reclamada.Enabled = False
    Me.txt_tipo_manifestação.Enabled = False
    Me.txt_lote_chamado.Enabled = False
    'CATEGORIZAR
    Me.txt_grupo_tipo_manifestação.Enabled = False
    Me.txt_analise_risco.Enabled = False
    Me.txt_divisao_manifestação.Enabled = False
    Me.txt_codigo.Enabled = False
    Me.txt_produto.Enabled = False
    Me.txt_fase_manifestação.Enabled = False
    Me.txt_nivel_reclamação.Enabled = False
    Me.txt_tipo_desvio.Enabled = False
    Me.check_divergencia.Enabled = False
    Me.check_divergencia_corrigida.Enabled = False
    Me.txt_motivo_divergencia.Enabled = False
    'PESQUISA
    Me.txt_n_chamado_cons.Enabled = True
    Me.txt_tipo_desvio_cons.Enabled = True
    Me.txt_analise_risco_cons.Enabled = True
    Me.txt_status_cons.Enabled = True
    Me.list_consulta_categorizar.Enabled = True

    'DESABILITARÁ O BOTÃO FECHAR
    Me.btn_categorizar.Enabled = False
    Me.btn_alterar.Enabled = False
    Me.btn_solucionar.Enabled = False
    Me.btn_salvar.Enabled = False
    Me.btn_atualizar.Enabled = False
    Me.btn_excluir.Enabled = False
    Me.btn_cancelar.Enabled = False
    Me.btn_fechar.Enabled = True

    Else
    If txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.txt_nivel_reclamação = "NAO INVESTIGAR" _
        Or txt_Grupo_Usuario = "ADMINISTRADOR - IRM" And Me.txt_nivel_reclamação = "NAO INVESTIGAR" _
        Or txt_Grupo_Usuario = "INVESTIGAÇÃO - IRM" And Me.txt_nivel_reclamação = "NAO INVESTIGAR" _
        Then
            'VERIFICARÁ SE OS CAMPOS ESTÃO VÁZIOS
            If check_divergencia = 0 Then
                Beep
            MsgBox "PREENCHIMENTO OBRIGATÓRIO - O Campo Divergência deve ser marcado.", vbOKOnly + vbExclamation, "AVISO"
            Me.check_divergencia.SetFocus
            Me.ast_obrig01.Visible = True
            Me.Rótulo136.ForeColor = vbRed
            Me.check_divergencia.SetFocus
                Else
                Me.ast_obrig01.Visible = False
                Me.Rótulo136.ForeColor = RGB(166, 166, 166)

            If IsNull(txt_motivo_divergencia) Then
                Beep
            MsgBox "PREENCHIMENTO OBRIGATÓRIO - O Campo Motivo da Divergência deve ser Preenchido.", vbOKOnly + vbExclamation, "AVISO"
            Me.txt_motivo_divergencia.Enabled = True
            Me.txt_motivo_divergencia.SetFocus
            Me.ast_obrig02.Visible = True
            Me.Rótulo137.ForeColor = vbRed
            Me.txt_motivo_divergencia.BackColor = 13231868
            Me.txt_motivo_divergencia.SetFocus
                Else
                Me.ast_obrig02.Visible = False
                Me.Rótulo137.ForeColor = RGB(166, 166, 166)
                Me.txt_motivo_divergencia.BackColor = RGB(255, 255, 255)
            
            'ALTERAR STATUS
            Me.txt_status.Enabled = True
            Me.txt_status = "NÃO INVESTIGAR"
            If txt_status = "NÃO INVESTIGAR" Then
            Me.txt_status.ForeColor = vbWhite
            Me.txt_status.BackColor = vbRed

            'INSERIR USUÁRIO NO CAMPO
            Me.txt_categorizado_por = txt_Usuario
            Me.txt_dt_categorização = Now

            DoCmd.RunCommand acCmdSaveRecord
            MsgBox "Categorizado com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
            Me.txt_motivo_divergencia.BackColor = RGB(236, 236, 236)
            Me.txt_motivo_divergencia.ForeColor = vbBlack
            End If

    'AO INICIAR TODOS OS CAMPOS ESTARÃO LIMPOS
    DoCmd.GoToRecord acForm, "Frm_IRM_Categorizar_Chamado", acNewRec

    'QUANDO CLICAR NO BOTÃO HABILITARÁ NOVAMENTE TODOS OS CAMPOS
    'CADASTRO
    Me.txt_n_chamado.Enabled = False
    Me.txt_dt_chamado.Enabled = False
    Me.txt_status.Enabled = True
    Me.txt_descrição.Enabled = False
    Me.txt_produto_assunto.Enabled = False
    Me.txt_variedade.Enabled = False
    Me.txt_manifestação.Enabled = False
    Me.txt_linha.Enabled = False
    Me.txt_grupo_manifestação.Enabled = False
    Me.txt_qtd_reclamada.Enabled = False
    Me.txt_tipo_manifestação.Enabled = False
    Me.txt_lote_chamado.Enabled = False
    'CATEGORIZAR
    Me.txt_grupo_tipo_manifestação.Enabled = False
    Me.txt_analise_risco.Enabled = False
    Me.txt_divisao_manifestação.Enabled = False
    Me.txt_codigo.Enabled = False
    Me.txt_produto.Enabled = False
    Me.txt_fase_manifestação.Enabled = False
    Me.txt_nivel_reclamação.Enabled = False
    Me.txt_tipo_desvio.Enabled = False
    Me.check_divergencia.Enabled = False
    Me.check_divergencia_corrigida.Enabled = False
    Me.txt_motivo_divergencia.Enabled = False
    'PESQUISA
    Me.txt_n_chamado_cons.Enabled = True
    Me.txt_tipo_desvio_cons.Enabled = True
    Me.txt_analise_risco_cons.Enabled = True
    Me.txt_status_cons.Enabled = True
    Me.list_consulta_categorizar.Enabled = True

    'DESABILITARÁ O BOTÃO FECHAR
    Me.btn_categorizar.Enabled = False
    Me.btn_alterar.Enabled = False
    Me.btn_solucionar.Enabled = False
    Me.btn_salvar.Enabled = False
    Me.btn_atualizar.Enabled = False
    Me.btn_excluir.Enabled = False
    Me.btn_cancelar.Enabled = False
    Me.btn_fechar.Enabled = True

    'LIMPAR E FORMATAR CAMPOS
    Me.txt_status.BackColor = RGB(236, 236, 236)
    Me.txt_status.ForeColor = vbBlack

    'MOVER CURSOR PARA O CAMPO
    DoCmd.GoToControl "btn_fechar"

    Exit Sub
    End If
    End If
    End If
    End If
    End Sub

    Agora o status esta mudando, entretanto, o campo obrigatório "Motivo da Divergência" (txt_motivo_divergencia) não esta obrigando o preenchimento.

    Vou tentar explicar o passo a passo do meu processo:
    1º Criar um Usuário na tabela "Tbl_Cadastro_User" nível "Desenvolvedor"
    2º No formulário "Frm_IRM_Categorizar_Chamado" clique duas vezes em um dos chamados na View onde os dados retornarão.
    3º Com base no seu nível de acesso cadastrado na tabela de usuário será liberado o botão "Categorizar" onde será liberado os campos "Nível de Reclamação" e Divergência.
    4º Selecione o nível da reclamação "NAO INVESTIGAR" e clique em Salvar.
    5º O programa deverá solicitar o preenchimento obrigatório dos campo "Divergência" (check_divergencia), selecione.
    6ª O programa deverá solicitar o preenchimento obrigatório dos campo "Motivo da Divergência" (txt_motivo_divergencia), deveria obrigar o preenchimento, antes de alterar o status para "NAO INVESTIGAR" e salvando.

    Obrigado pela atenção e ajuda.
    Anexos
    Erro.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (307 Kb) Baixado 6 vez(es)
    avatar
    Silvio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3672
    Registrado : 20/04/2011

    Re: [Resolvido]Erro na mudança de Status

    Mensagem  Silvio em Qua 14 Jun - 13:30

    Mauricio uma sugestão.

    Por ele buscar o usuário no login o campo "Categorizar" e demais campos... não ficam habilitados.

    Uma ideia seria antes de salvar as alterações, fazer uma checagem no campo "check_divergencia".

    Algo parecido com isso.

    If me.check_divergencia= 0 then
    msgbox"Campo divergência está em branco", "...AVISO..."
    me.check_divergencia.setfocus
    else

    o restanto do comando

    endif


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    [Você precisa estar registrado e conectado para ver este link.]

    Maurício Bruno
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 224
    Registrado : 25/05/2015

    Erro na mudança de Status

    Mensagem  Maurício Bruno em Qua 14 Jun - 14:22

    Silvio,

    Tentei esta forma e não funcionou.

    Já refiz me código varias vezes e não funciona ele só faz a primeira pergunta obrigatória do campo a segunda não vai.rsrs

    Agradeço a atenção e ajuda.
    avatar
    Silvio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3672
    Registrado : 20/04/2011

    Re: [Resolvido]Erro na mudança de Status

    Mensagem  Silvio em Qua 14 Jun - 14:40

    Veja...
    Select case divergencia

    case is = 0 then ' desmarcado ou False
    msgbox( Campo não pode estar em branco), vbCritical, "Atenção"
    me.check_divergencia.setfocus

    case is = -1 then ' marcado ou Verdadeiro
    msgbox( Campo habilitado), vbCritical, "Atenção"
    end select

    If MsgBox("Deseja salvar o Registro?", vbYesNo + vbQuestion, "Atenção!") = vbNo Then
    Me.Undo
    MsgBox "Registro Não Salvo!!!", vbCritical, "Atenção"
    else


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    [Você precisa estar registrado e conectado para ver este link.]

    Maurício Bruno
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 224
    Registrado : 25/05/2015

    Erro na mudança de Status

    Mensagem  Maurício Bruno em Qua 14 Jun - 15:05

    Silvio,

    Obrigado pelo retorno.

    Testei aqui e também não funcionou.
    avatar
    Silvio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3672
    Registrado : 20/04/2011

    Re: [Resolvido]Erro na mudança de Status

    Mensagem  Silvio em Qua 14 Jun - 15:59

    Faça mais esse teste.

    Código:
    'AO CLICAR NO BOTÃO SALVAR
    Private Sub btn_salvar_Click()
    ' desenvolvido em 14/06/2017 por Silvio para Mauricio Bruno

    'faz a verificação do check e do motivo no momento de salvar

    If Me.check_divergencia = 0 Or IsNull(Me.txt_motivo_divergencia) Or Me.txt_motivo_divergencia = "" Then
            MsgBox "Verificar campo divergência, o mesmo está em branco ou o motivo da divergência ! ", vbInformation, Me.Caption
                Me.check_divergencia.SetFocus

      ElseIf Me.check_divergencia = -1 Or IsNull(Me.txt_motivo_divergencia) Or Me.txt_motivo_divergencia = "" Then
              MsgBox "Verificar campo motivo da divergência, o mesmo está em branco ! ", vbInformation, Me.Caption
                  Me.txt_motivo_divergencia.SetFocus
             
                            ElseIf Me.check_divergencia = -1 Or Not IsNull(Me.txt_motivo_divergencia) Then
                            ' Aqui o restante do teu código.


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    [Você precisa estar registrado e conectado para ver este link.]
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6505
    Registrado : 05/11/2009

    Re: [Resolvido]Erro na mudança de Status

    Mensagem  Alexandre Neves em Qua 14 Jun - 16:43

    Boa noite
    Confirme a hierarquia dos ifs, julgue que não estejam de acordo com o caminho do programa
    Código:
    Private Sub btn_salvar_Click()
        'ATUALIZAR O GRUPO DE ACESSO E O USUÁRIO
        Dim sUsuario, nUsuario As String
        Dim sGrupoUsuario As String
        sUsuario = Forms!Frm_IRM_Categorizar_Chamado!txtUser
        nUsuario = Nz(DLookup("[Usuário]", "Tbl_Cadastro_User", "[User Rede]= '" & sUsuario & "'"))
        sGrupoUsuario = Nz(DLookup("[Grupo de Acesso]", "Tbl_Cadastro_User", "[User Rede]= '" & sUsuario & "'"))
        Me.txt_Grupo_Usuario = sGrupoUsuario
        Me.txt_Usuario = nUsuario
       
        If MsgBox("Deseja salvar o Registro?", vbYesNo + vbQuestion, "Atenção!") = vbNo Then
            Me.Undo
            MsgBox "Registro Não Salvo!!!", vbCritical, "Atenção"
       
            'QUANDO CLICAR NO BOTÃO HABILITARÁ NOVAMENTE TODOS OS CAMPOS
            'CADASTRO
            Me.txt_n_chamado.Enabled = False
            Me.txt_dt_chamado.Enabled = False
            Me.txt_status.Enabled = True
            Me.txt_descrição.Enabled = False
            Me.txt_produto_assunto.Enabled = False
            Me.txt_variedade.Enabled = False
            Me.txt_manifestação.Enabled = False
            Me.txt_linha.Enabled = False
            Me.txt_grupo_manifestação.Enabled = False
            Me.txt_qtd_reclamada.Enabled = False
            Me.txt_tipo_manifestação.Enabled = False
            Me.txt_lote_chamado.Enabled = False
            'CATEGORIZAR
            Me.txt_grupo_tipo_manifestação.Enabled = False
            Me.txt_analise_risco.Enabled = False
            Me.txt_divisao_manifestação.Enabled = False
            Me.txt_codigo.Enabled = False
            Me.txt_produto.Enabled = False
            Me.txt_fase_manifestação.Enabled = False
            Me.txt_nivel_reclamação.Enabled = False
            Me.txt_tipo_desvio.Enabled = False
            Me.check_divergencia.Enabled = False
            Me.check_divergencia_corrigida.Enabled = False
            Me.txt_motivo_divergencia.Enabled = False
            'PESQUISA
            Me.txt_n_chamado_cons.Enabled = True
            Me.txt_tipo_desvio_cons.Enabled = True
            Me.txt_analise_risco_cons.Enabled = True
            Me.txt_status_cons.Enabled = True
            Me.list_consulta_categorizar.Enabled = True
           
            'DESABILITARÁ O BOTÃO FECHAR
            Me.btn_categorizar.Enabled = False
            Me.btn_alterar.Enabled = False
            Me.btn_solucionar.Enabled = False
            Me.btn_salvar.Enabled = False
            Me.btn_atualizar.Enabled = False
            Me.btn_excluir.Enabled = False
            Me.btn_cancelar.Enabled = False
            Me.btn_fechar.Enabled = True
           
        Else
            If txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.txt_nivel_reclamação = "NAO INVESTIGAR" _
                Or txt_Grupo_Usuario = "ADMINISTRADOR - IRM" And Me.txt_nivel_reclamação = "NAO INVESTIGAR" _
                Or txt_Grupo_Usuario = "INVESTIGAÇÃO - IRM" And Me.txt_nivel_reclamação = "NAO INVESTIGAR" _
                Then
                    'INSERIR USUÁRIO NO CAMPO
                    Me.txt_categorizado_por = txt_Usuario
                    Me.txt_dt_categorização = Now
           
                    'VERIFICARÁ SE OS CAMPOS ESTÃO VÁZIOS
                    If check_divergencia = 0 Then
                        Beep
                        MsgBox "PREENCHIMENTO OBRIGATÓRIO - O Campo Divergência deve ser marcado.", vbOKOnly + vbExclamation, "AVISO"
                        Me.check_divergencia.SetFocus
                        Me.ast_obrig01.Visible = True
                        Me.Rótulo136.ForeColor = vbRed
                        Me.check_divergencia.SetFocus
                    Else
                        Me.ast_obrig01.Visible = False
                        Me.Rótulo136.ForeColor = RGB(166, 166, 166)
                       
                        If IsNull(txt_motivo_divergencia) Then
                            Beep
                            MsgBox "PREENCHIMENTO OBRIGATÓRIO - O Campo Motivo da Divergência deve ser Preenchido.", vbOKOnly + vbExclamation, "AVISO"
                            Me.txt_motivo_divergencia.Enabled = True
                            Me.txt_motivo_divergencia.SetFocus
                            Me.ast_obrig02.Visible = True
                            Me.Rótulo137.ForeColor = vbRed
                            Me.txt_motivo_divergencia.BackColor = 13231868
                            Me.txt_motivo_divergencia.SetFocus
                        Else
                            Me.ast_obrig02.Visible = False
                            Me.Rótulo137.ForeColor = RGB(166, 166, 166)
                            Me.txt_motivo_divergencia.BackColor = RGB(255, 255, 255)
           
                            'ALTERAR STATUS
                            Me.txt_status.Enabled = True
                            Me.txt_status = "NÃO INVESTIGAR"
                            If txt_status = "NÃO INVESTIGAR" Then
                                Me.txt_status.ForeColor = vbWhite
                                Me.txt_status.BackColor = vbRed
                                DoCmd.RunCommand acCmdSaveRecord
                                MsgBox "Categorizado com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
                                Me.txt_status.BackColor = RGB(236, 236, 236)
                                Me.txt_status.ForeColor = vbBlack
                   
                            ElseIf txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = 0 _
                            Or txt_Grupo_Usuario = "ADMINISTRADOR - IRM" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = 0 _
                            Or txt_Grupo_Usuario = "INVESTIGAÇÃO - IRM" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = 0 _
                            Then
                                If IsNull(txt_motivo_divergencia) Then
                                    Beep
                                    MsgBox "PREENCHIMENTO OBRIGATÓRIO - O Campo Motivo da Divergência deve ser Preenchido.", vbOKOnly + vbExclamation, "AVISO"
                                    Me.txt_motivo_divergencia.Enabled = True
                                    Me.txt_motivo_divergencia.SetFocus
                                    Me.ast_obrig02.Visible = True
                                    Me.Rótulo137.ForeColor = vbRed
                                    Me.txt_motivo_divergencia.BackColor = 13231868
                                    Me.txt_motivo_divergencia.SetFocus
                                Else
                                    Me.ast_obrig02.Visible = False
                                    Me.Rótulo137.ForeColor = RGB(166, 166, 166)
                                    Me.txt_motivo_divergencia.BackColor = RGB(255, 255, 255)
       
                                    'ALTERAR STATUS
                                    Me.txt_status.Enabled = True
                                    Me.txt_status = "CHAMADO DIVERGENTE"
                                    If txt_status = "CHAMADO DIVERGENTE" Then
                                    Me.txt_status.ForeColor = vbWhite
                                    Me.txt_status.BackColor = vbRed
       
                                    DoCmd.RunCommand acCmdSaveRecord
                                    MsgBox "Registro Não Salvo!!!", vbOKOnly + vbInformation, "AVISO"
                                    Me.txt_status.BackColor = RGB(236, 236, 236)
                                    Me.txt_status.ForeColor = vbBlack
       
                                ElseIf txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.txt_status = "CHAMADO DIVERGENTE" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = -1 _
                                Or txt_Grupo_Usuario = "SAC" And Me.txt_status = "CHAMADO DIVERGENTE" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = -1 _
                                Then
                                    'INSERIR USUÁRIO NO CAMPO
                                    Me.txt_corrigido_por = txt_Usuario
                                    Me.txt_dt_correção = Now
                               
                                    'ALTERAR STATUS
                                    Me.txt_status.Enabled = True
                                    Me.txt_status = "AGUARDANDO CATEGORIZAÇÃO"
                                    If txt_status = "AGUARDANDO CATEGORIZAÇÃO" Then
                                        Me.txt_status.ForeColor = vbBlack
                                        Me.txt_status.BackColor = vbYellow
                                       
                                        DoCmd.RunCommand acCmdSaveRecord
                                        MsgBox "Correção Salva com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
                                        Me.txt_status.BackColor = RGB(236, 236, 236)
                                        Me.txt_status.ForeColor = vbBlack
                                   
                                    ElseIf txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.txt_status = "AGUARDANDO CATEGORIZAÇÃO" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = -1 _
                                    Or txt_Grupo_Usuario = "ADMINISTRADOR - IRM" And Me.txt_status = "AGUARDANDO CATEGORIZAÇÃO" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = -1 _
                                    Or txt_Grupo_Usuario = "INVESTIGAÇÃO - IRM" And Me.txt_status = "AGUARDANDO CATEGORIZAÇÃO" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = -1 _
                                    Then
                                        'INSERIR USUÁRIO NO CAMPO
                                        Me.txt_categorizado_por = txt_Usuario
                                        Me.txt_dt_categorização = Now
                                       
                                        If MsgBox("A Divergência foi solucionada?", vbYesNo + vbQuestion, "Atenção!") = vbNo Then
                                            'ALTERAR STATUS
                                            Me.txt_status.Enabled = True
                                            Me.txt_status = "CHAMADO DIVERGENTE"
                                            If txt_status = "CHAMADO DIVERGENTE" Then
                                                Me.txt_status.ForeColor = vbWhite
                                                Me.txt_status.BackColor = vbRed
                                           
                                                DoCmd.RunCommand acCmdSaveRecord
                                                MsgBox "Categorizado com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
                                                Me.txt_status.BackColor = RGB(236, 236, 236)
                                                Me.txt_status.ForeColor = vbBlack
                                               
                                            Else
                                                'ALTERAR STATUS
                                                Me.txt_status.Enabled = True
                                                Me.txt_status = "AGUARDANDO INVESTIGAÇÃO"
                                                If txt_status = "AGUARDANDO INVESTIGAÇÃO" Then
                                                    Me.txt_status.ForeColor = vbWhite
                                                    Me.txt_status.BackColor = vbBlue
                                               
                                                    DoCmd.RunCommand acCmdSaveRecord
                                                    MsgBox "Categorizado com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
                                                    Me.txt_status.BackColor = RGB(236, 236, 236)
                                                    Me.txt_status.ForeColor = vbBlack
                                               
                                                ElseIf txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.check_divergencia = 0 And Me.check_divergencia_corrigida = 0 _
                                                Or txt_Grupo_Usuario = "ADMINISTRADOR - IRM" And Me.check_divergencia = 0 And Me.check_divergencia_corrigida = 0 _
                                                Or txt_Grupo_Usuario = "INVESTIGAÇÃO - IRM" And Me.check_divergencia = 0 And Me.check_divergencia_corrigida = 0 _
                                                Then
                                                    'INSERIR USUÁRIO NO CAMPO
                                                    Me.txt_categorizado_por = txt_Usuario
                                                    Me.txt_dt_categorização = Now
                                                   
                                                    'ALTERAR STATUS
                                                    Me.txt_status.Enabled = True
                                                    Me.txt_status = "AGUARDANDO INVESTIGAÇÃO"
                                                    If txt_status = "AGUARDANDO INVESTIGAÇÃO" Then
                                                        Me.txt_status.ForeColor = vbWhite
                                                        Me.txt_status.BackColor = vbBlue
                                                   
                                                        DoCmd.RunCommand acCmdSaveRecord
                                                        MsgBox "Categorizado com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
                                                        Me.txt_status.BackColor = RGB(236, 236, 236)
                                                        Me.txt_status.ForeColor = vbBlack
                                                       
                                                        'QUANDO CLICAR NO BOTÃO HABILITARÁ NOVAMENTE TODOS OS CAMPOS
                                                        'CADASTRO
                                                        Me.txt_n_chamado.Enabled = False
                                                        Me.txt_dt_chamado.Enabled = False
                                                        Me.txt_status.Enabled = True
                                                        Me.txt_descrição.Enabled = False
                                                        Me.txt_produto_assunto.Enabled = False
                                                        Me.txt_variedade.Enabled = False
                                                        Me.txt_manifestação.Enabled = False
                                                        Me.txt_linha.Enabled = False
                                                        Me.txt_grupo_manifestação.Enabled = False
                                                        Me.txt_qtd_reclamada.Enabled = False
                                                        Me.txt_tipo_manifestação.Enabled = False
                                                        Me.txt_lote_chamado.Enabled = False
                                                        'CATEGORIZAR
                                                        Me.txt_grupo_tipo_manifestação.Enabled = False
                                                        Me.txt_analise_risco.Enabled = False
                                                        Me.txt_divisao_manifestação.Enabled = False
                                                        Me.txt_codigo.Enabled = False
                                                        Me.txt_produto.Enabled = False
                                                        Me.txt_fase_manifestação.Enabled = False
                                                        Me.txt_nivel_reclamação.Enabled = False
                                                        Me.txt_tipo_desvio.Enabled = False
                                                        Me.check_divergencia.Enabled = False
                                                        Me.check_divergencia_corrigida.Enabled = False
                                                        Me.txt_motivo_divergencia.Enabled = False
                                                        'PESQUISA
                                                        Me.txt_n_chamado_cons.Enabled = True
                                                        Me.txt_tipo_desvio_cons.Enabled = True
                                                        Me.txt_analise_risco_cons.Enabled = True
                                                        Me.txt_status_cons.Enabled = True
                                                        Me.list_consulta_categorizar.Enabled = True
                                                       
                                                        'DESABILITARÁ O BOTÃO FECHAR
                                                        Me.btn_categorizar.Enabled = False
                                                        Me.btn_alterar.Enabled = False
                                                        Me.btn_solucionar.Enabled = False
                                                        Me.btn_salvar.Enabled = False
                                                        Me.btn_atualizar.Enabled = False
                                                        Me.btn_excluir.Enabled = False
                                                        Me.btn_cancelar.Enabled = False
                                                        Me.btn_fechar.Enabled = True
                                                       
                                                        'LIMPAR E FORMATAR CAMPOS
                                                        Me.txt_status = ""
                                                        Me.txt_status.BackColor = RGB(236, 236, 236)
                                                       
                                                        'AO INICIAR TODOS OS CAMPOS ESTARÃO LIMPOS
                                                        DoCmd.GoToRecord acForm, "Frm_IRM_Categorizar_Chamado", acNewRec
                                                       
                                                        'MOVER CURSOR PARA O CAMPO
                                                        DoCmd.GoToControl "btn_fechar"
                                                       
                                                    End If
                                                End If
                                            End If
                                        End If
                                    End If
                                End If
                            End If
                        End If
                    End If
                End If
            End If
        End If
    End Sub


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

    Maurício Bruno
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 224
    Registrado : 25/05/2015

    Erro na mudança de Status

    Mensagem  Maurício Bruno em Seg 19 Jun - 11:26

    Alexandre /Silvio,

    Boa Tarde!!

    Parece brincandeira. Mas o meu código continuo com problema de funcionalidade. No código abaixo no 2º ElseIf eu descrevi onde no código estou com problema, o demais IF e Elseif estão funcionando, somente este que verifica o campo vazio que não faz a verificação adequada.

    Eu já fiz e refiz este código varias vezes, o código ficou até melhor pois eu fiz uma junção das idéias que vocês me passaram, porém, não obtive sucesso funcionalidade ainda.

    Código:
    'AO CLICAR NO BOTÃO SALVAR
    Private Sub btn_salvar_Click()
    'ATUALIZAR O GRUPO DE ACESSO E O USUÁRIO
    Dim sUsuario, nUsuario As String
    Dim sGrupoUsuario As String
    sUsuario = Forms!Frm_IRM_Categorizar_Chamado!txtUser
    nUsuario = Nz(DLookup("[Usuário]", "Tbl_Cadastro_User", "[User Rede]= '" & sUsuario & "'"))
    sGrupoUsuario = Nz(DLookup("[Grupo de Acesso]", "Tbl_Cadastro_User", "[User Rede]= '" & sUsuario & "'"))
    Me.txt_Grupo_Usuario = sGrupoUsuario
    Me.txt_Usuario = nUsuario

    If MsgBox("Deseja salvar o Registro?", vbYesNo + vbQuestion, "Atenção!") = vbNo Then
    Me.Undo
    MsgBox "Registro Não Salvo!!!", vbCritical, "Atenção"

    'QUANDO CLICAR NO BOTÃO HABILITARÁ NOVAMENTE TODOS OS CAMPOS
    'CADASTRO
    Me.txt_n_chamado.Enabled = False
    Me.txt_dt_chamado.Enabled = False
    Me.txt_status.Enabled = True
    Me.txt_descrição.Enabled = False
    Me.txt_produto_assunto.Enabled = False
    Me.txt_variedade.Enabled = False
    Me.txt_manifestação.Enabled = False
    Me.txt_linha.Enabled = False
    Me.txt_grupo_manifestação.Enabled = False
    Me.txt_qtd_reclamada.Enabled = False
    Me.txt_tipo_manifestação.Enabled = False
    Me.txt_lote_chamado.Enabled = False
    'CATEGORIZAR
    Me.txt_grupo_tipo_manifestação.Enabled = False
    Me.txt_analise_risco.Enabled = False
    Me.txt_divisao_manifestação.Enabled = False
    Me.txt_codigo.Enabled = False
    Me.txt_produto.Enabled = False
    Me.txt_fase_manifestação.Enabled = False
    Me.txt_nivel_reclamação.Enabled = False
    Me.txt_tipo_desvio.Enabled = False
    Me.check_divergencia.Enabled = False
    Me.check_divergencia_corrigida.Enabled = False
    Me.txt_motivo_divergencia.Enabled = False
    'PESQUISA
    Me.txt_n_chamado_cons.Enabled = True
    Me.txt_tipo_desvio_cons.Enabled = True
    Me.txt_analise_risco_cons.Enabled = True
    Me.txt_status_cons.Enabled = True
    Me.list_consulta_categorizar.Enabled = True

    'DESABILITARÁ O BOTÃO FECHAR
    Me.btn_categorizar.Enabled = False
    Me.btn_alterar.Enabled = False
    Me.btn_solucionar.Enabled = False
    Me.btn_salvar.Enabled = False
    Me.btn_atualizar.Enabled = False
    Me.btn_excluir.Enabled = False
    Me.btn_cancelar.Enabled = False
    Me.btn_fechar.Enabled = True

    Else
        If txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.check_divergencia = 0 And Me.check_divergencia_corrigida = 0 _
        Or txt_Grupo_Usuario = "ADMINISTRADOR - IRM" And Me.check_divergencia = 0 And Me.check_divergencia_corrigida = 0 _
        Or txt_Grupo_Usuario = "INVESTIGAÇÃO - IRM" And Me.check_divergencia = 0 And Me.check_divergencia_corrigida = 0 _
        Then
                'ALTERAR STATUS
                Me.txt_status.Enabled = True
                Me.txt_status = "AGUARDANDO INVESTIGAÇÃO"
                If txt_status = "AGUARDANDO INVESTIGAÇÃO" Then
                Me.txt_status.ForeColor = vbWhite
                Me.txt_status.BackColor = vbBlue
        
                'INSERIR USUÁRIO NO CAMPO
                Me.txt_categorizado_por = txt_Usuario
                Me.txt_dt_categorização = Now
        
                DoCmd.RunCommand acCmdSaveRecord
                MsgBox "Categorizado com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
                Me.txt_motivo_divergencia.BackColor = RGB(236, 236, 236)
                Me.txt_motivo_divergencia.ForeColor = vbBlack
                End If
        
        ElseIf txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.txt_status = "CHAMADO DIVERGENTE" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = -1 _
        Or txt_Grupo_Usuario = "SAC" And Me.txt_status = "CHAMADO DIVERGENTE" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = -1 _
        Then
                'INSERIR USUÁRIO NO CAMPO
                Me.txt_corrigido_por = txt_Usuario
                Me.txt_dt_correção = Now

                'ALTERAR STATUS
                Me.txt_status.Enabled = True
                Me.txt_status = "AGUARDANDO CATEGORIZAÇÃO"
                If txt_status = "AGUARDANDO CATEGORIZAÇÃO" Then
                Me.txt_status.ForeColor = vbBlack
                Me.txt_status.BackColor = vbYellow

                DoCmd.RunCommand acCmdSaveRecord
                MsgBox "Correção Salva com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
                Me.txt_status.BackColor = RGB(236, 236, 236)
                Me.txt_status.ForeColor = vbBlack
                End If
                
                
        'ESTA PARTE DO CÓDIGO ESTA COM PROBLEMA
        ElseIf txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = 0 _
        Or txt_Grupo_Usuario = "ADMINISTRADOR - IRM" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = 0 _
        Or txt_Grupo_Usuario = "INVESTIGAÇÃO - IRM" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = 0 _
        Then
        
        'A VERIFICAÇÃO DE CAMPO VAZIO ABAIXO NÃO ESTA FUNCIONANDO, A MSGBOX FUNCIONA, ENTRETANTO, ELE NÃO VAI ATÉ O CAMPO
        ' QUE DEVE SER PREENCHIDO, GRAVANDO A ALTERAÇÃO SEM ALTERA O STATUS.
        
            If IsNull(txt_motivo_divergencia) Or txt_motivo_divergencia = "" Then
                Beep
                MsgBox "PREENCHIMENTO OBRIGATÓRIO - O Campo Motivo da Divergência deve ser Preenchido.", vbOKOnly + vbExclamation, "AVISO"
                Me.txt_motivo_divergencia.Enabled = True
                Me.txt_motivo_divergencia.SetFocus
                Me.ast_obrig02.Visible = True
                Me.Rótulo137.ForeColor = vbRed
                Me.txt_motivo_divergencia.BackColor = 13231868
                Me.txt_motivo_divergencia.SetFocus

                Else
                    Me.ast_obrig02.Visible = False
                    Me.Rótulo137.ForeColor = RGB(166, 166, 166)
                    Me.txt_motivo_divergencia.BackColor = RGB(255, 255, 255)
                    
                    'ALTERAR STATUS
                    Me.txt_status.Enabled = True
                    Me.txt_status = "CHAMADO DIVERGENTE"
                    If txt_status = "CHAMADO DIVERGENTE" Then
                    Me.txt_status.ForeColor = vbWhite
                    Me.txt_status.BackColor = vbRed
            
                    DoCmd.RunCommand acCmdSaveRecord
                    MsgBox "Categorizado com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
                    Me.txt_status.BackColor = RGB(236, 236, 236)
                    Me.txt_status.ForeColor = vbBlack
                End If
            End If
        End If

    'QUANDO CLICAR NO BOTÃO HABILITARÁ NOVAMENTE TODOS OS CAMPOS
    'CADASTRO
    Me.txt_n_chamado.Enabled = False
    Me.txt_dt_chamado.Enabled = False
    Me.txt_status.Enabled = True
    Me.txt_descrição.Enabled = False
    Me.txt_produto_assunto.Enabled = False
    Me.txt_variedade.Enabled = False
    Me.txt_manifestação.Enabled = False
    Me.txt_linha.Enabled = False
    Me.txt_grupo_manifestação.Enabled = False
    Me.txt_qtd_reclamada.Enabled = False
    Me.txt_tipo_manifestação.Enabled = False
    Me.txt_lote_chamado.Enabled = False
    'CATEGORIZAR
    Me.txt_grupo_tipo_manifestação.Enabled = False
    Me.txt_analise_risco.Enabled = False
    Me.txt_divisao_manifestação.Enabled = False
    Me.txt_codigo.Enabled = False
    Me.txt_produto.Enabled = False
    Me.txt_fase_manifestação.Enabled = False
    Me.txt_nivel_reclamação.Enabled = False
    Me.txt_tipo_desvio.Enabled = False
    Me.check_divergencia.Enabled = False
    Me.check_divergencia_corrigida.Enabled = False
    Me.txt_motivo_divergencia.Enabled = False
    'PESQUISA
    Me.txt_n_chamado_cons.Enabled = True
    Me.txt_tipo_desvio_cons.Enabled = True
    Me.txt_analise_risco_cons.Enabled = True
    Me.txt_status_cons.Enabled = True
    Me.list_consulta_categorizar.Enabled = True

    'DESABILITARÁ O BOTÃO FECHAR
    Me.btn_categorizar.Enabled = False
    Me.btn_alterar.Enabled = False
    Me.btn_solucionar.Enabled = False
    Me.btn_salvar.Enabled = False
    Me.btn_atualizar.Enabled = False
    Me.btn_excluir.Enabled = False
    Me.btn_cancelar.Enabled = False
    Me.btn_fechar.Enabled = True

    'AO INICIAR TODOS OS CAMPOS ESTARÃO LIMPOS
    DoCmd.GoToRecord acForm, "Frm_IRM_Categorizar_Chamado", acNewRec

    'LIMPAR E FORMATAR CAMPOS
    Me.txt_status.BackColor = RGB(236, 236, 236)
    Me.txt_status.ForeColor = vbBlack

    'MOVER CURSOR PARA O CAMPO
    DoCmd.GoToControl "Guia_Categorizar"

    Exit Sub
    End If
    End Sub

    Agradeço a ajuda e atenção.
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6505
    Registrado : 05/11/2009

    Re: [Resolvido]Erro na mudança de Status

    Mensagem  Alexandre Neves em Seg 19 Jun - 15:47

    Boa noite,
    Nessa situação, que valores assumem os controlos envolvidos no cálculo e na execução do código?


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

    Maurício Bruno
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 224
    Registrado : 25/05/2015

    Erro na mudança de Status

    Mensagem  Maurício Bruno em Seg 19 Jun - 15:54

    Alexandre,

    Os valores a serem verificados seria o grupo de Acesso (DESENVOLVEDOR, ADMINISTRADOR - IRM ou INVESTIGAÇÃO - IRM), se o campo check_divergencia está marcado (-1) e o check_divergencia_corrigida não está marcado (0). Caso o campo check_divergencia esteja marcado obrigado o preenchimento do campo Motivo da Divergência (txt_motivo_divergencia). Ao salvar ele mudar para o status "CHAMADO DIVERGENTE".

    Obrigado pela ajuda.
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6505
    Registrado : 05/11/2009

    Re: [Resolvido]Erro na mudança de Status

    Mensagem  Alexandre Neves em Ter 20 Jun - 16:54

    Boa noite,

    Mesmo não detalhando tudo, parece-me estar implícito que o controlo de status é chamado txt_status
    Não vejo nada que não deva funcionar como descreveu
    Faça a execução passo-a-passo do código, através do F9 para colocar paragem de execução e F8 para avançar para a instrução seguinte, e verifique o caminho que o código executa


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

    Maurício Bruno
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 224
    Registrado : 25/05/2015

    Erro na mudança de Status

    Mensagem  Maurício Bruno em Qua 21 Jun - 9:10

    Alexandre,

    Pois testei aqui e não funcionou.

    Inclusive no meu primeiro relato enviei o exemplo do meu desenvolvimento, caso queira ver como será.

    Obrigado pela ajuda e atenção.
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6505
    Registrado : 05/11/2009

    Re: [Resolvido]Erro na mudança de Status

    Mensagem  Alexandre Neves em Qua 21 Jun - 16:16

    Boa noite,
    Explique todos os passos para chegar ao que não funciona


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

    Maurício Bruno
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 224
    Registrado : 25/05/2015

    Re: [Resolvido]Erro na mudança de Status

    Mensagem  Maurício Bruno em Qui 22 Jun - 11:40

    Alexandre,

    Boa Tarde!!

    No código abaixo no 2º ElseIf eu descrevi onde no código estou com problema, o demais IF e Elseif estão funcionando, somente este que verifica o campo vazio que não faz a verificação adequada.

    Código:
        'AO CLICAR NO BOTÃO SALVAR
        Private Sub btn_salvar_Click()
        'ATUALIZAR O GRUPO DE ACESSO E O USUÁRIO
        Dim sUsuario, nUsuario As String
        Dim sGrupoUsuario As String
        sUsuario = Forms!Frm_IRM_Categorizar_Chamado!txtUser
        nUsuario = Nz(DLookup("[Usuário]", "Tbl_Cadastro_User", "[User Rede]= '" & sUsuario & "'"))
        sGrupoUsuario = Nz(DLookup("[Grupo de Acesso]", "Tbl_Cadastro_User", "[User Rede]= '" & sUsuario & "'"))
        Me.txt_Grupo_Usuario = sGrupoUsuario
        Me.txt_Usuario = nUsuario

        If MsgBox("Deseja salvar o Registro?", vbYesNo + vbQuestion, "Atenção!") = vbNo Then
        Me.Undo
        MsgBox "Registro Não Salvo!!!", vbCritical, "Atenção"

        'QUANDO CLICAR NO BOTÃO HABILITARÁ NOVAMENTE TODOS OS CAMPOS
        'CADASTRO
        Me.txt_n_chamado.Enabled = False
        Me.txt_dt_chamado.Enabled = False
        Me.txt_status.Enabled = True
        Me.txt_descrição.Enabled = False
        Me.txt_produto_assunto.Enabled = False
        Me.txt_variedade.Enabled = False
        Me.txt_manifestação.Enabled = False
        Me.txt_linha.Enabled = False
        Me.txt_grupo_manifestação.Enabled = False
        Me.txt_qtd_reclamada.Enabled = False
        Me.txt_tipo_manifestação.Enabled = False
        Me.txt_lote_chamado.Enabled = False
        'CATEGORIZAR
        Me.txt_grupo_tipo_manifestação.Enabled = False
        Me.txt_analise_risco.Enabled = False
        Me.txt_divisao_manifestação.Enabled = False
        Me.txt_codigo.Enabled = False
        Me.txt_produto.Enabled = False
        Me.txt_fase_manifestação.Enabled = False
        Me.txt_nivel_reclamação.Enabled = False
        Me.txt_tipo_desvio.Enabled = False
        Me.check_divergencia.Enabled = False
        Me.check_divergencia_corrigida.Enabled = False
        Me.txt_motivo_divergencia.Enabled = False
        'PESQUISA
        Me.txt_n_chamado_cons.Enabled = True
        Me.txt_tipo_desvio_cons.Enabled = True
        Me.txt_analise_risco_cons.Enabled = True
        Me.txt_status_cons.Enabled = True
        Me.list_consulta_categorizar.Enabled = True

        'DESABILITARÁ O BOTÃO FECHAR
        Me.btn_categorizar.Enabled = False
        Me.btn_alterar.Enabled = False
        Me.btn_solucionar.Enabled = False
        Me.btn_salvar.Enabled = False
        Me.btn_atualizar.Enabled = False
        Me.btn_excluir.Enabled = False
        Me.btn_cancelar.Enabled = False
        Me.btn_fechar.Enabled = True

        Else
            If txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.check_divergencia = 0 And Me.check_divergencia_corrigida = 0 _
            Or txt_Grupo_Usuario = "ADMINISTRADOR - IRM" And Me.check_divergencia = 0 And Me.check_divergencia_corrigida = 0 _
            Or txt_Grupo_Usuario = "INVESTIGAÇÃO - IRM" And Me.check_divergencia = 0 And Me.check_divergencia_corrigida = 0 _
            Then
                    'ALTERAR STATUS
                    Me.txt_status.Enabled = True
                    Me.txt_status = "AGUARDANDO INVESTIGAÇÃO"
                    If txt_status = "AGUARDANDO INVESTIGAÇÃO" Then
                    Me.txt_status.ForeColor = vbWhite
                    Me.txt_status.BackColor = vbBlue
           
                    'INSERIR USUÁRIO NO CAMPO
                    Me.txt_categorizado_por = txt_Usuario
                    Me.txt_dt_categorização = Now
           
                    DoCmd.RunCommand acCmdSaveRecord
                    MsgBox "Categorizado com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
                    Me.txt_motivo_divergencia.BackColor = RGB(236, 236, 236)
                    Me.txt_motivo_divergencia.ForeColor = vbBlack
                    End If
           
            ElseIf txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.txt_status = "CHAMADO DIVERGENTE" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = -1 _
            Or txt_Grupo_Usuario = "SAC" And Me.txt_status = "CHAMADO DIVERGENTE" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = -1 _
            Then
                    'INSERIR USUÁRIO NO CAMPO
                    Me.txt_corrigido_por = txt_Usuario
                    Me.txt_dt_correção = Now

                    'ALTERAR STATUS
                    Me.txt_status.Enabled = True
                    Me.txt_status = "AGUARDANDO CATEGORIZAÇÃO"
                    If txt_status = "AGUARDANDO CATEGORIZAÇÃO" Then
                    Me.txt_status.ForeColor = vbBlack
                    Me.txt_status.BackColor = vbYellow

                    DoCmd.RunCommand acCmdSaveRecord
                    MsgBox "Correção Salva com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
                    Me.txt_status.BackColor = RGB(236, 236, 236)
                    Me.txt_status.ForeColor = vbBlack
                    End If
                   
                   
            'ESTA PARTE DO CÓDIGO ESTA COM PROBLEMA
            ElseIf txt_Grupo_Usuario = "DESENVOLVEDOR" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = 0 _
            Or txt_Grupo_Usuario = "ADMINISTRADOR - IRM" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = 0 _
            Or txt_Grupo_Usuario = "INVESTIGAÇÃO - IRM" And Me.check_divergencia = -1 And Me.check_divergencia_corrigida = 0 _
            Then
           
            'A VERIFICAÇÃO DE CAMPO VAZIO ABAIXO NÃO ESTA FUNCIONANDO, A MSGBOX FUNCIONA, ENTRETANTO, ELE NÃO VAI ATÉ O CAMPO
            ' QUE DEVE SER PREENCHIDO, GRAVANDO A ALTERAÇÃO SEM ALTERA O STATUS.
           
                If IsNull(txt_motivo_divergencia) Or txt_motivo_divergencia = "" Then
                    Beep
                    MsgBox "PREENCHIMENTO OBRIGATÓRIO - O Campo Motivo da Divergência deve ser Preenchido.", vbOKOnly + vbExclamation, "AVISO"
                    Me.txt_motivo_divergencia.Enabled = True
                    Me.txt_motivo_divergencia.SetFocus
                    Me.ast_obrig02.Visible = True
                    Me.Rótulo137.ForeColor = vbRed
                    Me.txt_motivo_divergencia.BackColor = 13231868
                    Me.txt_motivo_divergencia.SetFocus

                    Else
                        Me.ast_obrig02.Visible = False
                        Me.Rótulo137.ForeColor = RGB(166, 166, 166)
                        Me.txt_motivo_divergencia.BackColor = RGB(255, 255, 255)
                       
                        'ALTERAR STATUS
                        Me.txt_status.Enabled = True
                        Me.txt_status = "CHAMADO DIVERGENTE"
                        If txt_status = "CHAMADO DIVERGENTE" Then
                        Me.txt_status.ForeColor = vbWhite
                        Me.txt_status.BackColor = vbRed
               
                        DoCmd.RunCommand acCmdSaveRecord
                        MsgBox "Categorizado com Sucesso!!!", vbOKOnly + vbInformation, "AVISO"
                        Me.txt_status.BackColor = RGB(236, 236, 236)
                        Me.txt_status.ForeColor = vbBlack
                    End If
                End If
            End If

        'QUANDO CLICAR NO BOTÃO HABILITARÁ NOVAMENTE TODOS OS CAMPOS
        'CADASTRO
        Me.txt_n_chamado.Enabled = False
        Me.txt_dt_chamado.Enabled = False
        Me.txt_status.Enabled = True
        Me.txt_descrição.Enabled = False
        Me.txt_produto_assunto.Enabled = False
        Me.txt_variedade.Enabled = False
        Me.txt_manifestação.Enabled = False
        Me.txt_linha.Enabled = False
        Me.txt_grupo_manifestação.Enabled = False
        Me.txt_qtd_reclamada.Enabled = False
        Me.txt_tipo_manifestação.Enabled = False
        Me.txt_lote_chamado.Enabled = False
        'CATEGORIZAR
        Me.txt_grupo_tipo_manifestação.Enabled = False
        Me.txt_analise_risco.Enabled = False
        Me.txt_divisao_manifestação.Enabled = False
        Me.txt_codigo.Enabled = False
        Me.txt_produto.Enabled = False
        Me.txt_fase_manifestação.Enabled = False
        Me.txt_nivel_reclamação.Enabled = False
        Me.txt_tipo_desvio.Enabled = False
        Me.check_divergencia.Enabled = False
        Me.check_divergencia_corrigida.Enabled = False
        Me.txt_motivo_divergencia.Enabled = False
        'PESQUISA
        Me.txt_n_chamado_cons.Enabled = True
        Me.txt_tipo_desvio_cons.Enabled = True
        Me.txt_analise_risco_cons.Enabled = True
        Me.txt_status_cons.Enabled = True
        Me.list_consulta_categorizar.Enabled = True

        'DESABILITARÁ O BOTÃO FECHAR
        Me.btn_categorizar.Enabled = False
        Me.btn_alterar.Enabled = False
        Me.btn_solucionar.Enabled = False
        Me.btn_salvar.Enabled = False
        Me.btn_atualizar.Enabled = False
        Me.btn_excluir.Enabled = False
        Me.btn_cancelar.Enabled = False
        Me.btn_fechar.Enabled = True

        'AO INICIAR TODOS OS CAMPOS ESTARÃO LIMPOS
        DoCmd.GoToRecord acForm, "Frm_IRM_Categorizar_Chamado", acNewRec

        'LIMPAR E FORMATAR CAMPOS
        Me.txt_status.BackColor = RGB(236, 236, 236)
        Me.txt_status.ForeColor = vbBlack

        'MOVER CURSOR PARA O CAMPO
        DoCmd.GoToControl "Guia_Categorizar"

        Exit Sub
        End If
        End Sub

    Agradeço a ajuda e atenção.
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6505
    Registrado : 05/11/2009

    Re: [Resolvido]Erro na mudança de Status

    Mensagem  Alexandre Neves em Qui 22 Jun - 17:02

    Boa noite,
    descreva tudo o que eu deva fazer para chegar ao erro que pretende corrigir


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

    Maurício Bruno
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 224
    Registrado : 25/05/2015

    [Resolvido]Erro na mudança de Status

    Mensagem  Maurício Bruno em Qua 13 Set - 8:17

    Obrigado!!! Deu certo.

      Data/hora atual: Ter 21 Nov - 16:09