Simple-Scada forum
Simple-Scada 2 => Ваши вопросы => Тема начата: Denis_ger от 28 Августа 2021, 13:02:21
-
Я пытаюсь вывести в отчет данные по "матрицам". У матрицы есть ID и несколько изменяющихся в процессе работы параметров. Я хочу знать как изменились эти параметры по каждой из матриц за сутки. Создаю источник данных по изменению ID и напротив имею интересующие меня данные. Проблема в том, что ID может повторяться. То есть: работала матрица 32, потом 45, а потом снова 32 (3 строки). Но мне нужна строка с суммой данных по 32 и строка по матрице 45 (2 строки). Как суммировать данные в строках я понимаю, а вот как скрыть повторы - нет. В итоговых бэндах тоже не нашел такой функции. Как решить мою задачу?
Доп. вопрос по автоматическому восстановлению в основных свойствах переменной? Куда сохраняется переменная, в базу данных, в папку проекта или еще куда-то? Если я заменяю всю папку проекта (обновление созданное на другом ПК), есть ли вероятность потерять последние значения переменных?
-
Напрашивается вариант использовать вместо стандартного источника данных источник "БД MySQL". И там уже запросом к таблице trends_data выбирать нужные переменные. В запросе уже можно дописать sum(value) и group by ID, тогда всё красиво объединится. А насчет значений переменных, помню озвучивалось что они сохраняются в файл при остановке проекта и выгружаются из него при старте.
-
Попробовал создать источник данных MySQL, по инструкции "Отчет из своего источника данных" в "Примеры отчетов:" и не могу подключиться к БД из редактора отчетов.
Воркбенч подключается, редактор проектов (в настройках) тоже, сервер тоже, а редактор отчетов нет. Что может быть не так?
Моя строка соединения:
Server=localhost;
Database=MR_bd;
UserId=root;
Pwd=F67Mslreka76G;
Так же пробовал с указанием порта:
Server=localhost:3307;
Database=MR_bd;
UserId=root;
Pwd=F67Mslreka76G;
Пишет: Unable to connect to any of the specified MySQL hosts.
Где хранится файл куда сохраняются значения переменных при остановке проекта, и будут ли они потеряны если проект был закрыт некорректно (выключился свет)?
-
Пишет: Unable to connect to any of the specified MySQL hosts.
Скорее всего, служба MySQL в этот момент остановлена или имеются проблемы в ее работе, поэтому при попытке подключения к БД выдалась данная ошибка. Это одна из возможных причин, другие причины можно найти в интернете по ссылке (https://www.google.com/search?q=Unable+to+connect+to+any+of+the+specified+MySQL+hosts&oq=Unable+to+connect+to+any+of+the+specified+MySQL+hosts&aqs=chrome..69i57j69i60&sourceid=chrome&ie=UTF-8).
Где хранится файл куда сохраняются значения переменных при остановке проекта, и будут ли они потеряны если проект был закрыт некорректно (выключился свет)?
Ответ уже есть на форуме в этой теме: https://simple-scada.com/forum/index.php?topic=1121.msg9039#msg9039
Поэтому, если «выключился свет», а с последнего изменения переменной прошло менее 5 минут, можно потерять самое последнее значение переменной.
-
Воркбенч подключается, редактор проектов (в настройках) тоже, сервер тоже, а редактор отчетов нет. Что может быть не так?
Пишет: Unable to connect to any of the specified MySQL hosts.
Попробуйте редактор отчётов запустить от имени администратора
-
Скорее всего, служба MySQL в этот момент остановлена или имеются проблемы в ее работе, поэтому при попытке подключения к БД выдалась данная ошибка. Это одна из возможных причин, другие причины можно найти в интернете по ссылке (https://www.google.com/search?q=Unable+to+connect+to+any+of+the+specified+MySQL+hosts&oq=Unable+to+connect+to+any+of+the+specified+MySQL+hosts&aqs=chrome..69i57j69i60&sourceid=chrome&ie=UTF-8).
Да я уже гуглил, спасибо. База то работает, я к ней подключаюсь спокойно остальными средствами, о чем я писал. Проблема была на стороне редактора отчетов. Помогло изменить форму записи порта.
Не работает:
Server=localhost:3307;
Работает:
Server=localhost;
Port=3307;
-
Напрашивается вариант использовать вместо стандартного источника данных источник "БД MySQL". И там уже запросом к таблице trends_data выбирать нужные переменные. В запросе уже можно дописать sum(value) и group by ID, тогда всё красиво объединится.
Этот вариант кажется удачным. Начал разбираться в нем и уперся в часть "выбирать нужные переменные". Дело в том, что в таблице trends_data нет колонки имени, есть только ID и значения. Как мне сопоставить ID данной таблицы с именами переменных из проекта в СКАДА? Смотрел таблицу variables_data, в ней есть имена, но не все, и их ID не соответствует ID из trends_data. Пробую сейчас сопоставлять по значениям в определенные моменты, но это очень муторно и неоднозначно. Думается есть более адекватный способ.
ПС. Судя по этой теме (https://simple-scada.com/forum/index.php?topic=556.0) на 2018 не было такого способа. Есть ли сегодня?
-
Здравствуйте.
Посмотреть соответствие ID именам переменных можно в редакторе переменных (https://simple-scada.com/help/manual/variable-editor.html) - см. колонку "ID". Также, можно перейди в Настройки проекта -> База данных (https://simple-scada.com/help/manual/dbset.html) - в нижней части имеется список, в котором нужно выбрать "Создать таблицу переменных" - в этом случае, в БД будет создана/обновлена таблица с именем "variables_data", которая будет содержать список всех переменных проекта с "ID" + "Имя переменной" + "Описание переменной".
-
Спасибо за оперативность. В голову не приходило, что ID из редактора переменных это ID БД. Еще и хороший инструмент добавили!