[firebase-br] Computed by
Joelson - Souzamark
joelsonss em yahoo.com.br
Qua Jun 8 10:28:55 -03 2005
Caro Francisco Thiago
numa rotina parecida no nosso sistema usamos uma trigger pra isso
eis a criaça ;-)
CREATE TRIGGER CALCULA_SAIDA FOR SAIDA
ACTIVE BEFORE INSERT OR UPDATE POSITION 10
AS
BEGIN
SELECT SUM(QUANTIDADE), SUM(VALOR_TOTAL) FROM PROD_SAIDA
WHERE SAIDA = NEW.CODIGO INTO NEW.QUANTIDADE, NEW.VALOR_BRUTO;
IF (NEW.PERC_DESCONTO > 0.00) THEN
BEGIN
NEW.VALOR_DESCONTO = (NEW.PERC_DESCONTO * NEW.VALOR_BRUTO / 100);
NEW.VALOR_LIQUIDO = (NEW.VALOR_BRUTO - NEW.VALOR_DESCONTO);
END
ELSE
IF (NEW.VALOR_DESCONTO > 0.00) THEN
BEGIN
NEW.PERC_DESCONTO = (NEW.VALOR_DESCONTO * 100 / NEW.VALOR_BRUTO);
NEW.VALOR_LIQUIDO = (NEW.VALOR_BRUTO - NEW.VALOR_DESCONTO);
END
ELSE
BEGIN
NEW.PERC_DESCONTO = 0.00;
NEW.VALOR_DESCONTO = 0.00;
NEW.VALOR_LIQUIDO = NEW.VALOR_BRUTO;
END
END
sem mais
Joelson
----- Original Message -----
From: "Francisco Thiago" <jeandeadlucky em yahoo.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Wednesday, June 08, 2005 10:16 AM
Subject: [firebase-br] Computed by
> Pessoal,
>
> Eu tenho uma tabela Pai (venda por exemplo) e gostaria de colocar um campo
> calculado (computed) nela que calculasse o valor da venda.
> Só que eu não consigo fazer o relacionamento na expressão do campo.
>
> Procurei na documentação do IB6 e não encontrei um exemplo. Alguém poderia
> me dar uma mãozinha?
>
> seria algo como
>
> ALTER TABLE CAD_VENDAS
> ADD TOTAL_VENDA
> COMPUTED BY (
> (
> select VALOR_UNITARIO
> from VendaItem
> where VendaItem.CodigoVenda = CAD_VENDAS.CodigoVenda
> ));
>
>
> Obrigado
>
> Francisco Thiago de Almeida
> Enter&Plug Informática
> Divisão: Desenvolvimento e Banco de dados
> MSN: thiago em enterplug.com.br
> Skype: enterplug_thiago
>
>
>
>
>
>
>
>
> ____________________________________________________
> Yahoo! Mail, cada vez melhor: agora com 1GB de espaço grátis!
> http://mail.yahoo.com.br
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
> --
> No virus found in this incoming message.
> Checked by AVG Anti-Virus.
> Version: 7.0.323 / Virus Database: 267.6.6 - Release Date: 08/06/2005
>
>
Mais detalhes sobre a lista de discussão lista