Функция Now()

Интегрованная среда разработки (IDE) промышленных приложений.

Функция Now()

Сообщение rig12 » Ср фев 09, 2011 8:54 am

Не могу понять, как себя ведёт функция Now()
Задача - показать сколько секунд назад обновился, например, ЮДА какой-нить
1. Проверяю обновление значения. Делаю Value Display - now() - отображает время на момент запуска и не меняется
2. Создаю Custom Property Elapsed Time, в скрипт While Showing помещаю этот кастом проперти=now(), отображает нули
3. Создаю ЮДА типа ElapsedTime, создаю скрипт Periodic, где ежесекундно обновляю созданный ЮДА, приравнивая его к Now() - нули

:?
rig12
 
Сообщения: 103
Зарегистрирован: Чт янв 15, 2009 6:36 pm

Сообщение rig12 » Ср фев 09, 2011 9:02 am

Кста, использование System.DateTime.Now даёт те же результаты, если это можно назвать результатами
Вообще в результате хотелось из настоящего времени вычесть дату последнего обновления тэга, и интерпретировать данный результат каким-нить образом
rig12
 
Сообщения: 103
Зарегистрирован: Чт янв 15, 2009 6:36 pm

Сообщение Spaun » Ср фев 09, 2011 10:38 am

Teg = Now();
'Teg получит значение текущего системного времени и даты в текстовом формате. К примеру такое: 30.09.2010 00:00:00.783

Сделайте скрипт по DataChange этого ЮДА (это чиго такое ? :roll: ):
Teg2 = 0; 'тип тега -Elapsed Time
Правда нужен ещё скрипт, чтоб каждую секунду производил
Teg2 = teg2+1;

Teg2 будет содержать время с последнего обновления.
Spaun
 
Сообщения: 105
Зарегистрирован: Вс ноя 29, 2009 10:35 am

Re: Функция Now()

Сообщение Klinkmann_Msk » Ср фев 09, 2011 10:40 am

rig12 писал(а):Не могу понять, как себя ведёт функция Now()
Задача - показать сколько секунд назад обновился, например, ЮДА какой-нить
1. Проверяю обновление значения. Делаю Value Display - now() - отображает время на момент запуска и не меняется
2. Создаю Custom Property Elapsed Time, в скрипт While Showing помещаю этот кастом проперти=now(), отображает нули
3. Создаю ЮДА типа ElapsedTime, создаю скрипт Periodic, где ежесекундно обновляю созданный ЮДА, приравнивая его к Now() - нули

:?

У каждой переменной помимо поля .Value есть .Time (время последнего обновления)
Now() - это .Net, а .Net - это к Microsoft-у.
Klinkmann_Msk
 
Сообщения: 819
Зарегистрирован: Пт сен 18, 2009 10:12 am

Сообщение rig12 » Ср фев 09, 2011 11:38 am

Spaun писал(а):Teg = Now();
'Teg получит значение текущего системного времени и даты в текстовом формате. К примеру такое: 30.09.2010 00:00:00.783

Сделайте скрипт по DataChange этого ЮДА (это чиго такое ? :roll: ):
Teg2 = 0; 'тип тега -Elapsed Time
Правда нужен ещё скрипт, чтоб каждую секунду производил
Teg2 = teg2+1;

Teg2 будет содержать время с последнего обновления.


Юзер Дефайнд Атрибут, канешна! 8)
Кста, пробовал вариант со скриптом DataChange с аргументов Now() - не срабатывает.
Вообще выкрутился так. В ежесекундный periodic-срипт вставил:
dim ValueTime as System.DateTime;
ValueTime=me.value.time;
me.updatedin=System.DateTime.Now-ValueTime;

Проверил - считает.

Klinkmann_Msk писал(а):У каждой переменной помимо поля .Value есть .Time (время последнего обновления)


Ну это да, в курсе, использую.

Klinkmann_Msk писал(а): Now() - это .Net, а .Net - это к Microsoft-у.


Ну да... ну да...
rig12
 
Сообщения: 103
Зарегистрирован: Чт янв 15, 2009 6:36 pm


Вернуться в Development Studio & FactorySuite A²

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6