Tempo aproximado para leitura: 00:01:00 min
Dúvida
Utilização do ponto de entrada GP090OK
Ambiente
[TOTVS RH - TOTVS RH (Linha Protheus) - Gestão de Pessoal - Todas as versões
Solução
Este Ponto de Entrada tem como objetivo a verificação extra nas rotinas de Inclusão/Alteração/Exclusão de Lançamentos Mensais.
Validação será feita no momento do LinhaOK, verificando se a linha posicionada atende às validações.
Deve retornar verdadeiro (.T.) se linha for válida, permitindo alterar foco para próxima linha ou salvar registros.
Deve retornar falso (.F.) caso linha não atender à validação realizada, impedindo retirada de foco da linha ou gravação dos registros.
Feita atualização para permitir a passagem pelo PE também quando a linha está com estado de Deletada. Validando assim, todas as linhas: incluídas, alteradas e deletadas.
Localização : Atualização / Lançamentos / Por Funcionário (GPEA090)
Fonte: GPEA090.PRX
Retorno: Lógico (.T. ou .F.)
Parâmetros :
|
Nome
|
Tipo
|
Descrição
|
|---|---|---|
| PARAMIXB | Array of Record | Contém o array com as informações da linha que está sendo validada. |
Exemplo
Local lRet := .T.
Local nX := 0
Local nY := 0
Local nPosDeleted := GdFieldPos( "GDDELETED" )
Local nPosValor := GdFieldPos("RGB_VALOR")
Local nPosHorasC := GdFieldPos("RGB_HORAS")
Local nPosDtRef := GdFieldPos("RGB_DTREF")
If Len(aColsAnt) > 0
For nX := 1 to Len(aCols)
nY := aScan(aColsAnt, { |x| x[2] == aCols[nx][2] })
If aCols[nx][2] == "013" .AND. aCols[nx][nPosDeleted] == .T. //se verba esta como deletada
MsgAlert("Verba não pode ser deletada - GP090OK","ATENCAO")
aCols[nx][nPosDeleted] := .F.
lRet := .F.
ElseIf nY > 0 .AND. (aCols[nx][nPosValor] != aColsAnt[ny][nPosValor] .OR. aCols[nx][nPosDtRef] != aColsAnt[ny][nPosDtRef])
aCols[nx][nPosValor] := aColsAnt[ny][nPosValor]
aCols[nx][nPosDtRef] := aColsAnt[ny][nPosDtRef]
MsgAlert("Verba não pode ser alterada - GP090OK","ATENCAO")
EndIf
Next nX
EndIf
Return (lRet)
BASE TDN: https://tdn.totvs.com/display/public/PROT/DT_PE_GP090OK_Lancamentos_Mensais_Verificacao_Adicional
Saiba mais:
0 Comentários