[firebase-br] Procedure para Calcular total do Pedido

Marcelo Moreira marcelo em easysistemasmg.com.br
Qua Fev 14 22:48:46 -03 2007


Pessoal,

Boa noite!

 

Criei a seguinte Procedure para calcular e retornar o valor total de uma
Proposta Comercial com base nos itens da mesma que posteriormente vai virar
um pedido:

 

CREATE PROCEDURE PROPOSTA_VALOR_TOAL (

    ID_PROPOSTA INTEGER)

RETURNS (

    TOTAL NUMERIC(15,2))

AS

DECLARE VARIABLE VALOR_PRODUTO NUMERIC(15,2);

DECLARE VARIABLE VALOR_SERVICO NUMERIC(15,2);

begin

 

  /* PRODUTOS */

  select SUM(QUANTIDADE * VALOR_UNITARIO)

    from PROPOSTA_ITENS_PRODUTO

   where ID_PROPOSTA = :ID_PROPOSTA

    into :VALOR_PRODUTO;

 

  /* SERVIÇOS */

  select SUM(QUANTIDADE * VALOR_UNITARIO)

    from PROPOSTA_ITENS_SERVICO

   where ID_PROPOSTA = :ID_PROPOSTA

    into :VALOR_SERVICO;

 

  TOTAL = VALOR_PRODUTO + VALOR_SERVICO;

 

  suspend;

end^

 

 

Esta seria a forma correta de se fazer isso?

Tenho uma duvida também quanto ao SUSPEND ele estaria no lugar certo neste
caso?

 

Obrigado pela atenção


-- 
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.441 / Virus Database: 268.17.39/686 - Release Date: 14/2/2007
07:54
 



Mais detalhes sobre a lista de discussão lista