Array
(
)

Mostar casas decimais em um relatório

00seth
   - 28 nov 2005

Gostaria de saber se é possível mostrar casas decimais em um relatório no quick report
ex: 13,00 ou então 17,02

se existir algum comando em sql por favor me ajudem


Poeta Noturno
   - 29 nov 2005

amigo, vc não precisa de comando sql para fazer isso no quick report.
se vc utilizar o Clientdataset por exemplo, adicione os tfields e altere a propriedade currency do tfield desejado para true... além das casas decimais, é adicionado o símbolo monetário.
caso queria mais de 2 casas decimais, e o simbolo monetário não ser tão importante assim, altere a propriedade displayformat para #,0.00, por exemplo... quanto mais zeros após o ponto, mais casas decimais ele irá exibir


Osocram
   - 29 nov 2005


Citação:
Gostaria de saber se é possível mostrar casas decimais em um relatório no quick report
ex: 13,00 ou então 17,02

se existir algum comando em sql por favor me ajudem

coloque no DisplayFormat do campo (lah no TDataSet q esteja usando) o seguinte #Código

,#.00

Apenas isso non eh necessario colocar: #Código
,0.00

Como o Poeta Noturno flw... pois essa formatacao funcionaria bem ateh 999.999,00 se fosse mais q isso ele non adicionaria mais os pontos de milhar.


00seth
   - 29 nov 2005

Desculpem minha ignorância mais eu não entendi nada


00seth
   - 29 nov 2005

Entendi mas só funciona se o campo na tabela for inteiro e na tabela o campo ´valor´ está no formato texto

tem salvação


00seth
   - 29 nov 2005

sobe


Osocram
   - 30 nov 2005


Citação:
Entendi mas só funciona se o campo na tabela for inteiro e na tabela o campo ´valor´ está no formato texto

tem salvação

na verdade se o valor fosse ponto flutuante...

mas sendo texto... eh isso pod trazer problemas p vc em alguns sql... mas vc pod fazer assim

#Código

Edit.text := FormatFloat(´,#.00´,CdsVAlor.asFloat)


ou

#Código
Edit.text := FormatFloat(´,.00´,StrToFloat(CdsVAlor.asString))


OBS:... Pq esse campo valor eh do tipo texto?


00seth
   - 30 nov 2005

Descobri qual o problema eu faço uma soma no sql

With ADOQuery1 do
begin
Close;
Sql.Clear;
Sql.Add(´select nome, t.cod_prod, t.marca, sum(qtd_tot), sum (preco_total) from temp_aq t, produtos p´);
sql.Add(´where p.cod_prod = t.cod_prod´);
sql.Add(´group by t.cod_prod, t.marca, nome´);
open;
end;

Form18.QuickRep1.Preview;

e essa soma na SQL que vai para o relatório é ela que eu quero que tenha casas decimais mais ela arredonda, existe algum jeito


Ramms
   - 30 nov 2005

Passa o valor do resultado da sql para um edit e nele vc aplica a formatação, ai no relatório no beforeprint vc dah um qrlabel.caption := edit1.text;
jah era....


Osocram
   - 30 nov 2005


Citação:

coloque no DisplayFormat do campo (lah no TDataSet q esteja usando) o seguinte #Código

,#.00

Apenas isso non eh necessario colocar: #Código
,0.00

Como o Poeta Noturno flw... pois essa formatacao funcionaria bem ateh 999.999,00 se fosse mais q isso ele non adicionaria mais os pontos de milhar.
Eh so fazer isso e jogar um DBQrEdit
tipo vc dah dois clique no seu DataSet, dae ele vai t trazer os campos.. dae vc seleciona o campo valor q quer e coloca no DisplayFormat #Código
,.00