× Linguagem de Programação ADVPL

Perguntas Acessar dados aCols num ponto de entrada

Mais
11 anos 9 meses atrás #9975 por saranery
Olá pessoal!

Estou mexendo num ponto de entrada (MT100GRV) para validar alguns campos na tabela de itens de NF de entrada (SD1).Quando tento executar o fonte dá o erro de array out of bounds[0] of [117]. Coloquei uma msginfo para mostrar o conteudo da linha da SD1 que estou tentando editar e os campos que estou tentando buscar tem informação. Daí, fui no configurador para ver como está a configuração dos campos e vi que, os campos que estão marcados como 'Usado' eu consigo acessar, mas se não estiver marcado eu não consigo, dá o erro citado acima, mesmo que tenha informação no campo. Tem como eu driblar esta limitação ou vou ter de mexer em todos os campos no configurador?E se eu mexer nos campos, corre o risco de em uma atualização o status desse campo mudar? Ou será que eu to viajando e não tem nada haver o que eu disse?? :)

Estou tentando acessar o aCols assim:

(...)
for n := 1 to len(aCols)
_cCod := aCols[n][GDFIELDPOS("D1_COD")] //esse campo eu consigo acessar
_vQtde := aCols[n][GDFIELDPOS("D1_QUANT")] //esse campo eu consigo acessar
_nValuni:= aCols[n][GDFIELDPOS("D1_VUNIT")] //esse campo eu consigo acessar
_nIPI := aCols[n][GDFIELDPOS("D1_VALIPI")] //esse dá erro!
_nPIS := aCols[n][GDFIELDGET(GDFIELDPOS("D1_VALIMP5"))] //esse dá erro!
_nCOFINS := aCols[n][GDFIELDGET(GDFIELDPOS("D1_VALIMP6"))] //esse dá erro!
(...)
next

Heeeelp, please!!!

Sara Nery Novaes

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 9 meses atrás #9977 por lalberto
Muda o Nome da Variavel do For Next de n Para nITEM

for nITEM := 1 to len(aCols)
_cCod := aCols[nITEM][GDFIELDPOS("D1_COD")] //esse campo eu consigo acessar
_vQtde := aCols[nITEM][GDFIELDPOS("D1_QUANT")] //esse campo eu consigo acessar
_nValuni:= aCols[nITEM][GDFIELDPOS("D1_VUNIT")] //esse campo eu consigo acessar
_nIPI := aCols[nITEM][GDFIELDPOS("D1_VALIPI")] //esse dá erro!
_nPIS := aCols[nITEM][GDFIELDGET(GDFIELDPOS("D1_VALIMP5"))] //esse dá erro!
_nCOFINS := aCols[nITEM][GDFIELDGET(GDFIELDPOS("D1_VALIMP6"))] //esse dá erro!
next

Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 9 meses atrás #9979 por lalberto
Outra coisa, no acols só irão constar os campos com marcação Browse igual a SIM

por isso este erro:

_nIPI := aCols[nITEM][GDFIELDPOS("D1_VALIPI")] //esse dá erro!
_nPIS := aCols[nITEM][GDFIELDGET(GDFIELDPOS("D1_VALIMP5"))] //esse dá erro!
_nCOFINS := aCols[nITEM][GDFIELDGET(GDFIELDPOS("D1_VALIMP6"))] //esse dá erro!

Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 9 meses atrás #10035 por saranery
Oi Luis, e no caso de campos que o configurador não deixa setar 'browser' igual a sim?
Tem campos que só consigo setar a opção 'obrigatorio', daí não consigo acessá-los pelo aCols.
Teria uma maneira de eu acessar as informações do cabeçalho da nota? Alguns dos campos que não consigo alterar no configurador são relativos a informações que também estão no cabeçalho (D1_TIPO,D1_FORNECE,D1_LOJA)...se conseguisse, já daria para tentar contornar o problema...

valeu pela ajuda!!

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 9 meses atrás #10038 por lalberto
Sara vc precisa destas informações antes da gravação da nota ou após a gravação já resolveria pra vc ?, pois se após a gravação da nota então iremos utilizar outro ponto de entrada.

Me Avisa.

Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 9 meses atrás #10041 por saranery
Após a gravação da nota resolve....

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.136 segundos
Joomla templates by a4joomla