Wiki / SuperCalculo ~3 min

466 - Desc. de Falta (dia)

Metadados

  • Código: 466
  • Tipo: Desconto
  • INSS: SAL
  • FGTS: SAL
  • IRRF: SAL
  • Natureza eSocial: 9209 - Faltas ou atrasos
  • DSR: Não
  • Médias: Não
  • Impacto Financeiro: Não
  • Impacto Contábil: Sim
  • Sequência: 832

🧮 Regra Geral

Lógica de Cálculo:

  1. A verba é calculada apenas se a Lancamento.Quantidade (quantidade de dias de falta) for maior que zero.
  2. Inicialmente, a base de cálculo para faltas (BC_Para_Faltas) é definida como VG_BCHExtAdNot (Base de Cálculo de Horas Extras e Adicional Noturno).
  3. A HoleriteVerba.Quantidade é definida com o valor de Lancamento.Quantidade.
  4. O HoleriteVerba.ValorTotal é calculado dividindo a BC_Para_Faltas pelo VG_DivisorDiasMes (divisor de dias do mês), multiplicando pela Lancamento.Quantidade e aplicando o arredondamento padrão (Func_ArredondamentoPadrao). O resultado final é transformado em negativo pela função Negativo(), indicando um desconto.
  5. A memória de cálculo é gerada detalhando os valores utilizados.
  • Fórmula matemática:

    • Valor = -Func_ArredondamentoPadrao((BC_Para_Faltas / VG_DivisorDiasMes) * Lancamento.Quantidade)
  • Variáveis Utilizadas:

    • Lancamento.Quantidade
    • BC_Para_Faltas
    • VG_BCHExtAdNot
    • Solicitacao.Cliente
    • VG_VlrSalNom
    • VG_DivisorDiasMes
    • HoleriteVerba.Quantidade
    • HoleriteVerba.ValorTotal.
  • Condições Especiais:

    • if (Lancamento.Quantidade > 0M): A verba só é processada se houver quantidade de faltas.

🧩 Funções

  • Negativo(): Converte um valor para negativo.
  • Func_ArredondamentoPadrao(): Arredonda um valor monetário conforme a regra padrão do sistema.
  • Argumento(): Registra um valor para ser usado na memória de cálculo.
  • EscreverMemoria(): Formata e armazena a memória de cálculo.

🎯 Particularidades por Cliente/Setor

👤 Jufap
  • Se a BC_Para_Faltas é alterada para VG_VlrSalNom (Valor do Salário Nominal).

  • Condições Especiais:

    • if (Solicitacao.Cliente.ToLower() == "jufap"): Customiza a base de cálculo para o cliente JUFAP.

💡 Proposta de Novo Cálculo

Fórmula proposta (padronizada):

ValorTotal = -1 * Func_ArredondamentoPadrao((BaseCalculoFaltas / DivisorDias) * Lancamento.Quantidade)

Onde BaseCalculoFaltas = Se (Configuracao.UtilizarSalarioNominalPuro) Entao VG_VlrSalNom Senao VG_BCHExtAdNot.


1. Filtros de Elegibilidade e Isenções (Piso Seguro)

Definir ExisteLancamento = Func_ValidarExistenciaLancamento(Lancamento); Definir DiasFalta = 0.00;

Se (ExisteLancamento == Verdadeiro) { DiasFalta = Lancamento.Quantidade; }

// A verba de desconto só é calculada se houver lançamento ativo e quantidade de dias > 0 Se (ExisteLancamento == Falso Ou DiasFalta <= 0.00) { HoleriteVerba = null; InterromperCalculo(); }

2. Determinação do Divisor de Dias e Base de Cálculo

Definir DivisorDias = VG_DivisorDiasMes;

// Se o divisor for inconsistente (zero ou negativo), assume o divisor padrão parametrizado (ex: 30 dias) Se (DivisorDias <= 0.00) { DivisorDias = Configuracao.DivisorDiasPadrao; }

Definir BaseCalculoFaltas = VG_BCHExtAdNot;

