Histórico da Página
Composition Setup |
---|
import.css=/download/attachments/327912/newLayout.css |
Portuguese | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Função: VarSetGet
|
Bloco de código | ||
---|---|---|
| ||
VarSetGet( < cVariavel >, < bBloco >, [ lApenasUpdate ] )
|
Parâmetros
Parâmetros/ElementosNome | 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 |
- cRet(caracter)
- Retorna um caractere que identifica o tipo de dado informado.
Tipos de dados válidos
Tipo de dado | ValType() |
Array | A |
Bloco de código | B |
Caractere | C |
Data | D |
Lógico | L |
Numérico | N |
Objeto | O |
Não definido | U |
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
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
User Function teste()
local bBloco := {|x| ConOut("Passou pelo bloco"), x}
local nVar := 0
VarSetGet("nVar", bBloco, .T.)
nVar := 2
ClearVarSetGet("nVar")
Return
|
User Function Exemplo()Local bBloco := {||}Local cCaractere := "", cMensagem := ""//+----------------------------------------------------------------------------+//|Exemplifica o uso da função VarSetGet |//+----------------------------------------------------------------------------+ bBloco := {| u | IIf(PCount()==0, cMensagem, cMensagem := u)} VarSetGet("cCaractere", bBloco) cCaractere := "Mensagem a ser apresentada"//+----------------------------------------------------------------------------+//|Apresenta uma mensagem com os resultados obtidos |//+----------------------------------------------------------------------------+Return MsgInfo(cMensagem, "Exemplo do VarSetGet")

Abrangência
Microsiga Protheus 8.11 , Protheus 10 , TOTVS Application Server 10, Protheus 11 , TOTVS Application Server 11