Fórum Transacao no servidor COM #335080

22/12/2006

0

Criei um metodo no servidor COM+(.exe), no cliente checo se a transação esta aberta, se ok commit ou rollback, vejam o método

If( par_Qual=´INICIAR´ ) Then Begin
If( Not sqlConn.InTransaction ) Then Begin
TD.TransactionID:=1;
TD.IsolationLevel:=xilREADCOMMITTED;
sqlConn.StartTransaction(TD);
End;
End;


If( par_Qual=´COMMIT´ ) Then
sqlConn.Commit(TD);


Porem, todos clientes usam o TD.TransactionID=1, isso me traria problemas ou devo continuar assim, cito que tenho em media 150 usuarios conectados


Orpolonio

Orpolonio

Responder

Posts

22/12/2006

Brunolspp

apesar deu não recomendar COM+, vc tem um recurso mto bom nele q a transação do proprio COM+.

usando setcommit e setbort.

tem alguns exemplos no help do Delphi.

Eu costumo usar Borland socket server com mto melhor aproveitamento que o COM+ em tds os quesitos. E nele crio processos e metodos que dentro deles posso fazer o controle transacional da forma que bem entender. e desta forma tenho alcançado sucesso nas empreitadas.

Meus sistemas hj são de alto risco, dispnibilidades e aplicaçãos de interligação geográficas de conexão online 24/7

Abração


Responder

Gostei + 0

23/12/2006

Orpolonio

Tb uso o Socketconnection,
No cliente, qdo tenho que fazer atualizações em varias tabelas inicio a transação(no cliente pelo metodo)
Depois de executar todas as atualizações verifico se tudo correu bem e dou um commit.

Vc poderia me enviar um exemplo de como executar varios inserts/post no cliente, destes inserts disparar checagens no servidor de outra maneira.

Obrigado


Responder

Gostei + 0

26/12/2006

Brunolspp

Salve Mestre!

Então, td os meus processos são feitos sobre o Borland Socket Server.

Deixei alguns exemplos para download junto copm codigos fontes e slides em: http://cc.codegear.com/Author.aspx?ID=795118

e tem uma materia minha na edição 56 e 58 da clubedelphi que mostra como utilizar regras de negocio.

Minhas operaç~eos em lote nos sistemas atuais são bastante grandes, e 85¬ vai muito bem usando clientdataset, os outros uso funções no servidor q recebem os dados ou parametros e executam diretamente no banco dentro de uma transação monitorada.

Espero pode ajudar.

As ordens

Abração


Responder

Gostei + 0

26/12/2006

Orpolonio

Baixei varios modelos mas não encontrei nada relacionado(tô lerdinho este fim de ano)

Queria um exemplo de setcommit e setabort, lembrando que se estes forem no servidor tenho no cliente uma movimentação de 6 tabelas sendo alteradas em uma mesma rotina, um setabort tem que desfazer as outras 5 se o erro ocorrer no sexto applyUpDates(0).

Espero ter sido claro.


Responder

Gostei + 0

26/12/2006

Brunolspp

exemplo de setcomit e setabort hj vc pode pegar no help do Delphi e nos demos.

os exemplos q tenho la são tds baseados em Borland Socket Server

o modelo q uso pra resolver isso e com metodos e transações monitoradas no servidor como expliquei anteriormente.

mantenho uma lista de discussao sobre este assunto em nddv@yahoogrupos.com.br


Responder

Gostei + 0

27/12/2006

Orpolonio

Como faço para entrar nesta lista, assunto maravilhoso para quem trabalha com rotinas de risco,
Cito que sua atenção é maravilhosa para aqueles q tem dúvidas


Responder

Gostei + 0

27/12/2006

Brunolspp

é só se cadastrar no yahoogrupos, procurar o grupo nddv e entrar nele

eu aprovo e´pronto.. vc esta dentro!

eis o link do grupo..

http://www.yahoogrupos.com.br/group/nddv

inclusive la tem varias fotos da BorCon!!!

Abração


Responder

Gostei + 0

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

Aceitar