[firebase-br] Pegar Valor da Proedure
João Henrique de Souza
joao.henrique em jvsind.com.br
Qua Out 13 07:39:32 -03 2004
Olha Savio, primeira coisa a fazer é debugar e ver se o retorno da SP tá te
retornando alguma coisa mesmo, eu por exemplo utilizaria ao invés de:
Campo_Tal.value := RET_procedureTOTAL_ITENS.value;
usaria
Variavel_Tipo_Integer=:RET_procedure.parambyname('Total_ITENS').AsInteger;
e depois eu atribuiria minha variavel ao Campo_TAL.
Bom, oq posso te aconselhar é verificar se a procedure esta retornando o
valor correto. Existe outras possibilidades para averiguar isso como por
exemplo debuggar a própria procedure, isso pode ser feito pelo IBExpert (não
o personal). Em 90% dos casos o erro esta na própria procedure que vc
escreveu.
[]´s
João Henrique
----- Original Message -----
From: <savio_assuncao em ibest.com.br>
To: <lista em firebase.com.br>
Sent: Monday, October 11, 2004 10:15 PM
Subject: [firebase-br] Pegar Valor da Proedure
> Ola, Joao
>
> entum pra tentar pegar o valor de retorno da procedure em D5 ,faço
assim:
>
> begin
> RET_procedure.close
> RET_procedure.parambyname('VID_ORCAM').asinteger:= valor _tal.asinteger;
> RET_procedure.Prepare;
> RET_procedure.ExecProc;
> Campo_Tal.value := RET_procedureTOTAL_ITENS.value;
> end;
>
> Dai o Campo_Tal da sempre ZERO !?!?!!?
> Se usar um SQL da certo, mas queria usar mesmo a procedure.
>
> Valeu pela força :)
>
>
> [ ]'s
> Savio Assuncao
>
>
>
>
>
>
>
>
>
>
> Se vc quiser "pegar" o valor retornado em uma SP mesmo... tipo... vc esta
> chamando uma SP dentro de outra pelo comando EXECUTE PROCEDURE: utilize a
> clausula RETURNING_VALUES.
>
> Se não for isso que vc ta perguntando:
> Forneça mas informações de como está chamando sua SP, e onde quer utilizar
> esses retornos das mesmas.
>
> []´s
> João Henrique
>
> ----- Original Message -----
> From: <savio_assuncao em ibest.com.br>
> To: <lista em firebase.com.br>
> Sent: Monday, October 11, 2004 3:43 PM
> Subject: [firebase-br] Pegar valor da Procedure
>
>
> Ola Pessoal
>
> como "pego" o valor retornado da procedure :
> SET TERM##;
> CREATE PROCEDURE SOMA_ITENSORCAM(
> VID_ORCAM INTEGER)
> RETURNS(
> TOTAL_ITENS NUMERIC(10,2)
> )
> AS
> BEGIN
> SELECT SUM(TOTALITEM) FROM TBITENSORC
> WHERE ID_ORCAM=:VID_ORCAM
> INTO TOTAL_ITENS;
> SUSPEND;
> END##
>
> passo o parametro de entrada e mando executar o valor armazenado
> em TOTAL_ITENS sempre ZERO
>
> [ ]'s
>
>
>
>
> ---
> iBestMail, agora com POP3/SMTP e 120MB de espaço!
> Experimente: http://www.ibestmail.com.br
>
>
----------------------------------------------------------------------------
----
______________________________________________
FireBase-BR (www.firebase.com.br)
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.775 / Virus Database: 522 - Release Date: 8/10/2004
Mais detalhes sobre a lista de discussão lista