Árvore de páginas

Ponto-de-Entrada: GPXMEDPD - Inclusão de Verbas para o Cálculo de Médias

 

Versões:Microsiga Protheus 12
Compatível Países:Todos
Sistemas Operacionais:Todos
Compatível às Bases de Dados:Todos
Idiomas:Espanhol , Inglês

 

Descrição:

Cálculo de Médias.

Na rotina de cálculo de médias foi criado o ponto de entrada GPXMEDPD.

A finalidade é possibilitar a inclusão de verbas de 'base' para o cálculo de médias e também desprezar as verbas de proventos que não precisarem ser consideradas por alguma condição particular de cada funcionário.

Programa Fonte
GPEXMED.PRX
Sintaxe

GPXMEDPD - Inclusão de Verbas para o Cálculo de Médias ( ) --> lRet

Retorno
lRet
    (logico)
  • Deverá ser retornado um valor Lógico:
  • .T. - Quando quiser considerar a verba de base corrente para as médias;
  • .F. - Quando quiser desprezar a verba de base corrente para não entrar no cálculo das médias.
Observações

Parametros enviados

Será enviado um array com 2 elementos via variável ParamIXB.

Paramixb[1] – Código da Verba - Tipo Caracter - Contém a verba de base que está sendo processada neste momento.

Paramixb[2] - Array de incidências - Tipo Array - Contém as incidências das verbas em uso. (Na P11 era o array private PD)
 

 

Procedimentos para Implementação

1.      No Rdmake obter o array enviado.

2.      Realizar os procedimentos necessários.

3.      O retorno .T. influenciará o resultado final do cálculo das médias, uma vez que, uma verba de base que esteja nos lançamentos acumulados do funcionário passará a ser paga como média.

4.      Obter patch do GPEXMED.

 

#INCLUDE 'RWMAKE.CH'
User Function GPXMEDPD
Local cCodigo       := paramixb[1]
Local Pd			:= paramixb[2]
Local cMedFer       := PosSrv( cCodigo , SRA->RA_FILIAL , 'RV_MEDFER' )
Local cMed13        := SRV->RV_MED13
Local cMedAvi       := SRV->RV_MEDAVI
Local lRet          := .F.


If  ( !Empty(cMedFer) .And. cMedFer != 'N ' ) .Or. ( !Empty(cMed13)  .And. cMed13  != 'N ' ) .Or.  ( !Empty(cMedAvi) .And. cMedAvi != 'N ' )    
	lRet        := .T.
EndIf


Return(lRet)