Mudanças da partilha

Fórum sobre desenvolvimento de software para atender as exigências da legislação fiscal e tributária (NFe, NFCe, NFSe, SPEED, Projeto ACBr, TEF, ECD, EFD, etc.)

Moderador: Moderadores

Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Mudanças da partilha

Mensagem por JoséQuintas »

Pelo que andei vendo, isso vai ser mais complicado do que parecia, porque entra no cálculo a alíquota interna da UF de destino.
Hoje minha tela de configurar impostos é esta:
tributacao.png
Pelo que entendi, vai precisar de mais dois parâmetros:
- Fundo de Combate à Pobreza (origem ou destino?)
- Alíquota interna da UF destino

Haja parâmetro pra imposto...

Mas... alguém já entendeu como vai ser o cálculo?
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Mudanças da partilha

Mensagem por JoséQuintas »

O ICMS ST já utiliza a alíquota para consumidor final.
Talvez até melhor alterar o nome de ICMS ST para Alíquota UF destino.

É isso mesmo, ou agora é que confundi?
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Mudanças da partilha

Mensagem por JoséQuintas »

O exemplo do manual:

Produtos: 1.000
ICMS 4%:
base de cálculo interestadual: 1041,67
imposto: 41.67

Base de cálculo UF destino: 1.234,57
Alíquota interna destino: 19%
Alíquota s/ FCP: 17%
Adicional FCP: 2%
ICMS Total UF Destino: 209.88
ICMS Dif. Alíquota Destino: 168,21
FCP: 24,69
ICMS Total: 234,57

Alguém consegue explicar?

Por exemplo:
O ICMS vai deixar de ser sobre o valor do produto, e ser acrescido ao produto?
O ICMS de hoje vai sumir e dar lugar ao novo cálculo?

E empresa do simples? deixaram de ser simples e vão pagar imposto?

Isso no manual tá longe de servir como manual.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Mudanças da partilha

Mensagem por JoséQuintas »

O mais próximo que cheguei do demonstrativo constante no manual.
(Post editado, reeditado, reeditado... )
imposto.png
o fonte, com digitação e cálculo:

Código: Selecionar todos

#include "inkey.ch"
#include "hbclass.ch"

PROCEDURE Main

   LOCAL GetList := {}, oValores := ValoresClass():New()

   SetMode( 24, 90 )
   CLS
   DO WHILE .T.
      @ 1, 0             SAY "Valor Produto..:" GET oValores:mValorProduto  PICTURE "999,999,999.99" VALID oValores:Calculo( GetList )
      @ Row() + 2, 0     SAY "ICMS Base......:" GET oValores:mIcmsBase      PICTURE "999,999,999.99" VALID oValores:Calculo( GetList ) WHEN .F.
      @ Row(), Col() + 2 SAY "Aliquota.:"       GET oValores:mIcmsAliq      PICTURE "999.99"         VALID oValores:Calculo( GetList )
      @ Row(), Col() + 2 SAY "Valor.:"          GET oValores:mIcmsValor     PICTURE "999,999,999.99" VALID oValores:Calculo( GetList )
      @ Row() + 2, 0     SAY "ICMS UFUF Base.:" GET oValores:mIcmsIBase     PICTURE "999,999,999.99" VALID oValores:Calculo( GetList ) WHEN .F.
      @ Row(), Col() + 2 SAY "Aliquota.:"       GET oValores:mIcmsIAliq     PICTURE "999.99"         VALID oValores:Calculo( GetList )
      @ Row(), Col() + 2 SAY "Valor.:"          GET oValores:mIcmsIValor    PICTURE "999,999,999.99" VALID oValores:Calculo( GetList ) WHEN .F.
      @ Row() + 2, 0     SAY "ICMS Subst Base:" GET oValores:mSubstBase     PICTURE "999,999,999.99" VALID oValores:Calculo( GetList ) WHEN .F.
      @ Row(), Col() + 2 SAY "Aliq.c/FP:"       GET oValores:mSubstAliq     PICTURE "999.99"         VALID oValores:Calculo( GetList )
      @ Row(), Col() + 2 SAY "Valor.:"          GET oValores:mSubstValor    PICTURE "999,999,999.99" VALID oValores:Calculo( GetList ) WHEN .F.
      @ Row(), Col() + 2 SAY "IVA.:"            GET oValores:mSubstIVA      PICTURE "999.999"        VALID oValores:Calculo( GetList )
      @ Row() + 2, 0     SAY "ICMS Des.I.Base:" GET oValores:mIcmsDestBase  PICTURE "999,999,999.99" VALID oValores:Calculo( GetList ) WHEN .F.
      @ Row(), Col() + 2 SAY "Aliq.s/FP:"       GET oValores:mIcmsDestAliq  PICTURE "999.99"         VALID oValores:Calculo( GetList )
      @ Row(), Col() + 2 SAY "Valor.:"          GET oValores:mIcmsDestValor PICTURE "999,999,999.99" VALID oValores:Calculo( GetList ) WHEN .F.
      @ Row() + 2, 0     SAY "FCP Base.......:" GET oValores:mFCPBase       PICTURE "999,999,999.99" VALID oValores:Calculo( GetList ) WHEN .F.
      @ Row(), Col() + 2 SAY "Aliquota.:"       GET oValores:mFCPAliq       PICTURE "999.99"         VALID oValores:Calculo( GetList )
      @ Row(), Col() + 2 SAY "Valor.:"          GET oValores:mFCPValor      PICTURE "999,999,999.99" VALID oValores:Calculo( GetList ) WHEN .F.
      @ Row() + 2, 0     SAY "ICMS Partilha..:" GET oValores:mIcmsPartilha  PICTURE "999,999,999.99" VALID oValores:Calculo( GetList ) WHEN .F.
      READ
      IF LastKey() == K_ESC
         EXIT
      ENDIF
   ENDDO
   RETURN

