1107 - Dif. Dissídio Férias (IRRF)
⚙️ Metadados
- Código: 1107
- Tipo: Provento
- INSS: ISE
- FGTS: ISE
- IRRF: FEG
- Natureza eSocial: 1099 - Outras verbas salariais
- DSR: Não
- Médias: Não
- Impacto Financeiro: Não
- Impacto Contábil: Sim
- Sequência: 777
🧮 Regra Geral
-
Lógica de Cálculo: A fórmula da regra geral não contém lógica para o cálculo do valor da verba. Apenas verifica se existe um lançamento para a verba (
Func_ValidarExistenciaLancamento(Lancamento)). -
Variáveis Utilizadas:
LancamentoSolicitacao.ClienteHoleriteVerba.DescricaoFinal.
🔗 Dependências
- Verbas Relacionadas: Verba
227(1/3 Abono Pecun. de Férias (IRRF)). - Tipo de Relação: A verba
227é mencionada como a verba que origina a verba1107no motor de dissídio. Isso indica uma relação de geração, onde o cálculo da verba227em um contexto de dissídio pode levar à criação ou ajuste da verba1107.
🧩 Funções
Func_ValidarExistenciaLancamento(Lancamento): Verifica se existe um lançamento para a verba no contexto atual.Solicitacao.Cliente.ToLower(): Converte o nome do cliente para minúsculas para uma comparação de string não sensível a maiúsculas/minúsculas.
🎯 Particularidades por Cliente/Setor
👤 Syngenta
- A
DescricaoFinalda verba é alterada para “Dif. Dissídio Férias (I)” se houver um lançamento existente.
💡 Proposta de Novo Cálculo
Fórmula proposta (padronizada):
ValorTotal = Se( ExisteLancamentoManual == Ativo E ValorLancamento > 0, Func_ArredondamentoPadrao( ValorLancamento ), Se( ValorRecalculadoOrigem > ValorOriginalOrigem, Func_ArredondamentoPadrao( ValorRecalculadoOrigem - ValorOriginalOrigem ), 0.00 ) )
Onde:
- ValorOriginalOrigem = ObterHistoricoDissidio( Matricula, CodigoVerbaOrigem )
- ValorRecalculadoOrigem = ObterRecalculoDissidio( Matricula, CodigoVerbaOrigem )
1. Filtros de Elegibilidade e Isenções (Piso Seguro)
Se (Configuracao.RubricaInativa == Verdadeiro) { HoleriteVerba = null; InterromperCalculo(); }
Bloqueio de Tipos de Processo Não Elegíveis Se (Solicitacao.TipoFolha == EnumTipoFolhaBO.AdiantamentoComplementar OU Solicitacao.TipoFolha == EnumTipoFolhaBO.RescisaoComplementar) { Definir ExisteLancManualProc = Func_ValidarExistenciaLancamento(Lancamento); Se (ExisteLancManualProc == Falso OU Lancamento.ValorTotal <= 0.00) { HoleriteVerba = null; InterromperCalculo(); } }
2. Apuração do Lançamento e/ou Cálculo de Diferença do Motor de Dissídio
Definir ExisteLancamento = Func_ValidarExistenciaLancamento(Lancamento); Definir ValorDiferencaApurado = 0.00; Definir OrigemEntrada = “Nenhuma”;
Se (ExisteLancamento == Verdadeiro E Lancamento.ValorTotal > 0.00) { Sobregravação direta via lançamento informado/manual ValorDiferencaApurado = Lancamento.ValorTotal; OrigemEntrada = “LancamentoManual”; } Senao Se (Configuracao.PermitirCalculoAutomaticoDissidio == Verdadeiro) { Apuração Automática via Motor de Dissídio Relacionada à Verba Origem (ex: Verba 227 - 1/3 Abono Pecuniário) Definir ValorBaseOriginal = SysFunc_ObterValorHistoricoDissidio(Empregado.Matricula, Configuracao.CodigoVerbaOrigem, Solicitacao.CompetenciaDissidio); Definir ValorBaseRecalculado = SysFunc_ObterValorRecalculadoDissidio(Empregado.Matricula, Configuracao.CodigoVerbaOrigem, Solicitacao.CompetenciaDissidio);
Se (ValorBaseRecalculado > ValorBaseOriginal) { ValorDiferencaApurado = ValorBaseRecalculado - ValorBaseOriginal; OrigemEntrada = “MotorDissidioAutomatico”; } }
Se (ValorDiferencaApurado <= 0.00) { HoleriteVerba = null; InterromperCalculo(); }
Definir ValorFinalRubrica = Func_ArredondamentoPadrao(ValorDiferencaApurado);
3. Aplicação de Descrição Personalizada Dinâmica (Expurgo do Hardcode por Cliente)
Se (Func_TextoNaoVazio(Configuracao.TextoDescricaoPersonalizada)) { HoleriteVerba.DescricaoFinal = Configuracao.TextoDescricaoPersonalizada; } Senao Se (ExisteLancamento == Verdadeiro E Func_TextoNaoVazio(Lancamento.Observacao)) { HoleriteVerba.DescricaoFinal = Lancamento.Observacao; }
4. Gravação de Rubrica, Impactos e Memória de Cálculo
HoleriteVerba.Quantidade = Lancamento.Quantidade > 0.00 ? Lancamento.Quantidade : 1.00; HoleriteVerba.ValorReferencia = Func_ArredondamentoPadrao(ValorDiferencaApurado); HoleriteVerba.ValorTotal = ValorFinalRubrica;
Argumento(ValorDiferencaApurado.ToString(“F2”)); Argumento(ValorFinalRubrica.ToString(“F2”)); Argumento(HoleriteVerba.DescricaoFinal); Argumento(OrigemEntrada);
EscreverMemoria(“[DIF_DISSIDIO_FERIAS_IRRF]”, “Valor Apurado: R$ {0} | Valor Final Aprovado: R$ {1} | Descrição: {2} | Origem: {3}”);
AdicionarAoHolerite(HoleriteVerba);
Parametrizações Propostas para Reestruturação
1. STATUS DA RUBRICA E DIRETRIZES DE ENTRADA
[ ] Inativar Rubrica (Desativa o cálculo globalmente no sistema) [X] Permitir Lançamento Manual/Informado [X] Ativar apuração automática via Motor de Dissídio Coletivo └─ Código da Verba Origem do Reajuste: [ 227 - 1/3 Abono Pecun. de Férias ]
2. CUSTOMIZAÇÃO DE EXIBIÇÃO E ROTULAGEM
[X] Permitir sobregravação de Descrição no Holerite via Configuração └─ Descrição Personalizada: [ Dif. Dissídio Férias (I) ] [X] Herdar descrição customizada do campo de observação do Lançamento (se preenchido)
3. PARÂMETROS DE CONTROLE E LIMITES
[ ] Aplicar Teto Máximo de Valor por Lançamento: └─ Valor Limite Máximo: R$ [ 0.00 ]
4. IMPACTOS OPERACIONAIS E INTEGRAÇÃO
[X] Ativar Impacto Financeiro (Ajuste para Integração Bancária/Liquidação) [X] Ativar Impacto Contábil (Lançamento de Débito/Crédito)
5. ENCARGOS ESOCIAL E CONFIGURAÇÃO TRIBUTÁRIA
Código da Rubrica Destino: [ 1107 ] Natureza eSocial: [ 1099 - Outras verbas salariais ] Incidência INSS: [ ISE - Isento ] DSR: [ Não ] Incidência FGTS: [ ISE - Isento ] Médias: [ Não ] Incidência IRRF: [ FEG - Férias (Tributável) ] Impacto Financeiro: [ Sim ]
Clientes com mesma regra
- Syngenta: O cliente realizava a verificação da string
"syngenta"no código-fonte legado exclusivamente para modificar o rótulo de exibição da rubrica para"Dif. Dissídio Férias (I)". Com a nova arquitetura Dynamic Engine, esta necessidade é suprida através da chave “Descrição Personalizada” no painel de parametrização do tenant, sem necessidade de lógica hardcoded. - Regra Geral / Demais Clientes: Operavam com dependência de lançamento manual ou apuração direta da diferença de dissídio vinculada ao recálculo do abono de férias (verba 227). A nova estrutura suporta perfeitamente a digitação manual e automatiza o recálculo via motor de dissídio parametrizável.
Status Documental
- Status: Documentada
- Origem: export do Notion + catálogo da wiki
- Fonte rastreável:
30dc75ea2e838139a8f0c114ac6bf45e