1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Trigger calcular

Discussão em 'Programação' iniciada por helderhjp, 10 de Março de 2008. (Respostas: 4; Visualizações: 976)

  1. helderhjp

    helderhjp Power Member

    Boas, estou a tentar fazer um trigger que calcule um valor de uma venda.
    Tenho a tabela artigos e vendas. Fiz esta parte do código, mas não sei até que parte está bem.
    Alguém me pode ajudar como faço para calcular o valor se forem vários produtos na mesma venda?

    CREATE TRIGGER venda_I
    AFTER INSERT ON vendas
    FOR EACH ROW SET
    NEW.TOTAL = artigos.PRECO
     
  2. slack_guy

    slack_guy Power Member

    Provavelmente vais precisar de uma tabela que relacione as duas: t_vendas_artigos. Uma venda pode incluir vários artigos. Esta tabela terá, além das chaves estrangeiras para o artigo e para a venda, informação da linha da venda: quantidade, preço, observações, desconto, iva, etc.

    No final, calcular o valor da venda é uma questão de somar os valores (preços, quantidades, descontos, ivas) dos registos (referentes à venda) existentes nesta tabela.
     
  3. reise

    reise Power Member

    Não podes fazer o total assim porque ele executa a seguir cada linha inserida. Nem sei como consegues fazer isso com um trigger...
     
  4. AliFromCairo

    AliFromCairo Power Member

    Podes sempre criar uma view com a informação que necessitas.
     
  5. arpinacio

    arpinacio Power Member

    Nem mais, crias uma view onde mandas cá para fora somente os valores da venda (ou seja o valor de cada produto dessa venda), depois podes fazer algo como

    Código:
    SELECT SUM(preco)
                FROM viewVendas
     

Partilhar esta Página