Produto: RMLabore

Processo: Cálculo de  INSS // IRRF Autônomos

Os exemplos de fórmulas citados abaixo foram criados baseado em um modelo de cálculo específico. Cada empresa deverá avaliar a sua necessidade de cálculo e adaptar as fórmulas, caso seja necessário. 


INSS AUTÔNOMO / DIRETOR
(Contempla carreteiros e também restituição de INSS)
 
1º Passo:
Acessar o menu "Cadastros -> Fórmulas" e efetuar o cadastro das seguintes fórmulas:
 
Código: CHAPA
Descrição: CHAPA
Texto: CHAPA
 
Código: MES
Descrição: MES
Texto: MES
 
Código: ANO
Descrição: ANO
Texto: ANO
 
Código: PERIODO
Descrição: PERIODO
Texto: PERIODO
 
 
2º Passo:
Acessar o menu "Cadastros -> Eventos" e efetuar o cadastro dos seguintes eventos respeitando a configuração abaixo:
 
Código: XXXX
Título: BASE INSS AUTÔNOMOS/OUTRO EMPREGO
Configuração do evento: Código de cálculo 0, tipo base de cálculo/Valor, com prioridade 0.
 
Código: YYYY
Título: INSS AUTÔNOMOS/OUTRO EMPREGO
Configuração do evento: Código de cálculo 0, desconto, tipo Valor, com prioridade 1.
 
Código: JJJJ
Título: Restituição de INSS de autônomo
Configuração do evento: Código de calculo 0, Base de calculo, tipo valor, Prioridade 0.
Obs.: O evento JJJJ deve ser informado quando no mês anterior o INSS do autônomo tenha sido descontado a maior, o sistema então irá deduzir este valor do calculo do INSS atual.
 
Código: WWWW
Título: Honorários autônomos/diretores
Configuração do evento: Código de calculo 46, Provento, tipo valor, prioridade 0.
 
 
Obs.: Onde WWWW, JJJJ, YYYY e XXXX correspondem ao código a ser criado a critério do cliente.
 
3º Passo: (Executar este passo apenas se a empresa trabalhar com transportadores autônomos – carreteiros)
Acessar o menu "Cadastros -> Eventos" e efetuar o cadastro do evento respeitando a configuração abaixo:
Código: BBBB
Título: Valor do frete de transporte
Configuração do evento: Código de cálculo 0, tipo Provento/Valor, com prioridade 0.
 
 
Acessar o módulo "Cadastro | fórmulas" e criar a fórmula abaixo:
Código: PPPP
Título: Base de INSS Transportador
Texto: C('BBBB')*0.20
 
 
Acessar o menu "Cadastros -> Eventos" e efetuar o cadastro do evento respeitando a configuração abaixo:
Código: ZZZZ
Título: Base de INSS autônomo carreteiro
Configuração do evento: Código de cálculo 46, tipo base de cálculo/Valor, com prioridade 10.
Fórmula valor: PPPP
 
Obs.: Onde BBBB,PPPP e ZZZZ correspondem ao código a ser criado a critério do cliente.
 
 
 
4º Passo:
Acessar o menu "Utilitários -> Consultas SQL" e cadastrar as seguintes sentenças SQL:
 
Código: INSSAA
Descrição: INSS AUTONOMO
Texto:
SELECT SUM(VALOR) VALOR FROM PFFINANC
WHERE CODEVENTO IN ( 'XXXX', 'WWWW','ZZZZ')
AND CODCOLIGADA=CODCOLIGADA
AND NROPERIODO<>:FRM_PERIODO
AND MESCOMP=:FRM_MES
AND ANOCOMP=:FRM_ANO
AND CHAPA=:FRM_CHAPA
 
