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

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

Автор Тема: Вопросы по WEB в Simple-Scada 2  (Прочитано 59718 раз)

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 2998
    • Просмотр профиля
    • Simple-Scada
Re: Вопросы по WEB в Simple-Scada 2
« Ответ #120 : 21 Апреля 2020, 17:48:41 »
Компонент "Кнопка" имеет набор состояний. Каждое состояние соответствует какому-то значению переменной. Если переменная меняется, то и Кнопка принимает состояние соответствующее значению переменной. Это максимально логичное поведение, которые мы будем реализовывать. Пока есть только один вопрос: как отображать кнопку, если ни одно из её состояний не соответствует текущему значению переменной. Вероятно кнопку нужно делать неактивной.

Цитировать
Если я нажал одну и она передает переменной значение "1", то остальные, которые привязаны к той же переменной и передают "2", "5" и "10" не выглядят нажатыми
Кнопка будет выглядеть нажатой, только если её "нажатое" состояние соответствует текущему значению переменной. Если переменная примет любое другое значение, то кнопка отобразит состояние соответствующее этому значению.

knskey

  • Новичок
  • *
  • Сообщений: 29
    • Просмотр профиля
Re: Вопросы по WEB в Simple-Scada 2
« Ответ #121 : 22 Апреля 2020, 10:57:28 »
Хорошо. Тогда такой вопрос. Если у меня 2 кнопки привязаны к одной переменной. Для первой кнопки: нажата это 1 отжата это -1. Для второй кнопки нажата это 5 а отжата это -5. как будет отображаться (потом, после реализации) если я сначала нажму первую кнопку, а потом вторую?

в ВЕБ-клиенте вроде как не работают события OnEnter и OnLeave - на мнемосхемах.
« Изменён: 24 Апреля 2020, 09:47:11 от Simple-Scada »

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 2998
    • Просмотр профиля
    • Simple-Scada
Re: Вопросы по WEB в Simple-Scada 2
« Ответ #122 : 24 Апреля 2020, 09:46:49 »
Цитировать
Для первой кнопки: нажата это 1 отжата это -1. Для второй кнопки нажата это 5 а отжата это -5. как будет отображаться (потом, после реализации) если я сначала нажму первую кнопку, а потом вторую?
Всё будет очень просто: любая кнопка будет отображать то состояние, которое соответствует значению переменной. Никаких дополнительных условий не будет. Если же переменная будет иметь значение которое не соответствует ни одному состоянию кнопки, то как мы и писали:
Цитировать
Пока есть только один вопрос: как отображать кнопку, если ни одно из её состояний не соответствует текущему значению переменной. Вероятно кнопку нужно делать неактивной.


Цитировать
в ВЕБ-клиенте вроде как не работают события OnEnter и OnLeave - на мнемосхемах.
Эти события остались от старых версий скады и в будущем будут удалены, т.к. не подходят для системы с количеством клиентов больше 1. Пример: допустим Вы сделали выделение объекта при наведении мыши используя события OnEnter и OnLeave. Тогда, если проект просматривает несколько клиентов и один из них навёл мышь на объект, то объект выделится сразу на всех клиентах (на самом деле он выделится на сервере, а клиенты отобразят выделение). В результате события OnEnter и OnLeave подходят только для проектов с одним клиентом.

knskey

  • Новичок
  • *
  • Сообщений: 29
    • Просмотр профиля
Re: Вопросы по WEB в Simple-Scada 2
« Ответ #123 : 24 Апреля 2020, 10:23:36 »
ну к примеру да. ) просто я пытаюсь придумать как отследить имя клиента и под каким он пользователем, чтобы потом посчитать клиентов под одним пользователем и закрыть кого-то из них или всех. Но в соседней ветке Вы ответили уже, что вроде как будет реализована функция ограничения числа клиентов на одного пользователя.

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 2998
    • Просмотр профиля
    • Simple-Scada
Re: Вопросы по WEB в Simple-Scada 2
« Ответ #124 : 24 Апреля 2020, 16:42:37 »
Сейчас можно попробовать отследить клиентов через событие авторизации, но всё придётся писать через скрипты самостоятельно. Для выхода из учетной записи можно использовать процедуру Logout.

knskey

  • Новичок
  • *
  • Сообщений: 29
    • Просмотр профиля
Re: Вопросы по WEB в Simple-Scada 2
« Ответ #125 : 25 Апреля 2020, 17:43:10 »
Понял. Спасибо.

Возвращаясь к отображению списка сообщений (TM_MessageViewer - я имею в виду) в Web. Сделал три кнопки для отображения на одном и том же месте разных списков (Активные, Неподтвержденные, Все). Использую свойство Visible. В обычном клиенте все работает хорошо, в Web не работает. Пробовал с объектом Text - в Web работает.
Ну и конечно то, что писал ранее. В Web отображает все сообщения проекта вне зависимости от прав доступа пользователя.

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 2998
    • Просмотр профиля
    • Simple-Scada
Re: Вопросы по WEB в Simple-Scada 2
« Ответ #126 : 27 Апреля 2020, 09:51:37 »
knskey, спасибо за информацию, исправим скрытие компонента "Список сообщений" в обновлении.

knskey

  • Новичок
  • *
  • Сообщений: 29
    • Просмотр профиля
