Wiki / SuperCalculo ~4 min

909 - FGTS Aux. Acid. / Serv. Militar / Adotante (GRRF)

⚙️ Metadados

  • Código: 909
  • Tipo: Encargos
  • INSS: ISE
  • FGTS: ISE
  • IRRF: ISE
  • Natureza eSocial: -
  • DSR: Não
  • Médias: Não
  • Impacto Financeiro: Sim
  • Impacto Contábil: Sim
  • Sequência: 9056

🧮 Regra Geral

  • Lógica de Cálculo:
    1. A verba inicia recuperando o valor total da base de cálculo para FGTS de afastamentos, identificada pelo código "3050", e armazena-o na variável BCFGTSAfastam.
    2. Verifica se BCFGTSAfastam é maior que zero. Se não houver base, o cálculo é encerrado.
    3. Em seguida, verifica duas condições simultaneamente:
      • O tipo de folha (Solicitacao.TipoFolha) deve ser EnumTipoFolhaBO.Rescisao.
      • O motivo da rescisão (Empregado.Rescisao.MotivoRescisao) deve ser um dos seguintes: SemJustaCausa, ContratoExperienciaEmpresa, TerminoContrato, RescisaoIndireta, RescisaoPorMotivoDeAcordo, ou MotivoForcaMaior.
    4. Se todas as condições forem verdadeiras, a verba é considerada como FGTS a ser recolhido via GRRF.
    5. A DescricaoFinal do encargo é formatada para incluir a descrição original da verba e a alíquota do FGTS (VG_AliquotaFGTS).
    6. O ValorBase do encargo é definido como BCFGTSAfastam.
    7. A Aliquota do encargo é definida como VG_AliquotaFGTS.
    8. O ValorEncargo é calculado multiplicando BCFGTSAfastam pela VG_AliquotaFGTS e dividindo por 100, com o resultado final truncado (sem arredondamento).
    9. Argumentos e memória de cálculo são gerados para detalhamento.
  • Fórmula matemática: ValorEncargo = Func_Truncar(BCFGTSAfastam * VG_AliquotaFGTS / 100)
  • Variáveis Utilizadas: BCFGTSAfastam, Solicitacao.TipoFolha, Empregado.Rescisao.MotivoRescisao, VG_AliquotaFGTS.
  • Condições Especiais:
    • BCFGTSAfastam > 0M: A verba só é calculada se houver uma base de cálculo positiva.
    • Solicitacao.TipoFolha == EnumTipoFolhaBO.Rescisao: O cálculo é exclusivo para folhas de rescisão.
    • Empregado.Rescisao.MotivoRescisao deve ser um dos seis tipos de rescisão listados, que indicam recolhimento via GRRF.

🔗 Dependências

  • Verbas Relacionadas: A verba depende da existência e do valor da base de cálculo “3050” (Base Cálculo FGTS Afastamento).
  • Tipo de Relação: Dependência. A verba 909 calcula um encargo com base em um valor de base pré-existente.

🧩 Funções

  • RecuperarValorTotalBase("3050"): Obtém o valor total de uma base de cálculo específica.
  • Func_Truncar(decimal): Trunca um valor decimal, removendo as casas decimais sem arredondamento.
  • string.Format(): Utilizada para formatar a descrição final da verba e os valores na memória de cálculo.
  • ToString("N2"): Formata valores decimais para duas casas decimais.
  • Argumento(): Adiciona valores à lista de argumentos para a memória de cálculo.
  • EscreverMemoria(): Gera a string final da memória de cálculo.

💡 Proposta de Novo Cálculo

Fórmula proposta (padronizada):

BaseCalculo = RecuperarValorTotalBase(“3050”)

CondicaoElegibilidade = (TipoFolha EM [Rescisao, RescisaoComplementar]) E (MotivoRescisao EM Config.MotivosGRRF) E (BaseCalculo > 0)

ValorEncargo = SE(CondicaoElegibilidade, TRUNCAR((BaseCalculo * AliquotaFGTS) / 100), 0)


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

SE VG_CalculaEncargos == FALSO OU NAO Config.CalcularEncargosPatronais ENTÃO RETORNAR NULO FIM_SE

SE Solicitacao.TipoProcesso == PROVISOES E NAO Config.PermitirCalculoEmProvisoes ENTÃO RETORNAR NULO FIM_SE

Validação Dinâmica de Tipos de Processo/Folha Permitidos (Padrão: Rescisão e Rescisão Complementar) SE NAO Config.TiposFolhaPermitidos.Contem(Solicitacao.TipoFolha) ENTÃO RETORNAR NULO FIM_SE

2. Determinação da Base de Cálculo

CodigoBaseFGTSAfastam = Config.CodigoBaseFGTSAfastam // Padrão: “3050” BCFGTSAfastam = Holerite.RecuperarValorTotalBase(CodigoBaseFGTSAfastam)

SE BCFGTSAfastam == NULO OU BCFGTSAfastam <= 0 ENTÃO RETORNAR NULO FIM_SE

Validação Regrada dos Motivos de Desligamento Elegíveis para Depósito via GRRF/FGTS Digital MotivoRescisaoAtual = Empregado.Rescisao.MotivoRescisao

SE MotivoRescisaoAtual == NULO OU NAO Config.MotivosRescisaoElegiveisGRRF.Contem(MotivoRescisaoAtual) ENTÃO AdicionarMensagemInfoPublicaCalculo(“Cálculo suspenso: Motivo de rescisão não atende aos critérios configurados para recolhimento de FGTS Afastamento via GRRF/FGTS Digital.”) RETORNAR NULO FIM_SE

3. Determinação da Alíquota e Cálculo do Encargo

