Como usar a função SoftLock | Ti Responde 012

No vídeo de hoje, iremos demonstrar como utilizar a função SoftLock nas customizações.

Hoje, a dúvida foi feita pelo grande Rafa, onde ele possuía uma dúvida em como travar um registro sem utilizar o RecLock.

Com isso em mente, fiz um vídeo explicando como usar a função SoftLock.

E abaixo o código fonte desenvolvido para exemplificar:

//Bibliotecas
#Include "TOTVS.ch"

/*/{Protheus.doc} User Function zVid0012
Função para travar a tabela SB1 com SoftLock (irá exibir a mensagem que tem registro bloqueado)
@type  Function
@author Atilio
@since 23/02/2022
/*/

User Function zVid0012()
    Local aArea := FWGetArea()
    Local cCodProd := "F0001"

    DbSelectArea("SB1")
    SB1->(DbSetOrder(1)) // B1_FILIAL + B1_COD

    //Posiciona no produto
    If SB1->(MsSeek(FWxFilial("SB1") + cCodProd))
        If SoftLock("SB1")
            Alert("Aqui pode ser feito validações antes do reclock...")

            RecLock("SB1", .F.)
                //...
            SB1->(MsUnlock())
        EndIf
    EndIf

    FWRestArea(aArea)    
Return

Bom pessoal, por hoje é só.

Abraços e até a próxima.

Dan Atilio (Daniel Atilio)
Especialista em Engenharia de Software pela FIB. Entusiasta de soluções Open Source. E blogueiro nas horas vagas.

2 Responses

  1. Rubem disse:

    Excelente conteúdo Dan!

    Tem alguma função para identificar se o registro está bloqueado ?

    Forte Abraçõ

Deixe uma resposta