Código: INSSVV
Descrição: VALOR JÁ DESC. DE INSS
Texto:
SELECT SUM(VALOR) VALOR FROM PFFINANC
WHERE CODEVENTO IN ('QQQQ', 'YYYY') /*Onde o evento YYYY e QQQQ será o código utilizado para desc. do INSS autônomos outro emprego*/
AND CODCOLIGADA=CODCOLIGADA
AND NROPERIODO<>:FRM_PERIODO
AND MESCOMP=:FRM_MES
AND ANOCOMP=:FRM_ANO
AND CHAPA=:FRM_CHAPA
 
Código: INSSRR
Descrição: VALOR DE RESTITUIÇÃO JÁ INFORMADO EM PERÍODOS ANTERIORES
Texto:
SELECT SUM(VALOR) VALOR FROM PFFINANC
WHERE CODEVENTO IN ('JJJJ') /*Onde o evento JJJJ será o código utilizado para informar a Restitiução de INSS de autônomo*/
AND CODCOLIGADA=CODCOLIGADA
AND NROPERIODO<>:FRM_PERIODO
AND MESCOMP=:FRM_MES
AND ANOCOMP=:FRM_ANO
AND CHAPA=:FRM_CHAPA
 
Substituindo os códigos MMMM, WWWW, YYYY, JJJJ, XXXX, YYYY e ZZZZ pelos seus respectivos de acordo com o cadastro de fórmulas.
 
 
5º Passo:
Acessar o menu "Cadastros -> Fórmulas" e cadastrar da seguinte fórmula:
 
Código: INSSAA
Descrição: INSS AUTÔNOMOS 11%
Texto:
DECL MAXIMO;
SETVAR(MAXIMO, TABCALCULO ('LIMITESUPERIOR','INSS',MTDATA (1, INCMES(MES,1), INCANO(MES,ANO,1)),3)*0.11 );
SE PERIODO=1 ENTAO
     MIN(MAXIMO,(C('XXXX')+ C('WWWW')+ C('ZZZZ'))*.11) - C('YYYY')-C('JJJJ')
SENAO SE PERIODO>1 ENTAO
     EXECSQL('INSSAA'); EXECSQL('INSSVV'); EXECSQL('INSSRR');
     MIN(MAXIMO,(RESULTSQL('INSSAA' , 'VALOR') +C('XXXX') C('WWWW')+ C('ZZZZ'))*.11) - RESULTSQL('INSSVV' , 'VALOR') - C('YYYY')
     - RESULTSQL('INSSRR' , 'VALOR') - C('JJJJ')
SENAO 0
FIMSE FIMSE
 
Substituindo os códigos MMMM, WWWW, YYYY, JJJJ, XXXX, YYYY e ZZZZ  pelos seus respectivos de acordo com o cadastro de fórmulas.
 
 
6º Passo:
Acessar o menu "Cadastros -> Eventos" e efetuar o cadastro dos seguintes eventos respeitando a configuração abaixo:
 
Código: QQQQ
Título: INSS 11% AUTÔNOMOS
Configuração do evento: Código de cálculo 85, desconto, tipo Valor, com prioridade 80 e associar a fórmula INSSAA, no campo fórmula valor.
 
Obs.: Onde QQQQ corresponde ao código a ser criado a critério do cliente.
 
 
7º Passo:
Lançar estes eventos junto ao evento de código de cálculo 46 (utilizado para pagamento dos autônomos)
 
 
O Autônomo deve estar cadastrado no sistema e no seu cadastro a opção "Caclula INSS" deve estar marcada.
Não lance o evento WWWW para carreteiros. 
 

Passo 1:

Criar fórmulas: 
 

1 - Código: ANO
Descrição: ANO
Fórmula: ANO 
 

2 - Código: MES
Descrição: MES
Fórmula: MES
 

3 - Código: MESCAIXA
Descrição: MÊS CAIXA
Fórmula: MESCX 
 

4 - Código: CHAPA
Descrição: CHAPA
Fórmula: CHAPA 
 

5 - Código: COLIGADA
Descrição: COLIGADA
Fórmula: COLIGADACORRENTE 
 

