Histórico da Página
...
Portuguese | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Função: EVal
|
Nome | Tipo | Descrição | Obrigatório | Referência |
bBloco | Bloco de código | Indica o bloco de código que será avaliado. | X | |
xVariavel | Qualquer | Indica o argumento que será avaliado no bloco de código. |
- xRetorno(qualquer)
- Retorna o valor da última expressão do bloco de código.
// Exemplo 1#DEFINE CRLF Chr(13)+Chr(10)#DEFINE TAB Chr(09)User Function Exemplo()Local bBloco := {|nArg| nArg + 1 }Local cMensagem := ""Local nCount := 0//+----------------------------------------------------------------------------+//|Exemplifica o uso da função Eval |//+----------------------------------------------------------------------------+ cMensagem += "Antes de avaliar o bloco de código: " + CRLF cMensagem += TAB + "nCount = " + cValToChar(nCount) + CRLF nCount := Eval(bBloco, nCount) cMensagem += "Depois de avaliar o bloco de código: " + CRLF cMensagem += TAB + "nCount = " + cValToChar(nCount)//+----------------------------------------------------------------------------+//|Apresenta uma mensagem com os resultados obtidos |//+----------------------------------------------------------------------------+Return MsgInfo(cMensagem, "Eval - Exemplo")////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// Exemplo 2//Este exemplo cria um bloco de código que incrementa um número e depois o avalia:bBloco := { |nArg| nArg + 1 }? EVAL(bBloco, 1) // Resulta: 2////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// Exemplo 3//Este exemplo demonstra como um bloco de código pode ser compilado em tempo de execuçao utilizando-se o operador macro (&):bBloco := &("{ |nArg| nArg + 1 }")? EVAL(bBlock, 1) // Avalia o bloco
Exemplo da função EVal()
Microsiga Protheus 8.11 , Protheus 10 , TOTVS Application Server 10 , ByYou Application Server
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas