RES: [firebase-br] StoredProcedure x DBX x Delphi
Antonio Carlos
a.lima.silva em terra.com.br
Qua Jun 22 10:05:44 -03 2005
Fiz EXATAMENTE como vc sugeriu e
var
e : Extended;
e:= SQLStoredProc.params[1].asFloat;
Sabe como 3,251 é amostrado em um ShowMessage(FloatToStr(e));
= 3,25099992752075
----- Original Message -----
From: "Euler Jr." <euler em siginformatica.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Wednesday, June 22, 2005 9:26 AM
Subject: Re: RES: [firebase-br] StoredProcedure x DBX x Delphi
> Antonio,
>
> Troque o parametro de saida da sua stored procedure para float:
>
> create procedure ... returns (valor float) ...
>
> Fiz um teste, utilizando DBExpress e TSQLStoredProc e funcionou legal.
> Criei uma sp que retorna o valor 3.578 e no Delphi vc define:
>
> Na propriedade Params da sp:
> NumericScale = 3
> Precision = 3
> DataType = ftFloat
> Value.Type = Double
>
> E ao executar:
> // v eh do tipo extended
> v := sp.Params[ 0 ].AsFloat;
>
> retorna v = 3.578
>
> Se quiser posso te mandar um email com o metadata e unit.
>
> []s
> Euler Jr.
> ----- Original Message -----
> From: "Pha-Lista" <lista em pha.com.br>
> To: "Juliano Pezzini" <juliano.pezzini em gmail.com>; "FireBase"
> <lista em firebase.com.br>
> Sent: Wednesday, June 22, 2005 7:40 AM
> Subject: Re: RES: [firebase-br] StoredProcedure x DBX x Delphi
>
>
>> Seria melhor entao retornar como Float.
>>
>> O correto seria achar o problema, tente o driver da UIB, se for problema
> do driver do DBX o erro nao ocorrera, mais sempre ha uma maneira de
> contornar ou eliminar o erro, primeiro voce tem que achar a causa.
>>
>> Voce ja tentou atraves do IBX, para ver se ocorre o mesmo?
>>
>> PHA
>> Nova Odessa / SP - Brazil
>>
>> -----Mensagem original-----
>> From: Juliano Pezzini juliano.pezzini em gmail.com
>> Date: Wed, 22 Jun 2005 00:34:28 -0300
>> To: FireBase lista em firebase.com.br
>> Subject: Re: RES: [firebase-br] StoredProcedure x DBX x Delphi
>>
>> > Pq vc não retorna o campo do tipo varchar??
>> >
>> > É, eu sei que é gambia, mas essa galera que fez o dbx tb fez um monte
>> > de gambia e ninguém fala nada!! oras.......
>> >
>> > t+
>> >
>> > Juliano
>> >
>> > On 6/21/05, Adilson B. Cápua Jr. <juniorcapua em yahoo.com.br> wrote:
>> > > Cara,
>> > >
>> > > Se você consegui resolver isso, por favor, entre em contato
>> > > comigo...
>> > > Certa vez fiquei babando no computador quase que uma semana
> tentan> do
>> > > descobrir um erro numa rotina de caixa que eu tenho no meu sistema. O
>> > > problema
>> > > era exatamente igual ao seu, ou seja, o danado do SQLStoredProc
> retornava> um
>> > > valor totalmente errado (em se tratando dos centavos). Por exemplo,
> 20,45
>> > > ele
>> > > trazia 20,40... A única solução que achei na época (e até hoje > eu
> uso assim)
>> > > foi criar um campo de apoio numa tabela geral do banco e o saldo
> gerado e> ra
>> > > jogado para essa tabela e logo depois eu buscava via select mesmo! Aí
>> > > funcionou
>> > > certo... Hoje, eu evito que as SP's retornem valores para o programa.
> Sem> pre
>> > > tento a solução de outro jeito...
>> > > Li a thread sobre o assunto e não sei se você está usando a >
> tal da
>> > > função
>> > > que citaram... Se estiver, lhe peço que entre em contato para que
> possa> mos
>> > > tentar resolver isso juntos...
>> > >
>> > > Forte abraço,
>> > >
>> > >
>> > > +---------------------------------------+
>> > > Adilson Bragança Cápua Jr.
>> > > Linhares - ES Brasil
>> > >
>> > > mailto : juniorcapua em yahoo.com.br
>> > > juniorcapua em gmail.com
>> > > Mobile : abcjr em oi.com.br
>> > > Messenger : juniorcapua em hotmail.com
>> > > Blogger : www.dellas.rg3.net
>> > > +---------------------------------------+
>> > > Save a tree! Send an e-mail!
>> > > -----Mensagem original-----
>> > > De: lista-bounces em firebase.com.br
> [mailto:lista-bounces em firebase.com.br] > Em
>> > > nome de Antonio Carlos
>> > > Enviada em: terça-feira, 21 de junho de 2005 15:48
>> > > Para: Pha-Listas; FireBase
>> > > Assunto: [firebase-br] StoredProcedure x DBX x Delphi
>> > >
>> > > Pessoal estou ficando QUASE louco, tenho uma store procedute que deve
>> > > reornar uma quantidade em uma tabela definido o campo como
> NUMERIC(10,3)
>> > >
>> > > CREATE PROCEDURE QTD_EMB (
>> > > CODEMB VARCHAR (3) CHARACTER SET WIN1252) RETURNS (
>> > > VALOR NUMERIC (10, 3),
>> > > DESCRICAO VARCHAR (20) CHARACTER SET WIN1252) AS
>> > >
>> > > Rodo ela no EMS Mananger e passado o valor por exemplo : 001 o
> retorono > é
>> > > 3.253 mas o resultado no SQLStoredProc :
> SQLStoredProc.Params[1].asCurren> cy
>> > > é 3,2
>> > > e nao adiantou NADA eu colocar SQLStoredProc.Params[1].asBCD ou
> asDoubl> e
>> > > mexi ate no params do SQLStoredProc mas nao adianta.
>> > > Alguem sabe porque isso e como resolve ?
>> > > Vi no Google uma referencia a DecimalRounding_JH0 como sendo uma
>> > > unit
> qu> e
>> > > corrige isso, consegui ate baixa-la mas ao acrescenta-la ao projeto
>> > > já
>> nao
>> > > consigo compilar o sistema dando como erro o dataModule, li o texto
>> > > em
> an> exo
>> > > mas nao vi nenhuma instucao especial para isso.
>> > >
>> > > Alguma luz por favor
>> > >
>> > >
>> > >
>> > > ______________________________________________
>> > > FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br Para
> edi> tar
>> > > 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
>> > >
>> > >
>> > >
>> > >
>> > >
>> > > _______________________________________________________
>> > > Yahoo! Acesso Grátis - Internet rápida e grátis.
>> > > Instale o discador agora! http://br.acesso.yahoo.com/
>> > >
>> > >
>> > > ______________________________________________
>> > > 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.f>
> irebase.com.br/mailman/listinfo/lista_firebase.com.br
>> > > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>> > >
>> >
>> > ______________________________________________
>> > 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
>>
>>
>> ______________________________________________
>> 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
>>
>
>
> ______________________________________________
> 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
>
>
Mais detalhes sobre a lista de discussão lista