Árvore de páginas


CONTEÚDO

  1. Visão Geral
  2. Exemplo de utilização

01. VISÃO GERAL

O ponto de entrada GPMEDARR permite manipular o divisor das médias de férias, 13º salário, aviso prévio e licença maternidade, além de permitir manipular efetivamente os valores que irão efetuar a composição das médias.

02. EXEMPLO DE UTILIZAÇÃO

O ponto de entrada permite efetuar a manipulação das variáveis abaixo, do tipo array, que contém a configuração de quantos meses irão ser considerados no divisor das médias:

NomeUso
aFerVenVariável que contém a definição do divisor de média para férias vencidas
aFerProVariável que contém a definição do divisor de média para férias proporcionais
a13SalaVariável que contém a definição do divisor de média para 13º salário
aAvisoVariável que contém a definição do divisor de média para aviso prévio
aMaterVariável que contém a definição do divisor de média para licença maternidade

Estrutura das variáveis

PosiçãoUso
1Código da verba (RV_COD)
2Divisor de meses para média
3Período inicial de busca de médias
4Período final de busca de médias
5

Indicativo se a média é reajustável (RV_MEDREAJ)

6

Indicativo se a verba é de hora extra (RV_HE)

7

Percentual da verba (RV_PERC)

8

Configuração da verba para médias (RV_MEDFER/RV_MED13/RV_MEDAVI)

9Indicativo se o intervalo de meses deve ser utilizado para todos os períodos de férias vencidas
10Data inicial de busca de médias
11Data final de busca de médias
12Configuração da verba para médias (RV_MEDFER/RV_MED13/RV_MEDAVI)

Observação

A manipulação dessas variáveis pode ser efetuada em situações específicas, por exemplo, no caso de uma CCT determinar que os meses que o empregado esteve afastado não sejam considerados no divisor de médias, uma vez que esteve impossibilitado do recebimento de valores que entram para média nesses meses. Por exemplo, se no período de 12 meses, o funcionário ficou 2 meses afastados, a média dos valores seria efetuada com base no divisor de 10 meses, ao invés do divisor padrão de 12 meses.


Obs.: a manipulação dessas variáveis somente será efetiva caso o mnemônico P_MEDDIREN esteja configurado com S.

Obs.: a única posição que efetivamente irá alterar o valor da média é a 2, referente ao divisor de meses para média. As demais posições já foram utilizadas previamente na apuração da composição dos valores para a média e não irão refletir no cálculo da média.


E também permite efetuar a manipulação das variáveis abaixo, do tipo array, que contém os valores que irão efetuar a composição das médias:

NomeUso
aFvVariável que contém os valores que irão efetuar a composição das média de férias vencidas
aFpVariável que contém os valores que irão efetuar a composição da média de férias proporcionais
a13Variável que contém os valores que irão efetuar a composição da média de 13º salário
aAvVariável que contém os valores que irão efetuar a composição da média de aviso prévio
aLMVariável que contém os valores que irão efetuar a composição da média de licença maternidade

Estrutura das variáveis

PosiçãoUso
1Código da verba (RD_PD)
2Período (RD_DATARQ)
3Horas (RD_HORAS)
4Valor (RD_VALOR)
5

Tipo (RD_TIPO1)

6

Data de pagamento (RD_DATPGT)

Observação

A manipulação dessas variáveis irá refletir nos valores que serão considerados para a composição da média, sendo possível remover valores, incluir valores e/ou alterar valores.



Exemplos de utilização do ponto de entrda:

    Exemplo para situação em que foi necessário alterar o divisor de médias para férias vencidas e 13º salário devido afastamento do funcionário:


    #INCLUDE "PROTHEUS.CH"
    
    User Function GPMEDARR()
    
    Local nMesAfast := 0
    
    /*
    Trecho que contém a lógica de apuração da quantidade de meses em que o empregado ficou afastado, gerando a quantidade de meses na variável nMesAfast
    */
    
    If nMesAfast > 0
        aEval( aFerVen, { |x| x[2] := StrZero( (Val(x[2]) - nMesAfast), 2 ) } )
        aEval( a13Sala, { |x| x[2] := StrZero( (Val(x[2]) - nMesAfast), 2 ) } )
    EndIf
    
    Return

    Exemplo para situação em que foi necessário desconsiderar uma verba específica da composição das médias de férias vencidas e 13º salário de período anterior a 03/2023:


    #INCLUDE "PROTHEUS.CH"
    
    User Function GPMEDARR()
    
    Local a13Aux    := {}
    Local aFerAux   := {}
    Local nCont     := 0
    
    For nCont := 1 To Len(a13)
        If !(a13[nCont, 1] == "116" .And. a13[nCont, 2] < "202303")
            aAdd( a13Aux, aClone( a13[nCont] ) )
        EndIf
    Next a13Aux
    
    For nCont := 1 To Len(aFv)
        If !(aFv[nCont, 1] == "116" .And. aFv[nCont, 2] < "202303")
            aAdd( aFerAux, aClone( aFv[nCont] ) )
        EndIf
    Next a13Aux
    
    a13 := aClone(a13Aux)
    aFv := aClone(aFerAux)
    
    Return