Tempo aproximado para leitura 00:06:50 min
Dúvida
Como parametrizar o Datasul HCM para criar fórmulas de cálculo com variação salarial?
Ambiente
TOTVS RH - TOTVS RH (Linha Datasul) - Folha de Pagamento (MFP) - Versão 12
Solução
Segue detalhamento para criação da Fórmula Cálculo Variação Sal.
- Parametrização no produto
Programa FP8700 – Manutenção Fórmula Cálc. Variação Sal.: No cadastro de fórmulas de cálculo, no botão Inclui nova ocorrência, colocar um código e descrição para a fórmula.
Depois disso é necessário inserir as regras de cálculo da fórmula, para que a folha possa calcular o valor do evento relacionado a mesma.
Exemplos de eventos que podem compor a base de cálculo. Porém, são informados conforme a necessidade do cliente.
| Evento 071 | Evento 091 | Evento 154 | Evento 051 | Evento 101 |
| Evento 104 | Evento 107 | Evento 110 | Evento 113 | Evento 116 |
| Evento 119 | Evento 121 | Evento 122 | Evento 124 | Evento 127 |
| Evento 130 | Evento 133 | Evento 136 | Evento 139 | Evento 151 |
| Evento 152 | Evento 331 | Evento 037 |
Criação da fórmula no programa FP8700:
- Formula de Salario Variável: XXX
** Autor......................: Datasul S.A.
**
** Data.......................: 19/06/2020
**
- Informações cadastrais
def shared var d-vl-infcd as dec extent 20 no-undo
| 01 | Salário Padrão Mensal |
| 02 | Salário do Funcionário |
| 03 | Salário Hora |
| 04 | Horas Padrão Mês |
| 05 | Horas Padrão Noturno |
| 06 | Horas Padrão Dia |
| 07 | Horas Reais Dia |
| 08 | Dias Ativos no período |
| 09 | Dias no Período |
| 10 | Meses na Empresa |
| 11 | Anuênios |
| 12 | Biênios |
| 13 | Triênios |
| 14 | Quadriênios |
| 15 | Quinquênios |
| 16 | Perc. Insalubridade do Funcionário |
| 17 | Perc. Periculosidade do Funcionário. |
| 18 | Perc. Adicional Noturno Funcionário. |
| 19 | Valor Base Insalubridade Sindicato. |
| 20 | Salário Minimo |
- Bases de cálculo
def shared var d-vl-bscal as dec extent 10 no-undo.
|
01 |
Base INSS - Instituto Nacional do Seguro Social |
|
02 |
Base FGTS - Fundo de Garantia por Tempo de Serviço |
|
03 |
Base Rais Normal. |
|
04 |
Base Auxiliar 1. |
|
05 |
Base Auxiliar 2. |
|
06 |
Base Auxiliar 3. |
|
07 |
Base Auxiliar 4. |
|
08 |
Base Auxiliar 5. |
|
09 |
Base Vale Transporte. |
|
10 |
Base Salário Família. |
- Informações de datas
def hared var dt-infdt as date extent 4 no-undo.
|
01 |
Data de Admissão do Funcionário. |
|
02 |
Data de Saída do Funcionário. |
|
03 |
Data Inicio Mês Competência Cálculo. |
|
04 |
Data Fim Mês Competência Cálculo. |
- Informações para pesquisa folha mês anterior
def shared var i-mes-ant as int no-undo.
def shared var i-ano-ant as int no-undo.
def shared var i-tp-folant as int no-undo.
- Código da Fórmula de Cálculo
def shared var i-cd-formsal as int no-undo.
- Variável onde deve retornar o valor desejado
def shared var d-vs-varsal as dec no-undo.
def shared buffer bfunciona for funcionário.
def shared temp-table tt-evt no-undo.
field cdn_event_fp like event_fp.cdn_event_fp
field i-val-evt as dec
field i-un-evt as dec
index tt-val-evt as unique
cdn_event_fp.
Início lógica
ASSIGN d-vs-varsal = 0.
- Variável onde deve retornar VALOR DESEJADO PELO CLIENTE resultante da logica acima.
Final lógica
return
- Programa FP2610 – Eventos com Variação Salarial/Valor: Cada fórmula deve ser relacionada a um evento para que no cálculo da Folha, ela possa atribuir o resultado da fórmula ao evento. Este relacionamento é feito através do programa FP2610. O campo Calcula Automático deve ser marcado, caso contrário, o evento não é calculado na Folha.
- Programa de computador na linguagem Progress ABL:
Esgotadas as possibilidades de criação de fórmulas de cálculo de variação salarial através do programa FP8700, resta a possibilidade da criação de um programa de computador na linguagem Progress ABL. Segue abaixo os procedimentos necessários para construção de tal programa:
- Pré-requisitos
Domínio da linguagem Progress ABL e das ferramentas de desenvolvimento.
- Passos
Inicialmente é preciso criar um novo código de fórmula no FP8700. Nesse código deve ser acrescentado uma única sequência com:
| Resultado | v1 |
| Tipo Var1 | P |
| Conteúdo | Código do programa |
| Operação | Deixar em branco |
O programa a ser criado deve seguir este formato para o nome:
vs + código do programa com 6 (seis) dígitos + extensão .p
Exemplo: se for criada a fórmula com código do programa 25 o nome do programa deverá ser vs000025.p
Conteúdo mínimo
Um programa mínimo apresenta este conteúdo:
def shared var d-vs-varsal as dec no-undo.
Na variável d-vs-varsal deve ser retornado o valor da variação salarial.
Para seja possível criação de um programa útil são necessárias outras informações. Abaixo definição de outras variáveis disponíveis com descrição de seu conteúdo.
/* Vinte (20) valores cadastrais – detalhes na Tabela 1 Informações Cadastrais */
def shared var d-vl-infcd as dec extent 20 no-undo.
/* Dez (10) valores de base de cálculo – detalhes na Tabela 2 Bases */
def shared var d-vl-bscal as dec extent 10 no-undo.
/* Quatro (4) valores de datas – detalhes na Tabela 3 Datas */
def shared var dt-infdt as date extent 4 no-undo.
/* Variáveis que permitem determinar qual rotina chamou a fórmula de cálculo, por exemplo l-fp3020 = yes significa que o programa foi chamado pela rotina FP3020 - Cálculo Folha Normal.
*/
define shared var l-fp3020 as log no-undo.
define shared var l-fp3060 as log no-undo.
define shared var l-fp3160 as log no-undo.
define shared var l-fp3170 as log no-undo.
define shared var l-fp3180 as log no-undo.
define shared var l-fr0100 as log no-undo.
define shared var l-fr5100 as log no-undo.
define shared var l-fr5160 as log no-undo.
O buffer a seguir permite determinar qual funcionário está sendo calculado: def shared buffer bfunciona for funcionario.
Após finalizado o programa deve ser compilado e colocado no diretório informado no Manutenção Parâmetro Empresa RH – FP0500, Pasta 2, campo Diretório Fórmulas.
Tabela 1 - Informações Cadastrais
|
Código |
Conteúdo |
Código |
Conteúdo |
|
01 |
Salário Padrão Mensal |
11 |
Anuênios |
|
02 |
Salário Atual |
12 |
Biênios |
|
03 |
Salário Hora |
13 |
Triênios |
|
04 |
Horas Padrão Mês |
14 |
Quadriênios |
|
05 |
Horas Padrão Noturno |
15 |
Quinquênios |
|
06 |
Horas Padrão Dia |
16 |
Percentual Insalubridade |
|
07 |
Horas Reais Dia |
17 |
Percentual Periculosidade |
|
08 |
Dias Ativos no período |
18 |
Percentual Adicional Noturno |
|
09 |
Dias no Período |
19 |
Valor Base Insalubridade Sindicato |
|
10 |
Meses na Empresa |
20 |
Salário Mínimo |
Tabela 2 - Bases
| Código | Conteúdo | Código | Conteúdo |
| 01 | Base INSS | 06 | Base Auxiliar 3 |
| 02 | Base FGTS | 07 | Base Auxiliar 4 |
| 03 | Base Rais Normal | 08 | Base Auxiliar 5 |
| 04 | Base Auxiliar 1 | 09 | Base Vale Transporte |
| 05 | Base Auxiliar 2 | 10 | Base Salário Família |
Tabela 3 - Datas
| Código | Conteúdo | Código | Conteúdo |
| 01 | Data de Admissão do Funcionário | 03 | Data Inicio Mês Competência Cálculo |
| 02 | Data de Desligamento do Funcionário | 04 | Data Fim Mês Competência Cálculo |
Importante
As fórmulas podem ser usadas nos módulos Folha / Férias e Rescisões.
0 Comentários