[firebase-br] StoredProcedure x DBX x Delphi
Exclaim Tecnologia
exclaimtecnologia em yahoo.com.br
Seg Jun 27 08:18:34 -03 2005
Parece meio estranho, mas para evitar arredondamentos em alguns dos xcasos
eu recebo o valor com AsString, depois eu manipulo esta variavel com
Currency e por ai vai!!
Fui!!
----- Original Message -----
From: "Antonio Carlos" <a.lima.silva em terra.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Wednesday, June 22, 2005 9:20 AM
Subject: Re: [firebase-br] StoredProcedure x DBX x Delphi
> O retorno esta sendo com 3 casas decimais pela storeprocedure
>
> ----- Original Message -----
> From: "eduardo" <eduardo em icontroller.com.br>
> To: <lista em firebase.com.br>
> Sent: Tuesday, June 21, 2005 7:20 PM
> Subject: Re: [firebase-br] StoredProcedure x DBX x Delphi
>
>
> > como você obtém o texto 3,2 ?
> >
> > Componente dbaware - formatfloat('mascara', valor)
> > vc diz que pede o resultado .AsCurrency - Como estão os Regionais
Settings
> > no teu Painel de Controle do Windows para Números ?
> >
> > Será que (chute)
> > :CODEMB * 1.000 INTO :RETORNO;
> > Obrigaria alguém a assumir 3 casas decimais?
> >
> > Com calma a gente acaba cercando o bicho!
> >
> > []s Eduardo
> >
> > Antonio Carlos wrote:
> >> abaixo do AS seria :
> >> SELECT EMB_QTD FROM EMBALAGEM WHERE EMB_COD = :CODEMB INTO :RETORNO;
> >>
> >> NAO HÁ DIVISAO,
> >>
> >> se eu rodo a procedure por um gerenciador EMS / IBCONSOLE qualquer um o
> >> retorno vem correto, com 3 casas decimais, o problema se da quando
recebo
> >> o valor no DELPHI no SQLStoredProc
> >>
> >> por exemlo o valor 3,253 é amostrado como 3,2
> >>
> >> ----- Original Message ----- From: "eduardo"
<eduardo em icontroller.com.br>
> >> To: <lista em firebase.com.br>
> >> Sent: Tuesday, June 21, 2005 5:07 PM
> >> Subject: Re: [firebase-br] StoredProcedure x DBX x Delphi
> >>
> >>
> >>> coloque o código que vem abaixo do "AS"
> >>> para a gente analisar.
> >>>
> >>> Provavelmente você está dividindo só com uma casa decimal
> >>> tipo 10/3.0 e para ter o numero de decimais corretamente vc teria que
> >>> dividir 10 / 3.000 ou 10 / CAST(DIVISOR AS NUMERIC (10.3))
> >>>
> >>> []s Eduardo
> >>>
> >>> Antonio Carlos wrote:
> >>>
> >>>> 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].asCurrency
> >>>> é 3,2
> >>>> e nao adiantou NADA eu colocar SQLStoredProc.Params[1].asBCD ou
> >>>> asDouble
> >>>> 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
> >>>> que
> >>>> 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
> >>>> anexo
> >>>> 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 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
> >
> >
>
>
>
> ______________________________________________
> 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
_______________________________________________________
Yahoo! Acesso Grátis - Internet rápida e grátis.
Instale o discador agora! http://br.acesso.yahoo.com/
Mais detalhes sobre a lista de discussão lista