Histórico da Página
...
Portuguese | |||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Função: AScanPercorre um array procurando por um valor especificado. Pode ser especificado um valor a ser buscado, ou pode ser informada uma condição de busca através de um bloco de código. AScan ( < aDestino>, < ProcuraExp>, [ nInicio], [ nCont] ) --> nRet
nRet
Em uma busca utilizando um array de dimensão simples, a expressão de busca <ProcuraExp> pode ser do tipo "C" Caractere, "N" Numérico, "D" Data ou "L" Lógico. O array pode conter elementos de tipos variados, as comparações somente serão realizadas quando o elemento do array em questão for do mesmo tipo do conteúdo informado para busca. Quando realizada a busca por uma string, a determinação da igualdade entre a string informada para busca e a string do elemento do array está sujeita ao estado da definição SET EXACT do Advpl, por padrão desligada -- veja comportamento do operador "=" ( igualdade simples) entre Strings do Advpl. Caso a busca em questão seja feita em um array multi-dimensional ( array de array(s) ) , ou a condição de busca seja mais complexa ou específica, até mesmo uma condição composta, podemos especificar em <ProcuraExp> um bloco de código, que receberá como parâmetro um elemento por vez do array aDestino, a partir da posição inicial de busca. O code-block deve retornar um valor lógico .T. ( Verdadeiro) caso o elemento em questão seja o elemento desejado, e a condição de busca seja satisfeita, e quando isto acontecer, a função ascan() retornará o número do elemento do array aDestino que foi informado ao bloco de código que atendeu a condição de busca. Caso o bloco de código retorne .F. ( Falso ), indicando que o elemento informado não atende a condição de busca, será fornecido o proximo elemento do array e o bloco de código é avaliado novamente. A operação de busca é encerrada até que todos os elementos compreendidos pela parametrização nInicio / nCont sejam vasculhados. Se nenhuma chamada do bloco de código retornar .T., a função Ascan() retornará 0 , indicando que nenhum elemento pesquisado satisfez a condição de busca. #DEFINE CRLF Chr(13)+Chr(10) Exemplo da função AScan Microsiga Protheus 8.11 , Protheus 10
|
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas