DanielTM 0 Denunciar post Postado Agosto 21, 2007 Pessoal tenho um edit,e nesse edit tenho que formatalo para ter sempre 7 caracteres, adicionando 0 a esquerda, tentei fazer assim mas deu erro ao inserir dados no edit:varvalor: string;beginedit4.text:= formatfloat('000000', StrToFloat(valor));alguem pode me ajudar? valew Compartilhar este post Link para o post Compartilhar em outros sites
Rodrigo Miss 1 Denunciar post Postado Agosto 21, 2007 Faça assim no onExit do edit ... Edit4.Text:= FormatFloat('00000.00', StrToFloat(Edit4.Text)); Compartilhar este post Link para o post Compartilhar em outros sites
DanielTM 0 Denunciar post Postado Agosto 22, 2007 Faça assim no onExit do edit ... Edit4.Text:= FormatFloat('00000.00', StrToFloat(Edit4.Text)); valew demais primo... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Agosto 22, 2007 Se quiser, existe ainda um componente chamado TRealEdit, no qual faz a formatação de valores, ele é um edit, mas somente com esta opção de formatação... Se quiser, pode baixar neste link. Compartilhar este post Link para o post Compartilhar em outros sites
DanielTM 0 Denunciar post Postado Agosto 23, 2007 como faço a sintaxe para formatar um campo que pego do banco de dadosgravo ele assim no txt Write(arqS, query2.FieldByName('cfop').asstring);mas queria formatalo como o edit para conter 7 caracteres completando com 0 tentei : Write(arqS, query2.FieldByName(FormatFloat('00000.00', StrToFloat('cfop').asstring));não deu certo <_< Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Agosto 23, 2007 Tente assim: Write(arqS, FormatFloat('00000.00', StrToFloat(query2.FieldByName('cfop').asstring))); Compartilhar este post Link para o post Compartilhar em outros sites
DanielTM 0 Denunciar post Postado Agosto 23, 2007 Tente assim: Write(arqS, FormatFloat('00000.00', StrToFloat(query2.FieldByName('cfop').asstring))); po marcio você sempre quebrando meu galho, valew.mas deu um erro, pq esse eu campo está com o seguinte dado : 5.949 quando vou executar o sitema da a msg de erro: '5.949' is not a valid floating point valueno caso eu tenho que remover o sinal de ponto (.) ? faz usando o StringReplace(query2.FieldbyName('cfop').asstring, '.','', [rfReplaceAll]));como resolvo isso. Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Agosto 23, 2007 Isso, no caso precisa remover o ponto... Mas se o campo já foi armazenado formatado, precisaria somente fazer... Write(arqS, query2.FieldByName('cfop').asstring); Compartilhar este post Link para o post Compartilhar em outros sites
DanielTM 0 Denunciar post Postado Agosto 23, 2007 Isso, no caso precisa remover o ponto...Mas se o campo já foi armazenado formatado, precisaria somente fazer... Write(arqS, query2.FieldByName('cfop').asstring); nao o campo nao foi armazenado formatado, entao tenho que tirar o (.) depois usar o formatfloat para 7 caracteres, me ajude na sintaxe Marcio:Write(arqS,StringReplace(FormatFloat('00000.00', StrToFloat(query2.FieldbyName('cfop').asstring, '.','', [rfReplaceAll])));meu resultado final que preciso seria esse, soh q apanho demais para sintaxe do delphi é f*** http://forum.imasters.com.br/public/style_emoticons/default/upset.gif Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Agosto 23, 2007 Tente assim: Write(arqS,FormatFloat('00000.00',StrToFloat(StringReplace(query2.FieldbyName('cfop').asstring, '.','', [rfReplaceAll])))); Compartilhar este post Link para o post Compartilhar em outros sites
DanielTM 0 Denunciar post Postado Agosto 23, 2007 Tente assim: Write(arqS,FormatFloat('00000.00',StrToFloat(StringReplace(query2.FieldbyName('cfop').asstring, '.','', [rfReplaceAll])))); opa marcio, a sintaxe rodou beleza, mas soh que aparece o mesmo erro, mas agora não aparece o valor do campo ma msg ta assim: ' ' is not a valid floating point valueda erro pq o campo contem o (.) mesmo retirando no stringreplace nao deu http://forum.imasters.com.br/public/style_emoticons/default/upset.gif Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Agosto 23, 2007 De qual tipo é o campo cfop ? Como ele fica armazenado no banco, passa um exemplo se puder... Compartilhar este post Link para o post Compartilhar em outros sites
DanielTM 0 Denunciar post Postado Agosto 23, 2007 De qual tipo é o campo cfop ? Como ele fica armazenado no banco, passa um exemplo se puder... cfop é um campo que recebe varchar de tamanho de 6 caracteres, os dados neles sao inseriodos com ponto exemplo: 6.949 5.949 1.99 Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Agosto 23, 2007 Não entendi muito para o que você vai usar este tipo de formatação, mas tente assim: Write(arqS,FormatFloat('00000.00',StrToInt(StringReplace(query2.FieldbyName('cfop').asstring,'.','',[rfReplaceAll])))); Compartilhar este post Link para o post Compartilhar em outros sites
DanielTM 0 Denunciar post Postado Agosto 23, 2007 Não entendi muito para o que você vai usar este tipo de formatação, mas tente assim: Write(arqS,FormatFloat('00000.00',StrToInt(StringReplace(query2.FieldbyName('cfop').asstring,'.','',[rfReplaceAll])))); preciso fazer essa formatação para um outro programa leia o layout, e infelizmente tem q ser dessa forma deu msn de erro : ' ' is not a valid integer value Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Agosto 23, 2007 Roda passo-a-passo e verifica, deve de estar indo algo como nulo ou então com outros caracteres... Pode tentar assim tb: if Trim(query2.FieldbyName('cfop').AsString) <> '' then Write(arqS,FormatFloat('00000.00',StrToInt(StringReplace(Trim(query2.FieldbyName('cfop').AsString),'.','',[rfReplaceAll])))); Compartilhar este post Link para o post Compartilhar em outros sites