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]SQL Update

    Compartilhe

    Maurício Bruno
    Avançado
    Avançado

    Respeito às Regras 100%

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

    [Resolvido]SQL Update

    Mensagem  Maurício Bruno em 25/4/2017, 15:00

    Bom Dia!

    Tenho uma tabela que necessito que ela faça a atualização de status baseando em outra tabela e em dois critérios:
    Se a Data do Chamado (Tabela 01) for menor que a data de validade (Tabela 2), o status será "PRODUTO VENCIDO", caso contrário será "PRODUTO OK"

    Segue abaixo a minha SQL da minha consulta update, porém, só esta atualizando um status, quando coloco outro ele não funciona.

    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 da Validade] = "PRODUTO VENCIDO"
    WHERE (((Tbl_IRM_Cadastro_de_Chamados_SAC.[Data do Chamado])>[Tbl_IRM_Cadastro_de_Lotes_Produzidos_SAP].[Data de Validade]));

    Agradeço a atenção e ajuda.
    avatar
    Cláudio Más
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1276
    Registrado : 21/01/2012

    Re: [Resolvido]SQL Update

    Mensagem  Cláudio Más em 26/4/2017, 01:39

    Tente dessa forma:

    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 da Validade] = IIf([Tbl_IRM_Cadastro_de_Chamados_SAC].[Data do Chamado]>[Tbl_IRM_Cadastro_de_Lotes_Produzidos_SAP].[Data de Validade],"PRODUTO VENCIDO","PRODUTO OK");

    Maurício Bruno
    Avançado
    Avançado

    Respeito às Regras 100%

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

    [Resolvido]SQL Update

    Mensagem  Maurício Bruno em 26/4/2017, 12:11

    Cláudio,

    Funcionou. Muito Obrigado pela ajuda.

    Maurício Bruno
    Avançado
    Avançado

    Respeito às Regras 100%

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

    [Resolvido]SQL Update

    Mensagem  Maurício Bruno em 27/4/2017, 16:50

    Cláudio,

    Aquele funcionou, porém, surgiu um caso em que o campo "Data de Validade" esta vazio e é gerado um status incorreto, gostaria de adicionar esta condição que se a data de validade estiver vazia o status será "DADOS INCOMPLETOS".

    Tentei fazer uma SQL em cima da sua, porém, não obtive sucesso.

    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 =  IIf([Tbl_IRM_Cadastro_de_Chamados_SAC].[Data do Chamado]>[Tbl_IRM_Cadastro_de_Lotes_Produzidos_SAP].[Data de Validade],"PRODUTO VENCIDO","INVESTIGAR") OR IIf([Tbl_IRM_Cadastro_de_Chamados_SAC].[Data de Validade]="","DADOS INCOMPLETOS");

    Agradeço pela ajuda.

    Maurício Bruno
    Avançado
    Avançado

    Respeito às Regras 100%

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

    SQL Update

    Mensagem  Maurício Bruno em 16/5/2017, 21:09

    Cláudio,

    Desculpe, porém, não consegui resolver ainda o problema.

      Data/hora atual: 23/10/2018, 15:34