GARANTIR DESCONTO

Fórum IBTable x IBQuery #350820

19/12/2007

0

Por que ao atualizar uma IBTable e na mesma hora abrir uma IBQuery, a IBQuery não mostra as atualizações da IBTable?
Ex:
With IBTable do
Begin
append;
FieldByName(´Numero´).AsInteger := 1;
Post;
IBtransaction.Commit;
IBTransaction.StartTransaction;
Open; -> aqui as modificações aparecem
End;
With IBQuery do
Begin
Close;
Clear;
SQL.Add(´Select * from tabela);
Prepare;
Open; - aqui mostra os mesmos registros que existiam anteriormente
End;


Edilcimar

Edilcimar

Responder

Posts

20/12/2007

Andersonscinfo

estranho mesmo....mas vc ja tentou deixar de lado o table e usar apenas a qry?


Responder

Gostei + 0

17/01/2008

Edilcimar

ninguém se habilita?


Responder

Gostei + 0

17/01/2008

Dbergkamps10

Tente assim:
IBTable.ApplyUpdates;
IBTable.close;
Ibtable.open;

Espero q funcione e ter ajudado.


Att
Dalton


Responder

Gostei + 0

17/01/2008

Edilcimar

se você notar verá que a ibtable é comitada e depois é aberta novamente, e na tabela todos os dados estão lá, porém na query que é aberta depois disto os dados não estão atualizados!


Responder

Gostei + 0

19/01/2008

Edilcimar

Não acredito que ninguém tenha conhecimento suficiente do porquê isto acontece! Vejam bem que não estou interessado na solução, mas sim na razão disto estar acontecendo!


Responder

Gostei + 0

19/01/2008

Dbergkamps10

Olá Edilcimar,
Por não conhecermos a RAZÃO é q não podemos lhe dar uma SOLUÇÃO.

Att
Dalton


Responder

Gostei + 0

21/01/2008

Aroldo Zanela

Não acredito que ninguém tenha conhecimento suficiente do porquê isto acontece! Vejam bem que não estou interessado na solução, mas sim na razão disto estar acontecendo!

Colega,

Fiz o teste da forma que postou inicialmente e funcionou, ou seja, o registro é adicionado e a grade da query é atualizada. Usei Firebird 2.0 e IBX 6.11 (Delphi 6).

Seus componentes IBX estão atualizados?

  With IBTable1 do
  Begin
    append;
    FieldByName(´id_a´).AsInteger := 2;
    FieldByName(´nome´).AsString:= ´EDILCIMAR´;
    Post;
    Open; {Grade atualizada com sucesso}
  End;
  With IBQuery1 do
  Begin
    Close;
    SQL.Clear;
    SQL.Text:= ´select * from TBATLETAS´;
    Open; {Grade atualizada com sucesso}
  End;



Responder

Gostei + 0

21/01/2008

Edilcimar

Eu uso D7 e o ibx é o que vem com ele, no meu caso faço um append na ibtable (nesta a atualização apararece), e depois abro a ibquery e só existem os registros que já existiam antes do append!


Responder

Gostei + 0

21/01/2008

Aroldo Zanela

Colega,

No site da CodeGear tem a atualização dos componentes IBX para Delphi 7. Como eu fiz o mesmo teste que você fez e não deu problema, creio que podem ser os componentes IBX.


Responder

Gostei + 0

21/01/2008

Edilcimar

vou ver e depois informo


Responder

Gostei + 0

21/01/2008

Edilcimar

Não funcionou.
Se a ibquery estiver aberta, alterar a ibtable e depois reabrir a ibquery as modificações feitas na ibtable não aparecem na ibquery, porém se a ibquery estiver inicialmente fechada, aí elas aparecem


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar