Tempo de leitura: 2 minutos
A função RunTrigger em ADVPL executa um gatilho(SX7) de um campo(SX3) informado no parâmetro. Ela é uma das Funções de Manipulação de Gatilhos de Campos(SX7) em ADVPL.
Essa função é muito útil em situações que executamos rotinas customizadas no Protheus e que necessitam que os gatilhos envolvidos sejam executados, como exemplo temos a importação de uma planilha(.csv) onde podemos alimentar um array aCols(uma tela com grid) e nesse processo precisamos executar os gatilhos já que por ser um processo manual o Protheus não vai executá-los pela sua forma padrão.
A função RunTrigger deve ser usada com a função ExistTrigger, para que essa possa verificar à existência de um gatilho antes da RunTrigger ser executada.
Sintaxe:
RunTrigger(nTipo,nLin,cMacro,oObj,cCampo)
Parâmetro(s):
Exemplo da função RunTrigger em ADVPL:
/*{Protheus.doc} User Function fRunTrig
(Essa função tem por finalidade mostrar a função RunTrigger em ADVPL)
@?type Function
@?author Adilio Costa
@?since 27/11/2022
@?version 1.0
@?Inscreva-se no Blog ProtheusAdvpl:
https://www.protheusadvpl.com.br
@?Inscreva-se no Canal ProtheusAdvpl:
https://www.youtube.com/protheusadvpl
@?Siga-nos no Instagram:
https://www.instagram.com/protheusadvpl
@?Conheça os Cursos e Formações do Protheus:
https://cursos-e-formacoes-protheusadvpl.gr-site.com/
@Participe de nossas comunidades no WhatsApp:
-Comunidade Protheus Backoffice:https://chat.whatsapp.com/KMUIAjwZ6EZ6eAHsLkPTyb
-Comunidade Protheus-RH:https://chat.whatsapp.com/L5dUyAna6xU4ylG5DUgfOW
-Comunidade Protheus-Programação:https://chat.whatsapp.com/LsD6z0apdqKHlOz67bcaEn
-Comunidade Protheus-Framework:https://chat.whatsapp.com/BzUFpjaSnTC3vtsfa77jmG
|Se esse conteúdo foi útil pra você nos ajude divulgando
ele e nossas redes sociais!!|
*/
User Function fRunTrig()
//Para nTipo=1(Enchoice(tela padrao de cadastro))
If ExistTrigger('C5_CLIENTE')
RunTrigger(1,Nil,Nil,,'C5_CLIENTE')
Endif
//Para nTipo=2(Getdados(aCols))
If ExistTrigger('')
RunTrigger(2,Nil,Nil,,'C6_PRODUTO')
Endif
//Para nTipo=3(F3)
If ExistTrigger('A1_CGC')
RunTrigger(3,Nil,Nil,,'A1_CGC')
Endif
Return
Bem, finalizamos mais um post aqui no blog. Espero que tenha entendido, se tiver ficado alguma dúvida deixe seu comentário ou nos mandar um e-mail para adiliocosta@protheusadvpl.com.br. Grande abraço e fica com Deus.
Links de referência: