Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Kleber Quilez

Trabalhando R$

Recommended Posts

Pessoal tenho Usado o Zeos pra Conexão Delphi e MySQL e tenho Achado D+++Estou desenvolvendo um sisteminha pra um Cliente mas estou com a seguinte Situação o banco de Dados salva sempre Independe de ser Decimal ou Float 1000.45.... eu precisaria que fosse 1.000,45Qual tratamento posso dar nisso pra conseguir o Que preciso!?Grato,

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então. Eu fiz o Seguinte Código pra InserçãoDados.QueryInsere.Close; Dados.QueryInsere.SQL.Clear; Dados.QueryInsere.SQL.Add('Insert into Produtos values(' + EditCodigo.Text + ',' + '''' + EditProduto.Text + ''',' + '''' + ComboBox1.Text + ''',' + '''' + EditValor.Text + ''');'); Dados.QueryInsere.ExecSQL;E no Banco eu Coloquei no MySQL o Campo Valor como Float(8,2), não sei se esta certo ou se deveria ser Decimal!! Mas o caso é que ele não aceita um valor maior que 999.99 ele fica 1000.99 td junto e só separa a "casa" dos centavos o que eu gostaria é 1.000,99, além disso o MySQL só Grava .(ponto) e não , (virgula) ai pra Funionar tenho que mudar la no Windows o separador de moeda pra .(ponto) lá no Painel de controle, pois gravar ele grava, mas na hora de exibir ele exibe como , (virgula) ai qualquer alteração feita ele da pau!!O erro é o Seguinte..tentei inserir o valor 1.234.56Project xxx.exe raised exception class EZSQLException with message 'SQL error: Data truncated for column 'valor' at row 1'. Process Stopped. Use Step or Run to continue.Ai eu não sei o que fazer!! Espero Muito a sua Ajuda!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Kleber eu faço assim: o campo é do tipo float. para inserir, voce deve criar um parâmetro: dmdados.generica.sql.Clear; dmdados.generica.sql.Add('insert into tabela(campo1,campo2,campo3,CampoVALOR) values('+ DADO1_Int + ', ' + DADO2_Int + ', "' + DADO3_Str + '", :dadoVALOR)'); dmdados.generica.ParamByName('dadoVALOR').AsFloat := valorViagem; dmdados.generica.ExecSQL;Para recuperar os dados: 1º- label1.caption := formatfloat('0.00#,##', valorFloat); 2º- quando for apresentar os dados em um GRID, voce deve dar duplo click na query dentro do Data Module, depois clicar no campo do tipo float, que voce deseja mostrar com formatação, ir na propriedade Currency e marcar como true.acho que isso resolve vê ai http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Kleber eu faço assim: o campo é do tipo float. para inserir, voce deve criar um parâmetro: dmdados.generica.sql.Clear; dmdados.generica.sql.Add('insert into tabela(campo1,campo2,campo3,CampoVALOR) values('+ DADO1_Int + ', ' + DADO2_Int + ', "' + DADO3_Str + '", :dadoVALOR)'); dmdados.generica.ParamByName('dadoVALOR').AsFloat := valorViagem; dmdados.generica.ExecSQL;Para recuperar os dados: 1º- label1.caption := formatfloat('0.00#,##', valorFloat); 2º- quando for apresentar os dados em um GRID, voce deve dar duplo click na query dentro do Data Module, depois clicar no campo do tipo float, que voce deseja mostrar com formatação, ir na propriedade Currency e marcar como true.acho que isso resolve vê ai http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

CARA O FORMATFLOAT ESTÁ ERRADO ELE É ASSIM: label1.caption := 'R$ ' + formatfloat('#,##0.00', campoFloat);beleza

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.