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 63 da SX5 que foi foco do desenvolvimento.
03. SOLUÇÃO
Criado o ponto de entrada PNA020GRV para replicar os feriados cadastros, alterados ou excluídos na rotina "Feriados" (PONA020) em outras tabelas.
04. DEMAIS INFORMAÇÕES
Exemplo de uso do Ponto de entrada PNA020GRV.
#Include "rwmake.ch" #Include "PROTHEUS.CH" User Function PNA020GRV() Local aArea := GetArea() Local cFil := ParamIxb[1] Local dData := ParamIxb[2] Local cDescricao := ParamIxb[3] Local nOpcao := ParamIxb[4] Local cX5Descr := "" Local cData := "" cX5Descr := DtoC(dData) + Space(4) + cDescricao cData := DtoC(dData) //nOpcao = 1 - Inclusao //nOpcao = 2 - Alteracao //nOpcao = 3 - Exclusao DbSelectArea("SX5") If nOpcao == 1 // Inclusão If SX5->(RecLock("SX5", .T.)) SX5->X5_FILIAL := xFilial("SX5", cFil) SX5->X5_TABELA := "63" SX5->X5_CHAVE := "AAA" SX5->X5_DESCRI := cX5Descr SX5->(MsUnlock()) EndIf ElseIf nOpcao == 2 // Alteração If SX5->(Dbseek(xFilial("SX5", cFil)+"63")) While SX5->(!Eof() .And. X5_TABELA == "63") If Left(SX5->X5_DESCRI, 10) == cData If SX5->(RecLock( "SX5" , .F.)) SX5->X5_DESCRI := cX5Descr SX5->(MsUnlock()) EndIf Exit EndIF SX5->(dbSkip()) End While EndIf ElseIf nOpcao == 3 // Exclusao If SX5->(Dbseek(xFilial("SX5",cFil)+"63")) While SX5->( !Eof() .and. X5_TABELA == "63") If Left(SX5->X5_DESCRI, 10) == cData If SX5->(RecLock("SX5", .F., .T.)) dbDelete() SX5->(MsUnlock()) EndIf Exit EndIF SX5->(dbSkip()) End While EndIf EndIf RestArea(aArea) Return
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas