José Luiz Postado Setembro 14, 2007 Denunciar Share Postado Setembro 14, 2007 Como posso formatar as colunas do DBGrid para Fone, Cep, CPF, etc ?Banco de dados DBF ( Clipper ) ou DB ( Paradox ).No AfterOpen do Banco de dados fiz o seguinte :Para formatar números, utilizei : ( BANCO.FieldByName ( 'VALOR' ) as tFloatField ).displayformat := '##,##0.00' ;e funcionou perfeitamente, ou seja, em qualquer DBGrid que eu chame este campo, o valor está formatado corretamente.Para Strings, tentei ( BANCO.FieldByName ( 'FONE' ) as tstringfield ).displayformat := '9999-9999' ;mas dá erro.Tentei também ( BANCO.FieldByName ( 'FONE' ) as tstringfield ).editmask := '9999-9999' ;mas só aparecem os 4 primeiros dígitos.Alguém sabe como executar esta formatação ?Obrigado,Bettega Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Micheus Postado Setembro 14, 2007 Denunciar Share Postado Setembro 14, 2007 Como posso formatar as colunas do DBGrid para Fone, Cep, CPF, etc ?Banco de dados DBF ( Clipper ) ou DB ( Paradox ).No AfterOpen do Banco de dados fiz o seguinte :Para formatar números, utilizei : ( BANCO.FieldByName ( 'VALOR' ) as tFloatField ).displayformat := '##,##0.00' ;e funcionou perfeitamente, ou seja, em qualquer DBGrid que eu chame este campo, o valor está formatado corretamente.Para Strings, tentei ( BANCO.FieldByName ( 'FONE' ) as tstringfield ).displayformat := '9999-9999' ;mas dá erro.Tentei também ( BANCO.FieldByName ( 'FONE' ) as tstringfield ).editmask := '9999-9999' ;mas só aparecem os 4 primeiros dígitos.Alguém sabe como executar esta formatação ?José Luiz, o caminho é por EditMask e DisplayFormat mesmo.Primeiro, no caso de máscara do tipo '9999-9999', você tem que ver como é que está esta informação gravada no seu banco.Supondo que já hajam dados, se as informações incluem a formatação (caracteres como "-", "/"), você deverá informar na máscara que eles devem ser gravados no banco (isto pode influenciar no resultado). Observe que a string de formatação que você usou está incompleta, ela deveria ser '9999-9999;0;' (não grava máscara) ou '9999-9999;1;' (grava máscara). No field que você utilizar o EditMask, se não estou enganado você não precisa definir DisplayFormat. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 José Luiz Postado Setembro 15, 2007 Autor Denunciar Share Postado Setembro 15, 2007 Realmente, o que faltava era colocar o ";0;" para a máscara funcionar.Obrigado, Micheus. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
José Luiz
Como posso formatar as colunas do DBGrid para Fone, Cep, CPF, etc ?
Banco de dados DBF ( Clipper ) ou DB ( Paradox ).
No AfterOpen do Banco de dados fiz o seguinte :
Para formatar números, utilizei :
( BANCO.FieldByName ( 'VALOR' ) as tFloatField ).displayformat := '##,##0.00' ;
e funcionou perfeitamente, ou seja, em qualquer DBGrid que eu chame este campo, o valor está formatado corretamente.
Para Strings, tentei
( BANCO.FieldByName ( 'FONE' ) as tstringfield ).displayformat := '9999-9999' ;
mas dá erro.
Tentei também
( BANCO.FieldByName ( 'FONE' ) as tstringfield ).editmask := '9999-9999' ;
mas só aparecem os 4 primeiros dígitos.
Alguém sabe como executar esta formatação ?
Obrigado,
Bettega
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.