CREATE CLASS ValoresClass
   VAR mValorProduto  INIT 1000
   VAR mIcmsBase      INIT 0
   VAR mIcmsAliq      INIT 4
   VAR mIcmsValor     INIT 0
   VAR mIcmsIBase     INIT 0
   VAR mIcmsIAliq     INIT 4
   VAR mIcmsIValor    INIT 0
   VAR mSubstBase     INIT 0
   VAR mSubstAliq     INIT 0
   VAR mSubstValor    INIT 0
   VAR mSubstIVA      INIT 23.457
   VAR mIcmsDestBase  INIT 0
   VAR mIcmsDestAliq  INIT 17
   VAR mIcmsDestValor INIT 0
   VAR mFcpBase       INIT 0
   VAR mFcpAliq       INIT 2
   VAR mFCPValor      INIT 0
   VAR mIcmsPartilha  INIT 0
   METHOD Calculo( GetList )
   END CLASS

METHOD Calculo( GetList ) CLASS ValoresClass

   LOCAL nCont

   ::mIcmsBase      := ::mValorProduto
   ::mIcmsValor     := Int( ::mValorProduto * ::mIcmsAliq ) / 100
   ::mIcmsIBase     := Round( ::mValorProduto / ( 100 - ::mIcmsIAliq ) * 100, 2 )
   ::mIcmsIValor    := ::mIcmsIBase - ::mValorProduto
   ::mSubstBase     := ::mValorProduto + ( Int( ::mValorProduto * ::mSubstIva ) / 100 )
   ::mSubstAliq     := ::mIcmsDestAliq + ::mFcpAliq
   ::mSubstValor    := Max( 0, Int( ::mSubstBase * ( ::mSubstAliq ) ) / 100 - ::mIcmsValor )
   ::mIcmsDestBase  := ::mSubstBase
   ::mIcmsDestValor := Int( ::mIcmsDestBase * ( ::mIcmsDestAliq ) ) / 100
   ::mFcpBase       := ::mIcmsDestBase
   ::mFcpValor      := Int( ::mIcmsDestBase * ::mFcpAliq ) / 100
   ::mIcmsPartilha  := ::mIcmsDestValor - ::mIcmsIValor
   FOR nCont = 1 TO Len( GetList )
      GetList[ nCont ]:Display()
   NEXT
   RETURN .T.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Mudanças da partilha

Mensagem por JoséQuintas »

A soma do ICMS + Subst: 40.00 + 194.56 = 234,56
A soma do ICMS Des + FCP: 209.87 + 24,69 = 234,56
E nem precisa dizer: a soma do ICMS.Interestadual + partilha + FCP: 41.67 + 168,20 + 24.69 = 234.56

Lembrando que falta confirmar esses cálculos doidos.
Por enquanto foi uma espécie de chute.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
janio
Colaborador
Colaborador
Mensagens: 1846
Registrado em: 06 Jul 2004 07:43
Localização: UBAJARA - CE

Mudanças da partilha

Mensagem por janio »

Quintas,

Eram essas duvidas que postei no outro post. Mim indicaram como 'solução' um link para a NT...
#-)

