УкраїнськаEnglishmRussian
Вход/Новый
В теме много сообщений

[BugFixed] Архивы, Протокол


Автор Сообщение
Сообщение создано: 25. 03. 2014 [19:34]
tanya
Таня Маркова
Создатель темы
Зарегистрирован(а) с: 15.03.2014
Сообщения: 16
Здравствуйте, помогите, пожалуйста, где можно почитать о связи архива с протоколом?
Вот, например. Связи с физическим контроллером нет, значения сама задаю
создала в Вычислитель на java подобном языке в библиотеке obj, где написала

using Special.FLibSYS;
Urovenin=300;
if (Urovenin) {Urovenin=300; messPut(mess,2,"уровень в норме");}

mess тип текст
в архиве сохраняется
в виджете связи поставила, написала

using Special.FLibSYS;
if(f_start) {DataEnd_value=SYS.time(); DataStart_value=SYS.time()-12*60*60;}
Protocol_time=DataEnd_value;
Protocol_tSize=DataEnd_value-DataStart_value;
{Protocol_arch="FSArch.1s"; Protocol_tmpl="obj";}
в терминале выводиться сообщение уровень в норме
но при запуске
Вложенный файл

Снимок экрана от 2014-03-25 21:32:29.png (Тип файла: image/png, Размер: 176.55 килобайт) — 1759 загрузок
Сообщение создано: 26. 03. 2014 [10:10]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3750
"tanya" wrote:

Здравствуйте, помогите, пожалуйста, где можно почитать о связи архива с протоколом?

В описании примитива и читать: http://wiki.oscada.org/Doc/VCAEngine#h668-19

"tanya" wrote:

using Special.FLibSYS;
Urovenin=300;
if (Urovenin) {Urovenin=300; messPut(mess,2,"уровень в норме");}
mess тип текст

Неправильно, лучше SYS.{message,mess_*}() и внимательно читаем документацию на предмет где сообщение, а где категория!

"tanya" wrote:

using Special.FLibSYS;
if(f_start) {DataEnd_value=SYS.time(); DataStart_value=SYS.time()-12*60*60;}
Protocol_time=DataEnd_value;
Protocol_tSize=DataEnd_value-DataStart_value;
{Protocol_arch="FSArch.1s"; Protocol_tmpl="obj";}
в терминале выводиться сообщение уровень в норме
но при запуске

Период слежения нужно указывать и ставить просто 0 в Protocol_time или нормальный скрипт писать, а не то, что выше, который при запуске DataEnd_value установит в время запуска и всё.

Learn, learn and learn better than work, work and work.
Сообщение создано: 26. 03. 2014 [20:39]
tanya
Таня Маркова
Создатель темы
Зарегистрирован(а) с: 15.03.2014
Сообщения: 16
В вычислетель на java подобном языке у функции obj написала

using SYS.Archive;
messPut("уровень" , 2,"уровень в норме");

в терминале пишет
2|уровень |уровень в норме

в виджете поставила галочки у протокола в time, trcPer, arch
и в обработке написала
using SYS.Archive;
Array messGet(string arch="FSArch.1s");
Protocol_time=0;
Protocol_trcPer=1;

при запуске проекта ничего не выводит в протокол
Нужно поставить связи у протокола с архивом?
просто в обработке у атрибута arch поставила "полная связь", он появился в связях, путь писала prm:FSArch/1s/mess разные вариации, но плюсик не ставил. Нужно ли это вообще или нужна только обработка на java?
Если только на java, можно посмотреть как вызвать архив?
Сообщение создано: 26. 03. 2014 [22:41]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3750
"tanya" wrote:

using SYS.Archive;
messPut("уровень" , 2,"уровень в норме");

Странная категория!

"tanya" wrote:

в виджете поставила галочки у протокола в time, trcPer, arch
и в обработке написала
using SYS.Archive;
Array messGet(string arch="FSArch.1s");
Protocol_time=0;
Protocol_trcPer=1;

Не нужен скрипт для этого вообще.
Открываем кадр "Тесты "Протокол", ДемоБД, и внимательно изучаем!

Learn, learn and learn better than work, work and work.
Сообщение создано: 28. 03. 2014 [20:04]
tanya
Таня Маркова
Создатель темы
Зарегистрирован(а) с: 15.03.2014
Сообщения: 16
Спасибо.
Если в архиваторе в категории сообщений поставить * то все сообщения выводятся в протокол( и мои и системные). Как заставить архиватор выводить в динамический протокол только те сообщения,которые мне нужны? и для чего в протоколах есть атрибут шаблон, может как-то через него сделать?
Сообщение создано: 30. 03. 2014 [19:55]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3750
"tanya" wrote:

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

Для выборки по категории сообщения, для чего она и предназначена, а не для того, что Вы туда вставили.
Документацию читаем: http://wiki.oscada.org/Doc/VCAEngine#h668-19
Шаблон категории или регулярное выражение "/{re}/". Для шаблона зарезервированы символы:
'*' — множество любых, группа символов;
'?' — любой, один символ;
'\' — используйте для экранирования специальных символов.


Learn, learn and learn better than work, work and work.
Сообщение создано: 10. 04. 2014 [21:19]
monia
Олег Намятов
Зарегистрирован(а) с: 21.05.2012
Сообщения: 173
Небольшой вопрос по сохранению архива сообщений в mysql стандартным архиватором
В таблице с сообщениями в столбце LEV появляются числа 2147483647 при любом отрицательном уровне сообщения

Вроде по описанию - авария пришла, +авария ушла

Это нормальное явление или что, то не так и в столбце LEV должны быть и отрицательные значения
LEV - int(1) так сама скада создала
Сообщение создано: 11. 04. 2014 [08:49]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3750
"monia" wrote:

Это нормальное явление или что, то не так и в столбце LEV должны быть и отрицательные значения
LEV - int(1) так сама скада создала

Запись отрицательных значений уровня появилась сравнительно недавно, а поле не расширял.
Расширил, проверяйте!

Learn, learn and learn better than work, work and work.
Сообщение создано: 14. 04. 2014 [13:20]
monia
Олег Намятов
Зарегистрирован(а) с: 21.05.2012
Сообщения: 173
обновился, не помогло, все равно вместо - выдает 2147483647
Изменил тип поля INT на Unsignet INT и получил значение 4294967293
4294967293-2^32 = -3


[Сообщение редактировалось 1 раз(а), в последний раз 14.04.2014 в 13:34.]
Сообщение создано: 14. 04. 2014 [13:34]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3750
"monia" wrote:

обновился, не помогло, все равно вместо - выдает 2147483647

И не должно, если таблицу не удалить, поскольку модуль не проверяет структуры таблицы без ошибок при запросе.

Learn, learn and learn better than work, work and work.



1248