// Caso parametrizado, permite utilizar o salário nominal puro como base alternativa Se (Configuracao.UtilizarSalarioNominalPuro == Verdadeiro) { BaseCalculoFaltas = VG_VlrSalNom; }

3. Liquidação e Atribuição de Valores (INSS: SAL, FGTS: SAL, IRRF: SAL)

Definir ValorCalculado = (BaseCalculoFaltas / DivisorDias) * DiasFalta; Definir ValorFinalDesconto = Func_ArredondamentoPadrao(ValorCalculado);

// Garante o sinal negativo para representação de desconto no holerite Definir ValorTotalLiquidado = Negativo(ValorFinalDesconto);

HoleriteVerba.ValorTotal = ValorTotalLiquidado; HoleriteVerba.Quantidade = DiasFalta; HoleriteVerba.ValorIntegral = Negativo(ValorCalculado);

// Vinculação tributária conforme parametrização da Rubrica Mãe e eSocial Natureza 9209 (Faltas e Atrasos) HoleriteVerba.IncidenciaINSS = RubricaMae.IncidenciaINSS; // SAL (Reduz base) HoleriteVerba.IncidenciaFGTS = RubricaMae.IncidenciaFGTS; // SAL (Reduz base) HoleriteVerba.IncidenciaIRRF = RubricaMae.IncidenciaIRRF; // SAL (Reduz base)

4. Rastreabilidade e Auditoria

Argumento(BaseCalculoFaltas.ToString(“F2”)); Argumento(DivisorDias.ToString(“F0”)); Argumento(DiasFalta.ToString(“F2”)); Argumento(ValorTotalLiquidado.ToString(“F2”));

EscreverMemoria(“[DESC_FALTA_DIA]”, “Base de Cálculo: R$ {0}. Divisor Mensal: {1} dias. Quantidade de Faltas: {2} d. Valor Descontado: R$ {3}.”);

AdicionarAoHolerite(HoleriteVerba);

Parametrizações Propostas para Reestruturação

1. PARAMETRIZAÇÃO DE CÁLCULO E DIVISORES

[X] Exigir Validação de Lançamento Ativo para Geração do Desconto [X] Aplicar Divisor de Dias do Mês de Referência (VG_DivisorDiasMes) -> Divisor de Contingência (Divisão por Zero): [ 30 ] Dias

2. COMPOSIÇÃO DA BASE DE CÁLCULO DE FALTA

Composição da Base de Faltas (Selecionar uma opção): ( ) Utilizar Salário Nominal Puro (VG_VlrSalNom) (X) Utilizar Base Consolidada de Horas Extras e Adicional Noturno (VG_BCHExtAdNot)

3. MATRIX TRIBUTÁRIA ESOCIAL E ENCARGOS

Código da Rubrica Destino: [ 466 ] Natureza eSocial: [ 9209 - Faltas ou atrasos ] Incidência INSS: [ SAL - Reduz Base ] DSR: [ Não ] Incidência FGTS: [ SAL - Reduz Base ] Médias: [ Não ] Incidência IRRF: [ SAL - Reduz Base ] Impacto Financeiro: [ Sim ] Impacto Contábil: [ Sim ]

Clientes com mesma regra

  • Jufap: A operação do cliente Jufap é totalmente suportada pela nova estrutura parametrizada. O cálculo passa a responder de forma limpa ao volume de dias lançado, apurando o desconto proporcional sobre a base salarial padrão consolidada na variável VG_BCHExtAdNot dividido pelos dias do mês, eliminando qualquer dependência de filtros manuais ou desvios de programação.

Status Documental

  • Status: Documentada
  • Origem: export do Notion + catálogo da wiki
  • Fonte rastreável: 30dc75ea2e8381c2a458c3a0dacb3065

Voltar ao catálogo

Digite para pesquisar...

Scroll para zoom · Esc para fechar

⌨️ Atalhos de teclado
Navegação
Ctrl K Pesquisar na wiki
Ctrl F Buscar na página
? Ver atalhos
Visualização
Ctrl Shift F Modo foco
A+ / A− Tamanho da fonte
Ctrl D Alternar tema
Ações
Ctrl B Favoritar página
Esc Fechar dialogs