6 - Código: PERIODO
Descrição: PERIODO
Fórmula: PERIODO 

7- Código: PESSOA
Descrição: PESSOA
Texto: TABFUNC('CODPESSOA','S')


Passo 2:


Criar eventos: 1 -  Código: 0046 Descrição:PAGAMENTO DE AUTÔNOMOS CC 46, provento, valor, sem incidências. 2 -  Código: XXXX Descrição: INSS AUTÔNOMOS Fórmula: INSSAUT CC 85, desconto, valor, sem incidências. 3 -  Código: YYYY Descrição: IRRF AUTÔNOMOS Fórmula: IRRFAUT CC 84, desconto, valor, sem incidências, prioridade 99.  4 - WWWW Descrição:BASE TRIBUTADA DE INSS AUTÔNOMO MÚLTIPLOS VÍNCULOS,CC 417 base de calculo, valor, sem incidências, prioridade 81.


OBS.: Caso os eventos já existam com outro código, alterar o código correspondente no processo abaixo. O mesmo para casos onde já exista o código sugerido e há necessidade de criar outro código.

Passo 3:

Acessar o menu "Utilitários -> Consultas SQL" e cadastrar as seguintes sentenças SQL 

SQL

Oracle

SQL

Oracle

1 -  Código: IRRFAUT
Título: IRRF Autônomos 

1 -  Código: IRRFAUT
Título: IRRF Autônomos 

SELECT TAB1.VAL + TAB2.VAL RESULT

FROM

(SELECT ISNULL (SUM(PFFINANC.VALOR),0) VAL

FROM PFUNC, PFFINANC, PFPERFF

WHERE

PFUNC.CODCOLIGADA =:FRM_COLIGADA AND

PFUNC.CODPESSOA =:FRM_PESSOA AND

PFUNC.CODCOLIGADA = PFFINANC.CODCOLIGADA AND

PFUNC.CHAPA = PFFINANC.CHAPA AND

PFFINANC.CODEVENTO IN ('0046')AND

PFPERFF.ANOCOMP=:FRM_ANO AND

PFPERFF.MESCAIXACOMUM=:FRM_MESCAIXA AND

PFPERFF.CODCOLIGADA=:FRM_COLIGADA AND

PFPERFF.CODCOLIGADA=PFFINANC.CODCOLIGADA AND

PFPERFF.CHAPA=PFFINANC.CHAPA AND

PFPERFF.ANOCOMP=PFFINANC.ANOCOMP AND

PFPERFF.MESCOMP=PFFINANC.MESCOMP AND

PFPERFF.NROPERIODO=PFFINANC.NROPERIODO AND PFPERFF.MESCOMP =:FRM_MES /*MES ATUAL*/ ) TAB1,

(SELECT ISNULL(SUM(PFFINANC.VALOR),0) VAL

FROM PFUNC, PFFINANC, PFPERFF

WHERE

PFUNC.CODCOLIGADA =:FRM_COLIGADA AND

PFUNC.CODPESSOA =:FRM_PESSOA AND

PFUNC.CODCOLIGADA = PFFINANC.CODCOLIGADA AND

PFUNC.CHAPA = PFFINANC.CHAPA AND

PFFINANC.CODEVENTO IN ('0046') AND

PFPERFF.ANOCOMP=:FRM_ANO AND

PFPERFF.MESCAIXACOMUM=:FRM_MESCAIXA AND

PFPERFF.CODCOLIGADA=:FRM_COLIGADA AND

PFPERFF.CODCOLIGADA=PFFINANC.CODCOLIGADA AND

PFPERFF.CHAPA=PFFINANC.CHAPA AND

PFPERFF.ANOCOMP =PFFINANC.ANOCOMP AND

PFPERFF.MESCOMP =PFFINANC.MESCOMP AND

PFPERFF.NROPERIODO=PFFINANC.NROPERIODO AND PFPERFF.MESCOMP <:FRM_MES /*MESES ANTERIORES*/ ) TAB2

