Páginas filhas
  • RecLock(cAlias, lAppend) - Travamentos / Bloqueios / Locks

Tem a função de criar um registro em branco para inserção ou bloquear o registro atual para edição, neste caso a função executa um refresh do dado, buscando a informação mais atual no banco. Durante o período que o registro estiver bloqueado os demais usuários podem acessá-lo apenas para consulta (vide adiante – DeadLock - leitura suja).

Caso não seja possível o bloqueio do registro a função irá interagir com o usuário, questionando se deve permanecer tentando o bloqueio ou desistir da operação.

 

Exemplo:

Verifica se o registro existe na tabela SA1:

 

// RecLockSample.prw

If !DbSeek(XFilial("SA1") + "000001")

       // Se não existir, insere um registro em branco e o bloqueia

       Reclock("SA1", .T.)

Else

       // Bloqueia o registro encontrado

       Reclock("SA1", .F.)

Endif

  • Sem rótulos