Wiki / SuperCalculo ~4 min

731 - Desc. Adiantamentos Pró-Labore

⚙️ Metadados

  • Código: 731
  • Tipo: Desconto
  • INSS: ISE
  • FGTS: ISE
  • IRRF: ISE
  • Natureza eSocial: 9200 - Desconto de Adiantamentos
  • DSR: Não
  • Médias: Não
  • Impacto Financeiro: Não
  • Impacto Contábil: Sim
  • Sequência: 190

🧮 Regra Geral

  • Lançamento manual em valor.

💡 Proposta de Novo Cálculo

Fórmula proposta (padronizada):

ValorCapturado = SE(ExisteLancamentoManual(731), SE(ValorLancadoDireto > 0, ValorLancadoDireto, BaseProLabore * (QtdLancada / 100)), SE(RecuperarAdiantamentoAnterior, ValorAdiantadoAcumulado, 0))

ValorDescontoFinal = SE(ProcessoPermitido E CategoriaElegivel E ValorCapturado > 0, ARREDONDAR(LIMITAR(ABSOLUTO(ValorCapturado), PisoMinimo, TetoMaximo)), 0)


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

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

SE NAO Config.TiposFolhaPermitidos.Contem(Solicitacao.TipoFolha) ENTÃO RETORNAR NULO FIM_SE

Validação da Categoria do Trabalhador (Pró-Labore / Diretores) SE Config.ValidarCategoriaTrabalhador E NAO Config.CategoriasElegiveis.Contem(Empregado.CategoriaeSocial) ENTÃO RETORNAR NULO FIM_SE

2. Determinação da Base de Cálculo, Captura de Lançamento e Fallbacks

LancamentoValido = Holerite.ObterLancamentoManual(“731”) ValorLancadoDireto = Holerite.ObterValorLancamentoManual(“731”) QtdLancadaDireta = Holerite.ObterQuantidadeLancamentoManual(“731”)

SE Config.ExigirLancamentoManualObrigatorio E NAO Func_ValidarExistenciaLancamento(LancamentoValido) ENTÃO RETORNAR NULO FIM_SE

ValorBrutoCalculado = 0.0 QuantidadeAplicada = 0.0

  • Prioridade 1: Lançamento Manual Direto por Valor SE ValorLancadoDireto != NULO E ValorLancadoDireto > 0.0 ENTÃO ValorBrutoCalculado = ValorLancadoDireto QuantidadeAplicada = QtdLancadaDireta > 0.0 ? QtdLancadaDireta : 0.0

  • Prioridade 2: Lançamento Manual por Percentual sobre o Pró-Labore/Retirada SENÃO SE QtdLancadaDireta != NULO E QtdLancadaDireta > 0.0 ENTÃO BaseProLabore = Holerite.ObterValorBaseCalculo(Config.CodigoBaseProLabore)

    SE BaseProLabore <= 0.0 ENTÃO BaseProLabore = Empregado.ObterValorProLaboreContratual() FIM_SE

    QuantidadeAplicada = QtdLancadaDireta ValorBrutoCalculado = BaseProLabore * (QtdLancadaDireta / 100.0)

  • Prioridade 3: Recuperação de Adiantamento Concedido no Mês (Processo Anterior) SENÃO SE Config.RecuperarAdiantamentoProcessoAnterior ENTÃO ValorAdiantado = Holerite.ObterValorAcumuladoProcessoAnterior(Config.CodigoVerbaAdiantamentoOrigem) SE ValorAdiantado > 0.0 ENTÃO ValorBrutoCalculado = ValorAdiantado FIM_SE SENÃO RETORNAR NULO FIM_SE

SE ValorBrutoCalculado <= 0.0 ENTÃO RETORNAR NULO FIM_SE

3. Aplicação de Limites, Tetos e Arredondamento

ValorAbsoluto = Func_Absoluto(ValorBrutoCalculado)

SE Config.PossuiTetoMaximo E ValorAbsoluto > Config.ValorTetoMaximo ENTÃO ValorAbsoluto = Config.ValorTetoMaximo SENÃO SE Config.PossuiPisoMinimo E ValorAbsoluto < Config.ValorPisoMinimo ENTÃO ValorAbsoluto = Config.ValorPisoMinimo FIM_SE

ValorDescontoFinal = Func_ArredondamentoPadrao(ValorAbsoluto)

SE ValorDescontoFinal <= 0.0 E NAO Config.GravarVerbaZerada ENTÃO RETORNAR NULO FIM_SE

4. Gravação de Campos, Acumuladores e Registro da Verba (731)

