Array
(
)

Formatação de campos

Mrmarcelojr
   - 26 jan 2006

Estou com 2 probleminhas com formatação de campos:

1°) Estou usando SQDataSet>DataSetProvider>ClientDataSet. Em meu campo de data, cooloquei a formatação para tal, ms na hora de digitar, não aparece as barras automaticamente, eu denho que digita-las. O que tenho que fazer para q as barras fiquem a mostra, como em um MaskEdit?

2°) Esse eu naum sei se vou consseguir explicar, ms ai vai. Tenho um campo de codigo do tipo Integer. Ms meu cliente agora quer colocar letras junto au codigo, pois este codigo pode repitir no registro, aterando apenas a letra (ex.: 00001A,00001B). Mudei o campo meu CODI para VarChar, porem, ele naum esta aceitando este caracter tipo letra. Então resolvi fazer o seguinte; fazer esta variação usando numeros (ex.: 00001-01, 00001-02). Como faço para que código digitado não caia automaticamente nos dois ultimos campos, (ex.: que ao digitar 00001, ele não fice assim 000-01, ou seja, que os 2 ultimos numeros sejam preenchidos apenas se o usuario quise)...............Ufa! acabei......

espero que entendam, pois a segunda pergunta eh a mais urgente..


Macario
   - 26 jan 2006

Olá colega.

Bom se você incluiu a mascara no fieldsEditor deveria estar aparecendo (isso se voce estiver usando componentes dataware).


No segundo caso eu não mudaria o tipo do campo (pode haver indices ou chaves estrangeiras), eu criaria outro campo para trabalhar em conjunto
ai para pesquisar e ´linkar´ as tabelas usaria CAMPOCODIGO+CAMPODAC.

Eu faria assim.

8) :arrow:


Mdm
   - 26 jan 2006

Ola Colega, pelo q entendi a resposta para suas 2 questões estão no Filed de seu DataSet.

para colocar mascaras vc pode usar a propriedade DisplayFormat ou MaskEdit do Field.

2 questão. quando vc altera um campo no banco de dados vc precisar remover o Field e adicionar novamente para que o mesmo altere seu tipo.

Creio que seja isso. se me enganei algum colega ira me corrigi. Por favor


Mrmarcelojr
   - 26 jan 2006

Muito obrigado colegas..

Bem, quanto a segunda pergunta eu acho que terei que seguir a idéia do colega Macario. Eu jah havia pensado nesta solução antes, ms me desencorajei, pois terei muuuuuuuuuita coisa a mudar no sistema. Ms fazer o q neh..

Quanto a primeira pergunta, eu estou colocando a formatação nos fields do ClientDataSet. A formatação aparece, ms soh quando eu saio do campo.

ps.: Quando eu utlizava o SimpleDataSet, funcionava certinho. Por que q com o CDS não funciona?

grato


Eliane Dorr
   - 27 jan 2006

Bem, eu utilizo o evento BeforeOpen, desta forma:
#Código

CDSCadstrDATAENTR.EditMask:=´!99/99/0000;1; ´;   //Data