Wiki / SuperCalculo ~5 min

199 - Adiant. 13º Sal. Compl. Afastados - CCT

⚙️ Metadados

  • Código: 199
  • Tipo: Provento
  • INSS: ISE
  • FGTS: ISE
  • IRRF: ISE
  • Natureza eSocial: 5504 - 13º salário - Adiantamento
  • DSR: Não
  • Médias: Não
  • Impacto Financeiro: Não
  • Impacto Contábil: Sim
  • Sequência: 757

🧮 Regra Geral

  • Exclusivo Jmalucelli. Se o cliente for diferente, a fórmula retorna null, impedindo o cálculo.

🎯 Particularidades por Cliente/Setor

👤 Jmalucelli
  1. Validação de Lançamento em Dezembro: Se houver um lançamento para esta verba (Func_ValidarExistenciaLancamento retorna true) e o mês de referência for dezembro (12), o cálculo é interrompido com uma mensagem de erro (SysFunc_Panico), pois não é permitido o pagamento de adiantamento de 13º salário neste mês.
  2. Cálculo Principal: Se houver um lançamento com ValorTotal positivo (> 0M) e o mês de referência não for dezembro:
    • O ValorTotal da verba é definido como o ValorTotal do lançamento (Lancamento.ValorTotal).
    • É realizada uma verificação no histórico do empregado para o ano corrente (Solicitacao.DataReferencia.Year).
    • A verificação busca por holerites do tipo Ferias ou AdiantamentoDecimoTerceiro que já tenham sido pagos.
    • Dentro desses holerites, verifica-se a existência das verbas 405 (Adiantamento 13º Salário) ou 199 (a própria verba atual) com ValorTotal positivo.
    • Se qualquer uma dessas verbas for encontrada no histórico do ano, o cálculo é interrompido com uma mensagem de erro (SysFunc_Panico), indicando que já houve pagamento de adiantamento de 13º salário no ano.
  • Fórmula matemática:

    • HoleriteVerba.ValorTotal = Lancamento.ValorTotal
  • Variáveis Utilizadas:

    • Solicitacao.Cliente
    • Lancamento
    • Solicitacao.DataReferencia
    • HoleriteVerba.ValorTotal
    • Lancamento.ValorTotal
    • Empregado.Historico.ListaHolerite
    • HO.TipoFolha
    • HO.DataPagamento
    • HO.PeriodoCalculo.DataReferencia.Year
    • HV.Verba.Codigo
    • HV.ValorTotal.
  • Condições Especiais:

    • if (Solicitacao.Cliente.ToLower() != "jmalucelli"): Restringe o cálculo ao cliente “jmalucelli”.
    • if (Func_ValidarExistenciaLancamento(Lancamento) == true && Solicitacao.DataReferencia.Month == 12): Impede o pagamento em dezembro.
    • if (Func_ValidarExistenciaLancamento(Lancamento) == true && Lancamento.ValorTotal > 0M && Solicitacao.DataReferencia.Month != 12): Bloco principal de cálculo, ativado se houver lançamento positivo fora de dezembro.
    • Loop de verificação de histórico para evitar pagamentos duplicados de adiantamento de 13º salário (verbas 405 ou 199) no mesmo ano.
  • Gatilhos:

    • Quando a verba é calculada:
    • Quando há um lançamento (manual ou automático) para a verba 199.
    • Exclusivamente para o cliente “jmalucelli”.
    • Em qualquer mês do ano, exceto dezembro.
    • Apenas se não houver registro de pagamento anterior de adiantamento de 13º salário (verbas 405 ou 199) no mesmo ano.
  • Dependências e Correlações:

    • Verbas Relacionadas:
    • 199 (Adiant. 13º Sal. Compl. Afastados - CCT)
    • 699 (Desc. Adiant. 13º Sal. Compl. Afastados - CCT)
    • 196 (Compl. 13º Sal. Afastados - CCT)
    • 596 (Desc. Compl. 13º Sal. Afastados CCT) - Mencionado como não existente no SuperCalc.
    • 405 (Adiantamento 13º Salário) - Verba verificada no histórico para evitar duplicidade.
  • Tipo de Relação:

    • As verbas 199 e 405 têm uma relação de prevenção de duplicidade: a existência de uma impede o cálculo da outra no mesmo ano.
    • As verbas 699, 196, 596 são verbas correlatas (desconto ou complemento) mas não são diretamente manipuladas ou verificadas na lógica desta fórmula.
  • Funções Identificadas:

    • Func_ValidarExistenciaLancamento(Lancamento): Verifica se existe um lançamento para a verba atual.
    • SysFunc_Panico(string mensagem): Interrompe o processo de cálculo e exibe uma mensagem de erro.
    • Solicitacao.Cliente.ToLower(): Converte o nome do cliente para minúsculas para comparação case-insensitive.
    • Empregado.Historico.ListaHolerite.Where(...): Filtra a lista de holerites no histórico do empregado com base em condições específicas.

💡 Proposta de Novo Cálculo

Fórmula proposta (padronizada):

ValorTotal = Func_ArredondamentoPadrao(Lancamento.ValorTotal)

(Sujeito à validação lógica de ano de competência sem duplicidades registradas em histórico para as verbas configuradas).


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

Se (Configuracao.AtivarVerbaAdiantamentoComplementar == Falso) { HoleriteVerba = null; InterromperCalculo(); }

