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

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

Автор Тема: Не работает скрипт CloseClient(GetClientName)  (Прочитано 3050 раз)

deldemo

  • Старожил
  • ****
  • Сообщений: 308
    • Просмотр профиля
Не работает скрипт CloseClient(GetClientName)
« : 19 Августа 2020, 08:06:14 »
Здравствуйте!!! Есть глюк в новой версии.
Если у кнопки тип без фиксации и ей присвоен скрипт по событию OnClick #####.CloseClient(GetClientName), то скрипт не срабатывает и "вешает" все кнопки в проекте. Но если кнопке присвоить тип с фиксацией то скрипт выполняется штатно

P.S. К кнопке не привязана переменная
« Изменён: 19 Августа 2020, 09:16:13 от deldemo »

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3194
    • Просмотр профиля
    • Simple-Scada
Re: Не работает скрипт CloseClient(GetClientName)
« Ответ #1 : 19 Августа 2020, 10:00:20 »
Здравствуйте.

Сделали окно, разместили в нём кнопку с фиксацией + кнопку без фиксации. На событие OnClick привязали скрипт "ИмяОкна.CloseClient(GetClientName);". ПРоверили на нескольких ПК. Обе кнопки работают корректно на обычном клиенте и в web. Версия скады 2.4.0.0. Возможно есть ещё что-то, что приводит к проблеме.
Можете выслать текущую версию проекта на support@simple-scada.com для проверки? Укажите с каким окном возникает проблема.

UPD: кажется поняли в чем может быть проблема. В ближайшее время обновим версию на хостинге.
« Изменён: 19 Августа 2020, 10:08:46 от Simple-Scada »

deldemo

  • Старожил
  • ****
  • Сообщений: 308
    • Просмотр профиля
Re: Не работает скрипт CloseClient(GetClientName)
« Ответ #2 : 19 Августа 2020, 10:48:48 »
Спасибо! Проект нужно отправлять?
Версия скады 2.4.0.0
Окно -  "winConfiguration"
« Изменён: 19 Августа 2020, 10:53:08 от deldemo »

niyaz

  • Новичок
  • *
  • Сообщений: 43
    • Просмотр профиля
Re: Не работает скрипт CloseClient(GetClientName)
« Ответ #3 : 19 Августа 2020, 14:23:50 »
Здравствуйте, не работает скрипт OnEnter(пользователь перешел на эту страницу) после обновления Simple Scada 2 до версии 2.4.0.0. В чем может быть проблема?
Также при нажатии на кнопку 'Без фиксации', смена текста и цвета кнопки тормозит. К кнопке привязана переменная из ПЛК (переменная меняется сразу, тормозит только смена цвета и текста в SCADA системе). 
« Изменён: 19 Августа 2020, 14:52:59 от niyaz »

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3194
    • Просмотр профиля
    • Simple-Scada
Re: Не работает скрипт CloseClient(GetClientName)
« Ответ #4 : 19 Августа 2020, 16:14:10 »
deldemo, скачайте и установите скаду повторно (ссылки на скачивание те же). Теперь с кнопкой без фиксации проблем быть не должно.

niyaz, исправили события OnEnter/OnLeave у страниц. Скачайте и установите скаду повторно.

Цитировать
Также при нажатии на кнопку 'Без фиксации', смена текста и цвета кнопки тормозит. К кнопке привязана переменная из ПЛК (переменная меняется сразу, тормозит только смена цвета и текста в SCADA системе).
Проверили, но не получилось добиться "торможения". Учитывайте, что состояние кнопки меняется только тогда, когда скада получит от OPC-сервера новое значение переменной (зависит от частоты опроса тега). Т.е. Вы нажимаете кнопку и удерживаете, скада посылает новое значение OPC-серверу, а кнопка остаётся в первом состоянии. И только когда значение переменной на котроллере изменится и OPC-сервер вернёт скаде новое значение - кнопка перейдёт во второе состояние.
Для теста можно привязать кнопку к внутренней переменной и проверить. Если смена состояния выполняется быстро, значит дело точно во внешней переменной и она просто "долго" меняется.

niyaz

  • Новичок
  • *
  • Сообщений: 43
    • Просмотр профиля
Re: Не работает скрипт CloseClient(GetClientName)
« Ответ #5 : 20 Августа 2020, 00:40:21 »
Спасибо большое, скрипты OnEnter/OnLeave заработали.
Кнопка с локальными переменными работает быстро. При привязки переменных с ПЛК подтормаживает только смена цветов и текста, но значение переменной в ПЛК изменяются 'мгновенно'.   

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3194
    • Просмотр профиля
    • Simple-Scada
Re: Не работает скрипт CloseClient(GetClientName)
« Ответ #6 : 20 Августа 2020, 09:35:37 »
Цитировать
но значение переменной в ПЛК изменяются 'мгновенно'.
Это мы поняли. Прочтите внимательно наш предыдущий ответ. Изменение переменной на ПЛК ничего не меняет для скады. Главное - когда скада узнает (от OPC-сервера) о том, что переменная на контроллере изменилась. Как мы и писали - это зависит от частоты опроса переменной, которую Вы задали в проекте. Состояние кнопки в скаде изменится только после того, как скада получит от OPC-сервера новое значение переменной.
Для примера разместите рядом с кнопкой компонент Поле и привяжите его к той же переменной, что и у кнопки. Запустите проект и нажмите на кнопку. Значение в поле  меняется мгновенно? Или с задержкой? Если с задержкой, значит скада получила ответ об изменении переменной на контроллере с такой задержкой. Чтобы она была меньше, можно сделать опрос переменной чаще.