Árvore de páginas

01. DADOS GERAIS

Produto:

TOTVS Manutenção de Ativos

Linha de Produto:

Linha Protheus

Segmento:

Manufatura

Módulo:

TOTVS Manufatura (Linha Protheus) - Manutenção de ativos (SIGAMNT)

Função:

NGUTILVF()

País:Brasil


02. DESCRIÇÃO

Descrição

Conforme solicitado, o exemplo do ponto de entrada trata do Retorno Modelo 2 (MNTA435) especificamente, com a utilização do "IsInCallStack("MNTA435") ", substituindo as validações padrões.

Localização:

SIGAMNT: Atualizações/Retorno/Retorno Mod. 2

Evento:

Retorno Modelo 2 (MNTA435)

Programa Fonte:

NGUTIL.PRX

MNTUTIL01.PRW

Função:

NGUTILVF()

Retorno:

NomeTipoDescriçãoObrigatório

lRetor

Lógico

Indica se as validações do Funcionário ocorreram corretamente

Sim

Obs.:

O array 'aDados' é enviado para a rotina ExecAuto do Mata240, seguindo as regras de gravação e validação da mesma.

03. DEMAIS INFORMAÇÕES

Exemplo NGUTILVF()
#Include 'Protheus.ch'
User Function NGUTILVF()
Local cCodFunV := PARAMIXB[1]
Local lMenTela := PARAMIXB[2]
Local dDtFIM := PARAMIXB[3]
Local lValidaRH := PARAMIXB[4]
Local aAreaAtua := GetArea(),lRetor := .T.,lDtDem
Local lSai := If(lMenTela = Nil,.f.,lMenTela)
Local cDESCSX5 := Len(sx5->x5_descri)
Local cNgMntRh := AllTrim(GetMv("MV_NGMNTRH"))

DbSelectArea("ST1")
DbSetOrder(01)
If IsInCallStack("MNTA435") .And. DbSeek(xFilial("ST1")+cCodFunV)
If cNgMntRh $ "SX"
DbSelectArea("SRA")
DbSetOrder(01)
If DbSeek(xFilial("SRA")+cCodFunV)
lDtDem := If(dDtFIM == Nil,.T.,.F.)
If !lDtDem //Se for informada a data fim do insumo, será verificado se a demissão foi antes desta data
If SRA->RA_DEMISSA < dDtFIM
lDtDem := .t.
Endif
Endif
If SRA->RA_SITFOLH == "D" .and. lDtDem .and. lValidaRH
If lSait
DbSelectArea("SX5")
DbSetOrder(01)
If DbSeek(xFilial("SX5")+"31"+SRA->RA_SITFOLH)
cDESCSX5 := Alltrim(sx5->x5_descri)
#IFDEF SPANISH
cDESCSX5 := Alltrim(sx5->x5_descspa)
#ELSE
#IFDEF ENGLISH
cDESCSX5 := Alltrim(sx5->x5_desceng)
#ENDIF
#ENDIF
Endif
Help(" ",1,"NÃO CONFORMIDADE",,"Funcionario nao habilidado junto a folha"+Chr(13)+"Situacao:"+Chr(13)+cDESCSX5,4,5)
Endif
lRetor := .f.
Endif
Else
If lSait .And. cNgMntRh == "S"
Help(" ",1,"NÃO CONFORMIDADE",,"Funcionario sem disponibilidade",4,5)
lRetor := .f.
Endif
Endif
Endif
Else
If IsInCallStack("MNTA435") .And. lSait
HELP(" ",1,"REGNOIS")
lRetor := .f.
Endif
Endif
RestArea(aAreaAtua)
Return lRetor


04. ASSUNTOS RELACIONADOS

  • Não se aplica.