Ir para conteúdo
  • Cadastre-se

dev botao

Erro Xml De Retorno Empresa Optante Pelo Simples Nacional


Ver Solução Respondido por Daniel Simoes,
  • Este tópico foi criado há 2668 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Na emissão de um CF-e de um empresa optante pelo simples nacional está ocorrendo a seguinte inconsistência:

 

Estou atribuindo para o parâmetro "Config.emit_cRegTrib" o valor "RTSimplesNacional", na função EnviarDadosVenda, o xml gerado para envio ao SAT está correto, mas quando pego o xml através do parâmetro "CFe.AsXMLString", o acbr está gerando novamente os dados mas com o parâmetro "Config.emit_cRegTrib" com valor "RTRegimeNormal".

 

O problema é que quando eu salvo o xml retornado está com o cálculo do ICMS baseado em uma empresa de regime normal e não em um simples nacional.

 

O xml enviado para o SAT está certo, o erro ocorre somente ao utilizar o parâmetro "CFe.AsXMLString". Quando defino para o acbr salvar o xml gerado na função "function TACBrSAT.EnviarDadosVenda(dadosVenda : AnsiString) : String ;" está salvando corretamente, pois nesta função o xml salvo é o retornado pelo SAT. Está até setando no parâmetro CFe.AsXMLString o retorno, mas quanto tento utilizar está carregando novamente os dados.

 

 

Exemplo do código:

 

...

dmCupom.ACBrSAT.EnviarDadosVenda;

 

...

(* Neste ponto está gerando o xml novamente como RTRegimeNormal *)

qryLancamentoVenda.ParamByName('DS_ARQUIVOXML').AsAnsiString := dmCupom.ACBrSAT.CFe.AsXMLString;

...

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Use o Debug e insira um BkPoint na linha abaixo de pcnCFew.pas...  verifique o valor da variável:  "CFe.Emit.cRegTrib", ela deve ser igual a: RTSimplesNacional,  que traduzido pela função "RegTribToStr", deverá ser igual a "1"

 

  if not FApenasTagsAplicacao then
     Gerador.wCampo(tcInt, 'C14', 'cRegTrib', 01, 01, 1, RegTribToStr(CFe.Emit.cRegTrib), DSC_REGTRIB);
Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Julio,

 

Não consegui encontrar qualquer sinal de bug nessas rotinas.. faça um teste rápido na sua aplicação, a fim de testar os métodos GetAsXMLString e SetXMLString

procedure TForm1.Button1Click(Sender: TObject);
begin
  ACBrSAT1.CFe.LoadFromFile('CFe-chave_do_documento_recebido_diretamente_do_SAT-rec.xml');
  ACBrSAT1.CFe.SaveToFile('CFe-chave_do_documento-new.xml');
end;

Compare os dois XMLs usando WinMerge ou alguma outra ferramenta de DIFF
 

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Link para o comentário
Compartilhar em outros sites

O que está ocorrendo é a seguinte situação: 

 

Meu cliente é uma empresa optante pelo simples nacional, quando estou gerando o CF-e estou passando como parâmetro em cRegTrib RTSimplesNacional, o acbr está gerando a tributação do ICMS conforme a regra do simples nacional, até ai está tudo certo. Mas após enviar o CF-e, ao utilizar a propriedade AsXMLString para gerar o xml, no parâmetro cRegTrib está RTRegimeNormal.

 

Isso ocorre porque no cadastro de meu cliente no SINTEGRA o regime de apuração  está como "NORMAL" e o acbr está usando o retorno do SAT para gerar novamente os tributos ficando divergente o xml emitido ao SAT do retornado.

 

Criei um propriedade que armazena exatamente o xml recebido pelo SAT, não gerando novamente desta forma o retorno fica correto.

 

 

Obs: Meu cliente já fez a alteração do regime para Simples Nacional e essa alteração vai ser retroativa a data de abertura da empresa, então ele tem que emitir o CF-e como Simples Nacional.

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Não compreendi...

 