AliquotaFGTS = VG_AliquotaFGTS SE AliquotaFGTS == NULO OU AliquotaFGTS <= 0 ENTÃO AliquotaFGTS = Empregado.AliquotaFGTS FIM_SE SE AliquotaFGTS == NULO OU AliquotaFGTS <= 0 ENTÃO AliquotaFGTS = Config.AliquotaFGTSPadrao // Fallback padrão: 8.00% FIM_SE

VlrEncargoBruto = BCFGTSAfastam * (AliquotaFGTS / 100.0)

Aplicação de Truncamento Regulamentar da GRRF/FGTS Digital SE Config.TipoAjusteDecimal == “TRUNCAR” ENTÃO VlrEncargoFinal = Func_Truncar(VlrEncargoBruto) SENÃO VlrEncargoFinal = Func_ArredondamentoPadrao(VlrEncargoBruto) FIM_SE

SE VlrEncargoFinal <= 0 E NAO Config.GravarEncargoZerado ENTÃO RETORNAR NULO FIM_SE

4. Gravação de Campos e Registro do Encargo (909)

NovoEncargo = CriarVerbaHoleriteEncargoBO(“909”, Config.DescricaoPadrao) NovoEncargo.Aliquota = AliquotaFGTS NovoEncargo.ValorBase = BCFGTSAfastam NovoEncargo.ValorEncargo = VlrEncargoFinal

SE Config.FormatarDescricaoComAliquota ENTÃO NovoEncargo.DescricaoFinal = String.Format(“{0} ({1:F2}%)”, Config.DescricaoPadrao, AliquotaFGTS).Trim() SENÃO NovoEncargo.DescricaoFinal = Config.DescricaoPadrao.Trim() FIM_SE

NovoEncargo.TipoImposto = Config.TipoImpostoTributavel // Padrão: FGTS Aux. Acid. / Serv. Militar / Adotante (GRRF) NovoEncargo.TipoIncidencia = Config.TipoIncidencia // Padrão: Isento (ISE)

CopiarIncidencias(VerbaOriginal(“909”), NovoEncargo)

NovoEncargo.ImpactoFinanceiro = Config.ImpactoFinanceiro // Conforme ficha técnica: Sim NovoEncargo.ImpactoContabil = Config.ImpactoContabil // Conforme ficha técnica: Sim

SE Config.AtualizarAcumuladorFGTSGRRF ENTÃO VG_TotalFGTSAfastam_GRRF = VG_TotalFGTSAfastam_GRRF + VlrEncargoFinal FIM_SE

Registro de Memória de Cálculo Transparente EscreverMemoria(“FGTS_AFASTAM_RESC_GRRF”, String.Format(“Base FGTS Afastamento (3050): R$ {0}, Alíquota: {1}%, Valor Truncado: R$ {2}”, BCFGTSAfastam.ToString(“N2”), AliquotaFGTS.ToString(“F2”), VlrEncargoFinal.ToString(“N2”)))

Holerite.ListaHoleriteEncargo.Adicionar(NovoEncargo)

FIM


Parametrizações Propostas para Reestruturação

1. REGRAS DE ENTRADA E FILTROS DE ELEGIBILIDADE

[X] Respeitar Flag Global de Encargos Patronais (VG_CalculaEncargos == true)

[ ] Permitir Execução no Processo de Provisões

Tipos de Folha Permitidos …: [X] Rescisão [X] Rescisão Complementar [ ] Regular

2. MOTIVOS DE RESCISÃO ELEGÍVEIS (GRRF / FGTS DIGITAL)

Motivos de Desligamento Habilitados …: [X] Sem Justa Causa [X] Término de Contrato [X] Contrato Experiência pela Empresa [X] Rescisão Indireta [X] Acordo Entre as Partes (Art. 484-A) [X] Motivo de Força Maior

3. DEPENDÊNCIAS DE BASES E ALÍQUOTAS

Código Base FGTS Afastamento …: [ 3050 ]

Alíquota Padrão do FGTS (Fallback) …: [ 8.0000 ] %

[ ] Permitir Gravação do Encargo com Valor Zerado

4. FORMATAÇÃO, ARREDONDAMENTO E CRITÉRIOS DE GRAVAÇÃO

Descrição Padrão da Rubrica …: [ FGTS Aux. Acid. / Serv. Militar / Adotante (GRRF) ]

[X] Formatar Descrição Exibindo Alíquota Aplicada (Ex: FGTS Aux. Acid… (GRRF) (8.00%))

Regra de Arredondamento/Ajuste …: [ Truncamento Oficial GRRF (Func_Truncar) v ]

Impacto Financeiro …: [X] Sim [ ] Não

Impacto Contábil …: [X] Sim [ ] Não

[X] Atualizar Acumulador Global de FGTS Afastamento GRRF

5. TRIBUTAÇÃO E ENVIOS ESOCIAL

Natureza eSocial …: [ Isento / Não Informar ]

Incidência INSS …: [ Isento ]

Incidência FGTS …: [ Isento ]

Incidência IRRF …: [ Isento ]

Clientes com mesma regra

  • Regra Geral / Padrão de Mercado: O motor parametrizável absorve integralmente a apuração do encargo patronal de FGTS devido sobre proventos de trabalhadores afastados por auxílio-acidente, serviço militar ou licença-adotante no momento da rescisão contratual (base 3050), cujo recolhimento deva ocorrer via guia rescisória (GRRF / FGTS Digital Rescisório).
  • Os metadados originais de Impacto Financeiro “Sim”, Impacto Contábil “Sim”, isenções tributárias (INSS/IRRF/FGTS) e a sequência de execução 9056 permanecem integralmente preservados.
  • O truncamento numérico oficial de guias rescisórias (Func_Truncar) é mantido estritamente para garantir a paridade de centavos com os sistemas de arrecadação do Governo Federal.

Status Documental

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

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