Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Автор Тема: Не отображаются сообщения.  (Прочитано 3816 раз)

deldemo

  • Старожил
  • ****
  • Сообщений: 308
    • Просмотр профиля
Не отображаются сообщения.
« : 29 Октября 2019, 08:05:18 »
Здравствуйте. Не могу разобраться в чем причина.
У меня не отображается часть сообщений. Хотя сами переменные к которым привязаны сообщения работают нормально, это хорошо видно, так как они еще привязаны к другим объектам в проекте. Сообщения были созданы по аналогии с другими, но какие-то работают, а какие-то нет.
Переменные привязанные к сообщениям имеют тип word, хотя есть не отображаемые сообщения и с другим типом данных.

Еще меня настораживает привязка ID в БД сообщений(Скриншот ниже).

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3000
    • Просмотр профиля
    • Simple-Scada
Re: Не отображаются сообщения.
« Ответ #1 : 29 Октября 2019, 10:07:38 »
Здравствуйте.

Пришлите проект для проверки на support@simple-scada.com с указанием сообщений которые не выдаются.

Цитировать
Еще меня настораживает привязка ID в БД сообщений(Скриншот ниже).
Такие ID получают сообщения добавленные через скрипты через AddMessage / AddMessageToGroup.

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3000
    • Просмотр профиля
    • Simple-Scada
Re: Не отображаются сообщения.
« Ответ #2 : 29 Октября 2019, 16:47:01 »
Сейчас проверяем проект. В первых тестах всё работает, сообщения выводятся в свои группы. Обратите внимание, у сообщений отключены опции отображения в списках "Активные" и "Неподтверждённые" (см. вложение), поэтому данные сообщение не будут выводиться в эти списки, а также на панель сообщений и увидеть их можно будет только в списке "Все сообщения" или в их группах (см. вложение). Вы уверены, что в списке "Все сообщения" и в их группах эти сообщения отсутствуют?

deldemo

  • Старожил
  • ****
  • Сообщений: 308
    • Просмотр профиля
Re: Не отображаются сообщения.
« Ответ #3 : 29 Октября 2019, 17:33:46 »
Да, я уверен что они отсутствуют, также они отсутствуют в БД. Это может быть связано с MSSQL? Версия MSSQL 2005
Я планировал сделать некий исторический сервер с помощью сообщений. И по этой причине отключил показ этих сообщений в группах "Активные" и "Непдтвержденные".
« Изменён: 29 Октября 2019, 18:13:00 от Simple-Scada »

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3000
    • Просмотр профиля
    • Simple-Scada
Re: Не отображаются сообщения.
« Ответ #4 : 29 Октября 2019, 17:41:30 »
Цитировать
Это может быть связано с MSSQL? Версия MSSQL 2005
Маловероятно, тогда и другие сообщения не попадали бы в БД.

Просьба проделать следующие тесты:
1. Вывести переменную, например "OP01_asperation_on" на мнемосхему в Поле и менять её вручную, то сообщения также не выдаются?
2. Если первый вариант не работает, или нет возможности его проверить, то попробуйте создать отдельную внутреннюю переменную типа Boolean, вывести её в Поле и привязать проблемные сообщения к ней. Выдаются ли сообщения при смене значений внутренней переменной?

deldemo

  • Старожил
  • ****
  • Сообщений: 308
    • Просмотр профиля
Re: Не отображаются сообщения.
« Ответ #5 : 29 Октября 2019, 17:50:25 »
Я пробовал привязывать к внутренней переменной, с ней все работало. К сожалению у меня сейчас нет доступа к ПК. Я завтра утром все сделаю.

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3000
    • Просмотр профиля
    • Simple-Scada
Re: Не отображаются сообщения.
« Ответ #6 : 29 Октября 2019, 17:59:00 »
Цитировать
Я пробовал привязывать к внутренней переменной, с ней все работало.
Очень странно, Вы абсолютно уверены, что внешняя переменная успешно считывается с OPC-сервера и принимает именно значения равные 0 или 1? Если вывести такую переменную в Поле, то в Поле отображается значение 0 / 1 или какое-то другое? Если у Вас в утилите Настроек на сервере выключена опция "Показывать сообщения по первому изменению", то первое изменение переменной (обычно 0) проигнорируется для сообщений. И нужно обязательно попробовать после запуска изменить переменную на 1, и убедиться что изменение произошло успешно, но сообщение не выдалось.

deldemo

  • Старожил
  • ****
  • Сообщений: 308
    • Просмотр профиля
Re: Не отображаются сообщения.
« Ответ #7 : 29 Октября 2019, 18:05:11 »
"Вы абсолютно уверены, что внешняя переменная успешно считывается с OPC-сервера" - Да, я уверен, так как к этой переменной привязан скрипт на изменение цвета изображения и он работает.

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3000
    • Просмотр профиля
    • Simple-Scada
