aDel

Tempo de leitura: 2 minutos

A função aDel é uma das funções de manipulações de array em ADVPL. Essa função permite a exclusão de um elemento do array especificado e ao ser efetuado essa exclusão todos os demais elementos são reorganizados de forma que a última posição do array passará a ser nula(nil).

Sintaxe:

aDel( <aArray>, <nPos> )

 

Parâmetro(s):

 

Retorno:

 

Observações:

  • O último elemento pode ser removido do array, se conveniente, através da função aSize., onde você poderá subtrair de  1 o tamanho do array:aSize(aArray,Len(aArray)-1).
  • Se nPos for maior do que o tamanho de aArray ou menor que 0, será retornado um erro ADVPL com a mensagem: “Array index out of bounds on adel”.

No exemplo abaixo em ADVPL podemos ver como utilizar a função aDel para excluir o elemento do array:

#include 'protheus.ch'
#DEFINE CRLF Chr(13)+Chr(10)

/*{Protheus.doc} User Function faDel
    (Essa função tem por finalidade mostrar a função de Manipulação de Array aDel em ADVPL)
    @type  Function
    @author Adilio Costa
    @since 02/05/2020
    @version 1.0
    @site https://www.protheusadvpl.com.br
    @canal https://www.youtube.com/protheusadvpl
    @instagram https://www.instagram.com/protheusadvpl
    @Portal ProtheusAdvpl:https://hotmart.com/pt-br/marketplace/produtos/portal-protheusadvpl/O10336806O
    @Post:aDel
*/

//Manipulações de Array - aDel
User Function faDel()
	Local aArray := {1,2,3,4,5}
	Local nPos := 2
	Local cMsg := ""
	Local nI


	//+----------------------------------------------------------------------------+
	//|Exemplifica o uso da função aDel                                            |
	//+----------------------------------------------------------------------------+
	cMsg += "Dimensão de aArray = " + cValToChar( Len( aArray ) ) + CRLF
	For nI := 1 To Len(aArray)
		cMsg += "aArray["+cValToChar(nI)+"]:"+cValToChar(aArray[nI]) + CRLF
	Next nI

	//Função aDel excluindo o elemento da posição passado por nPos
	aDel(aArray,nPos)

	cMsg += "aArray com o elemento excluído:" + CRLF
	For nI := 1 To Len(aArray)
		cMsg += "aArray["+cValToChar(nI)+"]:"+cValToChar(aArray[nI]) + CRLF
	Next nI

	//Função a size removendo o elemento nulo do array
	aSize(aArray, Len(aArray)-1)

	//+----------------------------------------------------------------------------+
	//|Apresenta uma mensagem com os resultados obtidos                            |
	//+----------------------------------------------------------------------------+
	MsgInfo(cMsg, "Função aDel")


Return

 

Podemos ver na imagem abaixo que na última posição(posição 5) do array aArray contém o valor nil após a exclusão do elemento do array com a função aDel.

Função aDel

 

É isso aí, finalizamos aqui o post sobre a função aDel em ADVPL, caso tenha ficado alguma dúvida deixe seu comentário ou nos envie um email para adiliocosta@protheusadvpl.com.br. Até um próximo post. Grande abraço e fica com Deus.

Link(s) de referência:

Receba as últimas atualizações do ProtheusAdvpl
Deixe seu melhor email
Nós respeitamos sua privacidade.