RunTrigger

Reading time: 1 minute

Olá, no post de hoje iremos falar de uma das funções de Funções de Gatilhos(SX7) em ADVPL, a função RunTrigger. Essa função tem por objetivo executar um gatilho(SX7) para o campo que informamos no parâmetro.

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 em ADVPL:

#INCLUDE "TOTVS.CH"

/*{Protheus.doc} User Function fRunTrig
    (Essa função tem por finalidade mostrar a função RunTrigger em ADVPL/TL++ do TOTVS Protheus)
    @type  Function
    @author Adilio Costa
    @since 27/11/2022
    @version Protheus 12.1.2210
    @site https://www.protheusadvpl.com.br
    @canal https://www.youtube.com/protheusadvpl
    @instagram https://www.instagram.com/protheusadvpl
    @Portal ProtheusAdvpl:https://hotmart.com/pt-br/marketplace/produtos/portal-protheusadvpl/O10336806O
    @Post:RunTrigger
*/

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:

 

Receba as últimas atualizações do ProtheusAdvpl
Deixe seu melhor email
Nós respeitamos sua privacidade.