[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