Bloqueia o registro corrente da tabela ativa.
Sintaxe
RLOCK() –> Lógico
Retorno | Descrição |
.F. | Não conseguiu bloquear o registro. Principal motivo: o registro já está bloqueado por outro usuário. |
.T. | O registro foi bloqueado com sucesso. |
Descrição
Esta função é utilizada quando se tem uma tabela aberta e compartilhada, e se deseja bloquear um registro para que outros usuários não possam alterá-lo. Se a tabela já está aberta em modo exclusivo, a função não altera seu estado.
Exemplo
Este exemplo utiliza a função RLOCK() para deletar o registro com o nome “Joao” da tabela de Clientes indexada por Nome:
USE Clientes INDEX Nome SHARED NEW
SEEK “Joao”
IF FOUND()
IF RLOCK()
DELETE
Messagebox(“Joao deletado”,”OK”, 0)
ELSE
Messagebox(“Registro utilizado por outro usuário”,”Erro”, 0)
ENDIF
ELSE
Messagebox(“Registro não encontrado”,”Erro”, 0)
ENDIF
CLOSE
//Este exemplo mostra como se pode bloquear um registro sem que ele esteja na tabela corrente
USE VENDAS NEW
USE CLIENTES NEW
//
IF !VENDAS->(RLOCK())
Messagebox(“Registro utilizado por outro usuário”,”Erro”, 0)
BREAK
ENDIF