jfaguiar Posted November 27, 2017 Report Share Posted November 27, 2017 Bom dia amigos. Alguém teria um xml de nf-e interestadual de venda para não contribuinte? Aquela que tem a diferença de alíquota, onde uma parte do valor fica com o estado emitente e a outra para o estado destino. Eu programei as tags dessa forma mais ainda tá dando uns paus: nDIFALIQ := ARQCLI->CLIALQINT - ARQCLI->CLIPICMS // 18 - 7 = 11 nBASDIF := VBASICM * nDIFALIQ / 100 // nBASECALC * 11 / 100 VARAUX1 := STR(nBASDIF * 0.60,10,2) nDIFDest := VAL(VARAUX1) // 60% DO VALOR nDIFRemet := nBASDIF - nDIFDest // 40% DO VALOR oNFe:SetValue("total" , "vBCUFDest" , VBASICM) // 3100,26 oNFe:SetValue("total" , "pICMSUFDest",ARQCLI->CLIPICMS) // 18 oNFe:SetValue("total" , "pICMSInter" , nDIFALIQ) // 11 oNFe:SetValue("total" , "pICMSInterPart" , 60) // 40 agora é 60% // Base da Diferença 434,0364 oNFe:SetValue("total" , "vICMSUFDest" , nDIFDest) // 173,61456 Agora é sobre 60% oNFe:SetValue("total" , "vICMSUFRemet" , nDIFRemet) // 260,42184 Agora é sobre 40% Obrigado Quote Link to comment Share on other sites More sharing options...
rochinha Posted November 27, 2017 Report Share Posted November 27, 2017 Amiguinhos, jfaguiar Verifique melhor este caso pois em venda para não contribuinte o recolhimento deverá ficar na origem, integral. Quote Link to comment Share on other sites More sharing options...
CIACPD Posted November 27, 2017 Report Share Posted November 27, 2017 Olá, Me parece que só quem é do simples que está livre do DIFAL. npICMSInterPart := If(Right(Dtoc(dData),4)="2016", 40.00,; If(Right(Dtoc(dData),4)="2017", 60.00,; If(Right(Dtoc(dData),4)="2018", 80.00, 100.00))) :vBCUFDest := nValor // Valor da base de calculo do icms na UF de destino :pFCPUFDest := Esta->Fcp_Esta // Percentual de ICMS relativo ao fundo de combate a pobreza :pICMSUFDest := Esta->Ali_Esta // Aliquota interna da UF de Destino :pICMSInter := Prod->Ais_Prod // Aliquota intestadual das UF envolvidas 4% 7% 12% :pICMSInterPart := npICMSInterPart // Percentual provisorio da partilha do ICMS interestadual (40%-2016 60%-80 80%-2018 100%-2019) :vFCPUFDest := Round(nValor*Esta->Fcp_Esta/100,2) // Valor do ICMS relativo ao fundo de combate a pobreza (FCP) da UF de destino :vICMSUFDest := Round(((((nValor*Esta->Ali_Esta/100)-(nValor*Prod->Ais_Prod/100)) * npICMSInterPart / 100)) + (nValor*Esta->Fcp_Esta/100),2) // Valor do ICMS Interestadual para UF de destino, ja considerando o valor do ICMS relativo ao fundo de combate a pobreza naquela UF :vICMSUFRemet := Round((((nValor*Esta->Ali_Esta/100)-(nValor*Prod->Ais_Prod/100))*(100-npICMSInterPart)/100),2) // Valod do ICMS Interestadual para UF do remetente. Apartir de 2019 este valor sera 0 // Totais nvFCPUFDest = nvFCPUFDest + Round((nValor*Esta->Fcp_Esta/100),2) nvICMSUFDest = nvICMSUFDest + Round(((((nValor*Esta->Ali_Esta/100)-(nValor*Prod->Ais_Prod/100)) * npICMSInterPart / 100)) + (nValor*Esta->Fcp_Esta/100),2) nvICMSUFRemet = nvICMSUFRemet + Round((((nValor*Esta->Ali_Esta/100)-(nValor*Prod->Ais_Prod/100))*(100-npICMSInterPart)/100),2) Verifique se este código te ajuda Daniel Segura Quote Link to comment Share on other sites More sharing options...
jfaguiar Posted November 27, 2017 Author Report Share Posted November 27, 2017 Olá, Me parece que só quem é do simples que está livre do DIFAL. npICMSInterPart := If(Right(Dtoc(dData),4)="2016", 40.00,; If(Right(Dtoc(dData),4)="2017", 60.00,; If(Right(Dtoc(dData),4)="2018", 80.00, 100.00))) :vBCUFDest := nValor // Valor da base de calculo do icms na UF de destino :pFCPUFDest := Esta->Fcp_Esta // Percentual de ICMS relativo ao fundo de combate a pobreza :pICMSUFDest := Esta->Ali_Esta // Aliquota interna da UF de Destino :pICMSInter := Prod->Ais_Prod // Aliquota intestadual das UF envolvidas 4% 7% 12% :pICMSInterPart := npICMSInterPart // Percentual provisorio da partilha do ICMS interestadual (40%-2016 60%-80 80%-2018 100%-2019) :vFCPUFDest := Round(nValor*Esta->Fcp_Esta/100,2) // Valor do ICMS relativo ao fundo de combate a pobreza (FCP) da UF de destino :vICMSUFDest := Round(((((nValor*Esta->Ali_Esta/100)-(nValor*Prod->Ais_Prod/100)) * npICMSInterPart / 100)) + (nValor*Esta->Fcp_Esta/100),2) // Valor do ICMS Interestadual para UF de destino, ja considerando o valor do ICMS relativo ao fundo de combate a pobreza naquela UF :vICMSUFRemet := Round((((nValor*Esta->Ali_Esta/100)-(nValor*Prod->Ais_Prod/100))*(100-npICMSInterPart)/100),2) // Valod do ICMS Interestadual para UF do remetente. Apartir de 2019 este valor sera 0 // Totais nvFCPUFDest = nvFCPUFDest + Round((nValor*Esta->Fcp_Esta/100),2) nvICMSUFDest = nvICMSUFDest + Round(((((nValor*Esta->Ali_Esta/100)-(nValor*Prod->Ais_Prod/100)) * npICMSInterPart / 100)) + (nValor*Esta->Fcp_Esta/100),2) nvICMSUFRemet = nvICMSUFRemet + Round((((nValor*Esta->Ali_Esta/100)-(nValor*Prod->Ais_Prod/100))*(100-npICMSInterPart)/100),2) Verifique se este código te ajuda Daniel Segura Opa. Obrigado Qualquer coisa pode enviar no joaosiscom@hotmail.com Quote Link to comment Share on other sites More sharing options...
Jorge Andrade Posted November 27, 2017 Report Share Posted November 27, 2017 Pessoal Boa noite A situação atualmente do não contribuinte fora estado até onde eu sei, continua a mesma, exceto se a Liminar (Conforme liminar (ADI5464) acatada pelo O STF "Ministro Dias Toffoli", fica suspensa a eficácia de cláusula 9a. do Convenio ICMS 93/2015, desobrigando o recolhimento para a UF destino) que está em poder do ministro citado foi julgada e indeferida. Na minha maneira de pensar e tirar o meu da reta, faço assim: Calculo o Difal normal conforme a Pec87, evidencio/destaco os valores e a frase acima e deixo a critério do cliente recolher ou não a parte que cabe ao destino. []s, Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.