[firebase-br] Pegar Valor da Proedure

Hernando mecanvpcusto em mecan.com.br
Qua Out 13 08:13:00 -03 2004


Pegando carona no assunto pra executar uma procedure que não retorna 
valores o correto é usar o storeproc ou pode ser de outra forma no 
delphi.(eu uso o ibx).



João Henrique de Souza escreveu:

>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
>
>
>______________________________________________
>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
>
>  
>




Mais detalhes sobre a lista de discussão lista