SELECT TAB1.VAL + TAB2.VAL RESULT

FROM

(SELECT NVL (SUM(PFFINANC.VALOR),0) VAL

FROM PFUNC, PFFINANC, PFPERFF

WHERE

PFUNC.CODCOLIGADA =:FRM_COLIGADA AND

PFUNC.CODPESSOA =:FRM_PESSOA  AND

PFUNC.CODCOLIGADA = PFFINANC.CODCOLIGADA AND

PFUNC.CHAPA = PFFINANC.CHAPA AND

PFFINANC.CODEVENTO IN ('0046') AND

PFPERFF.ANOCOMP=:FRM_ANO AND

PFPERFF.MESCAIXACOMUM=:FRM_MESCAIXA AND

PFPERFF.CODCOLIGADA=:FRM_COLIGADA AND

PFPERFF.CODCOLIGADA=PFFINANC.CODCOLIGADA AND

PFPERFF.CHAPA=PFFINANC.CHAPA AND

PFPERFF.ANOCOMP =PFFINANC.ANOCOMP AND

PFPERFF.MESCOMP =PFFINANC.MESCOMP AND

PFPERFF.NROPERIODO=PFFINANC.NROPERIODO AND PFPERFF.MESCOMP =:FRM_MES /*MES ATUAL*/ ) TAB1,

(SELECT NVL(SUM(PFFINANC.VALOR),0) VAL

FROM PFUNC, PFFINANC, PFPERFF

WHERE

PFUNC.CODCOLIGADA =:FRM_COLIGADA AND

PFUNC.CODPESSOA =:FRM_PESSOA AND

PFUNC.CODCOLIGADA = PFFINANC.CODCOLIGADA AND

PFUNC.CHAPA = PFFINANC.CHAPA AND

PFFINANC.CODEVENTO IN ('0046') AND

PFPERFF.ANOCOMP=:FRM_ANO AND

PFPERFF.MESCAIXACOMUM=:FRM_MESCAIXA AND

PFPERFF.CODCOLIGADA=:FRM_COLIGADA AND

PFPERFF.CODCOLIGADA=PFFINANC.CODCOLIGADA AND

PFPERFF.CHAPA=PFFINANC.CHAPA AND

PFPERFF.ANOCOMP =PFFINANC.ANOCOMP AND

PFPERFF.V=PFFINANC.MESCOMP AND

PFPERFF.NROPERIODO=PFFINANC.NROPERIODO AND PFPERFF.MESCOMP <:FRM_MES /*MESES ANTERIORES*/ ) TAB2

2 -  Código: IRRFAUT1
Título: IRRF Autônomos 1 

2 -  Código: IRRFAUT1
Título: IRRF Autônomos 1 

SELECT TAB1.VAL + TAB2.VAL RESULT

FROM

(SELECT ISNULL (SUM(PFFINANC.VALOR),0) VAL

FROM PFUNC, PFFINANC, PFPERFF

WHERE

PFUNC.CODCOLIGADA =:FRM_COLIGADA AND

PFUNC.CODPESSOA =:FRM_PESSOA AND

PFUNC.CODCOLIGADA = PFFINANC.CODCOLIGADA AND

PFUNC.CHAPA = PFFINANC.CHAPA AND

PFFINANC.CODEVENTO IN ('XXXX') AND

PFPERFF.ANOCOMP=:FRM_ANO AND

PFPERFF.MESCAIXACOMUM=:FRM_MESCAIXA AND

PFPERFF.CODCOLIGADA=:FRM_COLIGADA AND

PFPERFF.CODCOLIGADA=PFFINANC.CODCOLIGADA AND

PFPERFF.CHAPA=PFFINANC.CHAPA AND

PFPERFF.ANOCOMP =PFFINANC.ANOCOMP AND

PFPERFF.MESCOMP =PFFINANC.MESCOMP AND

PFPERFF.NROPERIODO =PFFINANC.NROPERIODO AND

PFPERFF.MESCOMP =:FRM_MES /*MES ATUAL*/ ) TAB1,

