ERP – Formas de Contabilização – Como ajustar a forma de contabilização, que possui por base a tabela de rateios, para contabilizar o valor bruto de uma nota fiscal de entrada de serviços com retenções de impostos (exemplo de regra parcial)
Dúvida
Como ajustar a forma de contabilização, que possui por base a tabela de rateios, para contabilizar o valor bruto de uma nota fiscal de entrada de serviços com retenções de impostos (exemplo de regra parcial), no módulo Gestão de Contabilidade?
Solução
Para ajustar a forma de contabilização, realize os passos a seguir:
1. Acesse a tela F048FCT - Cadastros / Controladoria / Contabilidade / Formas de Contabilização / Cadastro, localize a forma de contabilização e a sequência que deseja contabilizar o valor bruto da nota fiscal, em seguida clique no botão Reg. Parcial e personalize uma regra de acordo com o exemplo abaixo:
@--------------------------------------- Regra parcial - Define Vlr do Débito = Vlr Rateado + Impostos retidos (PIS + COFINS + OUR + IRRF + INSS + ISS) ---------------------@
Definir Cursor Cur_E440ISC;
Definir Alfa Vcodsnf;
Vcodemp=E440Rat.codemp;
Vcodfil=E440Rat.codfil;
Vcodfor=E440Rat.codfor;
Vnumnfc=E440Rat.numnfc;
Vcodsnf=E440Rat.codsnf;
Vseqrat=E440Rat.seqrat;
Vseqisc=E440Rat.seqisc;
Vpercta=E440Rat.percta;
Vvlrcta=E440Rat.vlrcta;
VvlrRat=E440Rat.VlrRat;
Vctared=E440Rat.ctared;
Vperrat=E440Rat.perrat;
VVlrRat=E440Rat.VlrRat;
Cur_E440ISC.Sql "Select vlrpit, vlrcrt, vlrcsl, vlrirf, vlrins, vlriss, vlrdsc, vlrour from e440isc \
where codemp=:vcodemp and codfil=:vcodfil and codfor=:vcodfor \
and numnfc=:vnumnfc and codsnf=:vcodsnf and seqisc=:vseqisc";
Cur_E440ISC.AbrirCursor();
Se (Cur_E440ISC.Achou)
Inicio
Vvlrpit=Cur_E440ISC.vlrpit;
Vvlrcrt=Cur_E440ISC.vlrcrt;
Vvlrirf=Cur_E440ISC.vlrirf;
Vvlrins=Cur_E440ISC.vlrins;
Vvlriss=Cur_E440ISC.vlriss;
Vvlrcsl=Cur_E440ISC.vlrcsl;
VvlrDsc=Cur_E440ISC.vlrdsc;
VvlrOur=Cur_E440ISC.vlrour;
fim;
Cur_E440ISC.FecharCursor();
Se (Vvlrpit > 0)
VAuxpit=((Vvlrpit * vpercta / 100)* Vperrat / 100);
Senao
VAuxpit=0;
Se (Vvlrcrt > 0)
VAuxcrt=((Vvlrcrt * vpercta / 100)* Vperrat / 100);
Senao
VAuxcrt=0;
Se (Vvlrcsl > 0)
VAuxcsl=((Vvlrcsl * vpercta / 100)* Vperrat / 100);
Senao
VAuxcsl=0;
Se (Vvlrirf > 0)
VAuxirf=((Vvlrirf * vpercta / 100)* Vperrat / 100);
Senao
VAuxirf=0;
Se (Vvlrins > 0)
VAuxins=((Vvlrins * vpercta / 100)* Vperrat / 100);
Senao
VAuxins=0;
Se (Vvlriss > 0)
VAuxiss=((Vvlriss * vpercta / 100)* Vperrat / 100);
Senao
VAuxiss=0;
Se (VvlrDsc > 0)
VAuxdsc=((Vvlrdsc * vpercta / 100)* Vperrat / 100);
Senao
VAuxDsc=0;
Se (VvlrOur > 0)
VAuxOur=((Vvlrour * vpercta / 100)* Vperrat / 100);
Senao
VAuxOur=0;
VVLRBAS1 = (VVlrRat + VAuxpit + VAuxcrt + VAuxcsl + VAuxirf + VAuxins + VAuxiss + VAuxOur - VAuxDsc);
Observação
Na regra o que estiver entre arrobas (@), são apenas comentários e não surtem efeitos na regra.
Alterar a variável VVLRBAS1 de acordo com a sequência da forma de contabilização, no exemplo acima a sequência seria a 1.
Atenção! Antes de realizar qualquer alteração, analise o impacto que poderá ter em outros lançamentos/processos do sistema.