- 13.4. Utilidadades
13.4.8. calcICMSUFDest400 [10-01-18] - 13.4.7. Gerar PDF do DANFE [28-08-18]
« Anterior - 13.5. CriaProcNFe2G [24-11-12]
Próximo »
13.4.8. calcICMSUFDest400 [10-01-18]
Funcionalidade para calcular as tags do grupo XML de informações do grupo de Tributação do ICMS para a UF de destino, de acordo com a alteração do leiaute promovido pela NT 2016/002.
Assinatura
string calcICMSUFDest400(int formaCalculo, double valorBase, double aliqDestino, double aliqInterestadual, double valorBaseFCP, double aliqFCP, int anoOperacao, out double vBCUFDest, out double pFCPUFDest, out double pICMSUFDest, out double pICMSInter, out double pICMSInterPart, out double vFCPUFDest, out double vICMSUFDest, out double vICMSUFRemet, out double vBCOpeInter, out double vICMSOpeInter, out int cResultado, out string msgResultado, out double vBCFCPUFDest)
Descrição:
Funcionalidade para calcular as tags do grupo XML das informações do grupo de Tributação do ICMS para a UF de destino nas operações interestaduais de venda para consumidor final.
NOVIDADE
Base Única para DIFAL de vendas não presenciais
Novo convênio do CONFAZ (152/15) altera o convênio ICMS 93/2015, definindo a utilização de base de cálculo única para o diferencial de alíquota (DIFA) em operações interestaduais para vendas não presenciais (e-commerce, telefone). A decisão simplifica a gestão tributária dos contribuintes e foi defendida por Santa Catarina, Rio Grande do Sul, Paraná e São Paulo.
Origem das informações: SEF/SC
Parâmetros:
nome | tipo | tam. | descrição |
---|---|---|---|
formaCalculo | inteiro | entrada | informar a forma de cálculo dos valores: 1 - Base de Cálculo dupla (orientação COTEPE), cálculo a partir do valor da operação;(obsoleto) 2 - Base de Cálculo dupla (orientação COTEPE), cálculo a partir do valor da mercadoria sem ICMS;(obsoleto) 3 - Base de Cálculo única (orientação da CONFAZ), cálculo a partir do valor da operação. |
valorBase | double | entrada | informar o valor que será utilizado para cálculo das tags. |
aliqDestino | double | entrada | informar o valor da alíquota interna da UF de destino. |
aliqInterestadual | double | entrada | informar o valor da alíquota interestadual (4%, 7% ou 12%). |
valorBaseFCP | double | entrada | NOVO informar o Valor da Base de Cálculo do FCP da UF de destino caso exista. |
aliqFCP | double | entrada | informar o valor da alíquota do FCP da UF de destino caso exista. |
anoOperacao | inteiro | entrada | informar o ano da operação (2016, 2017, 2018, 2019, 2020, ...), será utilizado para cálcular o percentual da partilha. |
vBCUFDest | double | saída | retorna o Valor da Base de Cálculo do ICMS na UF de destino. |
pFCPUFDest | double | saída | retorna o valor informado em aliqFCP. |
pICMSUFDest | double | saída | retorna o valor informado em aliqDestino. |
pICMSInter | double | saída | retorna o valor informado em aliqInterestadual. |
pICMSInterPart | double | saída | retorna Percentual de ICMS Interestadual para a UF de destino: - 40% em 2016; - 60% em 2017; - 80% em 2018; - 100% a partir de 2019. |
vFCPUFDest | double | saída | retorna o Valor do ICMS relativo ao Fundo de Combate à Pobreza (FCP) da UF de destino. |
vICMSUFDest | double | saída | retorna o Valor do ICMS Interestadual (partilha do DIFAL) para a UF de destino , já considerando o valor do ICMS relativo ao Fundo de Combate à Pobreza naquela UF. [30-12-15] |
vICMSUFRemet | double | saída | retorna o Valor do ICMS Interestadual (partilha do DIFAL) para a UF do remetente. Nota: A partir de 2019, este valor será zero. |
vBCOpeIntert | double | saída | retorna o Valor da BC ICMS da operação própria (ICMS interestadual devido para a origem) do remetente. |
vICMSOpeInter | double | saída | retorna o Valor do ICMS da operação própria (ICMS interestadual devido para a origem) do remetente. |
cResultado | inteiro | saída | retorna o código do resultado da chamada da DLL |
msgResultado | string | saída | retorna a literal do resultado da chamada da DLL |
vBCFCPUFDest | double | saída | retorna o Valor da BC do ICMS relativo ao Fundo de Combate à Pobreza (FCP) da UF de destino. |
Retorno:
Um string com o grupo XML das informações do grupo de Tributação do ICMS para a UF de destino nas operações interestaduais de venda para consumidor final.
Exemplo de retorno para:
formaCalculo = 3 - Base de Cálculo única
ValorBase = 1.000,00
aliqDestino = 17,00
aliqInterestadual = 12,00
ValorBaseFCP = 0,00
aliqFCP =0,00
anoOperacao = 2016
<ICMSUFDest> <vBCUFDest>1000.00</vBCUFDest> <pFCPUFDest>0.00</pFCPUFDest> <pICMSUFDest>17.00</pICMSUFDest> <pICMSInter>12.00</pICMSInter> <pICMSInterPart>40.00</pICMSInterPart> <vFCPUFDest>0.00</vFCPUFDest> <vICMSUFDest>20.00</vICMSUFDest> <vICMSUFRemet>30.00</vICMSUFRemet> </ICMSUFDest>
Exemplo de retorno para:
formaCalculo = 3 - Base de Cálculo única
ValorBase = 1.000,00
aliqDestino = 17,00
aliqInterestadual = 12,00
ValorBaseFCP = 1.000,00
aliqFCP =2,00
anoOperacao = 2016
<ICMSUFDest> <vBCUFDest>1000.00</vBCUFDest> <vBCFCPUFDest>1000.00</vBCFCPUFDest> <pFCPUFDest>2.00</pFCPUFDest> <pICMSUFDest>17.00</pICMSUFDest> <pICMSInter>12.00</pICMSInter> <pICMSInterPart>40.00</pICMSInterPart> <vFCPUFDest>20.00</vFCPUFDest> <vICMSUFDest>20.00</vICMSUFDest> <vICMSUFRemet>30.00</vICMSUFRemet> </ICMSUFDest>
Exemplo de uso da função calcICMSUFDest400
Dim objNFeUtil As Object Set objNFeUtil = CreateObject("NFe_Util_2G.Util") Dim formaCalculo As Long Dim valorBase As Double Dim aliqDestino As Double Dim aliqInterestadual As Double Dim valorBaseFCP As Double Dim aliqFCP As Double Dim anoOperacao As Long Dim vBCUFDest As Double Dim pFCPUFDest As Double Dim pICMSUFDest As Double Dim pICMSInter As Double Dim pICMSInterPart As Double Dim vFCPUFDest As Double Dim vICMSUFDest As Double Dim vICMSUFRemet As Double Dim vBCOpeInter As Double Dim vICMSOpeInter As Double Dim cResultado As Long Dim msgResultado As String Dim vBCFCPUFDest As Double Dim ICMSUFDest As String formaCalculo = 3 valorBase = 1000 aliqDestino = 18 aliqInterestadual = 12 valorBaseFCP = 1000 aliqFCP = 0 anoOperacao = 2018 vBCUFDest = 0 pFCPUFDest = 0 pICMSUFDest = 0 pICMSInter = 0 pICMSInterPart = 0 vFCPUFDest = 0 vICMSUFDest = 0 vICMSUFRemet = 0 vBCOpeInter = 0 vICMSOpeInter = 0 cResultado = 0 msgResultado = "" vBCFCPUFDest = 0 ICMSUFDest = objNFeUtil.calcICMSUFDest400(formaCalculo, valorBase, aliqDestino, aliqInterestadual, _ valorBaseFCP, aliqFCP, anoOperacao, _ vBCUFDest, pFCPUFDest, pICMSUFDest, pICMSInter, pICMSInterPart, _ vFCPUFDest, vICMSUFDest, vICMSUFRemet, vBCOpeInter, _ vICMSOpeInter, cResultado, msgResultado, vBCFCPUFDest) MsgBox ICMSUFDest, vbInformation, "Informação"
- 13.4.8. calcICMSUFDest400 [10-01-18]
13.4. Utilidadades - « Anterior
13.4.7. Gerar PDF do DANFE [28-08-18] - Próximo »
13.5. CriaProcNFe2G [24-11-12]