Histórico da Página
Sintaxe
Incluir Página |
---|
AEVAL( <array>, <bloco de código> [ , <expressão numérica 1> ] [ , <expressão numérica 2> ] )
Propósito
Executa um bloco de código para cada um dos elementos de um array.
Argumentos
< array >
Define o nome do array cujos elementos serão avaliados.
< bloco de código >
Define o bloco de código que será executado ou avaliado para cada elemento do array.
< expressão numérica1 >
Define o número do primeiro elemento para o qual o bloco de código será executado. Se não for especificado será assumido o primeiro elemento.
< expressão numérica2 >
Define a quantidade de elementos, a partir do elemento definido pela expressão numérica 1, para os quais o bloco de código especificado será executado. Se não for especificado, serão processados todos os elementos do array a partir do primeiro definido.
Utilização
A função AEVAL() avalia um bloco de código para cada elemento de um array, passando o valor do elemento como parâmetro para o bloco de código especificado. O valor resultante do bloco de código é ignorado.
Todos os elementos do array são processados, a menos que sejam especificadas as expressões numéricas 1 ou 2 para selecioná-los.
A função AEVAL(), a priori, não identifica o tipo de dado contido em cada elemento do array, assumindo que o bloco de código especificado saberá tratá-los adequadamente.
Dicas
A função AEVAL() é semelhante à função DBEVAL(), que executa um bloco de código para cada registro de um arquivo de dados.
Exemplos
Neste exemplo, a função AEVAL() é utilizada para apresentar um array contendo os nomes e as datas de atualização de arquivos de dados fornecidos pela função DIRECTORY().
#include “Protheus.ch”
LOCAL aArqs := DIRECTORY(“*.CTE”)
AEVAL(aArqs, { | aDbf | MSGALERT(PADR(aDbf[F_NAME], 10), aDbf(F_DATE] ) } )
RETURN
|