Wiki / SuperCalculo ~3 min

164 - Abono CCT/ACT [trib. IRRF]

⚙️ Metadados

  • Código: 164
  • Tipo: Provento
  • INSS: ISE
  • FGTS: ISE
  • IRRF: SAL
  • Natureza eSocial: 1401 - Abono
  • DSR: Não
  • Médias: Não
  • Impacto Financeiro: Não
  • Impacto Contábil: Sim
  • Sequência: 190

🧮 Regra Geral

  • Lançamento manual de valor.

  • Se um lançamento manual existir e o cliente não estiver na lista permitida, o sistema gera um erro (SysFunc_Panico), impedindo o cálculo. Se o cliente estiver na lista permitida e houver lançamento, o valor da verba é o valor lançado manualmente.

  • Variáveis Utilizadas:

    • Solicitacao.Cliente: Nome do cliente atual.
    • Lancamento: Objeto que representa o lançamento da verba.
    • Pode: Variável booleana que indica se o cliente atual está na lista de clientes permitidos para esta verba.
  • Condições Especiais:

    • A verba só prossegue se Func_ValidarExistenciaLancamento(Lancamento) retornar true, indicando que há um lançamento manual para a verba.
    • Existe uma lista de clientes hardcoded (veibras, tiautomotive, acal, jmalucelli, bundy) que são verificados. Se o cliente atual não for um desses (Pode == false) e houver lançamento, um erro (SysFunc_Panico) é disparado, interrompendo o cálculo.

🧩 Funções

  • Func_ValidarExistenciaLancamento(Lancamento): Verifica se existe um lançamento manual para a verba em questão.
  • Solicitacao.Cliente.ToLower(): Retorna o nome do cliente em letras minúsculas para comparação.
  • SysFunc_Panico("..."): Função que interrompe o cálculo e gera uma mensagem de erro no sistema.
  • SysFunc_TagPossuiConteudo("Cod_Contrato_Filho", new List<string>() { "1.888.7" }): Função comentada, que verificaria a existência de um código de contrato específico.

💡 Proposta de Novo Cálculo

Fórmula proposta (padronizada):

ValorFinal = Func_ArredondamentoPadrao(Lancamento.ValorTotal)


1. Validação de Prevalência e Existência de Lançamento Manual (Piso Seguro)

SE Func_ValidarExistenciaLancamento(Lancamento) == FALSO OU Lancamento.ValorTotal <= 0M ENTÃO RETORNAR // Sem lançamento manual ativo, a verba não gera impacto no holerite FIM_SE

2. Filtro de Elegibilidade Cadastral por Perfil de Empresa (Substitui Lista Hardcoded)

SE Parametro.RestringirUsoPorEmpresa == VERDADEIRO ENTÃO Verifica se a empresa corrente está associada ao grupo de permissão da rubrica SE SysFunc_ValidarEmpresaNaListaParametro(Contexto.EmpresaID, Parametro.ListaEmpresasPermitidas) == FALSO ENTÃO AdicionarMensagemAvisoAuditoria(“Aviso: Lançamento ignorado. Esta empresa não possui o Abono CCT/ACT [trib. IRRF] em seu Acordo Coletivo.”); RETORNAR // Bloqueio preventivo e limpo sem interromper a esteira de cálculo da folha FIM_SE FIM_SE

3. Validação de Exceções Contratuais ou Sub-contratos (Preparação Filiais/Contrato Filho)

SE Parametro.RestringirPorContratoFilho == VERDADEIRO ENTÃO SE SysFunc_VerificarContratoFilhoAtivo(Empregado.ID, Parametro.ListaContratosFilhosValidos) == FALSO ENTÃO AdicionarMensagemAvisoAuditoria(“Aviso: Contrato não atende aos critérios de sub-lotação sindical específicos para a verba 164.”); RETORNAR FIM_SE FIM_SE

4. Gravação de Resultados no Holerite e Aplicação do Perfil Tributário

HoleriteVerba.ValorTotal = Func_ArredondamentoPadrao(Lancamento.ValorTotal) HoleriteVerba.Quantidade = Lancamento.Quantidade

Parametrização Cadastral Fixa da Rubrica (Metadados Regulatórios) HoleriteVerba.INSS = INCIDENCIA_ISE HoleriteVerba.FGTS = INCIDENCIA_ISE HoleriteVerba.IRRF = INCIDENCIA_SAL // Tributação regular de IRRF conforme regra da verba HoleriteVerba.NaturezaeSocial = “1401”

Geração da memória detalhada de cálculo para rastreabilidade GerarMemoriaCalculoAbonoTribIRRF(Lancamento.ValorTotal)


Impactos

  • Extinção Total do SysFunc_Panico: O travamento do sistema será substituído por uma validação formal de lote. Se houver um lançamento indevido, o sistema impede a gravação daquele holerite (GravarHolerite = false) e devolve uma mensagem limpa no painel de inconsistências, permitindo que a folha dos demais funcionários do lote continue calculando normalmente.
  • Limpeza e Higienização de Código: O bloco comentado da validação de contrato filho ("1.888.7") será permanentemente expurgado do repositório.

Benefícios

  • Autonomia Completa para a Equipe de Implantação/Suporte: Para liberar a verba de Abono para um novo cliente, basta marcar o checkbox Permite Verba 164 na tela de configurações da empresa, eliminando 100% a abertura de chamados para o time de Desenvolvimento.
  • Estabilidade no Processamento em Lote: Erros de digitação de verbas não bloqueiam mais a operação de fechamento mensal da folha, melhorando a experiência do usuário final.

Parametrizações Propostas para Reestruturação

  1. Parâmetros de Permissão da Verba 164 (Abono):

    [ ] Liberar uso da Verba 164 para lançamentos manuais neste cliente

  2. Avisos de Inconsistência de Digitação:

Ação quando a verba for lançada em cliente não autorizado:

[ ] Ignorar o lançamento silenciosamente (Retornar null)

[ ] Bloquear gravação do holerite e exibir alerta no painel de erros

Clientes com mesma regra

  • Veibras, Tiautomotive, Acal, Jmalucelli e Bundy: Todos os clientes listados no código legado passam a usufruir da rubrica nativamente através da simples atribuição de permissão de uso da verba em suas respectivas telas de parametrização da folha. Ao realizarem o lançamento manual do valor por digitação ou importação de lote, o motor unificado executa o repasse integral e o arredondamento comercial sem diferenciação de rotina backend. O risco de queda total do sistema em lote por falha de inclusão textual do nome da empresa no código fonte é mitigado.

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