Pular para o conteúdo
Visualizando 2 posts - 1 até 2 (de 2 do total)
  • Autor
    Posts
  • #94762
    facc
    Participante

      Boa tarde,

      Preciso criar uma trigger que faça um update na tabela para gravar um valor de acordo com algumas particularidades

      Exemplo da tabela
      Código—TipoPreco–Sequencia–Filial–ValidadeFim
      585880—-1————–1———999——null
      585880—-1————–2———999——21/06/2010
      585880—-2————–1———999——null
      585880—-2————–2———999——null
      585880—-1————–3———999——22/06/2010
      585881—-1————–1———999——22/06/2010
      585881—-1————–2———999——23/06/2010

      Em palavras:
      Preciso procurar na base os campos Codigo, TipoPreco e Filial, se encontrar a sequencia vai ser (Sequencia + 1), porém se encontrar mais de um caso, terá que verificar o campo ValidadeFim, se for a mais recente, vai receber a sequencia maior, e caso não encontre nenhum registro, a sequencia deve ser 1

      Obs. Em todas as inclusões, o Campo ValidadeFim vai receber uma data igual ou maior que a atual, ou também uma data nula.

      #94763
      burga
      Participante

        Olha no outro tópico que já tem uma solução pra arrumar as sequências dos registros provenientes do teu arquivo…

        Agora, se você quer essa trigger pra novas inserções na tabela, você vai precisar ler outros tópicos que têm aqui no fórum pra contornar o problema da tabela mutante…

        https://profissionaloracle.com.br/modules.php?name=Forums&file=viewtopic&t=3996&start=0&postdays=0&postorder=asc&highlight=mutante

        Antes de continuar, fiquei com uma dúvida, você disse:

        porém se encontrar mais de um caso, terá que verificar o campo ValidadeFim, se for a mais recente, vai receber a sequencia maior

        E se não for a ValidadeFim mais recente? A trigger terá que rearranjar essa sequência nos outros registros que possuem o mesmo Codigo, TipoPreco e Filial?

        EDIT:

        Pulei a leitura da sua observação… Esquece a pergunta que eu fiz…

      Visualizando 2 posts - 1 até 2 (de 2 do total)
      • Você deve fazer login para responder a este tópico.