Re: Не отображаются сообщения.
« Ответ #8 : 29 Октября 2019, 18:11:59 »
Если речь идёт о скрипте "OP01_run", то он не подходит для чистого теста по переменной OP01_asperation_on, т.к. берёт её значение как ".Value" (тип Variant). Правильный тест был бы, если бы значение бралось как ".AsInt = 1". Но лучше всего вывести отдельно переменную в отдельное поле и убедиться что значение меняется в поле на 0 / 1.
« Изменён: 29 Октября 2019, 18:13:31 от Simple-Scada »

deldemo

  • Старожил
  • ****
  • Сообщений: 308
    • Просмотр профиля
Re: Не отображаются сообщения.
« Ответ #9 : 29 Октября 2019, 18:46:54 »
Я попробовал на EL02(Нория не очень громко шумит, думаю охрана не испугается ;D), переменная приходит корректно.
https://fomin.space/d/f/517969473139904607

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3000
    • Просмотр профиля
    • Simple-Scada
Re: Не отображаются сообщения.
« Ответ #10 : 29 Октября 2019, 18:54:55 »
Если есть возможность, то просьба проделать ещё один тест: включить у сообщения вывод в неподтверждённые и проверить выводится ли сообщение в список неподтверждённых. Неподтверждённые сообщения никак не связаны с БД и это позволит понять есть проблема с записью в БД или нет.

deldemo

  • Старожил
  • ****
  • Сообщений: 308
    • Просмотр профиля
Re: Не отображаются сообщения.
« Ответ #11 : 29 Октября 2019, 18:59:34 »
Возможно это важно. Cам сервер S-S работает через DCOM, OPC сервера находятся на другой машине. Все машины виртуальные, крутятся на VMware 6.7.
"Если есть возможность, то просьба"- Сейчас попробую.
« Изменён: 29 Октября 2019, 19:00:56 от deldemo »

deldemo

  • Старожил
  • ****
  • Сообщений: 308
    • Просмотр профиля
Re: Не отображаются сообщения.
« Ответ #12 : 29 Октября 2019, 19:11:13 »
Если есть возможность, то просьба проделать ещё один тест: включить у сообщения вывод в неподтверждённые и проверить выводится ли сообщение в список неподтверждённых. Неподтверждённые сообщения никак не связаны с БД и это позволит понять есть проблема с записью в БД или нет.
Да сообщения выводятся в список неподтвержденных.
https://fomin.space/d/f/517973856193876065

deldemo

  • Старожил
  • ****
  • Сообщений: 308
    • Просмотр профиля
Re: Не отображаются сообщения.
« Ответ #13 : 30 Октября 2019, 07:29:20 »
Доброе утро. Сегодня проделал несколько тестов и выделил некую закономерность.
При групповом запросе к БД типа:
Цитировать
INSERT INTO
    [dbo].[messages_data] ([Timestamp], [GroupID], [MessageID], [Kind], [Text])
VALUES
    ('2019-10-30T08:11:56.501', 20, 21, 2, N'LN01  |  Маршрут остановлен.'),
    ('2019-10-30T08:11:56.501', 15, 146, 2, N'SC11  |  Двигатель остановлен'),
    ('2019-10-30T08:11:56.501', 16, 148, 2, N'EL02  |  Двигатель остановлен'),
    ('2019-10-30T08:11:56.501', 17, 150, 2, N'EL03  |  Двигатель остановлен'),
    ('2019-10-30T08:11:56.501', 18, 152, 2, N'VS02  |  Двигатель остановлен');
Данные в БД не записываются

Попытался сделать запрос самостоятельно, через HeidiSQL, выдает ошибку - SQL (102): Incorrect syntax near ','

А при одиночном запросе - все норм:
Цитировать
INSERT INTO
    [dbo].[messages_data] ([Timestamp], [GroupID], [MessageID], [Kind], [Text])
VALUES
    ('2019-10-30T08:12:00.548', 13, 142, 2, N'SC10  |  Двигатель остановлен');

Как оказалось у меня и с записью трендов в БД тоже проблемы, они тоже группой записываются.

Как говорят на ниже приведенном ресурсе, в MSSQL 2005 нельзя вставлять несколько строк одним запросом(
https://stackoverflow.com/questions/2462517/insert-multiple-values-using-insert-into-sql-server-2005
« Изменён: 30 Октября 2019, 08:02:30 от deldemo »

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3000
    • Просмотр профиля
    • Simple-Scada
Re: Не отображаются сообщения.
« Ответ #14 : 30 Октября 2019, 09:44:19 »
Здравствуйте.

Да, всё верно. Полноценно конструкция "INSERT INTO VALUES" стала поддерживаться начиная с версии SQL Server 2008 и выше. Соответственно версии ниже 2008 не подойдут для архивации через Simple-Scada.