Registro sendo utilizado por outro usuário

Firebird

30/12/2005

Como faço para saber se o registro está sendo usado por um outro usuário?
como o Firebird 1.5 com MDO faz este controle?
ex: se um usuário está com o cadastro de um cliente aberto e em edição, acho que outro cliente não deveria poder ver ou alterar o mesmo registro. estou certo?


Raserafim

Raserafim

Curtidas 0

Respostas

Afarias

Afarias

30/12/2005

|Como faço para saber se o registro está sendo usado por um outro
|usuário?

se por USADO vc quer dizer ALTERADO .. basta tentar alterar o registro. se outro usuário tiver alterado antes o registro estará bloqueado e vc receberá uma exceção!

|como o Firebird 1.5 com MDO faz este controle? ex: se um usuário está
|com o cadastro de um cliente aberto e em edição, acho que outro cliente
|não deveria poder ver ou alterar o mesmo registro. estou certo?

impedir de ver é algo q o banco não faz (nem tem pq fazer) -- mas vc pode implementar isso no seu código.

use um código como:

with Query do
begin
  Open;
  Edit;
  CampoX.AsInteger := CampoX.AsInteger; // simula alteração
  try
    Post;
    // se passar o registro fica bloqueado para este usuário
  except
    // se der erro o registro já está bloqueado e não pode ser editado
  end;
end;



T+


GOSTEI 0
POSTAR