RES: [firebase-br] StoredProcedure x DBX x Delphi

Euler Jr. euler em siginformatica.com.br
Qua Jun 22 10:15:35 -03 2005


Use
Format('%10.3f',[3.25099992752075]);

= 3.251

[]s
Euler Jr.

----- Original Message -----
From: "Antonio Carlos" <a.lima.silva em terra.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Wednesday, June 22, 2005 10:05 AM
Subject: Re: RES: [firebase-br] StoredProcedure x DBX x Delphi


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