|
Postada em 18/11/2004 13:04 hs
Como eu faço para editar um registro em um sistema em rede e eu consiga bloquear somente o registro que estou acessando. Estou bloqueando todos os registros da tabela.
|
|
|
|
zeuzebio
|
CRICIÚMA SC - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 18/11/2004 13:48 hs
Amigo Laeonardo, qual banco de dados você está usando ?
|
|
|
|
Postada em 18/11/2004 16:54 hs
Uso VB 6.0 com Access 2000
|
|
|
Tomás
não registrado
|
|
ENUNCIADA !
|
|
|
Postada em 20/11/2004 17:33 hs
A melhor maneira para editar um registro em rede sem se preocupar com bloqueios é colocar um campo tipo long no registro. Abra o registro coloque o valor deste campo numa variavel, edite e ao gravar, faça:
sql="update tabela set campo1=" & xxx & ",campo2=yyyy,campo=campo+1 where campo='" & variavel_com_campo_carregado
'a variavel R retorna quantos registros foram afetados, se for 0 outro usuario editou os dados antes, vc mostra mensagem ao usuario dando a opção de carregar os dados novamente. Cnn.Execute sql,R, adExecuteNoRecords
Tomás
|
|
|
Sandro
não registrado
|
|
ENUNCIADA !
|
|
|
Postada em 22/11/2004 00:36 hs
O problema está na configuração do seu Access e/ou no modo de acesso a sua tabela dentro do programa. Primeiro, vá no menu Ferramentas, clique em Opções e vá em Avançado. Verifique se está selecionada a opção Abrir Banco de Dados com Bloqueio de Registro. Se não estiver, marque. Depois, verifique como você está abrindo a sua tabela ou o Dynaset, NUNCA use os parâmetros dbDenyWrite ou dbDenyRead com a DAO, pois eles bloqueiam o recordset de forma que os outros usuários não conseguem acessara tabela até você fechar o recordset.
|
|
|