(SELECT ISNULL (SUM(PFFINANC.VALOR),0) VAL

FROM PFUNC, PFFINANC, PFPERFF

WHERE

PFUNC.CODCOLIGADA =:FRM_COLIGADA AND

PFUNC.CODPESSOA =:FRM_PESSOA AND

PFUNC.CODCOLIGADA = PFFINANC.CODCOLIGADA AND

PFUNC.CHAPA = PFFINANC.CHAPA AND

PFFINANC.CODEVENTO IN ('XXXX') AND

PFPERFF.ANOCOMP=:FRM_ANO AND

PFPERFF.MESCAIXACOMUM=:FRM_MESCAIXA AND

PFPERFF.CODCOLIGADA=:FRM_COLIGADA AND

PFPERFF.CODCOLIGADA=PFFINANC.CODCOLIGADA AND

PFPERFF.CHAPA=PFFINANC.CHAPA AND

PFPERFF.ANOCOMP =PFFINANC.ANOCOMP AND

PFPERFF.MESCOMP =PFFINANC.MESCOMP AND

PFPERFF.NROPERIODO =PFFINANC.NROPERIODO AND

PFPERFF.MESCOMP <:FRM_MES /*MESES ANTERIORES*/ ) TAB2

SELECT TAB1.VAL + TAB2.VAL RESULT

FROM

(SELECT NVL(SUM(PFFINANC.VALOR),0) VAL

FROM PFUNC, PFFINANC, PFPERFF

WHERE

PFUNC.CODCOLIGADA =:FRM_COLIGADA AND

PFUNC.CODPESSOA =:FRM_PESSOA AND

PFUNC.CODCOLIGADA = PFFINANC.CODCOLIGADA AND

PFUNC.CHAPA = PFFINANC.CHAPA AND

PFFINANC.CODEVENTO IN ('XXXX') AND

PFPERFF.ANOCOMP=:FRM_ANO AND

PFPERFF.MESCAIXACOMUM=:FRM_MESCAIXA AND

PFPERFF.CODCOLIGADA=:FRM_COLIGADA AND

PFPERFF.CODCOLIGADA=PFFINANC.CODCOLIGADA AND

PFPERFF.CHAPA=PFFINANC.CHAPA AND

PFPERFF.ANOCOMP =PFFINANC.ANOCOMP AND

PFPERFF.MESCOMP =PFFINANC.MESCOMP AND

PFPERFF.NROPERIODO =PFFINANC.NROPERIODO AND

PFPERFF.MESCOMP =:FRM_MES /*MES ATUAL*/ ) TAB1,

(SELECT NVL(SUM(PFFINANC.VALOR),0) VAL

FROM PFUNC, PFFINANC, PFPERFF

WHERE

PFUNC.CODCOLIGADA =:FRM_COLIGADA AND

PFUNC.CODPESSOA =:FRM_PESSOA AND

PFUNC.CODCOLIGADA = PFFINANC.CODCOLIGADA AND

PFUNC.CHAPA = PFFINANC.CHAPA AND

PFFINANC.CODEVENTO IN ('XXXX') AND

PFPERFF.ANOCOMP=:FRM_ANO AND

PFPERFF.MESCAIXACOMUM=:FRM_MESCAIXA AND

PFPERFF.CODCOLIGADA=:FRM_COLIGADA AND

PFPERFF.CODCOLIGADA=PFFINANC.CODCOLIGADA AND

PFPERFF.CHAPA=PFFINANC.CHAPA AND

PFPERFF.ANOCOMP =PFFINANC.ANOCOMP AND

PFPERFF.MESCOMP =PFFINANC.MESCOMP AND

PFPERFF.NROPERIODO =PFFINANC.NROPERIODO AND

PFPERFF.MESCOMP <:FRM_MES /*MESES ANTERIORES*/ ) TAB2

