01. DADOS GERAIS

Linha de Produto:Microsiga Protheus
Segmento:Recursos Humanos 
Módulo:SIGAPON
Função:

PNA020GRV

02. SITUAÇÃO/REQUISITO

Essa implementação possibilita  que a manutenção feita no cadastro de Feriados possa ser replicada para outras tabelas, como por exemplo, a tabela 65 da SX5 que foi foco do desenvolvimento. 

03. SOLUÇÃO

Criada a documentação para a correta utilização do ponto de entrada PNA020GRV, que permite na rotina de cadastramento de Feriados a inclusão, Alteração ou Exclusão dos Feriados. 

04. DEMAIS INFORMAÇÕES

Exemplo de uso do Ponto de entrada PNA020GRV

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

#Include 'rwmake.ch'

User Function PNA020GRV()

Local aArea := GetArea()
Local cFilial := ParamIxb[1]
Local cDescricao := ParamIxb[3]
Local cX5Descr := ""
Local cData := ""
Local dData := ParamIxb[2]
Local nOpcao := ParamIxb[4]cX5Descr := DtoC(dData) + Space(4) + cDescricaocData := DtoC(dData)/*nOpcao:1 - Inclusao2 - Alteracao3 - Exclusao*

/DbSelectArea("SX5")If nOpcao == 1
SX5->( RecLock( "SX5" , .T. ) ) SX5->X5_FILIAL := xFilial("SX5")
SX5->X5_TABELA := "63" SX5->X5_CHAVE := "AAA"

//Exemplo
SX5->X5_DESCRI := cX5Descr
SX5->( MsUnlock() )
ElseIf nOpcao == 2

If SX5->(Dbseek(xFilial("SX5")+"63") )
While SX5->( !Eof() .and. X5_TABELA == "63" )
If Left(SX5->X5_DESCRI,8) == cData
SX5->( RecLock( "SX5" , .F. ) )
SX5->X5_DESCRI := cX5Descr
SX5->( MsUnlock() )
Exit
EndIF
SX5->( dbSkip() )
End While
EndIfElseIf nOpcao == 3 If SX5->(Dbseek(xFilial("SX5")+"63") )
While SX5->( !Eof() .and. X5_TABELA == "63" )
If Left(SX5->X5_DESCRI,8) == cData
SX5->( RecLock( "SX5" , .F., .T. ) )
dbDelete()
SX5->( MsUnlock() )

Exit
EndIF
SX5->( dbSkip() )
End While
EndIfEndIfRestArea(aArea)Return(Nil)