Se o SAT retorna o XML como "NORMAL", mesmo com você criando o XML como "SIMPLES", então provavelmente o seu cliente ainda não deveria emitir Notas como Simples Nacional...

 

O regime tributário afeta diretamente a geração do XML... conforme as regras de do Manual de Especificação do SAT...

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Link para o comentário
Compartilhar em outros sites

Sim é exatamente isso, mas acontece que meu cliente entrou com uma solicitação de alteração junto a receita para o regime de apuração Simples Nacional, ele tem a autorização para emitir o CF-e como Simples mas no seu cadastro ainda consta regime Normal.

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Curiosidade: Será que o XML retornado pelo SAT passaria por uma validação de XSD ?

 

Pois quando muda o Regime Tributário, muda muita das regras do XML...

 

Talvez o ACBr possa gerar o XML correto novamente, fazendo algo com:

procedure TForm1.Button1Click(Sender: TObject);
begin
  ACBrSAT1.CFe.LoadFromFile('CFe-chave_do_documento_recebido_diretamente_do_SAT-rec.xml');
  ACBrSAT1.CFe. Emit.cRegTribISSQN  := ACBrSAT1.Config.emit_cRegTribISSQN;
  ACBrSAT1.CFe.SaveToFile('CFe-chave_do_documento-new.xml');
end;
Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Link para o comentário
Compartilhar em outros sites

Acho que não faz a validação no retorno, porque quando mando um registro com CST do pis e cofins com 49 e CSOSN 102, 300, 500, 900 que são os dados que devem ser enviados no caso de Empresa Optante pelo simples e passo na tag cRegTrib, RTRegimeNormal o SAT retorna inconsistência que a empresa não é optante pelo simples, e o mesmo ocorre ao inverso se a empresa for simples e não mandar o CST 49 para o PIS e COFINS por exemplo.

Link para o comentário
Compartilhar em outros sites

  • Fundadores

O fato do XML do SAT ser assinado, pode provar que a origem é dele...

 

Porém, acho que você poderá ter problemas com esse XML gerado pelo SAT/Fisco, em Sistemas que forem usá-lo para integração (escrituração) ou Importação de dados....

 

Acho que seria prudente consultar o SEFAZ/SP sobre esse XML inconsistente...

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Link para o comentário
Compartilhar em outros sites

O que ocorre é que a empresa pode estar autorizada a operar como Simples Nacional, e sua situação cadastral junto a secretaria da fazenda pode ainda não estar regularizada. Nesta situação eu deveria salvar o xml indicando no campo cRegTrib como Regime normal e a tributação deve ser feita como Simples Nacional.

 

Se eu utilizar a opção de salvar o xml através do acbr ( SalvarCFes = true ), o xml gerado fica correto. No campo cRegTrib fica indicando regime normal e nas tags de tributação do ICMS, PIS e COFINS traz a tributação referente ao simples nacional, agora se eu utilizar a opção CFe.AsXMLString, está gerando novamente o xml e alterando a tags referente a tributação, ficando diferente o xml salvo utilizando a opção CFe.AsXMLString do retornado pelo SAT.

 

Eu preciso que a opção CFe.AsXMLString retorne o xml gerado pelo SAT e não o gere novamente.

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Você não precisa usar: CFe.AsXMLString.... Use o Stream do arquivo original...

 

Veja o próprio nome do método diz para ele serve... CFe.AsXMLString: transforma um Objeto CFe, em arquivo XML...

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Link para o comentário
Compartilhar em outros sites

  • Fundadores
  • Solution

Ok, eu me rendo... da maneira como estava implementado, é quase impossível obter o XML original do SAT, através do componente...

 

Pensado nisso, e em evitar as repetitivas chamadas de geração do XML, apliquei as seguintes modificações nos fontes (já no SVN)

 

-- ACBrSAT --  (por: DSA) [*] Método:   CFe/CFeCanc.GetXMLString(ApenasTagsAplicacao: Boolean): AnsiString;
    renomeado CFe/CFeCanc.GerarXML(ApenasTagsAplicacao: Boolean): AnsiString;
    para melhor compreensão do uso do mesmo.
