Jump to content

dev botao

Nota tecnica 2023.001 Venda consumidor deposito de gás


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

Recommended Posts

Bom dia,

(eu não tinha entendido que a pergunta era sobre "preencher novas tags" no XML, eu preciso me atualizar quanto as últimas NT :-( )

 

eu já atendi um distribuidor de gás GLP, e fiz uns ajustes no sistema para emitir NFC-e.

O precisa seria isso:

CFOP = 5656

Código ANP eu não lembro de cabeça qual era, mas eu só tenho comentado aqui que a "lista de códigos ANP copiado da página 51 da Nota Tecnica 2016-002 versão 1.42"

 

Esse é o trecho de código que o sistema preenche os campos relacionados a combustíveis no componente ACBr

if codigo_anp > 0 then
begin
  Prod.comb.cProdANP := codigo_anp;
  Prod.comb.CODIF    := '';
  Prod.comb.qTemp    := 0;
  Prod.comb.UFcons   := uf_emitente;

  // Rejeicao: Somatorio percentuais de GLP derivado do petroleo,
  // GLNn e GLGNi diferente de 1 [nItem:1]
  Prod.comb.descANP := 'GLP'; //Copy(Prod.xProd,1,95);
  Prod.comb.pGLP    := 100; // 100% GLP
  Prod.comb.pGNn    := 0; // 0% gas natural IMPORTADO
  Prod.comb.pGNi    := 0; // 0% gas natural NACIONAL
end;

E lembro que tinha um outro detalhe quanto a tributação, ao invés de emitir com o código 60 de "Substituição Tributaria" tinha que usar outro grupo de tributação relacionado a "repasse de ICMS ST".

 

if (Imposto.ICMS.CST = cst60)
and(codigo_anp > 0) then
begin
  if Pos(QRYNOTA_ITEMCODIGO_ANP.AsString, CODIGOS_ANP_REGRA_ICMSST) > 0 then
  begin
    // Caso dos combustíveis e GLP será necessário
    // preencher o "Grupo de Repasse do ICMS ST"
    // Para evitar esta rejeicao:
    // "Grupo de Tributacao informado indevidamente"
    Imposto.ICMS.CST := cstRep60;

    Imposto.ICMS.vBCSTRet        := 0;
    Imposto.ICMS.pST             := 0;
    Imposto.ICMS.vICMSSubstituto := 0;
    Imposto.ICMS.vICMSSTRet      := 0;

    // tem campos de FCP aqui tambem... :-/

    Imposto.ICMS.vBCSTDest   := 0;
    Imposto.ICMS.vICMSSTDest := 0;
  end;
end;

 

Att

Ricardo

Link to comment
Share on other sites

  • Membros Pro

BigWings estou preenchendo esta parte que vc postou igualzinho, estou falando das novas tag como abaixo.

if FrmNotaMod55.CDSNFeDetalheCODANP.AsString <> '' then
begin
    with Prod.comb do
    begin
         cProdANP := strtoint(FrmNotaMod55.CDSNFeDetalheCODANP.AsString);
         UFcons   := FrmNotaMod55.EdtUFCliente.Text;
         descANP :=  FrmNotaMod55.CDSNFeDetalheDESCANP.AsString;
         pGLP     := 100;
         pGNn     := 0;
         pGNi     := 0;
         vPart    :=  FrmNotaMod55.CDSNFeDetalheVALOR.AsFloat;
     end;
end;

with Imposto do
begin
    if FrmNotaMod55.CDSNFeDetalheCODANP.AsString <> '' then
    begin
        vIcmsGas :=  RoundABNT(FrmNotaMod55.CDSNFeDetalheVALOR.AsFloat * 1.2571,2);
        qBCMonoRet   := FrmNotaMod55.CDSNFeDetalheVALOR.AsFloat;
        adRemICMSRet  :=1.2571;
        vICMSMonoRet := vIcmsGas;
        TotIcmsGas   := TotIcmsGas +  vIcmsGas;
    end;
end;

se for informado CST cst61 sai o grupo no xml  com Novas tag do combustivel

<ICMS>
<ICMS61>
<orig>0</orig>
<CST>61</CST>
<qBCMonoRet>75.0000</qBCMonoRet>
<adRemICMSRet>1.2571</adRemICMSRet>
<vICMSMonoRet>94.28</vICMSMonoRet>
</ICMS61>
</ICMS>
 
se não for informado CST 61 e somente CSOSN   não sai as tag novas do combustivel
<ICMS>
<ICMSSN500>
<orig>0</orig>
<CSOSN>500</CSOSN>
</ICMSSN500>
</ICMS>
 
a duvida por ser empresa simples nacional deve se informa CST 61 ai no Danfe o a coluna CSOSN sai '0'
se informar somnete a CSOSN no danfe sai preenchido a coluna CSOSN.
 
 

 

Porem o Danfe o CSOSN está saindo com "0"

em Homologação a Nota é transmitida estou com medo de quando for em produção ocorrer rejeição.

Edited by Arnaldo Cruz
Link to comment
Share on other sites

  • Moderadores
  • Solution
37 minutos atrás, Arnaldo Cruz disse:

a duvida por ser empresa simples nacional deve se informa CST 61 ai no Danfe o a coluna CSOSN sai '0'

Atualize os fontes, já tem uma correção pra esse caso.

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Link to comment
Share on other sites

  • 4 months later...
  • Moderadores
14 horas atrás, barrys disse:

Não consegui emitir para Simples Nacional.
alguem tem as mudanças na prática para emissão?

Tem bastante material no link que está na primeira resposta deste tópico.

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Link to comment
Share on other sites

Tentei por vários meios emitir para Simples Nacional, mas sem sucesso!!

Alguem pode dar uma olha nesta parte do código?  onde estou errando

 

              Prod.comb.cProdANP := StrToInt( FieldByName('COD_ANP').AsString );
              Prod.comb.descANP  := 'OLEO LUBRIFICANTE';
              Prod.comb.UFcons   := NFe.Dest.EnderDest.UF;

              Imposto.ICMS.CST := cst61;

              Imposto.ICMS.qBCMono        := 0;
              Imposto.ICMS.adRemICMS      := 0;
              Imposto.ICMS.vICMSMono      := 0;

              Imposto.ICMS.qBCMonoReten   := 0;
              Imposto.ICMS.adRemICMSReten := 0;
              Imposto.ICMS.vICMSMonoReten := 0;

              Imposto.ICMS.pRedAdRem      := 0;
              Imposto.ICMS.pDif           := 0;
              Imposto.ICMS.vICMSMonoDif   := 0;

              Imposto.ICMS.qBCMonoRet     := Prod.vProd;
              Imposto.ICMS.adRemICMSRet   := 1.22;
              Imposto.ICMS.vICMSMonoRet   := (Prod.vProd / 100) * Imposto.ICMS.adRemICMS;

              NFe.Total.ICMSTot.vICMSMono      := NFe.Total.ICMSTot.vICMSMono + Imposto.ICMS.vICMSMono;
              NFe.Total.ICMSTot.vICMSMonoRet   := NFe.Total.ICMSTot.vICMSMonoRet + Imposto.ICMS.vICMSMonoRet;
              NFe.Total.ICMSTot.vICMSMonoReten := NFe.Total.ICMSTot.vICMSMonoReten + Imposto.ICMS.vICMSMonoReten;

              NFe.Total.ICMSTot.qBCMono      := NFe.Total.ICMSTot.qBCMono + Imposto.ICMS.qBCMono;
              NFe.Total.ICMSTot.qBCMonoRet   := NFe.Total.ICMSTot.qBCMonoRet + Imposto.ICMS.qBCMonoRet;
              NFe.Total.ICMSTot.qBCMonoReten := NFe.Total.ICMSTot.qBCMonoReten + Imposto.ICMS.qBCMonoReten;
            end

Link to comment
Share on other sites

  • Moderadores
11 horas atrás, barrys disse:

Alguem pode dar uma olha nesta parte do código?  onde estou errando

Qual erro está tendo?

11 horas atrás, barrys disse:

              Imposto.ICMS.qBCMonoRet     := Prod.vProd;
              Imposto.ICMS.adRemICMSRet   := 1.22;
              Imposto.ICMS.vICMSMonoRet   := (Prod.vProd / 100) * Imposto.ICMS.adRemICMS;

O cálculo é por quantidade tributável x alíquota adRem, multiplicação direta. Não é alíquota percentual portando não se divide por 100.

A quantidade tributável obrigatoriamente tem que ser em KG (quilogramas) para GLP e em L (litros) para gasolina, álcool e diesel.

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Link to comment
Share on other sites

Vou explicar melhor.
Tenho já um sistema para lucro real com emissão normal para óleos / lubrificantes. (possui cod ANP)

Eu não qual campo tenho que usar para emitir a mesma nota, para outro CNPJ do Simples Nacional.

* vou postar aqui o codigo que uso (funciona) para Lucro Real. (estado de SP)

              NFe.Ide.natOp      := 'VENDA DE COMBUSTIVEL OU LUBRIFICANTE ADQUIRIDO OU RECEBIDO';
              Prod.comb.cProdANP := StrToInt( FieldByName('COD_ANP').AsString );
              Prod.comb.descANP  := 'OLEO LUBRIFICANTE';
              Prod.comb.UFcons   := NFe.Dest.EnderDest.UF;

                Imposto.ICMS.pICMS := 18;

                Imposto.ICMS.CST        := cst00;
                Imposto.ICMS.pRedBC     := 0;
                Imposto.ICMS.vBC        := Prod.vProd - Prod.vDesc;
                Imposto.ICMS.vICMS      := (Imposto.ICMS.vBC / 100) * Imposto.ICMS.pICMS;
                NFe.Total.ICMSTot.vBC   := NFe.Total.ICMSTot.vBC + Imposto.ICMS.vBC;
                NFe.Total.ICMSTot.vICMS := NFe.Total.ICMSTot.vICMS + Imposto.ICMS.vICMS;
 

 

Link to comment
Share on other sites

  • Moderadores
4 minutos atrás, barrys disse:

Tenho já um sistema para lucro real com emissão normal para óleos / lubrificantes. (possui cod ANP)

Acho que misturamos os assuntos, estávamos falando aqui de venda de gás com o ICMS monofásico.

Se é operação com óleo lubrificante, cujo código ANP não está na lista dos produtos sujeitos ao ICMS monofásico, nada muda, continua emitindo como antes.

Basta informar:

Emit.CRT = 1 (Simples Nacional)

Imposto.ICMS.CSOSN = <verificar qual CSOSN se aplica a operação>;

Imposto.ICMS.pCredSN = <alíquota do crédito do ICMS do Simples Nacional, se houver>;

Imposto.ICMS.vCredICMSSN = <valor do crédito do ICMS do Simples Nacional, se houver>;

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Link to comment
Share on other sites

continuo sem conseguir emitir a nota.

              NFe.Ide.natOp      := 'VENDA DE COMBUSTIVEL OU LUBRIFICANTE ADQUIRIDO OU RECEBIDO';
              Prod.comb.cProdANP := 620501001;
              Prod.comb.descANP  := 'OLEO LUBRIFICANTE';
              Prod.comb.UFcons   := NFe.Dest.EnderDest.UF;

              Imposto.ICMS.CSOSN       := csosn500;
              Imposto.ICMS.pCredSN     := 0;//18;
              Imposto.ICMS.vCredICMSSN := 0;//(Prod.vProd / 100) * Imposto.ICMS.pCredSN;
* OBS usando aliquota de 18% ou não...   a ntoa não é emitida.

959-Rejeição: NF-e não pode ter preenchimento de Grupo de Tributação do ICMS monofásica sobre combustíveis. [nItem:Object reference not set to an instance of an object.]

Link to comment
Share on other sites

  • Membros Pro

with Prod.comb do
                                   begin
                                        cProdANP:= StrToInt(FrmCaixaNovo.CDSNFeDetalheCODANP.AsString) ;
                                        descANP := FDataModule.RetornaDescANP(FrmCaixaNovo.CDSNFeDetalheDESCRICAO.AsString);
                                        pGLP    := 100 ;
                                        pGNn      := 0 ;
                                        pGNi      := 0 ;
                                        vPart   := FrmCaixaNovo.CDSNFeDetalheVALOR.AsFloat;
                                        UFcons  := UFEmpresa;
                                   end;

with Imposto do
                               begin

QtdeGas      := (13 * FrmCaixaNovo.CDSNFeDetalheQTDE.AsFloat);
                                               vIcmsGas     := RoundABNT(QtdeGas * 1.2571,2);
                                               qBCMonoRet   := QtdeGas;
                                               adRemICMSRet := 1.2571;
                                               vICMSMonoRet := vIcmsGas;
                                               TotIcmsGas   := TotIcmsGas +  vIcmsGas;

end;

  • Like 1
Link to comment
Share on other sites

  • Moderadores
1 hora atrás, barrys disse:

959-Rejeição: NF-e não pode ter preenchimento de Grupo de Tributação do ICMS monofásica sobre combustíveis. [nItem:Object reference not set to an instance of an object.]

Analise o XML gerado.

Você preencheu algum campo do grupo do ICMS monofásico, que não se aplica pra esse item.

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Link to comment
Share on other sites

  • Este tópico foi criado há 459 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • 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...