[firebase-br] Ref. Capturar usuario bloqueou registro

Sandro Souza escovadordebits em gmail.com
Ter Dez 2 10:48:36 -03 2008


Bom dia/tarde Omar.

Aparentemente, não há. :(

Eu postei em uma resposta a uma de suas perguntas, uma técnica bastante
rudimentar que eu implementei em um sistema de uma empresa em que eu
trabalhei, e que me permitia fazer exatamente isso que você deseja.

Vou repetir aqui o texto que postei na resposta, referente a essa técnica
nada elegante, mas funcional:

"Em uma empresa em que trabalhei, eu utilizei uma técnica meio rudimentar,
mas de fácil utilização.

Criei uma tabela com 3 colunas: O nome da tabela com um ou mais registros
bloqueados, uma string (varchar) contendo os valores dos campos chaves
concatenados e separados por ponto-e-vírgula, e o código do usuário que
efetuou aquele bloqueio.

Ou seja, é uma técnica em que depende da aplicação e não do próprio banco de
dados.

Antes de bloquear algum registro, a aplicação executava um SELECT nessa
"tabela de bloqueios", pesquisando pelo nome da tabela e pelos valores dos
campos chaves, para verificar se aquele registro em particular já estava
bloqueado por outro usuário.

Não estando, a aplicação executava INSERT(s) para bloquear o(s) registro(s)
desejado(s).

A rotina de desbloqueio apenas excluia as respectivas linhas/registros da
tabela de bloqueios.

Como Murphy é simplesmente o cara mais eficiente do mundo, poderia ocorrer
alguma situação em que a aplicação tivesse que ser encerrada "na marra", e
isso deixava os bloqueios na tal tabela de bloqueios.

Tive que implementar uma rotina para desbloquear registros de um determinado
usuário (acessível pelo administrador do sistema), assim como a cada
entrada/logon no sistema, a aplicação já excluia todos os bloqueios
efetuados por aquele usuário.

Sei que não é uma boa técnica, mas ficava mais independente dos recursos do
banco de dados, ou seja, futuramente poderia migrar para outro banco de
dados, mesmo que o novo banco de dados não suportasse bloqueios de
registros.

Também dessa forma, facilmente a aplicação poderia informar, ao usuário
atual, qual usuário efetuou o bloqueio daquele determinado registro."

Espero ter ajudado mais que atrapalhado.

2008/12/2 Omar Haddad <omarhaddadm em gmail.com>

> Salve amigos, aqui estou eu de novo.... ;)
>
> Tem alguma função para capturar o nome do usuário que bloqueou o registro
> (travou) ele, só para dar ciência ao outro usuário ?
>
>
> Abraço
>
> Omar
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista