Histórico da Página
01. DADOS GERAIS
Linha de Produto: | Microsiga Protheus |
---|---|
Segmento: | RH |
Módulo: | SIGAGPE |
Função: | GPEM070.PRX |
Ticket: | |
Issue: | DRHPAG-23575 |
Pacote: | 12.1.17: |
Includes: |
02. SITUAÇÃO/REQUISITO
Disponibilizado o ponto de entrada GP090F13 para alterar os valores provisionados de 13 e/ou 14 salário.
03. SOLUÇÃO
Abaixo um exemplo de utilização do PE.
#INCLUDE "PROTHEUS.CH"
#INCLUDE "rwmake.ch"
#INCLUDE "TOPCONN.CH"
/*==================================================================================================
Ponto de entrada na provisao de 13º salario para alterar os valores de 14º salario.
No caso do cliente TestePE o 14º Salario nao é calculado as medias, entao devo refazer os valores
@author SeuNome.
@since 13/02/2019
@param
@version P12
@return
@project
@client TestePE
@variaveis a14salar, nv_valor, nv_adic
//================================================================================================== */
User Function GP090F13()
Local aArea := GetArea()
Local nxMes14 := 0
If n14Salario > 0
// Caso seja rescisao ou provisao mes
If If lProvResc .And. TPR->PR_TIPMOVI == _Demitido
DbSelectArea("SRR")
DbSetOrder(1)
If DbSeek(TPR->PR_FILIAL + TPR->PR_MAT + 'R' + Dtos(SRG->RG_DTGERAR) + aCodFol[114,1])//13o. na Indenizacao Rescisao
While SRR->( !EoF() ) .And. SRR->RR_FILIAL+SRR->RR_MAT+SRR->RR_TIPO3+dToS(SRR->RR_DATA)+SRR->RR_PD == TPR->PR_FILIAL+TPR->PR_MAT+'R'+Dtos(SRG->RG_DTGERAR)+aCodFol[114,1]
nxMes14 += Round(((nSalMes * Int(SRR->RR_HORAS)) / 12) , 2)
//Em casos de lançamento manual da verba id 114, busca o valor lançado.
If If nxMes14 == 0 .And. SRR->RR_TIPO2 == "I"
nxMes14 += SRR->RR_VALOR
EndIf EndIf
nV nV_FerRes += SRR->RR_VALOR
SRR SRR->( dbSkip() )
EndDoEndDo
EndIf
If If DbSeek(TPR->PR_FILIAL + TPR->PR_MAT + 'R' + Dtos(SRG->RG_DTGERAR) + aCodFol[1446,1])//13º na Indenizacao Rescisao Maternidade
While While SRR->( !EoF() ) .And. SRR->RR_FILIAL+SRR->RR_MAT+SRR->RR_TIPO3+dToS(SRR->RR_DATA)+SRR->RR_PD == TPR->PR_FILIAL+TPR->PR_MAT+'R'+Dtos(SRG->RG_DTGERAR)+aCodFol[1446,1]
nxMes14 += Round(((nSalMes * Int(SRR->RR_HORAS)) / 12) , 2)
//Em casos de lançamento manual da verba id 1446, busca o valor lançado.
If If nxMes14 == 0 .And. SRR->RR_TIPO2 == "I"
nxMes14 += SRR->RR_VALOR
EndIf
nV EndIf
nV_FerRes += SRR->RR_VALOR
SRR SRR->( dbSkip() )
EndDo
EndIf
Else
EndDo
EndIf
Else
nxMes14 := Round(((nSalMes * nTotMes) / 12) , 2)
EndIf
EndIf
If !(lBx13Pgt .And. Month(dDataRef) == 12 .and. !lDemitido)
a14Salar a14Salar[_Atual,_Avos] := 0
a14Salar a14Salar[_Atual,_Prov] := nxMes14
a14Salar a14Salar[_Atual,_Adic] := 0//(a13Salar[_Atual,_Adic] * n14Salario)
a14Salar a14Salar[_Atual,_1Par] := 0//(a13Salar[_Atual,_1Par] * n14Salario)
a14Salar a14Salar[_Atual,_INSS] := 0//(a13Salar[_Atual,_INSS] * n14Salario)
a14Salar a14Salar[_Atual,_FGTS] := 0//(a13Salar[_Atual,_FGTS] * n14Salario)
a14Salar[_Atual,_PIS] := 0//(a13Salar[_Atual,_PIS] * n14Salario)
Endif Endif
Endif
Para saber mais sobre as baixas do 14º salário, clique aqui → http://tdn.totvs.com/x/VwwrGw
Templatedocumentos |
---|
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;
fonte.size: 10px;
}
.aui-header-primary .aui-nav, .aui-page-panel {
margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
margin-left: 0px !important;
}
</style>
|