Jump to content

dev botao

TipoTributacaoRPS


Go to solution Solved by Italo Giurizzato Junior,
  • Este tópico foi criado há 340 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Posted

Prezados boa tarde,

Estou precisando de ajuda neste campo do Aquivo.ini: TipoTributacaoRPS

Preciso saber os valores e as descrições deste campo.

Encontrei neste link: https://acbr.sourceforge.io/ACBrLib/Particularidades1.html mas não coincide com os seguintes valores :

['T','F', 'A', 'B', 'M', 'N', 'X', 'V', 'P'],
[ttTribnoMun, ttTribforaMun, ttTribnoMunIsento, ttTribforaMunIsento, ttTribnoMunImune, ttTribforaMunImune, ttTribnoMunSuspensa, ttTribforaMunSuspensa, ttExpServicos]);

(Preciso saber tambem a descricao de cada ENUM acima) (Não sei se esses valores acima tem haver com o campo TipoTributaçãoRPS)

Não encontrei nada em relação ao preenchimento deste campo nas documentações.

Segue link da documentação:
https://acbr.sourceforge.io/ACBrLib/ModeloNFSeINI-ProvedoresLayoutAB.html

  • Consultores
Posted

Bom dia!

Por favor, qual é a cidade que está tentando realizar a emissão?

Consultor SAC ACBr

Diego Folieni
Ajude o Projeto ACBr crescer - Assine o SAC

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Consultores
Posted

Bom dia @dant,

Checando o código fonte do componente, mas precisamente a unit ACBrNFSeXProviderBase temos a definição de duas funções que se utilizam esses enumeradores.

function TACBrNFSeXProvider.TipoTributacaoRPSToStr(const t: TTipoTributacaoRPS): string;
begin
  Result := EnumeradoToStr(t,
                           ['T', 'F', 'A', 'B', 'M', 'N', 'X', 'V', 'P'],
                           [ttTribnoMun, ttTribforaMun,
                            ttTribnoMunIsento, ttTribforaMunIsento,
                            ttTribnoMunImune, ttTribforaMunImune,
                            ttTribnoMunSuspensa, ttTribforaMunSuspensa,
                            ttExpServicos]);
end;

function TACBrNFSeXProvider.StrToTipoTributacaoRPS(out ok: Boolean;
  const s: string): TTipoTributacaoRPS;
begin
  Result := StrToEnumerado(ok, s,
                           ['T', 'F', 'A', 'B', 'M', 'N', 'X', 'V', 'P'],
                           [ttTribnoMun, ttTribforaMun,
                            ttTribnoMunIsento, ttTribforaMunIsento,
                            ttTribnoMunImune, ttTribforaMunImune,
                            ttTribnoMunSuspensa, ttTribforaMunSuspensa,
                            ttExpServicos]);
end;

A sequencia das Letras é a mesma dos enumerados, portanto T = ttTribnoMun e assim por diante.

O que significa cada enumerador, bom procuramos dar um nome ao enumerador que seja o mais próximo possível do venha a ser.

ttTribnoMun = Tributado no Municipio
ttTribforaMun = Tributado fora do Municipio
ttTribnoMunIsento = Tributado no Municipio - Isento
ttTribforaMunIsento = Tributado fora do Municipio - Isento
ttTribnoMunImune = Tributado no Municipio - Imune
ttTribforaMunImune = Tributado fora do Municipio - Imune
ttTribnoMunSuspensa = Tributado no Municipio - Suspensa
ttTribforaMunSuspensa = Tributado fora do Municipio - Suspensa
ttExpServicos = Exportação Serviço

Acima eu lhe passei uma analise do código do componente, mas o que você utiliza (componente, ACBrLib ou o Monitor)?

  • Like 1
Consultor SAC ACBr

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

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Posted (edited)

Boa tarde @Italo Giurizzato Junior

Eu uso ACBrLib (DLL)

Tenho outra dúvida em relação NFSe.

Qual seria a diferença desses campos? TipoTributacaoRPS NaturezaOperacao

Eu vi que os dados são semelhantes. Nesse caso o cliente terá que informar os dois campos ao emitir a nota?

Verifiquei tambem que esses enumeradores não seguem o padrão do valor ser sempre inteiros. Tem enum por exemplo: TipoTributaçãoRPS é letras, e o Natureza da Operação é números.

Seria bom que seguisse o padrão de numeros. Porque fica mais fácil de mapear no banco de dados. Incluise em diversas linguagens o enum tem que ser inteiro o valor, como por exemplo C#.

Cidade que estou testando é a de Recife @Diego Foliene

Edited by dant
  • Consultores
  • Solution
Posted

Boa tarde @dant,

O tipo de enumerados TipoTributacaoRPS conforme já te mostrei acima foi criado para atender alguns provedores que não seguem o layout da ABRASF.

E alguns desses provedores o valor do enumerado é uma letra e outros é um numero.

Já o tipo de enumerados TnfseNaturezaOperacao foi criado para atender os provedores que seguem o layout da ABRASF, mas veja como são as coisas, se você pegar o manual da versão 1 do layout da ABRASF que é o layout utilizado pela cidade de Recife, os valores são: 

Código de natureza da operação 
1 – Tributação no município 
2 - Tributação fora do município 
3 - Isenção 
4 - Imune 
5 – Exigibilidade suspensa por decisão judicial 
6 – Exigibilidade suspensa por procedimento administrativo 

Conforme consta no manual.

Mas tem provedor que achou muito pouco ou não gostou dos valores de 1 até 6 e veja como ficou a definição desse tipo:

  TnfseNaturezaOperacao = (no0, no1, no2, no3, no4, no5, no6, no7, no8, no9,
                           no10, no11, no12, no13, no14, no15, no17, no18,
                           no50, no51, no52, no53, no54, no55, no56, no57, no58, no59,
                           no60, no61, no62, no63, no64, no65, no66, no67, no68, no69,
                           no70, no71, no72, no78, no79,
                           no81,
                           no91,
                           no101, no102, no103, no104, no105, no106, no107, no108, no109,
                           no110, no111, no112, no113, no114, no115, no116, no117, no118,
                           no121,
                           no200, no201,
                           no300, no301,
                           no400,
                           no501, no511, no512, no515, no521, no522,
                           no539, no541, no549, no551,
                           no601, no611, no612, no613, no615, no616, no621, no622,
                           no701, no711, no712,
                           no901, no902, no911, no912, no921, no931, no951, no952, no971,
                           no981, no991,
                           noNenhum);

Como você pode ver uma verdadeira aberração.

Eu não vejo a hora de que todas as cidades resolvam migrar para o Padrão Nacional, assim acaba com essa palhaçada.

Por fim, não tem muita diferença entre esses dois tipos.

Na NFS-e você tem que dançar conforme a musica que o provedor toca.

  • Like 1
Consultor SAC ACBr

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

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

The popup will be closed in 10 seconds...