eu ja tive este problea e so solucionei qdo limitei o nome de meus campos a
30 caracteres..
[]´s
Bruno Lichot
Micrologos Dream Team
Equipe Editorial ClubeDelphi DevMedia

[EMAIL PROTECTED]
[EMAIL PROTECTED]

www.micrologos.com.br - www.clubedelphi.net -
www.delphirio.assespro-rj.org.br

----- Original Message ----- 
From: "Paulo" <[EMAIL PROTECTED]>
To: <delphi-br@yahoogrupos.com.br>
Sent: Tuesday, November 29, 2005 5:19 PM
Subject: [delphi-br] ClientDataSet - Nao posso ter campos com mais de 30
caracteres em seus nomes


Pessoal:

Pergunta resumida:

O ClientDataSet nao consegue ler corretamente
nomes de campos que possuam mais de 30 caracteres ?
(quando eu tento criar um campo persistente a partir
de um campo que possui nome com mais de 30 caracteres,
o ClientDataSet trunca para 30 caracteres, e depois
ocorre erro em tempo de execucao, pois no ApplyUpdates
o nome de campo "truncado" nao e' encontrado no servidor

Caso seja necessario para entenderem melhor minha
dificuldade, seguem maiores detalhes no final deste
e-mail

Grato pela atencao de todos
Paulo

a) Uso o Delphi 7 com DBExpress e InterBase 6
b) Estou com o seguinte problema:  Tenho alguns campos
que possuem mais de 30 caracteres em seus nomes.
Por exemplo, o nome do campo abaixo tem 31 caracteres:

DATINICIOPROCESSAMENTO_PREVISTO

c) Quando eu executo um clique-duplo em um ClientDataSet
que esta' fazendo acesso `a tabela que possui esse campo
(atraves de um SQLDataSet e DataSetProvider), o campo
e' criado no ClientDataSet (ou seja, o campo persistente),
a propriedade FieldName desse campo persistente
trunca o ultimo caractere do nome do campo. Assim:

DATINICIOPROCESSAMENTO_PREVIST

d) Ao rodar o programa, o ClientDataSet abre normalmente...
Mas quando eu tento gravar um registro, aparece mensagem
dizendo que a coluna DATINICIOPROCESSAMENTO_PREVIST
e' desconhecida (porque seu nome na tabela contem um caractere
a mais - a letra "O").

e) Tentei mudar por conta propria a propriedade FieldName para  os 31
caracteres,
mas neste caso quando tento abrir o ClientDataSet (ainda em tempo de
projeto),
aparece mensagem que o campo DATINICIOPROCESSAMENTO_PREVISTO
nao foi encontrado (em tempo de execucao aparece tambem um erro).

Pergunta:

Ha' alguma solucao para resolver este problema, ou terei de alterar
os nomes dos campos na estrutura do BD, para que tenham no maximo 30
caracteres ?


[As partes desta mensagem que não continham texto foram removidas]



-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>



Links do Yahoo! Grupos











-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

<*> Para ver as mensagens antigas, acesse:
    http://br.groups.yahoo.com/group/delphi-br/messages

<*> Para falar com o moderador, envie um e-mail para:
    [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a