2320 - Prov Gratif. Bolsa-Auxílio Mês Atual
⚙️ Metadados
- Código: 2320
- Tipo: Provisão
- INSS: ISE
- FGTS: ISE
- IRRF: ISE
- Natureza eSocial: -
- DSR: Não
- Médias: Não
- Impacto Financeiro: Não
- Impacto Contábil: Sim
- Sequência: 588
🧮 Regra Geral
- Lógica de Cálculo:
- Verifica se a variável global virtual
VG_PossuiAvo13T_MesAtualé verdadeira. Esta variável indica se o empregado possui avos de 13º salário para o mês atual. - Se
VG_PossuiAvo13T_MesAtualfor verdadeira:- Verifica se o tipo de vínculo do empregado é
Estagiario. - Se for
Estagiario: O cálculo é interrompido, e a verba não é gerada (return null). - Se não for
Estagiario:- A variável global virtual
VGP_PossuiAvoD13T_MesAtualé definida como1. - O
ValorTotalda provisão é calculado dividindo o valor da variável global virtualVG_VlrSalNom(que representa a bolsa ou salário nominal) por 12 e arredondando o resultado.
- A variável global virtual
- Verifica se o tipo de vínculo do empregado é
- Se
VG_PossuiAvo13T_MesAtualfor falsa:- A variável global virtual
VGP_PossuiAvoD13T_MesAtualé definida como0.
- A variável global virtual
- Finalmente, a
Quantidadeda provisão (HoleriteProvisao.Quantidade) é definida com o valor deVGP_PossuiAvoD13T_MesAtual(que será1ou0).
- Verifica se a variável global virtual
- Fórmula matemática:
Valor = Func_ArredondamentoPadrao(VG_VlrSalNom / 12) - Variáveis Utilizadas:
SysFunc_RecuperarVG_asBool("VG_PossuiAvo13T_MesAtual"): Verifica se há avos de 13º salário no mês atual.Empregado.TipoVinculo: Tipo de vínculo do empregado (usado para identificarEstagiario).VGP_PossuiAvoD13T_MesAtual: Variável global virtual que armazena a quantidade de avos de 13º para a provisão (sempre 1 ou 0 neste contexto).SysFunc_RecuperarVG_asDecimal("VG_VlrSalNom"): Valor da bolsa ou salário nominal.HoleriteProvisao.ValorTotal: Valor total da verba de provisão.HoleriteProvisao.Quantidade: Quantidade associada à verba de provisão.
- Condições Especiais:
- A verba só é calculada se
VG_PossuiAvo13T_MesAtualfor verdadeira. - Se o empregado for um Estagiário, a verba não é calculada, mesmo que
VG_PossuiAvo13T_MesAtualseja verdadeira.
- A verba só é calculada se
🧩 Funções
- SysFunc_RecuperarVG_asBool(string nomeVariavel): Recupera o valor booleano de uma variável global virtual.
- SysFunc_RecuperarVG_asDecimal(string nomeVariavel): Recupera o valor decimal de uma variável global virtual.
- Func_ArredondamentoPadrao(decimal valor): Aplica o arredondamento padrão ao valor.
💡 Proposta de Novo Cálculo
Fórmula proposta (padronizada):
VGP_PossuiAvoD13T_MesAtual = (VG_PossuiAvo13T_MesAtual == VERDADEIRO E TipoVinculo NOT IN TIPOS_VINCULO_EXCLUIDOS) ? 1.00 : 0.00
HoleriteProvisao(2320).Quantidade = VGP_PossuiAvoD13T_MesAtual
HoleriteProvisao(2320).ValorTotal = (VGP_PossuiAvoD13T_MesAtual == 1.00 E VGP_ProvTransfSaidaMesSeguinte == FALSO) ? ARRED_PADRAO(VG_VlrSalNom / 12.00) : 0
1. Filtros de Elegibilidade e Isenções (Piso Seguro)
SE NOT tabela_parametros.obter_flag(“HABILITAR_VERBA_2320”) ENTAO REGISTRAR_LOG_INFORMATIVO(“Verba 2320 desabilitada em parâmetros gerais.”) RETORNAR_VALOR(NULO) FIM_SE
Interrompe processamento em caso de flag de transferência de saída para mês seguinte SE holerite_atual.obter_variavel_global(“VGP_ProvTransfSaidaMesSeguinte”) ENTAO REGISTRAR_LOG_INFORMATIVO(“Verba 2320 interrompida: VGP_ProvTransfSaidaMesSeguinte ativo.”) RETORNAR_VALOR(NULO) FIM_SE
Validação de Exclusão por Tipo de Vínculo (ex: Estagiários) tipos_vinculo_bloqueados = tabela_parametros.obter_lista_string(“TIPOS_VINCULO_EXCLUIDOS”) SE tipos_vinculo_bloqueados.contem(colaborador.tipo_vinculo) ENTAO REGISTRAR_LOG_INFORMATIVO(“Verba 2320 ignorada: Tipo de vínculo ’” + CONVERTER_PARA_TEXTO(colaborador.tipo_vinculo) + ”’ está excluído do cálculo.”) RETORNAR_VALOR(NULO) FIM_SE
2. Determinação de Elegibilidade de Avos e Quantidade
possui_avo_mes = holerite_atual.obter_variavel_global_booleano_default(“VG_PossuiAvo13T_MesAtual”, FALSO)
SE NOT possui_avo_mes ENTAO holerite_atual.definir_variavel_global(“VGP_PossuiAvoD13T_MesAtual”, 0.00) REGISTRAR_LOG_INFORMATIVO(“Verba 2320 encerrada: Colaborador não possui avo de 13º salário no mês atual.”) RETORNAR_VALOR(NULO) FIM_SE
fator_avo = 1.00 holerite_atual.definir_variavel_global(“VGP_PossuiAvoD13T_MesAtual”, fator_avo)
3. Determinação da Base e Cálculo Proporcional
base_salario_bolsa = holerite_atual.obter_variavel_global_decimal_default(“VG_VlrSalNom”, 0.00)
SE base_salario_bolsa <= 0.00 ENTAO REGISTRAR_LOG_INFORMATIVO(“Verba 2320 encerrada: Valor nominal de salário/bolsa é zero ou inválido.”) RETORNAR_VALOR(NULO) FIM_SE
divisor_avos = tabela_parametros.obter_decimal_default(“DIVISOR_AVOS_PROVISAO”, 12.00) valor_proporcional = base_salario_bolsa / divisor_avos valor_total_final = ARREDONDAR_PADRAO(valor_proporcional)
4. Instanciação e Gravação da Provisão
instancia_provisao = holerite_atual.criar_instancia_provisao(“2320”) instancia_provisao.descricao_final = tabela_parametros.obter_string_default(“TEXTO_DESCRICAO”, “Prov Gratif. Bolsa-Auxílio Mês Atual”) instancia_provisao.quantidade = fator_avo instancia_provisao.valor_integral = valor_total_final instancia_provisao.valor_total = valor_total_final
instancia_provisao.incidencia_inss = ENUM_INCIDENCIA.ISENTO instancia_provisao.incidencia_fgts = ENUM_INCIDENCIA.ISENTO instancia_provisao.incidencia_irrf = ENUM_INCIDENCIA.ISENTO
memoria_calculo = “Provisão de Gratificação / Bolsa-Auxílio Mês Atual” + ” | Base Salário/Bolsa Nominal: R$ ” + CONVERTER_PARA_TEXTO(base_salario_bolsa) + ” | Divisor de Proporcionalidade: ” + CONVERTER_PARA_TEXTO(divisor_avos) + ” | Quantidade de Avos: ” + CONVERTER_PARA_TEXTO(fator_avo) + ” | Valor Final Arredondado: R$ ” + CONVERTER_PARA_TEXTO(valor_total_final)
instancia_provisao.memoria_calculo = memoria_calculo holerite_atual.adicionar_verba_provisao(instancia_provisao)
REGISTRAR_LOG_INFORMATIVO(“Verba 2320 concluída com sucesso. Valor Total: R$ ” + CONVERTER_PARA_TEXTO(valor_total_final))
RETORNAR_VALOR(instancia_provisao) FIM_FUNCAO
Parametrizações Propostas para Reestruturação
1. REGRAS DE ELEGIBILIDADE E RESTRICAO DE VÍNCULOS
[X] Habilitar Processamento da Verba 2320
[X] Interromper quando houver Transferência para Mês Seguinte (VGP_ProvTransfSaidaMesSeguinte)
[X] Exigir Direito a Avo no Mês Atual (VG_PossuiAvo13T_MesAtual == true)
Tipos de Vínculo Excluídos do Processamento:
[X] Estagiário
[ ] Aprendiz
[ ] Trabalhador Autônomo / Diretor Não Empregado
2. DIRETRIZES DE CÁLCULO E PROPORCIONALIDADE
Variável Base de Salário / Bolsa Nominal …: [ VG_VlrSalNom v ]
Divisor de Proporcionalidade Padrão …: [ 12.00 ]
Variável Global de Avos Atualizada pelo Cálculo …: [ VGP_PossuiAvoD13T_MesAtual v ]
3. EXIBIÇÃO, IMPACTOS E ENCARGOS ESOCIAL
Descrição Personalizada …: [ Prov Gratif. Bolsa-Auxílio Mês Atual ]
Impacto Financeiro …: [ Não ]
Impacto Contábil …: [ Sim ]
Incidência INSS: : [ 00 - Não é Base de Cálculo (Isento) v ]
Incidência IRRF: : [ 00 - Não é Base de Cálculo (Isento) v ]
Incidência FGTS: : [ 00 - Não é Base de Cálculo (Isento) v ]
Natureza eSocial: : [ Isento / Não Aplicável v ]
Clientes com mesma regra
- Todos os Clientes do Ecossistema: A regra de provisão sobre a gratificação/bolsa-auxílio opera de modo unificado em todos os clientes e filiais. A regra verifica a elegibilidade do avo no mês e exclui automaticamente os vínculos definidos como não elegíveis (como estagiários), atualizando a variável global
VGP_PossuiAvoD13T_MesAtuale aplicando a divisão padrão por 12 sobre a base nominal. O motor reestruturado absorve nativamente toda a operação sem dependências de código.
Status Documental
- Status: Documentada
- Origem: export do Notion + catálogo da wiki
- Fonte rastreável:
30dc75ea2e838102a66de900c5f4ea13