3 -  Código: IRRFDESC
Título: IRRF Desconta do de Autônomos 

3 -  Código: IRRFDESC
Título: IRRF Desconta do de Autônomos 
 

SELECT TAB1.VAL + TAB2.VAL RESULT

FROM

(SELECT ISNULL (SUM(PFFINANC.VALOR),0) VAL

FROM PFUNC, PFFINANC, PFPERFF

WHERE

PFUNC.CODCOLIGADA =:FRM_COLIGADA AND

PFUNC.CODPESSOA =:FRM_PESSOA AND

PFUNC.CHAPA <> :FRM_CHAPA AND

PFUNC.CODCOLIGADA = PFFINANC.CODCOLIGADA AND

PFUNC.CHAPA = PFFINANC.CHAPA AND

PFFINANC.CODEVENTO IN ('YYYY')  AND

PFPERFF.ANOCOMP=:FRM_ANO AND

PFPERFF.MESCAIXACOMUM=:FRM_MESCAIXA AND

PFPERFF.CODCOLIGADA=:FRM_COLIGADA AND

PFPERFF.CODCOLIGADA=PFFINANC.CODCOLIGADA AND

PFPERFF.CHAPA=PFFINANC.CHAPA AND

PFPERFF.ANOCOMP =PFFINANC.ANOCOMP AND

PFPERFF.MESCOMP =PFFINANC.MESCOMP AND

PFPERFF.NROPERIODO =PFFINANC.NROPERIODO AND

PFPERFF.MESCOMP =:FRM_MES /*MES ATUAL*/ ) TAB1,

(SELECT ISNULL (SUM(PFFINANC.VALOR),0) VAL

FROM PFUNC, PFFINANC, PFPERFF

WHERE

PFUNC.CODCOLIGADA =:FRM_COLIGADA AND

PFUNC.CODPESSOA =:FRM_PESSOA AND

PFUNC.CHAPA <> :FRM_CHAPA AND

PFUNC.CODCOLIGADA = PFFINANC.CODCOLIGADA AND

PFFINANC.CODEVENTO IN ('YYYY') AND

PFPERFF.ANOCOMP=:FRM_ANO AND

PFPERFF.MESCAIXACOMUM=:FRM_MESCAIXA AND

PFPERFF.CODCOLIGADA=:FRM_COLIGADA AND

PFPERFF.CODCOLIGADA=PFFINANC.CODCOLIGADA AND

PFPERFF.CHAPA=PFFINANC.CHAPA AND

PFPERFF.ANOCOMP =PFFINANC.ANOCOMP AND

PFPERFF.MESCOMP =PFFINANC.MESCOMP AND

PFPERFF.NROPERIODO =PFFINANC.NROPERIODO AND

PFPERFF.MESCOMP <:FRM_MES /*MESES ANTERIORES*/ ) TAB2

SELECT TAB1.VAL + TAB2.VAL RESULT

FROM

(SELECT NVL(SUM(PFFINANC.VALOR),0) VAL

FROM PFUNC, PFFINANC, PFPERFF

WHERE

PFUNC.CODCOLIGADA =:FRM_COLIGADA AND

PFUNC.CODPESSOA =:FRM_PESSOA AND

PFUNC.CHAPA <> :FRM_CHAPA AND

PFUNC.CODCOLIGADA = PFFINANC.CODCOLIGADA AND

PFUNC.CHAPA = PFFINANC.CHAPA AND

PFFINANC.CODEVENTO IN ('YYYY') AND

PFPERFF.ANOCOMP=:FRM_ANO AND

PFPERFF.MESCAIXACOMUM=:FRM_MESCAIXA AND

PFPERFF.CODCOLIGADA=:FRM_COLIGADA AND

PFPERFF.CODCOLIGADA=PFFINANC.CODCOLIGADA AND

PFPERFF.CHAPA=PFFINANC.CHAPA AND

PFPERFF.ANOCOMP =PFFINANC.ANOCOMP AND

PFPERFF.MESCOMP =PFFINANC.MESCOMP AND

PFPERFF.NROPERIODO =PFFINANC.NROPERIODO AND

PFPERFF.MESCOMP =:FRM_MES /*MES ATUAL*/ ) TAB1,

