PDA

Просмотр полной версии : Отчет по событию с выводом 1 переменной из нескольких и ее значения в 1 строке



Parovoz
11.10.2016, 10:55
Вообщем существует много переменных, требуется в отчете выводить не все их сразу, а по изменению ту, которая изменилась, например, как только переменная изменила свое значение должна быть сформирована 1 строка вида: |время|переменная|принятое значение|. Не требуется в каждой строке выводить значения всех переменных по изменению изменившейся, а только ту которая изменила свое значение, но отслеживать изменения нужно у всех. И выводить для каждой изменившейся строчку со временем и принятым значением. Не могу никак сообразить, как это сделать.

Василий Кашуба
11.10.2016, 11:13
Не можете определить какая переменная изменилась?

SCADAMaster
11.10.2016, 11:28
Вообщем существует много переменных, требуется в отчете выводить не все их сразу, а по изменению ту, которая изменилась, например, как только переменная изменила свое значение должна быть сформирована 1 строка вида: |время|переменная|принятое значение|. Не требуется в каждой строке выводить значения всех переменных по изменению изменившейся, а только ту которая изменила свое значение, но отслеживать изменения нужно у всех. И выводить для каждой изменившейся строчку со временем и принятым значением. Не могу никак сообразить, как это сделать.
Для этого предназначен способ формирования по изменению, у всех колоной кроме одной нужно выключить настройку Основной.
Рекомендуем ознакомится с нашими видеопримерами и документацией:
http://www.masterscada.ru/about-masterscada/video/
http://www.masterscada.ru/services/support/art_step_by_step/

Parovoz
11.10.2016, 11:28
Не могу вывести только ту которая изменилась из 40 архивируемых, и не выводить всех остальных. Например у меня допустим 2 переменных. Если делать обыкновенный отчет по изменению этих двух переменных то в каждой строке будет: |время|значение первой переменной|значение второй переменной|.
И каждая строка будет формироваться по фронту изменения любой из двух переменных. Но т.к. как у меня переменных аж 40, то крайне не удобно проматывать отчет и выслеживать какая же переменная изменилась, в сформированной строке. Поэтому в отчет нужно писать только такую строку в которой будет: |время|изменившаяся в данный момент времени переменная|принятое значение|. Однако такая строка должна формироваться по каждому фронту изменения любой из 40 переменных.

Parovoz
11.10.2016, 11:35
отчет должен быть такого вида:
|11.12.16 22:12|переменная 1|25|
|11.12.16 22:13|переменная 2|22|
|11.12.16 22:13|переменная 3|true|
|11.12.16 22:15|переменная 10|2156|
|11.12.16 22:16|переменная 1|24|

и т.д. фронтом для построения строки служит изменение любой из 40 переменных, но в строке должна отобразится только та переменная которая изменила свое значение в тот момент времени по которому строится строка

Parovoz
11.10.2016, 11:49
Видео и методички пересмотрел готового решения не нашел.

SCADAMaster
11.10.2016, 12:07
Нестандартный отчет. Полностью штатными средствами построить его не удастся.
Здесь вариант - с помощью событий произвести обработку источника данных, сформировать новый источник - в котором будет только три колонки (время, название, значение).
По такому принципу сделаны отчеты электроэнергетики:
http://insat.ru/products/?category=1300

Parovoz
11.10.2016, 12:20
Блин печально, однако, думал получится по-простому, как-нибудь.

Parovoz
11.10.2016, 12:28
Тогда у меня еще один вопрос, можно ли как-то выделить ячейку с изменившейся переменной цветом, если строить обыкновенный отчет по изменению.

SCADAMaster
11.10.2016, 14:57
Можно попробовать через условное выделение, каждую ячейку сравнивать с прошлым значением. Прошлое значение можно получить с помощью функции Previous или в событиях.