Permite associar um bloco de código a uma variável de programa do Advpl, onde o bloco de código será chamado quando a variável for acessada.
Sintaxe
VarSetGet( < cVariavel >, < bBloco >, [ lApenasUpdate ] )
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
cVariavel | caractere | Indica o nome da variável a ser associada com o bloco de código. | X | |
bBloco | bloco de código | Indica o bloco de código que será executado quando a variável for acessada. | X | |
lApenasUpdate | lógico | Caso especificado .T., indica se apenas operação de atribuição deve disparar o bloco de código. Caso informado o valor .F. ( padrão ), o bloco de código será chamado tanto na leitura quanto na atribuição de conteúdo. |
Retorno
Nome | Tipo | Descrição |
---|---|---|
lRet | lógico | Retorna .T. caso a variável especificada como primeiro parâmetro exista na lista de variáveis do programa em execução. |
Observações
- O bloco de código receberá como parâmetro o valor que esta sendo atribuído à variável e o retorno dele será atribuído à variável.
Exemplos
User Function teste() local bBloco := {|x| ConOut("Passou pelo bloco"), x} local nVar := 0 VarSetGet("nVar", bBloco, .T.) nVar := 2 ClearVarSetGet("nVar") Return
Abrangência
Microsiga Protheus 8.11 , Protheus 10 , TOTVS Application Server 10, Protheus 11 , TOTVS Application Server 11