Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

  1. Visão Geral
  2. Exemplo de utilização
  3. Variáveis

01. VISÃO GERAL

...

O ponto de

...

Programa Fonte

GPEXMED.PRX

Sintaxe

GPMEDARR - Manipula Itens de Médias ( )

Retorno

    ()

02. EXEMPLO DE UTILIZAÇÃO

03. VARIÁVEIS

Outras Ações / Ações relacionadas

...

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
Nota
titleEstrutura 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)



Nota
titleObservação

A manipulação dessas variáveis pode ser efetuado em caso de situações específicas, por exemplo, no caso de uma CCT determinar que os meses que o empregado esteve afastado, o que impossibilitaria o recebimento de valores que entram para média, não sejam considerados no divisor de médias. 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
Nota
titleEstrutura 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)



Nota
titleObservaçã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:

Deck of Cards
startHiddenfalse
historyfalse
idexemplos
Card
defaulttrue
idex1
labelExemplo 1
titleExemplo 1

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:


Bloco de código
#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
Card
idex2
labelExemplo 2
titleExemplo 2

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:


Bloco de código
#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
HTML
<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}

.aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after { 
	background: #FF9900; !important 
}

.menu-item.active-tab { 
	border-bottom: none !important; 
}

</style>

...