Вывести показания среднего значения тега за выставленный период времени

Avatar
  • обновлен
  • Отвечен

Доброго времени суток!)

Прошу помочь в решении простой задачи скорее всего... Необходим скрипт для отображения среднего значения за выставленный период времени. Создал небольшое окно мнемосхемы, надо ввести дату и время начала отсчёта и дату и время окончания и чтобы при нажатии кнопки отсчёт, выводилось среднее значение за выбранный период времени. Я попробовал пользуясь инструкциями на сайте по функциям времени, но что то видимо не так делаю... Заранее благодарю за ответ!

Как Вы оцениваете обслуживание, которое получили?

Оценка удовлетворенности от greymen123 3 месяца назад

Обслуживание и работа тех. поддержки выше всех похвал!!! Вы прям лучшие!)

Добавьте комментарий о качестве обслуживания (необязательно):

Прикрепленные ответы
Avatar
СИМП Лайт (тех поддержка)
  • Ответ
  • На рассмотрении

День добрый.

Самое простое сделать так:

1. Добавляем три виртуальных канала.

2. Два канала типа DateTime.

3. Третий канал - Double.

4. В третьем канале добавляем скрипт по событию записи.

5. В скрипте:


Var 
beginData, endData: TDateTime;
value: double;
Begin
beginData := ReadValue('Дата начала (имя канала)');
endData := ReadValue('Дата окончания (имя канала)');
value := GetMeanValueFromDB(beginData, endData, 'Имя канала по которому читаем среднее');
WriteValue('Имя третьего канала куда выводим результат', value);
end. 


6. На мнемосхеме размещаем два элемента ввода даты/времени - и привязываем их к виртуальным каналам (к примеру: "Дата начала (имя канала)",  "Дата окончания (имя канала)"  ). Так же размещаем кнопку которая будет писать любое значение в третий канал, для того что бы запустить скрипт.

7. В принципе - все. 



   

Avatar
greymen123

Большое спасибо!!!)всё и правда оказалось проще чем казалось... Я обязательно ещё раз пройду курсы на Stepike!))) Я прям восхищаюсь работой тех поддержки!!!)) Вы лучшие!

Avatar
СИМП Лайт (тех поддержка)
  • Ответ
  • На рассмотрении

День добрый.

Самое простое сделать так:

1. Добавляем три виртуальных канала.

2. Два канала типа DateTime.

3. Третий канал - Double.

4. В третьем канале добавляем скрипт по событию записи.

5. В скрипте:


Var 
beginData, endData: TDateTime;
value: double;
Begin
beginData := ReadValue('Дата начала (имя канала)');
endData := ReadValue('Дата окончания (имя канала)');
value := GetMeanValueFromDB(beginData, endData, 'Имя канала по которому читаем среднее');
WriteValue('Имя третьего канала куда выводим результат', value);
end. 


6. На мнемосхеме размещаем два элемента ввода даты/времени - и привязываем их к виртуальным каналам (к примеру: "Дата начала (имя канала)",  "Дата окончания (имя канала)"  ). Так же размещаем кнопку которая будет писать любое значение в третий канал, для того что бы запустить скрипт.

7. В принципе - все.