O erro está acontecendo nessa linha:
cAttMv := (aCampos[_n,1],.F.,&(aCampos[_n,3]))
Como a variável _n está igual a 0, está sendo feita uma tentativa de acesso ao array aCampos na posição 0. Porém, em AdvPl, o array sempre começa da posição 1.
Faça um teste iniciando a variável _n igual a 1.