- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Impressão de quantidade com 3 casas decimais no DANFE
×
Linguagem de Programação ADVPL
Perguntas Impressão de quantidade com 3 casas decimais no DANFE
- so-bmoraes
- Autor do Tópico
- Desconectado
- Membro Sénior
Menos
Mais
- Postagens: 57
- Obrigados Recebidos: 0
10 anos 7 meses atrás #21775
por so-bmoraes
Impressão de quantidade com 3 casas decimais no DANFE foi criado 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,
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.
- lalberto
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
10 anos 7 meses atrás #21778
por lalberto
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Respondido por lalberto no tópico Impressão de quantidade com 3 casas decimais no DANFE
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])))))
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.
- so-bmoraes
- Autor do Tópico
- Desconectado
- Membro Sénior
Menos
Mais
- Postagens: 57
- Obrigados Recebidos: 0
10 anos 7 meses atrás #21848
por so-bmoraes
Respondido por so-bmoraes no tópico Impressão de quantidade com 3 casas decimais no DANFE
Valeu Luiz Alberto. 100%.
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Impressão de quantidade com 3 casas decimais no DANFE
Tempo para a criação da página:0.138 segundos