Problemas com a Propriedade Mask do QRDBText
Galera estou com dificuldade de utilizar a propriedade [b:9a3efe7c8b][color=blue:9a3efe7c8b]Mask[/color:9a3efe7c8b][/b:9a3efe7c8b] do [b:9a3efe7c8b][color=blue:9a3efe7c8b]QRDBText[/color:9a3efe7c8b][/b:9a3efe7c8b], preciso formatar alguns dados tipo: Telefone, Cep e CNPJ com a seguinte disposição !!!
Como eu faço isto ???
[color=red:9a3efe7c8b][b:9a3efe7c8b]Estou utilizando o Delphi 5.0, sem atualização alguma.[/b:9a3efe7c8b][/color:9a3efe7c8b]
Ah, os dados da minha tabela a propriedade é String (Paradox, ainda) e consta apenas números. Tipo:
Conto com a colaboração da Galera do Forum !!!
[b:9a3efe7c8b]Obrigado !!![/b:9a3efe7c8b]
Fone: (00) 0000-0000 Cep: 00.000-000 CNPJ: 00.000.000/0000-00
Como eu faço isto ???
[color=red:9a3efe7c8b][b:9a3efe7c8b]Estou utilizando o Delphi 5.0, sem atualização alguma.[/b:9a3efe7c8b][/color:9a3efe7c8b]
Ah, os dados da minha tabela a propriedade é String (Paradox, ainda) e consta apenas números. Tipo:
Fone: 5132323232 Cep: 90000000 CNPJ: 921234560001-99
Conto com a colaboração da Galera do Forum !!!
[b:9a3efe7c8b]Obrigado !!![/b:9a3efe7c8b]
Shaos
Curtidas 0
Respostas
Macario
28/01/2005
Ola programador.
Como todas mascaras sao numericas utilize o 9, pois força a digitação numerica so aceitando o ´e´ ou ´E´, pois creio que considera como exponencial ou algo assim
Fone: (99) 9999-9999;0;
Cep: 99999-999;0;
CNPJ: 99.999.999\/9999-99;0;
as mascaras nesse formato nao salvam os literais. para isso use
Fone: (99) 9999-9999;1;
Cep: 99999-999;1;
CNPJ: 99.999.999\/9999-99;1;
So tendo atenção a capacidade dos campos na tabela
Espero ter ajudado.
Como todas mascaras sao numericas utilize o 9, pois força a digitação numerica so aceitando o ´e´ ou ´E´, pois creio que considera como exponencial ou algo assim
Fone: (99) 9999-9999;0;
Cep: 99999-999;0;
CNPJ: 99.999.999\/9999-99;0;
as mascaras nesse formato nao salvam os literais. para isso use
Fone: (99) 9999-9999;1;
Cep: 99999-999;1;
CNPJ: 99.999.999\/9999-99;1;
So tendo atenção a capacidade dos campos na tabela
Espero ter ajudado.
GOSTEI 0
Shaos
28/01/2005
Ocorre o seguinte estou montando um relatório, quero que a saida dos dados sejam formatadas com esta disposição:
CNPJ: 92.123.321/0001-01
Fone: (11) 3232-3232
Cep: 90.010-123
Mas quando executo um preview do relatório no QuickReport ele exibe tudos os campos apenas os números correspondentes sem a formatação desejada. Mesmo em RunTime !!!
As máscaras que estou utilizando são as seguintes:
E mesmo assim, não esta sendo exibido corretamente, o que estou fazendo de errado ???
CNPJ: 92.123.321/0001-01
Fone: (11) 3232-3232
Cep: 90.010-123
Mas quando executo um preview do relatório no QuickReport ele exibe tudos os campos apenas os números correspondentes sem a formatação desejada. Mesmo em RunTime !!!
As máscaras que estou utilizando são as seguintes:
99\.999\.999\/9999\-99;1:_ \(99\) 9999-9999;1;_ 99\.999\-999;1;_
E mesmo assim, não esta sendo exibido corretamente, o que estou fazendo de errado ???
GOSTEI 0
Macario
28/01/2005
Faça a mascara no DataSet (Tabela,Query,etc), pois o Quick recebera a mesma
GOSTEI 0
Shaos
28/01/2005
Tchê, e como eu faço esta máscara ???
Como eu faço ??? Eu nunca fiz isto !!! Ou ao menos não estou entendendo a sua idéia !!!!
Como eu faço ??? Eu nunca fiz isto !!! Ou ao menos não estou entendendo a sua idéia !!!!
GOSTEI 0
Macario
28/01/2005
Certo tipo vo tenta melhor agora..(ehehehe)
Na sua Tabela (por exemplo) voce tem os campos incluidos certo?
Entao faz assim no fiedsEditor (duplo clique sobre a tabela), seleciona o campo que vc quer formatar a mascara. A maioria tem a propriedade EditMask, é nela que vc poe a mascara, ai usando componentes DataWare, ele recebera a mascara.
Na sua Tabela (por exemplo) voce tem os campos incluidos certo?
Entao faz assim no fiedsEditor (duplo clique sobre a tabela), seleciona o campo que vc quer formatar a mascara. A maioria tem a propriedade EditMask, é nela que vc poe a mascara, ai usando componentes DataWare, ele recebera a mascara.
GOSTEI 0
Shaos
28/01/2005
Entendi a sua linha de raciocínio, tentei mas ai o result sai diretente, em alguns casos sai apenas a mascara, e outros sai parte do número e o final em forma de máscara, sem dados.
O componente ´[color=blue:a5416ac0cd]DataWare[/color:a5416ac0cd]´ não sei que é, pois as tabelas em questão são do [b:a5416ac0cd]Paradox[/b:a5416ac0cd] !!! Estou utilizando do BDE !!!
O componente ´[color=blue:a5416ac0cd]DataWare[/color:a5416ac0cd]´ não sei que é, pois as tabelas em questão são do [b:a5416ac0cd]Paradox[/b:a5416ac0cd] !!! Estou utilizando do BDE !!!
GOSTEI 0
Shaos
28/01/2005
[b:eb3a66041d][color=blue:eb3a66041d]Help-me !!![/color:eb3a66041d][/b:eb3a66041d]
GOSTEI 0
Macario
28/01/2005
Tentando de uma outra forma:
Para campos do tipo string:
Propriedade EditMask:
Se for Campo Cep:
99999-999;0;
Esta formatação serve se o tamanho do campo na tabela estiver defino para 8 caracteres, pois nao salva o caracter literal ´ [b:8fadf836d9]- [/b:8fadf836d9]´
Pois se o campo for de tamanho 8 e vc usar esta mascara na propriedade EditMask
99999-999;1;
ficara errado pois ele gravara o ´ - ´.
Para campos do tipo Float e Integer sao duas as propriedades:
DisplayFormat e EditFormat que devem ser preenchidas.
Quando setamos a mascara nestas propriedades, os componentes que tem funcionalidade DataWare (DbEdits, DbText,QRDBText,etc) por padrao, seguem a mascara.
Agora caso isso nao esteja ocorrendo ´force´ a mascara novamente antes do preview do relatorio utilizando o seguinte:
Para campos do tipo string:
Propriedade EditMask:
Se for Campo Cep:
99999-999;0;
Esta formatação serve se o tamanho do campo na tabela estiver defino para 8 caracteres, pois nao salva o caracter literal ´ [b:8fadf836d9]- [/b:8fadf836d9]´
Pois se o campo for de tamanho 8 e vc usar esta mascara na propriedade EditMask
99999-999;1;
ficara errado pois ele gravara o ´ - ´.
Para campos do tipo Float e Integer sao duas as propriedades:
DisplayFormat e EditFormat que devem ser preenchidas.
Quando setamos a mascara nestas propriedades, os componentes que tem funcionalidade DataWare (DbEdits, DbText,QRDBText,etc) por padrao, seguem a mascara.
Agora caso isso nao esteja ocorrendo ´force´ a mascara novamente antes do preview do relatorio utilizando o seguinte:
TFloatField( dm.Temp.FieldByName( ´CAMPOVALOR´ ) ).EditFormat := ´#,0.00´; TFloatField( dm.Temp.FieldByName( ´CAMPOVALOR´ ) ).DisplayFormat := ´#,0.00´; TStringField( dm.Temp.FieldByName( ´CAMPODATA´ ) ).EditMask := ´99/99/9999;1;´; TStringField( dm.Temp.FieldByName( ´CAMPOCEP´ ) ).EditMask := ´99999-999;1;´; TStringField( dm.Temp.FieldByName( ´CAMPOTEL´ ) ).EditMask := ´(99)9999-9999;1;´;
GOSTEI 0
Shaos
28/01/2005
Perfeito
Agora está tudo funcionando da forma desejad !!!
Muito obrigado pela força e pela paciência !!!
Agora está tudo funcionando da forma desejad !!!
Muito obrigado pela força e pela paciência !!!
GOSTEI 0