NovaVerba = CriarVerbaHoleriteBO(“731”, Config.DescricaoPadrao) NovaVerba.TipoVerba = “D” // Tipo: Desconto NovaVerba.ValorBase = ValorBrutoCalculado NovaVerba.Quantidade = QuantidadeAplicada NovaVerba.ValorTotal = ValorDescontoFinal NovaVerba.DescricaoFinal = Config.DescricaoPadrao.Trim()

NovaVerba.TipoIncidenciaINSS = Config.IncidenciaINSS // Padrão: ISE (Isento) NovaVerba.TipoIncidenciaFGTS = Config.IncidenciaFGTS // Padrão: ISE (Isento) NovaVerba.TipoIncidenciaIRRF = Config.IncidenciaIRRF // Padrão: ISE (Isento) NovaVerba.NaturezaeSocial = Config.NaturezaeSocial // Padrão: 9200 - Desconto de Adiantamentos

CopiarIncidencias(VerbaOriginal(“731”), NovaVerba)

NovaVerba.ImpactoFinanceiro = Config.ImpactoFinanceiro // Conforme ficha técnica: Não NovaVerba.ImpactoContabil = Config.ImpactoContabil // Conforme ficha técnica: Sim

SE Config.AtualizarAcumuladorAdiantamentos ENTÃO VG_TotalDescontoAdiantamentoProLabore = VG_TotalDescontoAdiantamentoProLabore + ValorDescontoFinal FIM_SE

Registro de Memória de Cálculo Transparente EscreverMemoria(“DESC_ADIANT_PRO_LABORE”, String.Format(“Desconto Adiantamento Pró-Labore: Valor Base = R$ {0}, Quantidade = {1}, Desconto Final = R$ {2}”, ValorBrutoCalculado.ToString(“N2”), QuantidadeAplicada.ToString(“N2”), ValorDescontoFinal.ToString(“N2”)))

Holerite.ListaHoleriteVerba.Adicionar(NovaVerba)

FIM

Parametrizações Propostas para Reestruturação

1. REGRAS DE ENTRADA E FILTROS DE ELEGIBILIDADE

[X] Exigir Lançamento Manual Obrigatório

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

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

[X] Validar Categoria eSocial do Trabalhador

Categorias Elegíveis …: [ 721 - Director Não Empregado, 722 - Director Empregado, 723 - Empresário/Sócio v ]

2. MODO DE CÁLCULO E CAPTURA DE VALORES

Modo de Captura Predominante …: [ 1. Valor Direto | 2. Percentual | 3. Busca Processo Anterior v ]

Código da Base de Referência do Pró-Labore : [ 3100 ] (Pró-Labore Contratual/Bruto)

[ ] Buscar Automaticamente Adiantamento Concedido no Processo Anterior

Código da Verba de Adiantamento Origem : [ 050 ] (Adiantamento Pró-Labore Concedido)

3. DIRETRIZES DE PROTEÇÃO, LIMITES E ARREDONDAMENTO

[ ] Aplicar Teto Máximo de Desconto

Valor Teto Máximo …: [ 0,00 ]

[ ] Aplicar Piso Mínimo de Desconto

Valor Piso Mínimo …: [ 0,00 ]

Regra de Arredondamento/Ajuste …: [ Arredondamento Padrão (Func_ArredondamentoPadrao) v ]

[ ] Permitir Gravação da Rubrica com Valor Zerado

4. FORMATAÇÃO E IMPACTOS

Descrição Padrão da Rubrica …: [ Desc. Adiantamentos Pró-Labore ]

Tipo da Rubrica …: [ Desconto ]

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

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

[X] Atualizar Acumulador Global de Adiantamentos Pró-Labore

5. TRIBUTAÇÃO E ENVIOS ESOCIAL

Natureza eSocial …: [ 9200 - Desconto de Adiantamentos ]

Incidência INSS …: [ Isento (ISE) ]

Incidência FGTS …: [ Isento (ISE) ]

Incidência IRRF …: [ Isento (ISE) ]

Clientes com mesma regra

  • Padrão Geral (Todos os Clientes): O comportamento legado, caracterizado como “Lançamento manual em valor”, é integralmente assimilado pelo motor unificado selecionando Exigir Lançamento Manual Obrigatório = Sim e Modo de Captura Predominante = Valor Direto.
  • O motor preserva a sequência de execução 190 e os metadados cadastrais, fiscais e contábeis: Tipo “Desconto”, ISENÇÃO de INSS, FGTS e IRRF (ISE), Natureza eSocial 9200, DSR “Não”, Médias “Não”, Impacto Financeiro “Não” e Impacto Contábil “Sim”.

Status Documental

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

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