- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Validação no momento que posicionar o campo.
×
Linguagem de Programação ADVPL
Perguntas Validação no momento que posicionar o campo.
- angeloprotti1
- Autor do Tópico
- Desconectado
- Membro Júnior
Menos
Mais
- Postagens: 28
- Obrigados Recebidos: 0
10 anos 5 meses atrás #22935
por angeloprotti1
Validação no momento que posicionar o campo. foi criado por angeloprotti1
Bom dia Pessoal,
Existe alguma validação no momento que entrar no campo (SX3), utilizando um axcadastro por exemplo? Basicamente gostaria de fazer a mesma coisa que acontece no cadastro de funcionário (SRA) quando se posiciona no campo "Adc.Tmp.Serv" - RA_ADTPOSE.
Em pesquisa achei o campo X3_WHEN (com retorno lógico), porém ele não é chamado quando é posicionado no campo e sim quando a tela está sendo montada (exemplo com um AxInclui).
Vocês já tentaram fazer algo do tipo?
Att,
Existe alguma validação no momento que entrar no campo (SX3), utilizando um axcadastro por exemplo? Basicamente gostaria de fazer a mesma coisa que acontece no cadastro de funcionário (SRA) quando se posiciona no campo "Adc.Tmp.Serv" - RA_ADTPOSE.
Em pesquisa achei o campo X3_WHEN (com retorno lógico), porém ele não é chamado quando é posicionado no campo e sim quando a tela está sendo montada (exemplo com um AxInclui).
Vocês já tentaram fazer algo do tipo?
Att,
Por favor Acessar ou Registrar para participar da conversa.
- angeloprotti1
- Autor do Tópico
- Desconectado
- Membro Júnior
Menos
Mais
- Postagens: 28
- Obrigados Recebidos: 0
10 anos 5 meses atrás #22939
por angeloprotti1
Respondido por angeloprotti1 no tópico Validação no momento que posicionar o campo.
Fala galera!
Descobri, segue a solução:
Utilizei o campo X3_WHEN com uma função de usuário ( U_ZCADVLCON() )
//Como a essa função é chamada toda a vez que há um refresh no dialog, fiz o tratamento em uma variável STATIC realizando alguma ação somente quando o READVAR() for igual ao campo desejado.
//
User Function ZCADVLCON()
Local lRet := .T.
Static __nZTst := 0
If Alltrim( ReadVar() ) = "M->ZZV_DTOT1" .AND. ( __nZTst = Nil .OR. __nZTst < 1 )
__nZTst++
MsgInfo( "Entrei no campo ZZV_DTOT1" , "Atenção )
lRet := .F.
Elseif __nZTst >= 1
__nZTst := 0
lRet := .T.
Endif
Return(lRet)
//
Até!!!
Descobri, segue a solução:
Utilizei o campo X3_WHEN com uma função de usuário ( U_ZCADVLCON() )
//Como a essa função é chamada toda a vez que há um refresh no dialog, fiz o tratamento em uma variável STATIC realizando alguma ação somente quando o READVAR() for igual ao campo desejado.
//
User Function ZCADVLCON()
Local lRet := .T.
Static __nZTst := 0
If Alltrim( ReadVar() ) = "M->ZZV_DTOT1" .AND. ( __nZTst = Nil .OR. __nZTst < 1 )
__nZTst++
MsgInfo( "Entrei no campo ZZV_DTOT1" , "Atenção )
lRet := .F.
Elseif __nZTst >= 1
__nZTst := 0
lRet := .T.
Endif
Return(lRet)
//
Até!!!
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Validação no momento que posicionar o campo.
Tempo para a criação da página:0.091 segundos