[firebase-br] Could not edit current row
Josauro S.J.
josauro em casasoft.inf.br
Seg Abr 24 09:10:06 -03 2006
Primeiramente obrigado por todos que tem contribuido com a solução do problema, exposto por mim, que provavelmente outros poderão ter
Mas apesar de ter feito conform solicitado no seu ultimo email, o erro continua, para quem ainda não viu o problema, provavelmente esta sendo causado por eu trabalhar com tabelas sem primary key definida explicitamente, e sim atraves de indice (para colocar um nome mais aceitavel, e poder manipula-la melhor).
IB_Query1.KeyLinks.Clear;
IB_Query1.KeyLinks.Add('MOVIMENTO_CONTA.MVC_CODIGO');
IB_Query1.Open;
IB_Query1.Insert;
IB_Query1.FieldByName('MVC_CODIGO').Value := 9999998;
IB_Query1.Post;
IB_Query1.Edit; // AQUI DA O ERRO Could not edit current row
IB_Query1.Post;
Message: 9
Date: Thu, 21 Apr 2005 03:17:25 -0300
From: "RedDevil" <reddevil_fdb em yahoo.com.br>
Subject: Re: [firebase-br] Could not edit current row
To: "FireBase" <lista em firebase.com.br>
Message-ID: <000301c5463a$503930e0$0323a8c0 em www.netvisual.com.br>
Content-Type: text/plain; charset="iso-8859-1"
ola Mr. Josauro,
agora a gente chegou a minha parte preferida: ao KeyLinks (eu adoro o
IBObjects por, entre tantas outras coisas, algumas desta natureza...;o).
esta questao aqui, do vosso KeyLinks, pode ser resolvido deixando o vosso
codigo da seguinte maneira:
IB_Query1.KeyLinks.Clear;
IB_Query1.KeyLinks.Add('<tabela>.MVC_CODIGO');
IB_Query1.Open;
IB_Query1.Insert;
IB_Query1.FieldByName('MVC_CODIGO').Value := 9999998;
IB_Query1.Post;
isso acontece porque como a vossa tabela nao tem uma PK (cujo(s) campo(s) o
IBObjects colocaria automaticamente na propriedade KeyLinks), o IBObjects
tenta optimizar a TIB_Query colocando: "<tabela>.RDB$DB_KEY" na propriedade
KeyLinks dela...
sendo assim, com as seguintes instruçoes:
IB_Query1.KeyLinks.Clear;
IB_Query1.KeyLinks.Add('<tabela>.MVC_CODIGO');
o (ou "a"... eu nao sei qual eh o sexo da criança...;o)
"<tabela>.RDB$DB_KEY" eh removido(a) da propriedade KeyLinks da TIB_Query e
eh acrescentado apenas o que eh necessario nesta questao, ou seja, isso ae
abaixo:
"<tabela>.MVC_CODIGO"
e entao nao tem erro, tudo funciona de forma correta...
[]s
força sempre!!!
ate +++
Mais detalhes sobre a lista de discussão lista