Ponto-de-Entrada: PNA020GRV - Manutenção no Cadastro de Feriados
Versões: | Microsiga Protheus 8.11 , Microsiga Protheus 10 |
Compatível Países: | Todos |
Sistemas Operacionais: | Todos |
Compatível às Bases de Dados: | Todos |
Idiomas: | Espanhol , Inglês |
Descrição:
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 do SX5 que foi o foco do desenvolvimento.
Eventos
Na rotina de cadastramento de feriados, durante a inclusão, alteração ou exclusão dos feriados.
Programa Fonte
PONA020.PRW
Sintaxe
PNA020GRV - Manutenção no Cadastro de Feriados ( [ cFilial ], [ dData ], [ cDescricao ], [ nOpcao ] ) --> Nil
Parâmetros:
Nome | Tipo | Descrição | Default | Obrigatório | Referência | ||||||||||||
cFilial | Caracter | Filial onde foi incluso o feriado | |||||||||||||||
dData | Data | Data (dd/mm/aa) do feriado | |||||||||||||||
cDescricao | Caracter | Descrição do feriado | |||||||||||||||
nOpcao | Numérico | Opção de manutenção (1 - Inclusão, 2 - Alteração , 3 - Exclusão ) |
Retorno
-
Nil(nulo)
Observações
Serão enviadas quatro variáveis para a função do usuário via ParamIXB.
cFilial := ParamIxb[1]
dData := ParamIxb[2]
cDescricao := ParamIxb[3]
nOpcao := ParamIxb[4]
nOpcao poderá conter 3 valores distintos, sendo eles:
1 - Inclusão de novo feriado.
2 - Alteração de um feriado existente.
3 - Exlcusão de um feriado.
Exemplos
#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)
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas