MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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

2 participantes

    Falha nas Consultas

    avatar
    Maurício Bruno
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

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

    Falha nas Consultas Empty Falha nas Consultas

    Mensagem  Maurício Bruno 14/6/2017, 14:57

    Mestres,

    Mas uma vez, venho buscar a orientar de você para resolução de um problema.

    Tenho um tabela que gostaria que alguns dados atualizassem automaticamente, criei 04 consultas tipo Atualização, porém, elas não estão funcionando corretamente e não consigo sair do lugar, necessito de orientação e ajuda. Segue abaixo o que fiz e em anexo o arquivo.

    1ª Consulta Teste - Contador de dias - Esta consulta preenche e atualiza o campo "Lead Time - Investigação" da tabela "Tbl_IRM_Cadastro_de_Chamados_SAC" irá calcular o campo "Data do Chamado" menos a data atual, entretanto, quando o campo de Data de Conclusão for preenchido ele parará de contar não atualizaria este contador novamente.
    Código:
    UPDATE Tbl_IRM_Cadastro_de_Chamados_SAC SET Tbl_IRM_Cadastro_de_Chamados_SAC.[Lead Time - Investigação] = Now()-[Tbl_IRM_Cadastro_de_Chamados_SAC].[Data do Chamado], Tbl_IRM_Cadastro_de_Chamados_SAC.[Lead Time - Correção] = Now()-[Tbl_IRM_Cadastro_de_Chamados_SAC].[Data da Categorização], Tbl_IRM_Cadastro_de_Chamados_SAC.[Lead Time - Categorização] = Now()-[Tbl_IRM_Cadastro_de_Chamados_SAC].[Data de Importação], Tbl_IRM_Cadastro_de_Chamados_SAC.[Lead Time - Importação] = Now()-[Tbl_IRM_Cadastro_de_Chamados_SAC].[Data do Chamado]
    WHERE (((Tbl_IRM_Cadastro_de_Chamados_SAC.[Data de Conclusão])="") AND ((Tbl_IRM_Cadastro_de_Chamados_SAC.[Data da Correção])="") AND ((Tbl_IRM_Cadastro_de_Chamados_SAC.[Data da Categorização])="") AND ((Tbl_IRM_Cadastro_de_Chamados_SAC.[Data de Importação])="")) OR (((Tbl_IRM_Cadastro_de_Chamados_SAC.[Data de Conclusão]) Is Null) AND ((Tbl_IRM_Cadastro_de_Chamados_SAC.[Data da Correção]) Is Null) AND ((Tbl_IRM_Cadastro_de_Chamados_SAC.[Data da Categorização]) Is Null) AND ((Tbl_IRM_Cadastro_de_Chamados_SAC.[Data de Importação]) Is Null));

    2ª Consulta Teste - Prazo - Esta consulta preenche e atualiza o campo "Status Lead Time" da tabela "Tbl_IRM_Cadastro_de_Chamados_SAC" se chamado esta Dentro do Prazo e Fora do Prazo de acordo com o prazo cadastrado na tabela "Tbl_IRM_Cadastro_de_Analise_de_Risco", entretanto, quando o campo de Data de Conclusão for preenchido ele não atualizaria este status novamente.
    Código:
    UPDATE Tbl_IRM_Cadastro_de_Lotes_Produzidos_SAP INNER JOIN Tbl_IRM_Cadastro_de_Chamados_SAC ON Tbl_IRM_Cadastro_de_Lotes_Produzidos_SAP.Lote = Tbl_IRM_Cadastro_de_Chamados_SAC.[Lote do Chamado] SET Tbl_IRM_Cadastro_de_Chamados_SAC.[Status Lead Time] = IIf([Tbl_IRM_Cadastro_de_Chamados_SAC].[Lead Time - Investigação]>[Tbl_IRM_Cadastro_de_Analise_de_Risco].[Prazo (Dias)],"DENTRO DO PRAZO","FORA DO PRAZO");

    3ª Consulta Teste - Trimestre e Semestre - Esta consulta preenche e atualiza os campos "Trimestral" e "Semestral" da tabela "Tbl_IRM_Cadastro_de_Chamados_SAC", com base nos dados do campo de "Data do Chamado" ele não atualizaria os campos "Trimestral" em 1º, 2º, 3º ou 4º Tri-(Ano do Chamado) e "Semestral"  em 1º ou 2º Sem-(Ano do Chamado).
    Código:
    UPDATE Tbl_IRM_Cadastro_de_Chamados_SAC SET Tbl_IRM_Cadastro_de_Chamados_SAC.[Análise de Risco] = "DESVIO CRÍTICO"
    WHERE (((Tbl_IRM_Cadastro_de_Chamados_SAC.[Data do Chamado]) Between "01/01/" & Year([DATE]) And "31/03/" & Year([DATE])));


    4ª Consulta Teste - Reincidência - Esta consulta e a mais complexa, pois preenche e atualiza o campo "Análise de Risco" da tabela "Tbl_IRM_Cadastro_de_Chamados_SAC", com base nos critério abaixo as descrições no campo "Análise de Risco" atualizarão, se houve atualização de escalonamento será marcado SIM no campo "Escalonado".
    Desvio A - Não haverá escalonamento
    Desvio B - Se no Trimestre houver mais de 10 reincidências para o mesmo desvio "Tipo de Desvio", mesmo produto "Código" e mesmo lote "Lote do Chamado" - O Desvio B se torna Desvio A e o campo "Escalonado" será flegado como "SIM".
    Se houver mais de 30 reincidências para o mesmo desvio "Tipo de Desvio", mesmo produto "Código" e lote diferentes "Lote do Chamado" - O Desvio B se torna Desvio A e o campo "Escalonado" será flegado como "SIM".
    Desvio C - Se no Semestre houver mais de 20 reincidências para o mesmo desvio "Tipo de Desvio", mesmo produto "Código" e mesmo lote "Lote do Chamado" - O Desvio C se torna Desvio B e o campo "Escalonado" será flegado como "SIM".
    Se houver mais de 50 reincidências para o mesmo desvio "Tipo de Desvio", mesmo produto "Código" e lote diferentes "Lote do Chamado" - O Desvio C se torna Desvio B e o campo "Escalonado" será flegado como "SIM".
    Código:
    UPDATE Tbl_IRM_Cadastro_de_Chamados_SAC SET Tbl_IRM_Cadastro_de_Chamados_SAC.[Análise de Risco] = "DESVIO CRÍTICO", Tbl_IRM_Cadastro_de_Chamados_SAC.[Análise de Risco] = "DESVIO MAIOR", Tbl_IRM_Cadastro_de_Chamados_SAC.Escalonado = Yes
    WHERE (((Tbl_IRM_Cadastro_de_Chamados_SAC.[Análise de Risco])=[Tbl_IRM_Cadastro_de_Chamados_SAC].[Análise de Risco] And (Tbl_IRM_Cadastro_de_Chamados_SAC.[Análise de Risco])=[Tbl_IRM_Cadastro_de_Chamados_SAC].[Código] And [Tbl_IRM_Cadastro_de_Chamados_SAC].[Lote do Chamado]>"10") AND ((Tbl_IRM_Cadastro_de_Chamados_SAC.[Análise de Risco])=[Tbl_IRM_Cadastro_de_Chamados_SAC].[Análise de Risco] And (Tbl_IRM_Cadastro_de_Chamados_SAC.[Análise de Risco])=[Tbl_IRM_Cadastro_de_Chamados_SAC].[Código] And [Tbl_IRM_Cadastro_de_Chamados_SAC].[Lote do Chamado]>"20")) OR (((Tbl_IRM_Cadastro_de_Chamados_SAC.[Análise de Risco])=[Tbl_IRM_Cadastro_de_Chamados_SAC].[Análise de Risco] And (Tbl_IRM_Cadastro_de_Chamados_SAC.[Análise de Risco])=[Tbl_IRM_Cadastro_de_Chamados_SAC].[Código] And [Tbl_IRM_Cadastro_de_Chamados_SAC].[Lote do Chamado]>"30") AND ((Tbl_IRM_Cadastro_de_Chamados_SAC.[Análise de Risco])=[Tbl_IRM_Cadastro_de_Chamados_SAC].[Análise de Risco] And (Tbl_IRM_Cadastro_de_Chamados_SAC.[Análise de Risco])=[Tbl_IRM_Cadastro_de_Chamados_SAC].[Código] And [Tbl_IRM_Cadastro_de_Chamados_SAC].[Lote do Chamado]>"50"));

    Desde já agradeço a ajuda e atenção.
    Anexos
    Falha nas Consultas AttachmentConsulta.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (207 Kb) Baixado 6 vez(es)
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    Falha nas Consultas Empty Re: Falha nas Consultas

    Mensagem  Alexandre Neves 14/6/2017, 17:27

    Boa noite,
    Não entendi
    Vamos abordar cada consulta, para não atrapalhar
    1ª consulta
    Quando fala que "quando o campo de Data de Conclusão for preenchido ele parará de contar não atualizaria este contador novamente" está a afirmar que não actualiza ou ele não actualiza e quer que actualize?


    .................................................................................
    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
    avatar
    Maurício Bruno
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

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

    Falha nas Consultas Empty Falha nas Consultas

    Mensagem  Maurício Bruno 16/6/2017, 13:33

    Alexandre,

    Boa Tarde!!!

    Quando for preenchido a data no campo de Data de Conclusão ele parará de contar não atualizará mais o contador novamente, este contador só será atualizado se eu mudar a data.

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


    Respeito às regras : Respeito às Regras 100%

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

    Falha nas Consultas Empty Re: Falha nas Consultas

    Mensagem  Alexandre Neves 16/6/2017, 16:33

    Boa noite,
    Não percebi em que situações não funciona e devia funcionar.
    Contudo, a instrução SQL pode ser mais leve
    UPDATE Tbl_IRM_Cadastro_de_Chamados_SAC SET [Lead Time - Investigação] = Now()-[Data do Chamado], [Lead Time - Correção] = Now()-[Data da Categorização], [Lead Time - Categorização] = Now()-[Data de Importação], [Lead Time - Importação] = Now()-[Data do Chamado] WHERE ([Data de Conclusão]="" AND [Data da Correção]="" AND [Data da Categorização]="" AND [Data de Importação]="") OR (IsNull([Data de Conclusão]) AND IsNull([Data da Correção]) AND IsNull([Data da Categorização]) AND IsNull([Data de Importação]));

    Veja que não tem parêntesis desnecessários e não deve comparar valores com nulos (x=null) mas verificar se são nulos(IsNull(x))
    O código podia ficar mais intuitivo e facilitar a interpretação se normalizasse os nomes (LeadTimeImportacao em vez de [Lead Time - Importação])


    .................................................................................
    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
    avatar
    Maurício Bruno
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

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

    Falha nas Consultas Empty Falha nas Consultas

    Mensagem  Maurício Bruno 19/6/2017, 08:43

    Alexandre,

    Bom Dia!

    Esta apresentando um erro: Tipo de dados incompatível na expressão de critério.

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


    Respeito às regras : Respeito às Regras 100%

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

    Falha nas Consultas Empty Re: Falha nas Consultas

    Mensagem  Alexandre Neves 19/6/2017, 16:28

    Boa noite,
    Veja em que lugar está relacionado tipo diferente (número/texto/data)
    [Lead Time - Investigação] = Now()-[Data do Chamado] são ambos data?
    [Lead Time - Correção] = Now()-[Data da Categorização] são ambos data?
    [Lead Time - Categorização] = Now()-[Data de Importação] são ambos data?
    [Lead Time - Importação] = Now()-[Data do Chamado] são ambos data?
    [Data de Conclusão]="" é texto?
    [Data da Correção]="" é texto?
    [Data da Categorização]="" é texto?
    [Data de Importação]="" é texto?


    .................................................................................
    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
    avatar
    Maurício Bruno
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

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

    Falha nas Consultas Empty Falha nas Consultas

    Mensagem  Maurício Bruno 19/6/2017, 16:57

    Alexandre,

    Segue os parâmetros:
    [Lead Time - Investigação] Número = Now()-[Data do Chamado] são ambos data? Sim
    [Lead Time - Correção] Número = Now()-[Data da Categorização] são ambos data? Sim
    [Lead Time - Categorização] Número = Now()-[Data de Importação] são ambos data? Sim
    [Lead Time - Importação] Número = Now()-[Data do Chamado] são ambos data? Sim
    [Data de Conclusão]="" é texto? É Data
    [Data da Correção]="" é texto? É Data
    [Data da Categorização]="" é texto? É Data
    [Data de Importação]="" é texto? É Data

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


    Respeito às regras : Respeito às Regras 100%

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

    Falha nas Consultas Empty Re: Falha nas Consultas

    Mensagem  Alexandre Neves 20/6/2017, 17:57

    Boa noite,
    [Lead Time - Investigação] coloque em data
    [Lead Time - Correção] coloque em data
    [Lead Time - Categorização] coloque em data
    [Lead Time - Importação] coloque em data
    coloque [Data de Conclusão]=Null
    coloque [Data da Correção]=Null
    coloque[Data da Categorização]=Null
    coloque[Data de Importação]=Null


    .................................................................................
    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
    avatar
    Maurício Bruno
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

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

    Falha nas Consultas Empty Falha nas Consultas

    Mensagem  Maurício Bruno 21/6/2017, 10:07

    Alexandre,

    Desculpe a minha ignorância, pois tentei fazer aqui de diversas maneira baseado na sua explicação e não consegui.

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


    Respeito às regras : Respeito às Regras 100%

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

    Falha nas Consultas Empty Re: Falha nas Consultas

    Mensagem  Alexandre Neves 21/6/2017, 17:17

    Boa noite,
    Não conseguiu o quê? mudar o tipo de dados? mudou o tipo de dados e não conseguiu o resultado desejado?


    .................................................................................
    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
    avatar
    Maurício Bruno
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

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

    Falha nas Consultas Empty Falha nas Consultas

    Mensagem  Maurício Bruno 22/6/2017, 12:37

    Alexandre,

    Não consegui fazer o que você me orientou a fazer.

    Obrigado.
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    Falha nas Consultas Empty Re: Falha nas Consultas

    Mensagem  Alexandre Neves 22/6/2017, 17:58

    Boa noite,
    Tem de ser específico
    [Lead Time - Investigação] coloque em data Conseguiu?
    [Lead Time - Correção] coloque em data Conseguiu?
    [Lead Time - Categorização] coloque em data Conseguiu?
    [Lead Time - Importação] coloque em data Conseguiu?
    coloque [Data de Conclusão]=Null Conseguiu?
    coloque [Data da Correção]=Null Conseguiu?
    coloque[Data da Categorização]=Null Conseguiu?
    coloque[Data de Importação]=Null Conseguiu?


    .................................................................................
    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

      Data/hora atual: 6/12/2021, 15:37