Multi Usuário no Interbase
Pessoal é o seguinte... tenho uma aplicação em dois terminais:
Cadastro de cliente... Suponho que em um terminal o cliente seja
DANILO
e o cara altere...
Aí no outro terminal o cara tenta apagar o DANILO... Preciso dar uma msg que o registro foi alterado... ao algo assim e posterior atualizar o registro...
Cadastro de cliente... Suponho que em um terminal o cliente seja
DANILO
e o cara altere...
Aí no outro terminal o cara tenta apagar o DANILO... Preciso dar uma msg que o registro foi alterado... ao algo assim e posterior atualizar o registro...
Danilorsa
Curtidas 0
Respostas
Thoor Cobain
19/11/2003
Coloque no onclick do botão editar antes que ele de o table1.post, um table1.refresh assim:
table1.refresh;
table1.post;
Desta forma ele estará alterando o novo registro, isso seria sua dúvida?
table1.refresh;
table1.post;
Desta forma ele estará alterando o novo registro, isso seria sua dúvida?
GOSTEI 0
Danilorsa
19/11/2003
nao é bem isso que eu quero...
é o seguinte:
em um terminal o cara alterou o meu nome: DANILO
Aí no outro terminal o cara tenta APAGAR o DANILO... Preciso dar uma msg que o registro foi alterado...
[quote:7a07714cba=´Thoor Cobain´]Coloque no onclick do botão editar antes que ele de o table1.post, um table1.refresh assim:
table1.refresh;
table1.post;
Desta forma ele estará alterando o novo registro, isso seria sua dúvida?[/quote:7a07714cba]
é o seguinte:
em um terminal o cara alterou o meu nome: DANILO
Aí no outro terminal o cara tenta APAGAR o DANILO... Preciso dar uma msg que o registro foi alterado...
[quote:7a07714cba=´Thoor Cobain´]Coloque no onclick do botão editar antes que ele de o table1.post, um table1.refresh assim:
table1.refresh;
table1.post;
Desta forma ele estará alterando o novo registro, isso seria sua dúvida?[/quote:7a07714cba]
GOSTEI 0
Thoor Cobain
19/11/2003
Vc sabe né q o certo é nunca dois usuarios abrirem o mesmo cadastro, pois se os dois incluirem um registro, apenas um vai conseguir salvar.
Mas em caso de o cadastro q estiver em sua tela for apagado. coloque o refresh antes do edit, do post, e do delete, assim se o registro estiver apagado ele ira atualizar e o delete cairá p/ o próximo registro.
Onde eu instalo o sistema, eu sempre aviso p/ cada tela q for abrir, verificar se um outro usuário não está usando.
Mas em caso de o cadastro q estiver em sua tela for apagado. coloque o refresh antes do edit, do post, e do delete, assim se o registro estiver apagado ele ira atualizar e o delete cairá p/ o próximo registro.
Onde eu instalo o sistema, eu sempre aviso p/ cada tela q for abrir, verificar se um outro usuário não está usando.
GOSTEI 0
Thoor Cobain
19/11/2003
Muita aconselha usar assim:
Mas eu já prefiro nem usar duas telas abertas juntas, mas isso pode resolver seu problema.
1º - Crie procedure para uso no evento OnActivate
procedure TForm1.FormRefresh(Sender: TObject);
begin
Table1.Refresh; // coloque todas as tabelas q possuir no form
end;
2º - No evento OnActivate do formulário acrescente a linha
Application.OnActivate := FormRefresh;
3º - No evento OnShow do formulário acrescente a linha
FormRefresh(Sender);
4º - No evento OnAfterPost de cada TTable acrescente as linhas
Table1.FlushBuffers;
FormRefresh(Self);
Mas eu já prefiro nem usar duas telas abertas juntas, mas isso pode resolver seu problema.
1º - Crie procedure para uso no evento OnActivate
procedure TForm1.FormRefresh(Sender: TObject);
begin
Table1.Refresh; // coloque todas as tabelas q possuir no form
end;
2º - No evento OnActivate do formulário acrescente a linha
Application.OnActivate := FormRefresh;
3º - No evento OnShow do formulário acrescente a linha
FormRefresh(Sender);
4º - No evento OnAfterPost de cada TTable acrescente as linhas
Table1.FlushBuffers;
FormRefresh(Self);
GOSTEI 0