- 13.10. ICMS do CT-e
13.10.4. ICMS cobrado anter.por ST novo - 13.10.3. ICMS Isento, não Tributado ou diferido novo
« Anterior - 13.10.5. ICMS Outros novo
Próximo »
13.10.4. ICMS cobrado anter.por ST novo
Funcionalidade para gerar o XML do grupo de Tributação pelo ICMS 60
Assinatura
string ImpICMS60_NT2024001(string CST, double vBCSTRet, double pICMSSTRet, double vICMSSTRet, double vCred,double vTotTrib_Opc, string infAdFisco_Opc, string ICMSUFFim_Opc, double vICMSDeson_Opc, string _cBenef_Opc)
Descrição:
Funcionalidade para gerar o XML do grupo de Tributação o ICMS devido na prestação de serviço já tenha sido retido anteriormente pelo responsável pela retenção.
Atualizado para o leiaute da NT2024/001
Parâmetros:
nome | tipo | tam. | obrig. | descrição |
---|---|---|---|---|
CST | string | 2 | sim | informar a classificação Tributária do Serviço (60 - ICMS cobrado anteriormente por substituição tributária). |
vBCSTRet | double | 13,2 | sim | informar o valor da BC do ICMS ST retido (15 posições, sendo 13 inteiras e 2 decimais). |
vICMSSTRet | double | 13,2 | sim | informar o valor do ICMS ST retido (15 posições, sendo 13 inteiras e 2 decimais). |
pICMSSTRet | double | 3,2 | sim | informar o valor da Alíquota do ICMS (5 posições, sendo 3 inteiras e 2 decimais). |
vCred | double | 13,2 | sim | informar o valor do Crédito outorgado/presumido(15 posições, sendo 13 inteiras e 2 decimais). |
vTotTrib_Opc | double | 13,2 | não | informar o valor Total dos Tributos Aproximado previsto na Lei da Transparência - 12.741/12 (15 posições, sendo 13 inteiras e 2 decimais). |
infAdFisco_Opc | string | 1-2000 | não | informações adicionais de interesse do Fisco. |
ICMSUFFim_Opc | string | - | não | Informações do ICMSUFFim ICMS devido para a UF de término do serviço de transporte, nas operações interestaduais para consumidor final |
vICMSDeson_Opc | double | 13,2 | não | informar o valor do ICMS desonerado. CAMPO NOVO |
cBenef_Opc | string | 1-10 | não | informar o código do benefício fiscal na UF. CAMPO NOVO |
Diagrama:
Retorno:
Um string com o grupo XML de Tributação pelo ICMS 60
XML:
Exemplo de XML
<imp> <ICMS> <ICMS60> <CST>60</CST> <vBCSTRet>1000.00</vBCSTRet> <vICMSSTRet>12.00</vICMSSTRet> <pICMSSTRet>120.00</pICMSSTRet> <vCred>0.00</vCred> </ICMS60> </ICMS> <vTotTrib>12.34</vTotTrib> <infAdFisco>Informações</infAdFisco> </imp>
Importante
O trecho do XML foi formatado para uma melhor visualização, a mensagem original não tem formatação.
Vale observar que a formatação pode corromper a assinatura digital, além de ocupar espaço e ser desnecessária, pois os browser exibem formatado.
Exemplos de uso: Visual Basic 6.0
' ' '====== Dados do Dim Tributação pelo ICMS 60 - ICMS cobrado por substituição tributária========== ' Dim ImpICMS60 As String Dim ImpICMS60_CST As String Dim ImpICMS60_vBCSTRet As Double Dim ImpICMS60_pICMSSTRet As Double Dim ImpICMS60_vICMSSTRet As Double Dim ImpICMS60_vCred As Double Dim ImpICMS60_vTotTrib_Opc As Double Dim ImpICMS60_infAdFisco_Opc As String Dim ImpICMS60_ICMSUFFim_Opc As String Dim ImpICMS60_vICMSDeson_Opc As Double Dim ImpICMS60_cBenef_Opc As String ' ' '====== instancia DLL================== ' ' ' referenciando a DLL em late binding ' não é necessário fazer o reference da DLL ' o intelisense não funciona ' Dim objCTeUtil As Object Set objCTeUtil = CreateObject("CTe_Util.Util") ' ' criação dos grupos ' '===================grupo de Tributação pelo ICMS60 - ICMS cobrado por substituição tributária======================= ' ' ImpICMS60_CST = "60" ' Classificação Tributária do Serviço (60 - ICMS cobrado anteriormente por substituição tributária) ImpICMS60_vBCSTRet = 1000# ' Valor da BC do ICMS ST retido (15 posições, sendo 13 inteiras e 2 decimais) ImpICMS60_pICMSSTRet = 12# ' Valor do ICMS ST retido (15 posições, sendo 13 inteiras e 2 decimais) ImpICMS60_vICMSSTRet = 120# ' Alíquota do ICMS (5 posições sendo 3 inteiras e 2 decimais) ImpICMS60_vCred = 0 ' Valor do Crédito outorgado/Presumido (15 posições, sendo 13 inteiras e 2 decimais) ImpICMS60_vTotTrib_Opc = 12.34 ' valor Total dos Tributos Aproximado ImpICMS60_infAdFisco_Opc = "Informações" ' Informações adicionais de interesse do Fisco (Norma referenciada, informações complementares, etc) ImpICMS60_ICMSUFFim_Opc = "" ' Informações do ICMS devido para a UF de término do serviço de transporte, nas operações interestaduais para consumidor final ImpICMS60_vICMSDeson_Opc = 100 ' valor o ICMS desonerado ImpICMS60_cBenef_Opc = "SP12345678" ' código do benefício fiscal na UF ' ImpICMS60 = objCTeUtil.ImpICMS60_NT2024001(ImpICMS60_CST, ImpICMS60_vBCSTRet, ImpICMS60_pICMSSTRet, ImpICMS60_vICMSSTRet, ImpICMS60_vCred, ImpICMS60_vTotTrib_Opc, ImpICMS60_infAdFisco_Opc, ImpICMS60_ICMSUFFim_Opc, ImpICMS60_vICMSDeson_Opc, ImpICMS60_cBenef_Opc) MsgBox "Tributação pelo ICMS60 - ICMS cobrado por substituição tributária" + ImpICMS60, vbInformation, "Resultado"
Exemplos de uso: Delphi
procedure TForm1.Button11Click(Sender: TObject); var Util: OleVariant; // declarar a interface da DLL resultado : integer; msgResultado : widestring; ImpICMS60 : widestring; ImpICMS60_CST : widestring; ImpICMS60_vBCSTRet : currency; ImpICMS60_vICMSSTRet : currency; ImpICMS60_pICMSSTRet : currency; ImpICMS60_vCred_Opc : currency; ImpICMS60_vTotTrib_Opc : currency; ImpICMS60_infAdFisco_Opc : widestring; ImpICMS60_ICMSUFFim_Opc : widestring; ImpICMS60_vICMSDeson_Opc : currency; ImpICMS60_cBenef_Opc : widestring; begin ImpICMS60_CST := '60'; // Classificação Tributária do Serviço ImpICMS60_vBCSTRet := 1000; ImpICMS60_vICMSSTRet := 120; ImpICMS60_pICMSSTRet := 12; ImpICMS60_vCred_Opc := 80; ImpICMS60_vTotTrib_Opc := 12.34; // valor Total dos Tributos Aproximado ImpICMS60_infAdFisco_Opc := 'Informações'; // Informações adicionais de interesse do Fisco (Norma referenciada, informações complementares, etc) ImpICMS60_ICMSUFFim_Opc := ' '; ImpICMS60_vICMSDeson_Opc :=100; ImpICMS60_cBenef_Opc :='SP2345678'; Util := CreateOleObject('CTe_Util.util'); // instância a DLL ImpICMS60 := Util.ImpICMS60_NT2024001(ImpICMS60_CST, ImpICMS60_vBCSTRet, ImpICMS60_vICMSSTRet, ImpICMS60_pICMSSTRet, ImpICMS60_vCred_Opc, ImpICMS60_vTotTrib_Opc, ImpICMS60_infAdFisco_Opc, ImpICMS60_ICMSUFFim_Opc, ImpICMS60_vICMSDeson_Opc, ImpICMS60_cBenef_Opc); resultado :=0; msgResultado :=' '; Memo1.Text := Util.IdentaXML(ImpICMS60, resultado, msgResultado); MessageDlg( 'ICMS60: ' + chr(13) + ImpICMS60, mtInformation, [mbOk], 0); end;
- 13.10.4. ICMS cobrado anter.por ST novo
13.10. ICMS do CT-e - « Anterior
13.10.3. ICMS Isento, não Tributado ou diferido novo - Próximo »
13.10.5. ICMS Outros novo