Ir para conteúdo
  • Cadastre-se

dev botao

DACTE CTe com CST60


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

Recommended Posts

Olá senhores, bom dia.

Estamos homologando nosso sistema com o TRUNK2 e me deparei com um problema quanto a impressão da DACTE com CST60.

No manual de impressão da DACTE (https://www.fazenda.sp.gov.br/cte/Manual_DACTE_v1.01.pdf) nas páginas 15 e 16 é solicitada a impressão das seguintes TAGs por Campo:

  • Base de Cálculo....: vBC
  • Aliq. ICMS.........: pICMS
  • Valor ICMS.........: vICMS
  • % Red.BC.Calc......: pRedBC
  • ICMS ST............: vICMSSTRet

No fonte ACBrCTeDACTEFR.pas que é onde os DataSets são populados para a impressão da DACTE, a partir da linha 1440 temos:

cst60:
        begin
          FieldByName('TXTSITTRIB').AsString := CSTICMSToStrTagPosText(cst60);
          FieldByName('vBC').AsFloat         := FCTe.Imp.ICMS.ICMS60.vBCSTRet;
          FieldByName('pICMS').AsFloat       := FCTe.Imp.ICMS.ICMS60.pICMSSTRet;
          FieldByName('vICMS').AsFloat       := FCTe.Imp.ICMS.ICMS60.vICMSSTRet;
          FieldByName('vCredito').AsFloat    := FCTe.Imp.ICMS.ICMS60.vCred;
        end;

Podemos ver que para a impressão, os campos vBC, pICMS e vICMS são substituídos respectivamente por vBCSTRet, pICMSSTRet e vICMSSTRet e além disso o campo ICMSST não é preenchido.

Como esta alteração foi solicitada por um contador de um cliente e para manter compatibilidade com minha versão atual, alterei este fragmento de código para o código abaixo:

cst60:
        begin
          FieldByName('TXTSITTRIB').AsString := CSTICMSToStrTagPosText(cst60);
          //FieldByName('vBC').AsFloat         := FCTe.Imp.ICMS.ICMS60.vBCSTRet;
          //FieldByName('pICMS').AsFloat       := FCTe.Imp.ICMS.ICMS60.pICMSSTRet;
          //FieldByName('vICMS').AsFloat       := FCTe.Imp.ICMS.ICMS60.vICMSSTRet;
          //FieldByName('vCredito').AsFloat    := FCTe.Imp.ICMS.ICMS60.vCred;
          FieldByName('VICMSST').AsFloat     := FCTe.Imp.ICMS.ICMS60.vICMSSTRet;
        end;

Não gostaria de cometer o mesmo erro de outrora e fazer com que meus fontes fiquem diferentes dos do ACBr dificultando assim sua atualização, gostaria de colocar em pauta essa questão com vocês que, sem sombra de dúvidas, entendem muito mais do assunto do que eu.

Segue em anexo o fonte completo alterado.

ACBrCTeDACTEFR.pas

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Rafael,

Nesse mesmo manual na página 2 diz: Exclusão do campo ICMS ST do DACTE.

Sendo assim não deve-se colocar mais essa informação no DACTE, vide os modelos constantes nas últimas páginas do manual.

Infelizmente a tabela que você faz referencia item 1.25 ainda aparece o campo ICMS ST na página 16.

Apensar de constar na tabela o campo ICMS ST, no controle de versão da página 2 diz que esse campo não existe mais e nos modelos também não tem esse campo, sendo assim concluo que essa alteração não procede.

E mostre ao seu cliente esse manual, o que esta escrito na página 2 e os modelos.

Ele vai descobrir que o contador dele esta precisando ler um pouco mais.

 

 

  • Curtir 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 2975 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.