× Linguagem de Programação ADVPL

Perguntas Impressão de quantidade com 3 casas decimais no DANFE

Mais
10 anos 7 meses atrás #21775 por so-bmoraes
Boa tarde pessoal,

Ajustei para 3 as casas decimais do campo quantidade nos documentos de entrada, porém o DANFE ainda está saindo com 2 casas.
Alguém sabe me dizer que ponto devo ajustar para o DANFE sair correto?

Encontrei este trecho no DANFEII.PRW
// Tratamento para quebrar os digitos dos valores
aAux := {}
AADD(aAux, AllTrim(TransForm(nQtd,TM(nQtd,TamSX3("D2_QUANT")[1],TamSX3("D2_QUANT")[2]))))
AADD(aAux, AllTrim(TransForm(nVUnit,TM(nVUnit,TamSX3("D2_PRCVEN")[1],TamSX3("D2_PRCVEN")[2]))))
AADD(aAux, AllTrim(TransForm(nVTotal,TM(nVTotal,TamSX3("D2_TOTAL")[1],TamSX3("D2_TOTAL")[2]))))
AADD(aAux, AllTrim(TransForm(nBaseICM,TM(nBaseICM,TamSX3("D2_BASEICM")[1],TamSX3("D2_BASEICM")[2]))))
AADD(aAux, AllTrim(TransForm(nValICM,TM(nValICM,TamSX3("D2_VALICM")[1],TamSX3("D2_VALICM")[2]))))
AADD(aAux, AllTrim(TransForm(nValIPI,TM(nValIPI,TamSX3("D2_VALIPI")[1],TamSX3("D2_BASEIPI")[2]))))

Porém não tem nenhum trecho que trate se for de entrada (D1_QUANT).
Será que tenho que testar se é documento de entrada ou saída (uma vez que os de saída continuam com 2 decimais)? Se for, qual variável me indica o tipo do documento?

Obrigada,

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 7 meses atrás #21778 por lalberto
Tenta assim

MV_PAR04 = 2 é saida
MV_PAR04 = 1 é entrada

AADD(aAux, AllTrim(TransForm(nQtd,TM(nQtd,Iif(MV_PAR04==2,TamSX3("D2_QUANT")[1],TamSX3("D1_QUANT")[1]),Iif(MV_PAR04==2,TamSX3("D2_QUANT")[2],TamSX3("D1_QUANT")[2])))))

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
10 anos 7 meses atrás #21848 por so-bmoraes
Valeu Luiz Alberto. 100%.

Por favor Acessar ou Registrar para participar da conversa.

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