Tempo de leitura: 2 minutos
A função aCopy em ADVPL realiza a cópia de elementos de um array de origem para um outro de destino, considerando que esse de destino já possua a estrutura para receber essa cópia. Ela é uma das funções de manipulação de array em ADVPL.
Sintaxe:
aCopy(aOrigem,aDestino,nInicio,nQtd,nPosDest)
Parâmetro(s):
Retorno:
Exemplo da função aCopy em ADVPL:
#include 'protheus.ch'
#DEFINE CRLF Chr(13)+Chr(10)
/*{Protheus.doc} User Function faCopy
(Essa função tem por finalidade mostrar a função de manipulação de array aCopy em ADVPL/TL++)
@type Function
@author Adilio Costa
@since 01/12/2022
@version 1.0
@?Inscreva-se no Blog ProtheusAdvpl:
https://www.protheusadvpl.com.br
@?Inscreva-se no Canal ProtheusAdvpl:
https://www.youtube.com/protheusadvpl
@?Siga-nos no Instagram:
https://www.instagram.com/protheusadvpl
@?Conheça os Cursos e Formações do ProtheusAdvpl:
https://cursos-e-formacoes-protheusadvpl.gr-site.com/
@Participe de nossas comunidades no WhatsApp:
-Comunidade Protheus Backoffice:https://chat.whatsapp.com/KMUIAjwZ6EZ6eAHsLkPTyb
-Comunidade Protheus-RH:https://chat.whatsapp.com/L5dUyAna6xU4ylG5DUgfOW
-Comunidade Protheus-Programação:https://chat.whatsapp.com/LsD6z0apdqKHlOz67bcaEn
-Comunidade Protheus-Framework:https://chat.whatsapp.com/BzUFpjaSnTC3vtsfa77jmG
*/
//Manipulações de Array - aCopy
User Function faCopy()
Local aOrigem := {1, 2, {11, 22, 33}}, aDestino := {, , {, , }}
Local cMensagem := ""
//+----------------------------------------------------------------------------+
//|Exemplifica o uso da função aCopy |
//+----------------------------------------------------------------------------+
cMensagem += "Dimensao de aOrigem = " + cValToChar(Len(aOrigem)) + CRLF
cMensagem += "aOrigem[1] = " + cValToChar(aOrigem[1]) + CRLF
cMensagem += "aOrigem[2] = " + cValToChar(aOrigem[2]) + CRLF
cMensagem += "aOrigem[3][1] = " + cValToChar(aOrigem[3][1]) + CRLF
cMensagem += "aOrigem[3][2] = " + cValToChar(aOrigem[3][2]) + CRLF
cMensagem += "aOrigem[3][3] = " + cValToChar(aOrigem[3][3]) + CRLF
cMensagem += "Dimensao inicial da Copia = " + cValToChar(Len(aDestino)) + CRLF
ACopy(aOrigem, aDestino)
cMensagem += "Dimensao atual do Copia = " + cValToChar(Len(aDestino)) + CRLF
cMensagem += "Copia[1] = " + cValToChar(aDestino[1]) + CRLF
cMensagem += "Copia[2] = " + cValToChar(aDestino[2]) + CRLF
cMensagem += "Copia[3][1] = " + cValToChar(aDestino[3][1]) + CRLF
cMensagem += "Copia[3][2] = " + cValToChar(aDestino[3][2]) + CRLF
cMensagem += "Copia[3][3] = " + cValToChar(aDestino[3][3])
//+----------------------------------------------------------------------------+
//|Apresenta uma mensagem com os resultados obtidos |
//+----------------------------------------------------------------------------+
MsgInfo(cMensagem, "Função aCopy")
Return
Podemos ver na imagem abaixo que a função aCopy copiou os elementos do array aOrigem para o array aDestino:

É isso aí, finalizamos mais um post aqui no Blog ProtheusAdvpl, caso tenha ficado alguma dúvida deixe seu comentário ou nos envie um e-mail para adiliocosta@protheusadvpl.com.br. Até um próximo post. Grande abraço e fica com Deus.
Link(s) de referência: