Boa tarde, irei compartilhar uma maneira que utilizo para poder executar funções diversas no SQL através do ScadaBR. O método é simples, consiste em criar um datasource do tipo SQL para ler uma tabela da seguinte configuração:
A coluna Gatilho do tipo INT. (O nome da tabela e coluna é opcional)
Após isso basta criar um datapoint com a seguinte configuração:
Após isso, através do MYSQL, ao entrar nas configurações da tabela criada, deverá entrar na aba Trigger e criar um “before update” ou “after update”:
Agora dentro desse Triggers você coloca o código SQL que você quer acionar através do ScadaBR. (Aconselho aprender um pouco sobre programação SQL)
Após isso, sempre quando atualizar o valor daquele datapoint, através de um script, representação gráfica, tratador de eventos e etc., irá executar o código desejado. (lembrando que mesmo que você o atualize para um valor igual ao que ele já está, mesmo assim vai funcionar)
O meu sistema desenvolvido é referente a um processo de fabricação de um determinado item, e ele tem várias etapas até a finalização. Eu utilizo esse método, para poder conversar entre as centenas de tabelas que tenho no banco de dados. Também utilizo para poder excluir a tabela scadabr.events através de um tratador de eventos, ou pela representação gráfica, pois como tenho um sistema muito amplo, ela acaba sobrecarregando e causando lentidão no sistema.
Vale lembrar também que MYSQL é a minha porta de entrada para comunicar com o software de gestão da empresa, como vários outros sistemas necessários.
Irei colocar um exemplo de código SQL que utilizo nos gatilhos:
Esse gatilho me permite, que através do número da Ordem de serviço, eu consiga consultar todos os dados de execução da mesma, tudo através de uma representação gráfica do ScadaBR.
Qualquer dúvida estarei a disposição.