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

Отчеты Simple-Scada

История: Источники данных

Как работает источник по-изменению

Пред. Вверх След. Еще

Источники данных с типом "по изменению" не разбивают основной период времени на интервалы (как это происходит в периодических источниках), а выводят все архивные данные из БД (каждое изменение) по указанным переменным за указанный интервал времени. Поэтому, отчёт "по изменению" формируется довольно просто. Он добавляет новую строку каждый раз, когда любая переменная изменилась. А меняться переменные могут в разное время, из-за чего строки дополняются недостающими (обычно повторяющимися) данными.

Рассмотрим простой пример: допустим, в проекте имеются переменные "vrA" и "vrB", у которых включена архивация.

Переменная "vrA" меняется каждые две секунды:

Время

Значение

00:00

1

00:02

2

00:04

3

00:06

4

 

Переменная "vrB" каждые три секунды:

Время

Значение

00:00

10

00:03

20

00:06

30

00:09

40

 

Если добавить обе переменные в один источник данных "по-изменению", то все изменения отобразятся в одной таблице:

Время

vrA

vrB

00:00

1

10

00:02

2

???

00:03

???

20

00:04

3

???

00:06

4

30

00:09

???

40

 

Как видно, возникает проблема. Каких-то значений не хватает. Например, в архиве нет значения для переменной "vrA" в 00:03. Но известно, что в 00:02 значение было равно 2 и изменилось на 3 только в 00:04. Значит в 00:03 оно не менялось и было равно 2. Таким образом, скада дополняет таблицу недостающими данными и в источнике данных мы имеем следующую таблицу:

Время

vrA

vrB

00:00

1

10

00:02

2

10

00:03

2

20

00:04

3

20

00:06

4

30

00:09

4

40

 

Это пример для двух переменных. Но если добавить в источник данных "по изменению" много других переменных, которые меняются в разное время, то количество строк в источнике сильно возрастёт, что в результате приведёт к увеличению нагрузки на ПК при построении отчёта. Вырастут и затраты времени на построение отчёта. Поэтому, если в источнике данных чрезмерно много строк и отчёт строится долго, то можно сократить их количество при помощи специальных опций. Для этого в окне редактирования источников нужно дважды кликнуть источник. Откроется окно "Редактировать источник данных". Нас интересуют опции "Объединить (мс.)" и "выбрать активные":

 

Опция "Объединить (мс.)" позволяет задать время в миллисекундах, в пределах которого строки будут объединены в одну.

При нажатии на кнопку "выбрать активные" откроется окно в котором можно выбрать, по каким столбцам будут формироваться новые строки, а остальные столбцы нужно выключить. Выбор активных столбцов показан ниже:

 

Если рассматривать описанный выше пример с переменными "vrA" и "vrB", то можно оставить включенной только переменную "vrA", тогда новая строка будет создаваться только по изменению этой переменной и результат будет таким:

Время

vrA

vrB

00:00

1

10

00:02

2

10

00:04

3

20

00:06

4

30

 

Как видно, это позволяет избавиться от "лишних" строк, но часть данных "vrB" будет потеряна.

Создание отчёта с источником данных "по-изменению" описано в этой статье.