Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Автор Тема: Отчеты  (Прочитано 29545 раз)

Виктория

  • Пользователь
  • **
  • Сообщений: 87
    • Просмотр профиля
Отчеты
« : 24 Августа 2017, 09:32:56 »
Здравствуйте. Интересуют следующие вопросы по формированию отчетов в Simple Scada. Они в прикрепленном файле
« Изменён: 24 Августа 2017, 10:00:17 от Виктория »

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3197
    • Просмотр профиля
    • Simple-Scada
Re: Отчеты
« Ответ #1 : 24 Августа 2017, 11:46:02 »
Здравствуйте.

Вы включили архивацию для переменных устройств? Если архивация выключена, то система отчетов сможет получить от сервера скады только текущее значение переменной, а данные которые были ранее у переменной будут просто потеряны и отобразить их не удастся.

Если архивация у переменных включена, то нужно убедиться, что подключение к БД настроено правильно и есть соединение с базой данных. Для этого можно запустить проект на сервере скады и в разделе Базы данных должна отображаться база данных со строкой зелёного цвета: "Состояние:  работает", как показано здесь.
« Изменён: 24 Августа 2017, 11:50:10 от Simple_Scada »

Виктория

  • Пользователь
  • **
  • Сообщений: 87
    • Просмотр профиля
Re: Отчеты
« Ответ #2 : 24 Августа 2017, 11:56:41 »
Если бы я не настроила архивацию параметров- у меня вообще бы не отображались графики, я так понимаю. С БД тоже все хорошо, она работает) Причем пробовала архивировать значения и по времени и по изменению и комбинированно. Итог как на рисунках. Причем в предварительном просмотре он отражает начальные значения, а как только 0 сменился на 1 или наоборот, то он только начальные значения с графика убирает, остальное все правильно отображается.

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3197
    • Просмотр профиля
    • Simple-Scada
Re: Отчеты
« Ответ #3 : 24 Августа 2017, 14:04:18 »
Во вложении пример проекта (для Simple-Scada версии 2.2.4.0) под Вашу задачу, основанный на виртуальных переменных. Распакуйте его в папку "..\Simple-Scada 2\Projects\", откройте в редакторе и в меню "Проект -> настройки -> База данных" введите пароль к Вашей СУБД, после чего сохраните проект и запустите его через клиент скады (Client.exe). В примере используется источник данных с типом "По-изменению", диаграмма с типом "Пошаговая линия" и выводится количество отказов. Кода точек на диаграмме станет более 10, можно будет использовать прокрутку диаграммы.

Если вообще не было отключения или включения уст-в, то на графиках вообще ничего нету (см. рисунок 2). Как можно решить данный вопрос?
К сожалению никак, т.к. если переменная ни разу не изменилась, то в БД ничего не будет записано. Переменная обязательно должна измениться, чтобы значение попало в БД.

2) Периодический отчет. Например мне необходимо сформировать отчет за час и я ставлю интервал 1с, чтобы отобразить все включения и выключения.
Для этого периодический источник данных не подходит и нужно использовать источник с типом данных "По-изменению".

можно ли воспользоваться прокруткой диапазона, она как таковая имеется, но я не могу разобраться как она работает и поможет ли это.
Да, можно. Нужно включить прокрутку диапазона и задать величину диапазона. См. скрин во вложении.
« Изменён: 24 Августа 2017, 14:05:35 от Simple-Scada »

Виктория

  • Пользователь
  • **
  • Сообщений: 87
    • Просмотр профиля
Re: Отчеты
« Ответ #4 : 25 Августа 2017, 08:31:03 »
Спасибо, но проблему решила по-другому. Завела переменную, которая изменятся в начала формирования отчета, в редакторе переменных выбрала пункт архивировать и далее в отчете добавила ее в источник и отобразила на графике, но так как эта переменная не нужна сделала график не доступным для пользователя. И все стало работать правильно)

Миханик

  • Постоялец
  • ***
  • Сообщений: 182
    • Просмотр профиля
    • www.vpa-dv.ru
Re: Отчеты
« Ответ #5 : 20 Октября 2017, 12:39:31 »
Не запускается отчет.
В лог пишет такую ошибку:
"Не удалось создать запрос на получение данных и отправить его серверу. Ссылка на объект не указывает на экземпляр объекта."
Куда копать?

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3197
    • Просмотр профиля
    • Simple-Scada