[+] Adicionada a propriedade:  CFe/CFeCanc.XMLOriginal: AnsiString (readonly)
    que contem o XML retornado pelo SAT ou atribuido a CFe/CFeCanc.AsXMLString [*] GetXMLString e SetXMLString modificados para fazer uso do campo XMLOriginal,
    previamente atribuido ao componente, evitando chamadas desnecessárias a
    rotina de geração de XML [*] Método Cfe.SaveToFile modificado para sempre salvar o valor de
    AsXMLString (que leva em consideração o conteudo de XMLOriginal)

 

  • Curtir 1
Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Link para o comentário
Compartilhar em outros sites

  • 3 meses depois ...

estou com problemas para enviar o XMl do SAT..   aparece no LOG =  - 18:45:11:988 - NumeroSessao: 846536 - Resposta:846536|06010|1999|Erro de valida��o do conte�do||

poderia postar um XML valido apenas para eu comparar para ver o que estou fazendo de errado?

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Use o InteliSAT da Tanca... ele analisa o seu XML e aponta por problemas

http://tanca.com.br/drivers.php?cat=24&sub=43

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Link para o comentário
Compartilhar em outros sites

  • 1 ano depois...

Pessoal, bom dia.

Peço desculpas por reabrir esta discussão, mas eu estou passando pelo mesmo problema com minha aplicação. A linguagem usada é Visual Basic, e uso o ACBrMonitorPlus.

Meu cliente é optante pelo simples nacional e eu gero o XML como tal. Porém, quando eu obtenho o XML de retorno, assinado, a tag do ICMS vem como uma empresa de regime normal.

Segue anexo os dois XML's, xml059200 ENVIO.xml é o arquivo gerado pela minha aplicação; ao passo que o AD35170111111111111111591234567890002514894912.xml é o retornado pelo ACBr.

Vejam que ele trocou o regime tributário do ICMS apenas. Observei que as tags do PIS e COFINS estão corretos.

Desde já, agradeço por qualquer ajuda.

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores
11 minutos atrás, dndsilveira disse:

Pessoal, bom dia.

Peço desculpas por reabrir esta discussão, mas eu estou passando pelo mesmo problema com minha aplicação. A linguagem usada é Visual Basic, e uso o ACBrMonitorPlus.

Meu cliente é optante pelo simples nacional e eu gero o XML como tal. Porém, quando eu obtenho o XML de retorno, assinado, a tag do ICMS vem como uma empresa de regime normal.

Segue anexo os dois XML's, xml059200 ENVIO.xml é o arquivo gerado pela minha aplicação; ao passo que o AD35170111111111111111591234567890002514894912.xml é o retornado pelo ACBr.

Vejam que ele trocou o regime tributário do ICMS apenas. Observei que as tags do PIS e COFINS estão corretos.

Desde já, agradeço por qualquer ajuda.

 

O campo cRegTrib é informado pelo SAT. http://www.fazenda.sp.gov.br/sat/downloads/Especificacao_SAT_v_ER_2_20_06.pdf

djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.lambretinha.com.br
Link para o comentário
Compartilhar em outros sites

André, bom dia.

Primeiramente, obrigado por responder... tem razão, essa tag é de responsabilidade do SAT. O teste que fiz foi utilizando o emulador do Sefaz, e eu não encontrei nele nenhum lugar onde configurar o regime tributário da empresa.

Porém, eu anexei o arquivo xml35170113394304000122590001360530825832427651.xml que é o arquivo gerado em produção lá no cliente. Observe que a tag cRegTrib está preenchida como 1, eu conferi o CNPJ do cliente no Sintegra e o mesmo encontra-se como Simples Nacional no regime tributário. Mas os sintomas são os mesmos, veja que as tags do PIS e do COFINS estão como Simples Nacional.

Eu tentei também setar o regime tributário no ACBr, mas o problema persiste.

Obrigado mais uma vez.

Link para o comentário
Compartilhar em outros sites

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