Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 3896 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

boa tarde,

 

 

estou com problema na geracao do arquivo R5 ...

 

 

no arquivo esta saindo a quantidade = 0000000

 

porem estou passando a quanitdade 0,001        QTDE_DECIMAL = 3

 

vi que na funcao LFill  (WriteRegistroR05)  ocorre a linha

 

Result := LFill(Trunc(Value * intP), Size, Nulo, Caracter);

 

              entrando nesta funcao (F7)...o valor do value do parametro  (0,001 * 1000)  com o trunc esta zerado...

 

 

alguem sabe o pq?

 

obrigado

 

Postado

fiz uns teste....   o problema pelo q vi eh no tipo da variavel   Extended ...

 

ela nao guarda o valor 1 em (0,001 * 1000)  deve guardar tipo ...  0,999999999999999..... entao no trunc zera....

 

se alterar o tipo para currency ou double funciona....

 

para ver esta dif pode ser feito  

var1 : extended

var2 : currency

 

e um showmessage   var1 - var2   ..

 

pra mim deu   

---------------------------
Project3
---------------------------
-2,08581863261371E-20
---------------------------
OK  
---------------------------
 

  • Consultores
Postado

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
  • Este tópico foi criado há 3896 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.