Re: Вопросы по WEB в Simple-Scada 2
« Ответ #127 : 28 Апреля 2020, 15:23:46 »
Сейчас можно попробовать отследить клиентов через событие авторизации, но всё придётся писать через скрипты самостоятельно. Для выхода из учетной записи можно использовать процедуру Logout.

в принципе сделал, но столкнулся с тем, что CloseApplicationClient(GetClientName) не работает для веб-клиента, если вызывать в скрипте "событие авторизации". Если вызывать в универсальном скрипте привязанном к кнопке например, то работает..

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 2998
    • Просмотр профиля
    • Simple-Scada
Re: Вопросы по WEB в Simple-Scada 2
« Ответ #128 : 28 Апреля 2020, 15:42:45 »
Не нужно вызывать GetClietnName, для получения имени клиента в событии "Авторизация пользователя". В этом событии имя клиента передаётся отдельным параметром auClient (см. руководство). Подставляйте его в вызов процедуры: CloseApplicationClient(auClient);

knskey

  • Новичок
  • *
  • Сообщений: 29
    • Просмотр профиля
Re: Вопросы по WEB в Simple-Scada 2
« Ответ #129 : 28 Апреля 2020, 15:46:36 »
я так тоже пробовал изначально. но ВЕБ-клиент не закрывает ни так ни так.

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 2998
    • Просмотр профиля
    • Simple-Scada
Re: Вопросы по WEB в Simple-Scada 2
« Ответ #130 : 30 Апреля 2020, 11:06:24 »
Да, при первой авторизации web-клиент не получает от сервера команду на закрытие, т.к. сервер считает клиента не до конца авторизованным и не отправляет ему изменения сделанные через скрипты. Изменим процесс авторизации в web, чтобы исправить это.

Ivan_Ivanov

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Re: Вопросы по WEB в Simple-Scada 2
« Ответ #131 : 15 Июля 2020, 07:28:25 »
Еще одна проблема:
На странице есть несколько кнопок, с обработчиком OnClick. Обработчик выполняет одну функцию: GoToTrendsGroupClient(GetClientName, N); (N = ID группы трендов)
То есть по нажатию конкретной кнопки нужно смотреть тренды определенных параметров.
В обычном клиенте все ОК, в веб клиенте видно только группу трендов, привязанных к странице. Вручную нужную группу трендов из веб клиента тоже не получается выбрать
То есть тренды через веб можно смотреть только привязанные к окну? А есть способ все таки выбирать нужные?

Аналогичная проблема возникла, версия Demo-time 2.3.6.7. Пока изучаю скаду, как разберусь - буду принимать решение о покупке профессиональной версии. Это как-то связано с ограничением функционала в демо-версии?

Simple_Scada

  • Администратор
  • *****
  • Сообщений: 1178
    • Просмотр профиля
Re: Вопросы по WEB в Simple-Scada 2
« Ответ #132 : 15 Июля 2020, 11:51:04 »
Здравствуйте.
Обновитесь до актуальной версии 2.3.6.12, в ней GoToTrendsGroupClient в web работает. Актуальные демо-версии всегда доступны на сайте. Версия Demo-Time по функционалу соответствует версии Professional.

Вячеслав

  • Новичок
  • *
  • Сообщений: 20
  • mgupi
    • Просмотр профиля
Re: Вопросы по WEB в Simple-Scada 2
« Ответ #133 : 19 Ноября 2020, 22:36:24 »
Здравствуйте!
С чем связан такой момент что элемент трубопровода в WEB клиенте может мигать только с периодом 1 секунда в то же время в PC клиенте элемент может мигать чаще например с периодом 500мс?
Так же замечал такой артефакт у трубопровода в WEB версии на конце элемента там где фланец отображается полоска как будто часть трубы просто отрезана. Что это может быть?

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 2998
    • Просмотр профиля
    • Simple-Scada
Re: Вопросы по WEB в Simple-Scada 2
« Ответ #134 : 20 Ноября 2020, 10:30:35 »
Цитировать
С чем связан такой момент что элемент трубопровода в WEB клиенте может мигать только с периодом 1 секунда
Со скоростью отрисовки. Браузеры гораздо менее производительны в отрисовке, по сравнению со стандартным клиентом скады. Поэтому чем меньше миганий и анимаций, тем быстрее будет работать web-клиент. Поэтому мигание чаще 1 секунды сделать в web не получится.

Цитировать
Так же замечал такой артефакт у трубопровода в WEB версии на конце элемента там где фланец отображается полоска как будто часть трубы просто отрезана.
Можно предположить что у Вас web-страница масштабирована (либо включена опция автоматического масштабирования). В этом случае все изображения на странице изменят размер в соответствии с масштабом и будет выполнена интерполяция изображений, т.к. на один пиксель экрана будет приходиться более одного пикселя изображения (или менее, зависит от того в какую сторону масштаб). И по краям, на стыках изображений могут появиться тонкие линии. А трубопровод как раз состоит из отдельных изображений. При масштабе в 100% отрисовка должна быть правильной. Если Ваш проект используется только web-клиентами, то мы рекомендовали бы использовать компонент Линия, вместо Трубопровода. Он гораздо производительнее в web и не имеет проблемы со стыками при масштабировании.