Ir para conteúdo
  • Cadastre-se

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

Recommended Posts

Postado

Gostaria de saber como proceder para valores de aliquotas de icms com fator decimal acima de zero ex.: 5,6. pois apresenta erro ao gerar sped fiscal, haja visto que foi modificado de: LFill( ALIQ_ICMS, 6, 2 ) ) para: VLFill( ALIQ_ICMS, 0, 2 )

 
strLinha := LFill('0200') +
                      LFill( COD_ITEM ) +
                      LFill( DESCR_ITEM ) +
                      LFill( COD_BARRA ) +
                      LFill( COD_ANT_ITEM ) +
                      LFill( UNID_INV ) +
                      LFill( strTIPO_ITEM ) +
                      LFill( COD_NCM ) +
                      LFill( EX_IPI ) +
                      LFill( COD_GEN ) +
                      LFill( COD_LST ) +
                      VLFill( ALIQ_ICMS, 0, 2 );    <------------------------------------

 

fiz o teste no Sped piscofins e tudo ok. verifiquei e ainda está LFill( ALIQ_ICMS, 6, 2 ) ).

 

estou passando o valor como --> float

  • Moderadores
Postado

Bom dia

Percebi que é seu segundo post e é relativamente novo no fórum!

 

Seja bem vindo ao mesmo!

Gostaria de convidar a ler as regras do fórum!

segue o link

 

Se está informando algum problema no fonte do sistema, anexe a unit alterada ao post

que faremos a validação e subimos ao svn!

 

também peço para que aguarde a resposta, pois é um fórum colaborativo e visto que nem 24 horas se passou do seu post pode ser considerado spam e ser bloqueado seus posts !

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

  • 2 semanas depois ...
Postado

Boa Tarde,

também tive o mesmo caso, passei uma ALIQ_ICMS com decimal ( Ex. 2,42 ).
fui depurando e o erro ocorre na função IsNumber(2,42), que retorna false, ocorrendo o erro na geração do sped.


comentei as linhas que testam o IsNumber, e gerou correto o arquivo do SPED.

function TACBrTXTClass.VLFill(Value: Variant;
                             Size: Integer;
                             Decimal: Integer;
                             Caracter: Char;
                             Mascara: String): String;
var
intFor, intP: Integer;
strCurMascara: string;
begin
  strCurMascara := FCurMascara;
  // Se recebeu uma mascara como parametro substitue a principal
  if Mascara <> '' then
     strCurMascara := Mascara;

  // Se o parametro Nulo = true e Value = 0, será retornado '|'
  if (Value = Null) or (Value=Unassigned) then
  begin
     Result := FDelimitador;
     Exit;
  end;
  // Checa se é um valor numérico
  //----------------->> if not IsNumber(Value) then
  //----------------->>   raise Exception.Create( Format('[%a] Não é um valor numérico!', [Value]) );

  intP := 1;
  for intFor := 1 to Decimal do
  begin
     intP := intP * 10;
  end;

  if (strCurMascara <> '#') and (strCurMascara <> '') then
     Result := FDelimitador + FormatCurr(strCurMascara, Value)
  else
     Result := LFill(Trunc(Value * intP), Size, False, Caracter);
end;
 

  • Consultores
Postado

É possível reproduzir esse erro no programa de Exemplo?

Quais são as alterações a serem feitas?

  • Curtir 1

[]'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.
Postado

boa tarde,

no programa de exemplo, é só colocar um percentual de icms com decimal que ocorre erro na geração do arquivo SPED.


exemplo:

with Registro0200New do
      begin
        COD_ITEM := '000001';
        DESCR_ITEM := 'PRODUTO 1';
        COD_BARRA := '';
        UNID_INV := 'UN';
        TIPO_ITEM := tiMercadoriaRevenda;
        COD_NCM := '30049026';
        COD_GEN := '30';
        ALIQ_ICMS := 2.42;
      end;

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

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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.