Re: Отчеты
« Ответ #6 : 20 Октября 2017, 19:14:03 »
Можете отправить нам на support@simple-scada.com проект (из папки "..\Simple-Scada\Projects\") для проверки?

Миханик

  • Постоялец
  • ***
  • Сообщений: 182
    • Просмотр профиля
    • www.vpa-dv.ru
Re: Отчеты
« Ответ #7 : 21 Октября 2017, 10:45:24 »
Выслал проект на почту.

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3197
    • Просмотр профиля
    • Simple-Scada
Re: Отчеты
« Ответ #8 : 22 Октября 2017, 20:35:16 »
Миханик, спасибо. Как выяснилось проблема возникает из-за неинициализированных переменных в словаре отчета. Для решения достаточно снять флажок "Не задано" в свойствах переменных (см. скрин во вложении). В ближайшем обновлении мы предусмотрим эту ситуацию.

Миханик

  • Постоялец
  • ***
  • Сообщений: 182
    • Просмотр профиля
    • www.vpa-dv.ru
Re: Отчеты
« Ответ #9 : 23 Октября 2017, 03:21:11 »
Simple-Scada, а у меня эти галочки уже стояли..

Миханик

  • Постоялец
  • ***
  • Сообщений: 182
    • Просмотр профиля
    • www.vpa-dv.ru
Re: Отчеты
« Ответ #10 : 23 Октября 2017, 11:32:31 »
Удалил все переменные в отчете AllTermopodveski и он заработал.
А отчет Termopodveska так и не работает.

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3197
    • Просмотр профиля
    • Simple-Scada
Re: Отчеты
« Ответ #11 : 23 Октября 2017, 11:59:55 »
Цитировать
Удалил все переменные в отчете AllTermopodveski и он заработал.
Удалять не обязательно. Достаточно снять флажки "Не задано" у переменных в словаре отчета, как мы писали в предыдущем сообщении.

Цитировать
А отчет Termopodveska так и не работает.
Отчет Termopodveska не строится из-за другой ошибки в синтаксисе SQL-запроса у таблицы "tmonitor". Проверьте, Вы пропустили скобку "(" в условии WHERE:
Код
WHERE `silage`= @silage_now) and

Миханик

  • Постоялец
  • ***
  • Сообщений: 182
    • Просмотр профиля
    • www.vpa-dv.ru
Re: Отчеты
« Ответ #12 : 23 Октября 2017, 12:34:33 »
Да эту ошибку я давно нашел.
Проблема в том, что при проверке источника данных скрипт выполняется, а в предварительном просмотре выводит нули.

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3197
    • Просмотр профиля
    • Simple-Scada
Re: Отчеты
« Ответ #13 : 23 Октября 2017, 14:20:59 »
Нули выводятся вместо данных, потому что у Вас выборка из БД делается вот так:

Код
SELECT Date(`Timestamp`), max(`level`), max(`t1`), max(`t2`), max(`t3`)...
В результате такой выборки получаем столбцы в именами "max(`level`)", "max(`t1`)", "max(`t3`)" и так далее. Это видно на первом скрине из вашего предыдущего сообщения. При этом в источнике данных колонки имеют имена: "level", "t1", "t2", "t3" и т.д. Видимо когда вы создавали источник, то колонки брались без преобразований, а затем Вы добавили выборку максимумов, но имена колонок в источнике не изменили. Решений может быть несколько. Первое это изменить запрос вот так:

Код
SELECT Date(`Timestamp`) as `Timestamp`, max(`level`) as `level`, max(`t1`) as `t1`, max(`t2`) as `t2`, max(`t3`) as `t3`...
Тогда имена колонок в источнике и колонки полученные в результате выборки будут совпадать.

Второй вариант сначала удалить все колонки из источника, затем нажать "Получить все колонки" и система отчетов добавит колонки с соответствующими именами. После этого нужно будет удалить старый бэнд данных и перетянуть в отчет обновленный бэнд с обновленными именами. См. вложение.
« Изменён: 23 Октября 2017, 16:29:47 от Simple-Scada »

Миханик

  • Постоялец
  • ***
  • Сообщений: 182
    • Просмотр профиля
    • www.vpa-dv.ru
Re: Отчеты
« Ответ #14 : 23 Октября 2017, 16:18:29 »
Большое спасибо, разобрался.