Пожалуйста, включите JavaScript для просмотра этого сайта.

Скрипты Simple-Scada

Скрипты Simple-Scada позволяют выполнять любые SQL-запросы с последующей обработкой результата. Выполнить SQL-запрос можно используя процедуру RunSQL, а обработать результат можно в любом скрипте с типом события "Выполнен SQL-запрос". Всю необходимую информацию по SQL-запросам можно найти в интернете, например: неофициальное руководство по MySQL 4.0 на русском языке, официальное руководство по MySQL 8.0.

Важно! Процедура RunSQL доступна только в версиях Standard, Professional и Demo-Time. Подробные примеры работы с БД можно найти в демо-проекте на странице "Скрипты" -> "Работа с БД", а также в разделе "Примеры скриптов".

Синтаксис

procedure RunSQL(AQuery: stringconst ASender: TObject = nilconst ATag: Integer = 0);

Описание

Выполняет запрос AQuery для базы данных проекта. В процедуру можно передать необязательные параметры: объект ASender и целое число ATag для собственных нужд. Обработать результаты запроса можно в скриптах с типом события "Выполнен SQL-запрос". Такие скрипты содержат параметр DataSet(TM_DataSet) - набор данных, полученный в результате выполнения запроса. DataSet имеет свойства Sender и Tag, которые были заданы во время вызова процедуры RunSQL. Также, набор данных DataSet включает в себя список столбцов Fields. Каждый столбец имеет тип TM_DBField.

Важно! Обработать ошибки в SQL-запросах можно в скрипе "Ошибка SQL-запроса", например вывести ошибку в компонент "Текст". Также, для отладки скриптов работы с БД можно активировать опцию "Лог пользовательских SQL-запросов", тогда все пользовательские SQL-запросы будут записываться в лог-файл сервера. Данную опцию можно использовать только для отладки проекта, иначе она будет создавать лишнюю нагрузку на сервер скады.

Пример кода

var
  aQuery: string;
begin
  { Формируем запрос к БД }
  aQuery := 'SELECT `A` FROM `table_1` WHERE ID = 6;';
  { Отправляем запрос на выполнение c тегом = 1}
  RunSQL(aQuery, nil1); 
end.