Wiki / SuperCalculo ~4 min

211 - Reemb. Desc. Mensalidade Sindical

⚙️ Metadados

  • Código: 211
  • Tipo: Provento
  • INSS: ISE
  • FGTS: ISE
  • IRRF: ISE
  • Natureza eSocial: 9231 - Mensalidade sindical ou associativa
  • DSR: Não
  • Médias: Não
  • Impacto Financeiro: Não
  • Impacto Contábil: Sim
  • Sequência: 1075

🧮 Regra Geral

ID da Fórmula: 19065

  • Lógica de Cálculo: Esta verba é calculada apenas se houver um lançamento manual existente para ela. O sistema verifica a presença de um lançamento através da função Func_ValidarExistenciaLancamento. Se não houver lançamento, o cálculo é interrompido (return null), resultando em valor zero para a verba. Caso contrário, o valor da verba será o valor lançado manualmente.

  • Fórmula matemática:

    • Valor = VlrLancado (se Func_ValidarExistenciaLancamento for verdadeiro)
  • Variáveis Utilizadas:

    • Lancamento (representa o objeto de lançamento da verba), VlrLancado (valor lançado manualmente, implícito).

🧩 Funções

  • Func_ValidarExistenciaLancamento(Lancamento): Verifica se existe um lançamento manual para a verba em questão.

💡 Proposta de Novo Cálculo

Fórmula proposta (padronizada):

ValorTotal = Positivo( Arredondar( Minimo( ValorBaseReembolso, ValorTotalDescontadoHistorico ) ) )


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

Se (Configuracao.RubricaInativa == Verdadeiro O Solicitacao.HoleriteSimulado == Verdadeiro O Solicitacao.TipoProcesso == EnumTipoProcessoBO.Provisoes) { HoleriteVerba = null; InterromperCalculo(); }

Restrição por Tipo de Folha Processada Se (Configuracao.ListaTiposFolhaPermitidos.Tamanho > 0 E Nao Configuracao.ListaTiposFolhaPermitidos.Contem(Solicitacao.TipoFolha)) { EscreverMemoria(“[REEMB_MENS_SIND]”, “Cálculo interrompido: Tipo de folha (” + Solicitacao.TipoFolha + ”) não habilitado para a rubrica.”); HoleriteVerba = null; InterromperCalculo(); }

2. Determinação da Base de Cálculo (Lançamento Manual vs Apuração Automática por Indébito)

Definir PossuiLancamentoManual = Func_ValidarExistenciaLancamento(Lancamento); Definir ValorBaseReembolso = 0.00;

Se (PossuiLancamentoManual == Verdadeiro E Lancamento.ValorTotal > 0.00) { ValorBaseReembolso = Positivo(Lancamento.ValorTotal); } Senao Se (Configuracao.PermitirCalculoAutomaticoReembolso == Verdadeiro) { Apuração Automática: Devolução de Desconto Indevido de Mensalidade Sindical no Mês ou Anterior Definir ValorDescontadoSindical = Holerite.ObterSomaVerbas( Configuracao.ListaRubricasDescontoSindical, Solicitacao.DataReferencia ); Definir ValorDevidoSindical = ModuloSindicato.ObterValorDevidoMensalidade(Empregado.Id, Solicitacao.DataReferencia);

Se (ValorDescontadoSindical > ValorDevidoSindical) { ValorBaseReembolso = ValorDescontadoSindical - ValorDevidoSindical; } }

Validação de Existência de Valor a Processar (Piso Seguro de Entrada) Se (ValorBaseReembolso <= 0.00) { EscreverMemoria(“[REEMB_MENS_SIND]”, “Cálculo interrompido: Nenhum lançamento manual ou valor de reembolso apurado.”); HoleriteVerba = null; InterromperCalculo(); }

3. Aplicação de Limites e Ajuste de Valor Final

Definir ValorTotalDescontadoHistorico = Holerite.ObterSomaVerbasHistorico( Configuracao.ListaRubricasDescontoSindical, Solicitacao.DataReferencia );

Definir ValorMaximoReembolso = ValorTotalDescontadoHistorico > 0.00 ? ValorTotalDescontadoHistorico : ValorBaseReembolso;

Se (Configuracao.AplicarTetoTotalDescontado == Verdadeiro E ValorBaseReembolso > ValorMaximoReembolso) { ValorBaseReembolso = ValorMaximoReembolso; }

Definir ValorProventoFinal = Func_ArredondamentoPadrao(ValorBaseReembolso);

4. Gravação da Rubrica Resultante e Enquadramento Fiscal Conforme Legislação (Devolução de Estorno / Natureza eSocial 9231)

RubricaGerada = CriarInstanciaRubrica(Configuracao.CodigoRubricaDestino); RubricaGerada.Quantidade = 1.00; RubricaGerada.ValorReferencia = ValorBaseReembolso; RubricaGerada.ValorTotal = Positivo(ValorProventoFinal);

Incidências Fiscais (Isenção Integral - Devolução de Valores de Natureza Não Tributável) RubricaGerada.IncideINSS = EnumIncidencia.ISENTO; RubricaGerada.IncideFGTS = EnumIncidencia.ISENTO; RubricaGerada.IncideIRRF = EnumIncidencia.ISENTO;

AdicionarAoHolerite(RubricaGerada); EscreverMemoria(“[REEMB_MENS_SIND]”, “Reembolso do desconto de mensalidade sindical processado com sucesso.”);


Parametrizações Propostas para Reestruturação

1. REGRAS DE ENTRADA E FONTE DE DADOS

[ ] Inativar Rubrica (Desativa o cálculo globalmente) [X] Exigir Lançamento Manual / Importação Externa de Valores [ ] Permitir Apuração Automática por Estorno/Devolução (Descontado - Devido) [X] Interromper Processamento se o Valor Resultante For Igual a Zero (0,00)

2. AMBIENTE E TIPOS DE FOLHA PERMITIDOS

Tipos de Processamento Habilitados: [X] Regular / Mensal [X] Rescisão / Desligamento [ ] Décimo Terceiro (13º Salário) [X] Complementar / Retroativa

3. DIRETRIZES DE VALIDAÇÃO E TETO DE REEMBOLSO

[X] Aplicar Teto MÁXIMO de Reembolso ao Total de Mensalidade Sindical Descontada └─ Rubricas de Desconto Sindical Relacionadas: [ 511, 512, 513 ]

4. ENCARGOS E ENQUADRAMENTO FISCAL

Enquadramento Fiscal eSocial (Natureza 9231 - Mensalidade sindical ou associativa): INSS: [ ISE - Isento ] FGTS: [ ISE - Isento ] IRRF: [ ISE - Isento ]

Clientes com mesma regra

  • Clientes Padrão e Empresas com Lançamento Manual: O fluxo dynamic absorve integralmente a operação atual da verba 211. Mantendo a opção “Exigir Lançamento Manual / Importação Externa de Valores” ativada, o motor valida a presença do lançamento por meio de Func_ValidarExistenciaLancamento(Lancamento) e credita o provento no holerite, mantendo a isenção tributária integral (INSS, FGTS e IRRF) associada à Natureza eSocial 9231.

Status Documental

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

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