Converse com a gente ali na caixa ao lado 👉
Introdução
A linguagem ADVPL é utilizada no sistema Protheus para desenvolver aplicações personalizadas. Uma das funções importantes nessa linguagem é a capacidade de manipular e acessar dados em arrays e matrizes. Neste artigo, vamos explorar a função fGetColValue que é usada para obter o valor de uma coluna específica em uma matriz.
Para que serve esta função?
A função fGetColValue serve para encontrar o valor de uma coluna específica em uma matriz, com base no nome do campo. Isso é útil quando você precisa acessar dados em uma matriz, mas não conhece a posição exata da coluna que deseja acessar.
Entendendo a Lógica
A função fGetColValue recebe um parâmetro cCampo, que é o nome do campo cujo valor deseja-se obter. Aqui está o código da função:
1234567891011121314 Static Function fGetColValue(cCampo)Local nPos := 0Local xVal := ""// procura a posição do campo no cabeçalhonPos := aScan(aHeader, {|x| AllTrim(x[2]) == AllTrim(cCampo)})If nPos > 0xVal := aCols[n][nPos]EndIfReturn xVal
A lógica da função é a seguinte:
– Ela utiliza a função aScan para procurar a posição do campo cCampo no array aHeader. O array aHeader parece conter os nomes dos campos, e a função aScan retorna a posição do campo se ele for encontrado.
– Se o campo for encontrado (ou seja, nPos > 0), a função atribui o valor da coluna correspondente à variável xVal. O valor é obtido do array aCols, que parece conter os valores das colunas. A posição da coluna é obtida do array aHeader.
– Finalmente, a função retorna o valor da coluna.
Tabelas e Parâmetros Utilizados
Embora o código não faça referência explícita a tabelas ou parâmetros específicos do sistema Protheus, como a tabela **SA1** ou o parâmetro **MV_NFCDESC**, é importante notar que a função fGetColValue pode ser utilizada em conjunto com esses elementos para obter dados específicos. Por exemplo, se você estiver trabalhando com a tabela **SA1** e quiser obter o valor do campo **A1_COD**, você poderia passar o nome do campo como parâmetro para a função fGetColValue.
Conclusão
A função fGetColValue é uma ferramenta útil para obter o valor de uma coluna específica em uma matriz, com base no nome do campo. Ela é flexível e pode ser utilizada em conjunto com diferentes tabelas e parâmetros do sistema Protheus. Compreender como essa função opera pode ajudar os desenvolvedores a criar aplicações mais eficientes e personalizadas para atender às necessidades específicas dos usuários do sistema Protheus.
Fernando Bueno
Atuando desde 2005 no mercado de tecnologia, desenvolvendo e implantando e sistemas gerenciais, sistemas e sites web e ecommerce.
Siga-me no Linked In


