Produto: RMLabore

Processo: Cálculo de INSS Autônomos

IVersão: 11.5X ou superior


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. 
 
 
   
Exemplo de parametrização realizada para carreteiros.


 Criar fórmulas: 
 

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

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

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
Criar eventos: 1 -  Código: 0251 Descrição: Pagamento de AutônomoCarreteiro CC 0, provento, valor, sem incidência alguma. 2 -  Código: 0256 Descrição: INSS 11% Autônomos Fórmula: INSSAUT CC 85, desconto, valor, sem incidência alguma. 3 -  Código: 3400 Descrição: IRRF Autônomos Fórmula: IRRFAUT CC 84, desconto, valor, sem incidência alguma, 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 


SQLOracle
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 PFFINANC, PFPERFF
WHERE 
PFFINANC.CODEVENTO ='0251'AND
PFPERFF.ANOCOMP=:FRM_ANO AND
PFPERFF.CHAPA=:FRM_CHAPA 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.NROPERIODO <>:FRM_PERIODO
AND PFPERFF.MESCOMP =:FRM_MES /*MES ATUAL*/ ) TAB1,
(SELECT ISNULL(SUM(PFFINANC.VALOR),0) VAL
FROM PFFINANC, PFPERFF
WHERE 
PFFINANC.CODEVENTO ='0251'AND
PFPERFF.ANOCOMP=:FRM_ANO AND
PFPERFF.CHAPA=:FRM_CHAPA 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 PFFINANC, PFPERFF
WHERE 
PFFINANC.CODEVENTO ='0251'AND
PFPERFF.ANOCOMP=:FRM_ANO AND
PFPERFF.CHAPA=:FRM_CHAPA 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.NROPERIODO <>:FRM_PERIODO
AND PFPERFF.MESCOMP =:FRM_MES /*MES ATUAL*/ ) TAB1,
(SELECT NVL(SUM(PFFINANC.VALOR),0) VAL
FROM PFFINANC, PFPERFF
WHERE 
PFFINANC.CODEVENTO ='0251'AND
PFPERFF.ANOCOMP=:FRM_ANO AND
PFPERFF.CHAPA=:FRM_CHAPA 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 
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 PFFINANC, PFPERFF
WHERE 
PFFINANC.CODEVENTO ='0256'AND
PFPERFF.ANOCOMP=:FRM_ANO AND
PFPERFF.CHAPA=:FRM_CHAPA 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.NROPERIODO <>:FRM_PERIODO
AND PFPERFF.MESCOMP =:FRM_MES /*MES ATUAL*/ ) TAB1,
(SELECT ISNULL(SUM(PFFINANC.VALOR),0) VAL
FROM PFFINANC, PFPERFF
WHERE 
PFFINANC.CODEVENTO ='0256'AND
PFPERFF.ANOCOMP=:FRM_ANO AND
PFPERFF.CHAPA=:FRM_CHAPA 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 PFFINANC, PFPERFF
WHERE 
PFFINANC.CODEVENTO ='0256'AND
PFPERFF.ANOCOMP=:FRM_ANO AND
PFPERFF.CHAPA=:FRM_CHAPA 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.NROPERIODO <>:FRM_PERIODO
AND PFPERFF.MESCOMP =:FRM_MES /*MES ATUAL*/ ) TAB1,
(SELECT NVL(SUM(PFFINANC.VALOR),0) VAL
FROM PFFINANC, PFPERFF
WHERE 
PFFINANC.CODEVENTO ='0256'AND
PFPERFF.ANOCOMP=:FRM_ANO AND
PFPERFF.CHAPA=:FRM_CHAPA 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 PFFINANC, PFPERFF
WHERE 
PFFINANC.CODEVENTO ='3400'AND
PFPERFF.ANOCOMP=:FRM_ANO AND
PFPERFF.CHAPA=:FRM_CHAPA 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.NROPERIODO <>:FRM_PERIODO
AND PFPERFF.MESCOMP =:FRM_MES /*MES ATUAL*/ ) TAB1,
(SELECT ISNULL(SUM(PFFINANC.VALOR),0) VAL
FROM PFFINANC, PFPERFF
WHERE 
PFFINANC.CODEVENTO ='3400'AND
PFPERFF.ANOCOMP=:FRM_ANO AND
PFPERFF.CHAPA=:FRM_CHAPA 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 PFFINANC, PFPERFF
WHERE 
PFFINANC.CODEVENTO ='3400'AND
PFPERFF.ANOCOMP=:FRM_ANO AND
PFPERFF.CHAPA=:FRM_CHAPA 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.NROPERIODO <>:FRM_PERIODO
AND PFPERFF.MESCOMP =:FRM_MES /*MES ATUAL*/ ) TAB1,
(SELECT NVL (SUM(PFFINANC.VALOR),0) VAL
FROM PFFINANC, PFPERFF
WHERE 
PFFINANC.CODEVENTO ='3400'AND
PFPERFF.ANOCOMP=:FRM_ANO AND
PFPERFF.CHAPA=:FRM_CHAPA 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 



Criar fórmula:
7 -  Código: IRRFAUT
Descrição: IRRFAUT
Fórmula: 
 

EXECSQL ('IRRFDESC');
EXECSQL ('IRRFAUT1');
EXECSQL ('IRRFAUT') ;
SE TFUNC ='A' ENTAO TR ( ( (RESULTSQL ('IRRFAUT' , 'RESULT')+C('0251'))*0.40) - ((C('0256') + RESULTSQL ('IRRFAUT1' , 'RESULT'))))-RESULTSQL ('IRRFDESC' , 'RESULT') SENAO FALSO FIMSE

8 -  Código: INSSAUT
Descrição: INSS Autônomos
Fórmula: 
 

T ('0003', (LI ('0251'))*0.20) - (T ('0003', (LI ('0251') -C('0251'))*0.20))

9 -  Código: 0096
Descrição: Base INSS Autônomos
 

Fórmula: C('0251') * 0.20

10 -  Código: 0097
Descrição: Base IRRF Autônomos
 

Fórmula: C('0251') * 0.40


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