Usuário com melhor resposta
Formatar numero pelo Formula Workshop

Pergunta
-
Bom dia desenvolvedores!
estou com um probleminha...
segue o exemplo:
SELECT {STP_RELATORIO;1.CASASDECIMAIS}
CASE 1:
{STP_RELATORIO;1.VALOR}To //Comando de formatação.
CASE 2:
{STP_RELATORIO;1.VALOR}To //Comando de formatação.
CASE 3:
{STP_RELATORIO;1.VALOR}To //Comando de formatação.
CASE 4:
{STP_RELATORIO;1.VALOR}To //Comando de formatação.
CASE 5:
{STP_RELATORIO;1.VALOR}To //Comando de formatação.
DEFAULT:
{STP_RELATORIO;1.VALOR}To //Comando de formatação.No banco de dados eu tenho um campo que verifica se o valor tem ou nao casas decimais...
se for do tipo 1 tem uma casa decimais, tipo 2, duas casas e assim por diante.
O problema é que o campo valor nao esta formatado.
como formato ele? existe algum comando FORMAT?
por exemplo se o campo casasdecimais retornar 1,
campo valor = 1,0.
Se retornar 4,
campo valor = 1,0000.
- Editado MarceloSchneider quarta-feira, 27 de outubro de 2010 14:08 Faltou Detalhe
Respostas
-
Marcelo, vamos lá... Veja se este passo-a-passo resolve a sua necessidade...
Não importa da onde está vindo o valor, no seu relatório, você incluiu esse valor como um campo (arrastou ele pra dentro do relatório), certo? Então... Clique com o botão direito nesse objeto e escolha a opção "Format Object":
Feito isso, na aba Number, clique no botão "Customize...":
E então clique no botão para customizar o valor de Decimals:
Aí, no Formula Editor, o que o Crystal Reports está esperando é um número que vai indicar quantas casas decimais ele deve mostrar para aquele objeto. Portanto, digite o seguinte na fórmula:
{STP_RELATORIO;1.CASASDECIMAIS}Pronto... Isso não resolve a sua necessidade?
André Alves de Lima
Visite o meu site: http://www.andrealveslima.com.br
Me siga no Twitter: @andrealveslima- Marcado como Resposta MarceloSchneider quinta-feira, 28 de outubro de 2010 16:45
-
Resolve!
mas fiz diferente, criei uma formula na mão.
SELECT {STP_RELATORIO;1.CASASDECIMAIS}
CASE 1:
ToText (Round (ToNumber ({STP_RELATORIO;1.VALOR}),1))
CASE 2:
ToText (Round (ToNumber ({STP_RELATORIO;1.VALOR}),2))
CASE 3:
ToText (Round (ToNumber ({STP_RELATORIO;1.VALOR}),3))
CASE 4:
ToText (Round (ToNumber ({STP_RELATORIO;1.VALOR}),4))
CASE 5:
ToText (Round (ToNumber ({STP_RELATORIO;1.VALOR}),5))
DEFAULT:
({STP_RELATORIO_PONTOS_AUDITORIA;1.VALOR})funcionou tambem.
obrigado pela força!
- Editado MarceloSchneider quinta-feira, 28 de outubro de 2010 16:44 faltou detalhe
- Marcado como Resposta MarceloSchneider quinta-feira, 28 de outubro de 2010 16:45
Todas as Respostas
-
Marcelo,
Veja se isto te ajuda em algo:
http://victoriayudin.com/2009/06/02/dynamically-change-decimal-places-in-crystal-reports/
André Alves de Lima
Visite o meu site: http://www.andrealveslima.com.br
Me siga no Twitter: @andrealveslima -
-
Marcelo,
Não tem isso no seu relatório? Como assim? Você está utilizando Crystal Reports, certo?
Clica com o botão direito no campo que você quer aplicar a formatação, escolha a opção "Format Field" e adapte a solução apresentada no link que te enviei...
André Alves de Lima
Visite o meu site: http://www.andrealveslima.com.br
Me siga no Twitter: @andrealveslima -
-
Marcelo, vamos lá... Veja se este passo-a-passo resolve a sua necessidade...
Não importa da onde está vindo o valor, no seu relatório, você incluiu esse valor como um campo (arrastou ele pra dentro do relatório), certo? Então... Clique com o botão direito nesse objeto e escolha a opção "Format Object":
Feito isso, na aba Number, clique no botão "Customize...":
E então clique no botão para customizar o valor de Decimals:
Aí, no Formula Editor, o que o Crystal Reports está esperando é um número que vai indicar quantas casas decimais ele deve mostrar para aquele objeto. Portanto, digite o seguinte na fórmula:
{STP_RELATORIO;1.CASASDECIMAIS}Pronto... Isso não resolve a sua necessidade?
André Alves de Lima
Visite o meu site: http://www.andrealveslima.com.br
Me siga no Twitter: @andrealveslima- Marcado como Resposta MarceloSchneider quinta-feira, 28 de outubro de 2010 16:45
-
Resolve!
mas fiz diferente, criei uma formula na mão.
SELECT {STP_RELATORIO;1.CASASDECIMAIS}
CASE 1:
ToText (Round (ToNumber ({STP_RELATORIO;1.VALOR}),1))
CASE 2:
ToText (Round (ToNumber ({STP_RELATORIO;1.VALOR}),2))
CASE 3:
ToText (Round (ToNumber ({STP_RELATORIO;1.VALOR}),3))
CASE 4:
ToText (Round (ToNumber ({STP_RELATORIO;1.VALOR}),4))
CASE 5:
ToText (Round (ToNumber ({STP_RELATORIO;1.VALOR}),5))
DEFAULT:
({STP_RELATORIO_PONTOS_AUDITORIA;1.VALOR})funcionou tambem.
obrigado pela força!
- Editado MarceloSchneider quinta-feira, 28 de outubro de 2010 16:44 faltou detalhe
- Marcado como Resposta MarceloSchneider quinta-feira, 28 de outubro de 2010 16:45