Se (Func_ValidarExistenciaLancamento(Lancamento) == Falso Ou Lancamento.ValorTotal <= 0) { HoleriteVerba = null; InterromperCalculo(); }

Definir AnoCorrente = Solicitacao.DataReferencia.Year; Definir MesCorrente = Solicitacao.DataReferencia.Month;

2. Trava de Período Proibido (Substitui Hardcode de Dezembro)

Se (Configuracao.BloquearAdiantamentoEmDezembro == Verdadeiro E MesCorrente == 12) { SysFunc_Panico(“Erro de Processamento: Não é permitido o pagamento de adiantamento de 13º salário no mês de dezembro.”); }

3. Validação de Duplicidade de Adiantamento no Ano Corrente

Se (Configuracao.BloquearSeJaHouverAdiantamentoNoAno == Verdadeiro) { Definir HistoricoHolerites = Empregado.Historico.ListaHolerite;

Para Cada Holerite Em HistoricoHolerites { Valida se o holerite pertence ao mesmo ano fiscal de referência e é de Adiantamento/Férias Se (Holerite.PeriodoCalculo.DataReferencia.Year == AnoCorrente E Configuracao.TiposFolhaConflitantes.Contem(Holerite.TipoFolha)) {

Para Cada VerbaCalculada Em Holerite.ListaVerbas { Se (Configuracao.ListaVerbasConflitantes.Contem(VerbaCalculada.Verba.Codigo) E VerbaCalculada.ValorTotal > 0) {

SysFunc_Panico(“Erro de Duplicidade: Já existe pagamento de adiantamento de 13º salário registrado neste ano (Verba ” + VerbaCalculada.Verba.Codigo + ”).”); } } } } }

4. Execução do Cálculo da Verba e Transmissão de Valores

Definir ValorFinalCalculado = Lancamento.ValorTotal;

HoleriteVerba.Quantidade = Lancamento.Quantidade > 0 ? Lancamento.Quantidade : 1.00; HoleriteVerba.ValorTotal = Func_ArredondamentoPadrao(ValorFinalCalculado); HoleriteVerba.ValorIntegral = ValorFinalCalculado;

Configurações das Incidências com Base nos Parâmetros de Rubrica (INSS: ISE, FGTS: ISE, IRRF: ISE) HoleriteVerba.IncidenciaINSS = RubricaMae.IncidenciaINSS; // ISE HoleriteVerba.IncidenciaFGTS = RubricaMae.IncidenciaFGTS; // ISE HoleriteVerba.IncidenciaIRRF = RubricaMae.IncidenciaIRRF; // ISE

5. Registro de Rastreabilidade e Auditoria

Argumento(ValorFinalCalculado.ToString(“F2”)); EscreverMemoria(“[ADIANT_13_COMPL_AFASTADO]”, “Adiantamento complementar de 13º salário para funcionários afastados pago via CCT. Valor total do provento: R$ {0}.”);

AdicionarAoHolerite(HoleriteVerba);


Parametrizações Propostas para Reestruturação

1. CONFIGURAÇÃO DE ATIVAÇÃO E REGRAS DE ACORDO COLETIVO (CCT)

[X] Ativar Regra de Cálculo de Adiantamento Complementar de 13º [X] Bloquear Pagamento de Adiantamento no Mês de Dezembro (Mês 12)

2. DIRETRIZES DE SEGURANÇA E EVITAÇÃO DE DUPLICIDADE (ANUAL)

[X] Bloquear Cálculo se houver Adiantamento Prévio de 13º no Mesmo Ano Fiscal Tipos de Folha a Monitorar no Histórico: [X] AdiantamentoDecimoTerceiro [X] Ferias [ ] Regular (Mensal)

Códigos de Verbas Impeditivas (Bloqueiam este cálculo se contiverem valor > 0): [ 199, 405 ] (Adiant. 13º Compl. Afastados / Adiantamento 13º Salário)

3. MATRIX TRIBUTÁRIA ESOCIAL E ENCARGOS

Código da Rubrica Destino: [ 199 ] Natureza eSocial: [ 5504 - 13º salário - Adiant. ] Incidência INSS: [ ISE - Isento ] DSR: [ Não ] Incidência FGTS: [ ISE - Isento ] Médias: [ Não ] Incidência IRRF: [ ISE - Isento ] Impacto Financeiro: [ Não ] Impacto Contábil: [ Sim ]

Clientes com mesma regra

  • Jmalucelli: Totalmente compatibilizado e protegido por parâmetros de sistema. Com a ativação das chaves nos Blocos 1 e 2 do novo painel, o motor dinâmico valida a elegibilidade, barra automaticamente qualquer tentativa de lançamento manual ou automático no mês de dezembro e audita o histórico do trabalhador à procura de adiantamentos correntes (verbas 199 ou 405). Se alguma violação for identificada, o sistema dispara o tratamento de pânico de forma transparente, eliminando os desvios manuais em nível de código-fonte.
  • Outros Clientes: Com a chave global de ativação do painel definida como “Falso” (Desativado) para as demais empresas do banco de dados, o Dynamic Engine desativa a rubrica 199 imediatamente sem gerar falsos positivos ou inconsistências de cálculo para empregados que não possuam este acordo em suas respectivas convenções coletivas de trabalho.

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