Ir para conteúdo
  • Cadastre-se

dev botao

Bloco X - Redução Z - valor do GT negativo


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

Recommended Posts

Estou tendo problemas ao gerar o arquivo do Bloco X - Redução Z.

O valor do GT está bem alto no meu ECF (R$ 4.533.781.611,57) e isso faz o arquivo da Redução Z gerar um valor "negativo" (0000000-1888372219).

Pesquisando no código-fonte, encontrei esse trecho:

  FGerador.wCampo(tcStr, '', 'VendaBrutaDiaria', 1, 14, 1, IntToStrZero(TruncFix(VendaBrutaDiaria*100),14));
  FGerador.wCampo(tcStr, '', 'GT', 1, 18, 1, IntToStrZero(TruncFix(GT*100), 18));

Utilizo Delphi 2005 e esse trecho está causando o erro da transformação do valor (R$ 4.533.781.611,57) num valor negativo (0000000-1888372219).

Apenas alterei para o trecho abaixo e funcionou:
 

  FGerador.wCampo(tcStr, '', 'VendaBrutaDiaria', 1, 14, 1, VendaBrutaDiaria);
  FGerador.wCampo(tcStr, '', 'GT', 1, 18, 1, GT);

Segue o código-fonte para análise.

ACBrBlocoX_ReducaoZ.pasC:\Users\Leandro\Documents\Priori\Fontes\Projetos\ACBr\Fontes\ACBrDFe\ACBrBlocoX\ACBrBlocoX_ReducaoZ.pas
 

  • Curtir 1

Leandro Gobbo

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...

Bom dia,  

  Estou no momento trabalhando na implementação deste bloco, e devido a esta alteração, o arquivo da Redução Z está sendo rejeitado no validador, devido ao fato de o número da venda bruta diária e do GT estarem fora do formato aceito no schema.

  Depois desta alteração, por exemplo, o valor no XML aparece <GT>4533781611,57</GT>, e ao validar este XML recebo a mensagem "The value '4533781611,57' is invalid according to its datatype 'Numero18Type'". Se utilizo o código anterior a alteração, ficando <GT>000000453378161157</GT> o arquivo é aceito. Basicamente o schema espera que o valor esteja formato com 14 ou 18 caracteres, nos casos do bruto diário e do GT respectivamente.

  Recebo este retorno testando neste site: https://sathomologa.sef.sc.gov.br/tax.NET/sat.dfe.siv.web/validacao.aspx ou tentando enviar no servidor de homologação.

Link para o comentário
Compartilhar em outros sites

17 minutos atrás, Juliomar Marchetti disse:

Retornando ele passa tranquilo?

  Não entendi se sua pergunta é em relação ao valor ficar negativo ou ao processo como um todo. Mas o testando com o mesmo valor do gobbo e utilizando o código antigo não tive problema de ficar negativo.  E o processo como um todo ainda não tenho como confirmar, pois quando envio o arquivo recebo o código de retorno "0" e um código de recibo. Não sei dizer se isso significa que o arquivo foi aceito, pois o retorno "0' é aguardando.

  Complementando mais um pouco, parece ter várias alterações no procedimento de comunicação com o webservice. Agora as função Validar, Enviar e Consultar possuem a mesma chamada para o Estoque e a Redução Z. Mas estou trabalhando nas alterações no momento. Assim que tiver algo mais concreto irei inserir em um outro tópico passando mais informações.

  

 

Link para o comentário
Compartilhar em outros sites

Boa tarde, estávamos com este mesmo problema. O valor negativo esta gerando porque o valor GT esta muito alto e ao multiplicar por 100 acaba estourando o integer da função IntToStrZero

para Ajustar fizemos a seguinte alteração na pcnAuxiliar:

function IntToStrZero(const Numero: int64; const tamanho: integer): string;

Link para o comentário
Compartilhar em outros sites

  • 1 mês depois ...
  • Este tópico foi criado há 2342 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.

The popup will be closed in 10 segundos...