(SELECT NVL (SUM(PFFINANC.VALOR),0) VAL

FROM PFUNC, PFFINANC, PFPERFF

WHERE

PFUNC.CODCOLIGADA =:FRM_COLIGADA AND

PFUNC.CODPESSOA =:FRM_PESSOA AND

PFUNC.CHAPA <> :FRM_CHAPA AND

PFUNC.CODCOLIGADA = PFFINANC.CODCOLIGADA AND

PFFINANC.CODEVENTO IN ('YYYY')  AND

PFPERFF.ANOCOMP=:FRM_ANO AND

PFPERFF.MESCAIXACOMUM=:FRM_MESCAIXA AND

PFPERFF.CODCOLIGADA=:FRM_COLIGADA AND

PFPERFF.CODCOLIGADA=PFFINANC.CODCOLIGADA AND

PFPERFF.CHAPA=PFFINANC.CHAPA AND

PFPERFF.ANOCOMP =PFFINANC.ANOCOMP AND

PFPERFF.MESCOMP =PFFINANC.MESCOMP AND

PFPERFF.NROPERIODO =PFFINANC.NROPERIODO AND

PFPERFF.MESCOMP <:FRM_MES /*MESES ANTERIORES*/ ) TAB2


Passo 4:

Criar as formulas

1 -  Código: IRRFAUT
Descrição: IRRFAUT
Fórmula: 
 EXECSQL ('IRRFDESC');

EXECSQL ('IRRFAUT1');

EXECSQL ('IRRFAUT');

SE TFUNC ='A' ENTAO (TR ((((RESULTSQL ('IRRFAUT' , 'RESULT')))*0.40) - (( RESULTSQL ('IRRFAUT1' , 'RESULT'))))- RESULTSQL ('IRRFDESC' , 'RESULT')) SENAO FALSO FIMSE


2 -  Código: INSSAUT
Descrição: INSS Autônomos
Fórmula: 
 DECL MAXIMO;
SETVAR(MAXIMO, TABCALCULO ('LIMITESUPERIOR','INSS',MTDATA (1, INCMES(MES,1), INCANO(MES,ANO,1)),3)*0.20 );
SE LI('WWWW')=0
ENTAO MIN(MAXIMO,LI('0046')*0.20)
SENAO MIN(MAXIMO,LI('WWWW')*0.20)
FIMSE

Observação:

Calculo da formula baseado no parâmetro "Calcula INSS conforme eSocial"  marcado.


 Deverá lançar os eventos 0046, XXXX, YYYY, WWWW no envelope e pedir recálculo.
OBS: O único que deverá ser informado o valor é o 0046 (Pagamento).



Exemplo: Foi lançado para a primeira chapa os eventos 0046 - PAGAMENTO DE AUTÔNOMOS no valor de R$ 7.000,  XXXX - INSS AUTÔNOMOS sem valor e YYYY - IRRF AUTÔNOMOS sem valor. Feito o calculo e o recalculo. Sistema realizou corretamente o calculo de IRRF.

Na segunda chapa foram lançados os eventos 0046 - PAGAMENTO DE AUTÔNOMOS no valor de R$ 8.000,  XXXX - INSS AUTÔNOMOS sem valor e YYYY - IRRF AUTÔNOMOS sem valor. Feito o calculo e o recalculo. Sistema considerou o calculo da outra chapa e realizou o calculo corretamente.

Na primeira chapa será informado o valor de base para controle do calculo.