2 Insert
20/12/2003
0
Essa dúvida eu nunca solucionei, alguém poderia me ajudar?
É o seguinte imagine q eu tenho um cadastro de cliente e meu sistema está em rede.
E eu abro o mesmo cadastro em dois pc na rede, e dou o incluir em um, e antes de salvar eu vou de dou o incluir em outro pc. Não dá, ele dá pau. como resolver isso?
Uso o delphi 6 e com Interbase...
obrigado...
É o seguinte imagine q eu tenho um cadastro de cliente e meu sistema está em rede.
E eu abro o mesmo cadastro em dois pc na rede, e dou o incluir em um, e antes de salvar eu vou de dou o incluir em outro pc. Não dá, ele dá pau. como resolver isso?
Uso o delphi 6 e com Interbase...
obrigado...
Thoor Cobain
Curtir tópico
+ 0
Responder
Posts
20/12/2003
Ari
Amigo vou ser honesto com vc coloquei a mesma pergunta neste forum e também não consegui resposta más resolvi o problema da seguinte forma:
com certeza sua aplicação deve ter uma query e 1 Ibtransaction o que vc deve fazer e o seguinte:
- criar uma tabela para controle da sua chave primaria ou seja vc vai ter uma tabela com os campos
sequencial
nome tabela
ultimo Código
no evento on new record da qry vc faz a consulta nesta tabela de controle de chave pega o novo codigo e já dá um Update nela para que quando o proximo cara der um novo registro na mesma tabela ele já pega um novo Código
Agora o mais importante é que vc tenha dois ibtransaction um para o Update da tabela de código e outro para o update da tabela do cadastro
e no componente ibtransaction vc seta a opção readcommit
á basicamente isso
Eu fiquei com minha aplicação parada 15 dias e quando descobri a solução achei ridiculo, por favor se não entendeu o que escrevi, alias sou ruim para caramba para explicar por favor me ligue 11 43924171 ou 11 9558 6161 ai te falo certinho..
espero que possa te ajudar.
com certeza sua aplicação deve ter uma query e 1 Ibtransaction o que vc deve fazer e o seguinte:
- criar uma tabela para controle da sua chave primaria ou seja vc vai ter uma tabela com os campos
sequencial
nome tabela
ultimo Código
no evento on new record da qry vc faz a consulta nesta tabela de controle de chave pega o novo codigo e já dá um Update nela para que quando o proximo cara der um novo registro na mesma tabela ele já pega um novo Código
Agora o mais importante é que vc tenha dois ibtransaction um para o Update da tabela de código e outro para o update da tabela do cadastro
e no componente ibtransaction vc seta a opção readcommit
á basicamente isso
Eu fiquei com minha aplicação parada 15 dias e quando descobri a solução achei ridiculo, por favor se não entendeu o que escrevi, alias sou ruim para caramba para explicar por favor me ligue 11 43924171 ou 11 9558 6161 ai te falo certinho..
espero que possa te ajudar.
Responder
22/12/2003
Thoor Cobain
Olá amigo, consegui arrumar, tipo eu nem tinha percebido q o problema era na duplicação da chave, eu já tinha uma rotina q pega o ultimo codigo e soma mais um. Então fiz com que quando o usuario clica no salvar, ele pesquisa o ultimo cosigo soma mais um e depois salva, aí deu certo.
Valew pela dica!
Valew pela dica!
Responder
Clique aqui para fazer login e interagir na Comunidade :)