IBTransaction

Delphi

07/04/2007

Ola Amigos,

Tenho uma aplicacao em Delphi que esta exectando o commit no transaction, mas tenho que desconectar e reconectar o banco depois de um post para os outro usuario da rede ver o que fiz.

Onde eu errei ou esqueci algo?


Pattarelli

Pattarelli

Curtidas 0

Respostas

Catunda

Catunda

07/04/2007

qual o banco de dados (interbase, firebird 1, 1.5,...) e componentes usados (Ado,Ibx,DbExpress...)?


GOSTEI 0
Rafael_sc

Rafael_sc

07/04/2007

marque a opção read commited no transaction(dois click).


GOSTEI 0
Pattarelli

Pattarelli

07/04/2007

Ola, eu uso firebird 2.0, e componentes ibx, ja coloquei a opcao read commit mas ficou do mesmo jeito.


GOSTEI 0
Catunda

Catunda

07/04/2007

Ja não utilizo o IBX ha algum tempo e sugiro que vc tb mude para dbexpress com clientdataset e datasetprovider, pq o firebird começa a diferenciar do interbase a partir da sua versão 1.5, e o IBX só tem comprometimento com o interbase.
Toda via eu costumava inserir o codigo abaixo no evento afterpost e afterdelete do dataset utilizado:

// o codigo abaixo é pra utilizar com ibclientdataset
// no caso o IBCDS1 é o nome do meu ibclientdataset

IBCDS1.ApplyUpdates(10);
if not(IBCDS1.DBTransaction.Active) then IBCDS1.DBTransaction.StartTransaction;
IBCDS1.DBTransaction.Commit;


GOSTEI 0
Pattarelli

Pattarelli

07/04/2007

Obrigado, pela ajuda vou tentar assim por enquanto, mas vou seguir seu conselho e mudar para o dbexpress, sou inicinate no delphi estou mudando minhas alicacoes que tenho no clipper para o Delphi, entao aindo estou um pouco confuso, pois tenho que aproveitar 100¬ do conteudo dos bancos de dados DBF que tenho.

Obrigado a t+.



Ja não utilizo o IBX ha algum tempo e sugiro que vc tb mude para dbexpress com clientdataset e datasetprovider, pq o firebird começa a diferenciar do interbase a partir da sua versão 1.5, e o IBX só tem comprometimento com o interbase. Toda via eu costumava inserir o codigo abaixo no evento afterpost e afterdelete do dataset utilizado: // o codigo abaixo é pra utilizar com ibclientdataset // no caso o IBCDS1 é o nome do meu ibclientdataset IBCDS1.ApplyUpdates(10); if not(IBCDS1.DBTransaction.Active) then IBCDS1.DBTransaction.StartTransaction; IBCDS1.DBTransaction.Commit;



GOSTEI 0
POSTAR