1566 - Enc. INSS Patronal (Dif.)
⚙️ Metadados
- Código: 1566
- Tipo: Informaçã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: 9930
🧮 Regra Geral
N/A
🎯 Particularidades por Cliente/Setor
👤 Fundacaocopel
-
Lógica de Cálculo:
- A verba verifica o tipo de folha (
Solicitacao.TipoFolha). Se não forFolha Regular(1),RescisãoouRescisão Complementar, o cálculo é interrompido (return null). - A
Quantidadeda verba é calculada subtraindo aQuantidadedas verbas de informação1581e1585doValorBasedo encargo915. - O
ValorTotalda verba é calculado subtraindo oValorTotaldas verbas de informação1581e1585doValorTotaldo encargo915.
- A verba verifica o tipo de folha (
-
Fórmula matemática:
HoleriteInformacao.Quantidade = RecuperarHoleriteEncargo("915").ValorBase - RecuperarHoleriteInformacao("1581").Quantidade - RecuperarHoleriteInformacao("1585").QuantidadeHoleriteInformacao.ValorTotal = RecuperarValorTotalEncargo("915") - RecuperarValorTotalInformacao("1581") - RecuperarValorTotalInformacao("1585")
-
Variáveis Utilizadas:
Solicitacao.TipoFolhaHoleriteInformacao.QuantidadeHoleriteInformacao.ValorTotalRecuperarHoleriteEncargoRecuperarHoleriteInformacaoRecuperarValorTotalEncargoRecuperarValorTotalInformacao.
-
Condições Especiais: A verba só é calculada para os tipos de processo
Folha Regular,RescisãoeRescisão Complementar. -
Dependências
- Verbas Relacionadas:
- Encargo 915:
RecuperarHoleriteEncargo("915")eRecuperarValorTotalEncargo("915")indicam dependência do encargo 915. - Verba 1581:
RecuperarHoleriteInformacao("1581")eRecuperarValorTotalInformacao("1581")indicam dependência da verba 1581. - Verba 1585:
RecuperarHoleriteInformacao("1585")eRecuperarValorTotalInformacao("1585")indicam dependência da verba 1585.
- Encargo 915:
- Verbas Relacionadas:
-
Funções Identificadas:
RecuperarHoleriteEncargo(string codEncargo): Recupera informações de um encargo específico.RecuperarHoleriteInformacao(string codVerba): Recupera a quantidade de uma verba de informação específica.RecuperarValorTotalEncargo(string codEncargo): Recupera o valor total de um encargo específico.RecuperarValorTotalInformacao(string codVerba): Recupera o valor total de uma verba de informação específica.
👤 Salesforce
-
Lógica de Cálculo:
- Validação do Tipo de Folha: A verba é calculada apenas se o tipo de folha (
Solicitacao.TipoFolha) forRegular,RescisãoouRescisãoComplementar. Caso contrário, o cálculo é abortado (return null). - Cálculo da Quantidade: A
Quantidadeda verba 1566 é determinada subtraindo aQuantidadede diversas verbas de informação (1562, 1560, 1010, 1577, 1581, 1585, 1556, 1590) doValorBasedo encargo 915. - Cálculo do Valor Total: O
ValorTotalda verba 1566 é determinado subtraindo oValorTotalde diversas verbas de informação (1562, 1560, 1010, 1577, 1581, 1585, 1556, 1590) doValorTotaldo encargo 915.
- Validação do Tipo de Folha: A verba é calculada apenas se o tipo de folha (
-
Fórmula matemática:
Quantidade_1566 = ValorBase_915 - (Quantidade_1562 + Quantidade_1560 + Quantidade_1010 + Quantidade_1577 + Quantidade_1581 + Quantidade_1585 + Quantidade_1556 + Quantidade_1590)ValorTotal_1566 = ValorTotal_915 - (ValorTotal_1562 + ValorTotal_1560 + ValorTotal_1010 + ValorTotal_1577 + ValorTotal_1581 + ValorTotal_1585 + ValorTotal_1556 + ValorTotal_1590)
-
Variáveis Utilizadas:
Solicitacao.TipoFolha: Tipo de folha de pagamento em processamento.EnumTipoFolhaBO: Enumeração que define os tipos de folha (Regular, Rescisao, RescisaoComplementar).HoleriteInformacao.Quantidade: Campo para armazenar a quantidade calculada da verba.HoleriteInformacao.ValorTotal: Campo para armazenar o valor total calculado da verba.RecuperarHoleriteEncargo("915").ValorBase: Recupera o valor base do encargo de código915.RecuperarHoleriteInformacao("XXXX").Quantidade: Recupera a quantidade da verba de informação de códigoXXXX.RecuperarValorTotalEncargo("915"): Recupera o valor total do encargo de código915.RecuperarValorTotalInformacao("XXXX"): Recupera o valor total da verba de informação de códigoXXXX.
-
Condições Especiais:
- A verba só é calculada para
Solicitacao.TipoFolhaigual aRegular,RescisãoouRescisãoComplementar.
- A verba só é calculada para
-
Dependências
- Verbas Relacionadas:
- Verba 915: Encargo (base para o cálculo).
- Verbas 1562, 1560, 1010, 1577, 1581, 1585, 1556, 1590: Verbas de informação (subtraídas do encargo 915).
- Tipo de Relação: Dependência. Esta verba depende dos valores já calculados das verbas mencionadas.
- Fluxo de Cálculo: As verbas 915, 1562, 1560, 1010, 1577, 1581, 1585, 1556 e 1590 devem ser calculadas antes da verba 1566.
- Verbas Relacionadas:
-
Funções Identificadas:
RecuperarHoleriteEncargo(string codVerba): Recupera informações de um encargo específico.RecuperarHoleriteInformacao(string codVerba): Recupera informações de uma verba de informação específica.RecuperarValorTotalEncargo(string codVerba): Recupera o valor total de um encargo específico.RecuperarValorTotalInformacao(string codVerba): Recupera o valor total de uma verba de informação específica.
💡 Proposta de Novo Cálculo
Fórmula proposta (padronizada):
Quantidade_Verba_1566 = Valor_Base_Encargo(915) - Somatorio_Quantidades_Verbas_Deducao(Parametros_Deducao_Cliente)
Valor_Total_Verba_1566 = ArredondamentoPadrao(Valor_Total_Encargo(915) - Somatorio_Valores_Verbas_Deducao(Parametros_Deducao_Cliente))
Se Valor_Total_Encargo(915) > 0 E (Valor_Total_Verba_1566 > 0 Ou Permitir_Diferenca_Negativa == Verdadeiro): Processar Verba 1566 com Quantidade_Verba_1566 e Valor_Total_Verba_1566 Senão: Valor_Total_Verba_1566 = 0 (Não Processada)
-
Filtros de Elegibilidade e Isenções (Piso Seguro) SE NAO ParametrosVerba.TiposFolhaPermitidos.Contem(Solicitacao.TipoFolha) ENTAO RETORNAR NULO FIM_SE
SE Empregado.IsExpatriadoTributacaoDefinitiva == VERDADEIRO ENTAO RETORNAR NULO FIM_SE
// 2. Determinação da Base Bruta e Encargo Base de Origem Var encargoBaseObj = RecuperarHoleriteEncargo(ParametrosVerba.CodigoEncargoBase) // Ex: Encargo 915
SE encargoBaseObj == NULO OU encargoBaseObj.ValorTotal <= 0.0 ENTAO RETORNAR NULO FIM_SE
Var baseCalculoBruta = encargoBaseObj.ValorBase Var valorEncargoBase = encargoBaseObj.ValorTotal
// 3. Apuração do Somatório Dinâmico de Deduções (Quantidade e Valor) Var somaQuantidadeDeducoes = 0.0 Var somaValorDeducoes = 0.0
PARA CADA codVerbaDeducao EM ParametrosVerba.ListaCodigosVerbasDeducao FACA Var verbaDeducaoObj = RecuperarHoleriteInformacao(codVerbaDeducao) SE verbaDeducaoObj != NULO ENTAO somaQuantidadeDeducoes = somaQuantidadeDeducoes + verbaDeducaoObj.Quantidade somaValorDeducoes = somaValorDeducoes + verbaDeducaoObj.ValorTotal FIM_SE FIM_PARA
// 4. Apuração das Diferenças (Líquido do Encargo Patronal) Var quantidadeLiquidaApurada = baseCalculoBruta - somaQuantidadeDeducoes Var valorDiferencaCalculado = valorEncargoBase - somaValorDeducoes
// Regra de Trava: Validação de Saldo Negativo ou Nulo SE valorDiferencaCalculado <= 0.0 E ParametrosVerba.PermitirDiferencaNegativa == FALSO ENTAO RETORNAR NULO FIM_SE
SE quantidadeLiquidaApurada < 0.0 E ParametrosVerba.PermitirDiferencaNegativa == FALSO ENTAO quantidadeLiquidaApurada = 0.0 FIM_SE
Var valorFinalDiferenca = Func_ArredondamentoPadrao(valorDiferencaCalculado)
// 5. Gravação da Verba Informativa Final GerarHoleriteInformacao( CodigoVerba = ParametrosVerba.CodigoVerba, Quantidade = quantidadeLiquidaApurada, ValorIntegral = baseCalculoBruta, Percentual = Empregador.PercentualPatronal, ValorTotal = valorFinalDiferenca, IncidenciaINSS = “Isento”, IncidenciaFGTS = “Isento”, IncidenciaIRRF = “Isento” )
FIM_ALGORITMO
Parametrizações Propostas para Reestruturação
1. REGRAS DE ENTRADA E ELEGIBILIDADE
Tipos de Folha Permitidos:
[X] Regular [X] Rescisão [X] Rescisão Complementar [ ] Adiantamento [ ] RPA / Autônomos
Isenções e Restrições de Perfil:
[X] Ignorar Expatriados com Tributação Definitiva
[ ] Aplicar a Todos os Colaboradores Sem Exceção
2. ORIGEM DO ENCARGO BASE DE MATRIZ
Código do Encargo Base de Origem (Valores Brutos): [ 915 ]
Campo de Leitura para Base de Quantidade: [ ValorBase ]
Campo de Leitura para Base de Valor: [ ValorTotal ]
3. COMPOSIÇÃO DA LISTA DE DEDUÇÕES DINÂMICAS (QUANTIDADE E VALOR)
Lista de Códigos de Verbas Informativas Dedutivas:
[ Lista Configurável: 1562, 1560, 1010, 1577, 1581, 1585, 1556, 1590 ]
Campos Subtraídos Automaticamente:
- Quantidade (Verba Deducao) -> Subtrai de ValorBase_915
- ValorTotal (Verba Deducao) -> Subtrai de ValorTotal_915
Comportamento para Saldo de Diferença Negativo ou Nulo:
[X] Retornar Nulo / Não Gerar Verba quando Saldo <= 0
[ ] Permitir Gravação de Valores e Quantidades Negativos
4. ENCARGOS ESOCIAL E INCIDÊNCIAS
Incidência INSS: [ Isento ]
Incidência FGTS: [ Isento ]
Incidência IRRF: [ Isento ]
Natureza de Rubrica eSocial: [ - ]
Enviar como Informativa ao eSocial: [X] Sim [ ] Não
Clientes com mesma regra
- Fundacaocopel: Absorvido integralmente. O mecanismo unificado utiliza a parametrização do Encargo 915 como origem e atribui ao vetor dinâmico de deduções exclusivamente os códigos das verbas 1581 e 1585 (
[ 1581, 1585 ]). Tanto a quantidade quanto o valor total são subtraídos com exatidão conforme a regra de negócio. - Salesforce: Absorvido integralmente. A parametrização compartilha a mesma estrutura de origem (Encargo 915) e carrega no vetor de deduções os 8 códigos informativos estipulados (
[ 1562, 1560, 1010, 1577, 1581, 1585, 1556, 1590 ]), executando o abatimento completo de quantidade e valor sem necessidade de desvios no código C#.
Status Documental
- Status: Documentada
- Origem: export do Notion + catálogo da wiki
- Fonte rastreável:
30dc75ea2e83819695e0df8d92c5f1bf