Copiar campo especifico de uma linha

Boa tarde senhores(as)

Estou iniciando minha jornada no ADVPL e algumas coisas surgem como dificuldade.

Uma delas é !

Como copiar a informação de um campo especifico em uma linha e replicar está informação na próxima linha sem a necessidade de digitar novamente

Fiz um pequeno trecho dentro do ponto de entrada MT110LOK(), Porém não consigo faze-lo funcionar conforme a minha necessidade


    IF alltrim(funName()) == "MATA110"
        FOR nP := 1 to len(acols)
            cCCusto        := acols[nP][GDFieldPos("C1_CC")]
            IF nP >= 2
                M->C1_CC    := cCCusto
            ENDIF
        NEXT    
    ENDIF

A variável cCCusto, lê normalmente o valor do campo, porém o problema surge no momento de atribuir este valor para a próxima linha.

Alguém poderia me ajudar?

Tente mudar a informação direto no acols invés de mudar a informação que está na memoria

Exemplo...

IF alltrim(funName()) == "MATA110" FOR nP := 1 to len(acols) If nP = 2 cCCusto := acols[nP][GDFieldPos("C1_CC")] ElseIf nP >= 2 acols[nP][GDFieldPos("C1_CC")] := cCCusto ENDIF NEXT ENDIF

Bom dia Lucas obrigado, porém não deu certo …
A variável até é lida, porém não altera o valor da linha C1_CC

Lucas,

Deu certo muito obrigado


IF alltrim(funName()) == "MATA110" 
        FOR nP := 1 to len(acols) 
            IF nP == 1 
                cCCusto := acols[nP][GDFieldPos("C1_CC")]  
            ELSEIF nP > 1 
                acols[nP][GDFieldPos("C1_CC")] := cCCusto 
            ENDIF 
        NEXT 
    ENDIF