Temos q saber o aliquota do Estado destino. Como?

Outra: "ICMS UFUF : 1.041,67", como vc chegou a esse valor?

Janio
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Mudanças da partilha

Mensagem por JoséQuintas »

Só ver o cálculo no fonte.

É um cálculo ao contrário: Quanto é que, descontando 4%, resulta no valor dos produtos de 1.000,00

BASE - 4% = 1.000,00

1.041, 67 - 4% (41, 67) = 1.000,00


Sobre a alíquota do estado de destino:
Pra poder calcular a substituição tributária, já temos que saber disso.
É o mesmo percentual da substituição tributária.

Como dá pra perceber aí, tudo se resume em calcular o rateio entre as UFs.
O valor total de imposto é o mesmo.

Lembrando novamente: aqui fiz os cálculos pra chegar ao que está no manual do governo.
Postei pra tentar confirmar tudo isso.
No manual só tem valores e nada mais.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Poka
Usuário Nível 4
Usuário Nível 4
Mensagens: 563
Registrado em: 25 Out 2004 21:26
Localização: Leme/SP

Mudanças da partilha

Mensagem por Poka »

José Quintas,
tudo isso é para 01/01/2016?


Poka
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Mudanças da partilha

Mensagem por JoséQuintas »

O uso do CEST foi adiado pra abril.
Por enquanto nada sobre adiar isso do rateio.

Se for assim, até que não é muita alteração.
O fundo de combate à pobreza é por UF, dá pra deixar fixo no aplicativo.
O percentual de rateio é alterado uma vez por ano, dá pra deixar fixo no aplicativo.

Vai restar somente o cálculo mesmo, e a inclusão disso no XML.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Poka
Usuário Nível 4
Usuário Nível 4
Mensagens: 563
Registrado em: 25 Out 2004 21:26
Localização: Leme/SP

Mudanças da partilha

Mensagem por Poka »

Obrigado Quintas, vamos por a mão na massa.

Poka
Avatar do usuário
janio
Colaborador
Colaborador
Mensagens: 1846
Registrado em: 06 Jul 2004 07:43
Localização: UBAJARA - CE

Mudanças da partilha

Mensagem por janio »

Quintas,

Então vamos por partes... o que temos pra fazer de URGÊNCIA para 01/janeiro eh:

- Fundo de combate a probreza;
- Rateio de ICMS;

Algo mais?

Aí vem as regras: O rateio de ICMS eh para qndo for VENDA para FORA DO ESTADO e para CONSUMIDOR FINAL. Para isso precisamos para fazer todos aqueles calculos, no mínimo, saber a ALIQUOTA DE ICMS do ESTADO DESTINO.

Eu não emito nota com substituição tributária, ainda. Por isso insisto: Como vc faz para saber a aliquota do Estado destino?

Janio
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Mudanças da partilha

Mensagem por JoséQuintas »

Cada UF tem a sua alíquota interna, mas já não sei se algum produto poderia ser diferente..

No meu caso criei a tabela de regras, e o usuário é quem preenche.
Posso até indicar um tipo de preenchimento, mas sempre oriento que é o contador quem vai dar a palavra final.
Então nem acompanho mais isso de perto.

Meu aplicativo tá bem flexível, aceita 999.999 regras diferentes.
Até agora tem atendido.

O que estou pensando aqui é a confusão que o fundo de combate à pobreza pode causar.
Nos cálculos atuais, que estão corretos, o ICMS inclui o FCP.
Na hora que configurar separado ICMS e FCP, pode exigir mexer em todos os cálculos do aplicativo, ou pode confundir o usuário sobre que percentual utilizar no ICMS: com ou sem FCP
Não tinha pensado nisso antes....



José M. C. Quintas
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Kapiaba
Colaborador
Colaborador
Mensagens: 1908
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

Mudanças da partilha

Mensagem por Kapiaba »

Bom dia, alguém tem um .xml válido para vermos onde estamos errando? Obg. abs.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Mudanças da partilha

Mensagem por JoséQuintas »

Na prática nem mexi no aplicativo, e nem pretendo mexer.

Ontem já mudaram de novo com a NT 1.50.
Considerando a data 17/12/2015, feriados até 01/01/2016, e a quantidade de mudanças que já teve, difícil acreditar que vai valer dia primeiro.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Kapiaba
Colaborador
Colaborador
Mensagens: 1908
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

Mudanças da partilha

Mensagem por Kapiaba »

Mister Quintas, pode me dar uma mão aqui?

Imagem

Obg. abs.
Responder