Графики Про зависают

Просмотр 8 сообщений - с 1 по 8 (из 8 всего)
  • Автор
    Записи
  • #4139
    manjey73
    Участник

    Случайно заметил зависание Графики Про при попытке масштабирования
    Проверил на двух Scada
    Окно, которое выдал FireFox

    Похоже, исполняемый на этой странице сценарий занят или не отвечает. Вы можете остановить его сейчас, открыть сценарий в отладчике или позволить сценарию продолжить свою работу.

    Сценарий: http://localhost/Scada/plugins/Chart/js/chart.js:204

    Пытался открыть график параметра sysName таблицы SNMP Demo

    На Демо сайте к сожалению нет такого параметра, чтобы посмотреть реакцию.

    #4140
    Mikhail
    Модератор

    Просьба написать последовательность действий и необходимые настройки, которые позволят воспроизвести проблему локально.

    #4141
    manjey73
    Участник

    Достаточно открыть график sysName и попробовать его отмасштабировать в Графиках Про.
    То есть выделить необходимый диапазон для отображения по времени.

    Еще обнаружил интересную ошибку.
    Коммуникатор показывает на моем компьютере имя RI080-PC.rosint.local (то есть имя моего компа в сети)
    Значение в sysName 18 213 139 006 956 900, я так понимаю это значение double.

    Что я сделал — закинул этот double в строку и получил надпись YI080-PC вместо RI080-PC. 1-ый байт почему-то 0х59 вместо 0х52

    Хотя Коммуникатор честно пишет RI080-PC

    #4142
    manjey73
    Участник

    И следом. Значение параметра sysDescr у меня очень большое
    4766944821267270000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

    При вводе его как double в Visual Studio ругается что значение слишком велико, но оно отображается в SCADA.
    Коммуникатор на этом параметре пишет

    | 1 | sysDescr | Hardware: AMD64 Family 22 Model 48 Stepping 1 AT/A… | 750 |

    Как SCADA может отображать число в таблице, которое слишком велико для C# ?

    #4143
    manjey73
    Участник

    Посмотрел в базе. Первое число на самом деле
    18213139006956872 и тогда корректно RI080-PC

    И второе число это 4.7669448212672666E+180 — слово Hardware

    Может стоит так и отображать в таблице ?
    Скажем так, учитывая, что стоит вид отображения D, то отображаться должно было лы просто целое числа 4…
    А то путаница получилась и таблица ну очень сильно растягивается…

    з.ы. не хватает работы с текстами.
    Например в отдельную базу складывать тексты и если они не меняются не раздувать базу.
    То есть в базе только время и данные, если текст изменился, то записываем время и новый текст.
    Может каким-то модулем отдельным это сделать ?

    • Ответ изменён 9 лет, 7 месяцев назад пользователем manjey73.
    #4148
    Mikhail
    Модератор

    Интересная проблема. Эта информация пригодится, когда будем реализовывать работу с текстом. Вариантов реализации несколько: и хранение в существующем архиве, и в отдельных базах.

    Коммуникатор для отображения не переводит значения в double, а переводит массив байт в строку, поэтому отображается без проблем. Но на Сервер может передаваться только double.

    Текст нужно будет реализовывать, но скорее всего, несколько позже. Либо на заказ. Например, разработка плагинов Гибкий отчёт и Дэшбодры оплачена Заказчиками, которым требовалась соответствующая функциональность.

    #4152
    manjey73
    Участник

    Предлагаю добавить элемент E в формат чисел, чтобы отображать в таком формате.
    На счет текста, основные базы все в double, то есть ограничение в 8 байт.
    Делать такую же текстовую базу, которая будет записываться раз в секунду или даже с большим шагом все равно расточительно.
    Особенно для статических текстов, которые не меняются часто, то же имя компьютера.
    А вот сделать базу каналов для текста, в которую будет писаться текст только по изменению.
    Что-то вроде — считали текст, сохранили, поставили метку времени.
    Считали в следующий раз, сравнили, если совпал, то просто изменили метку времени, если не совпал, сделали новую запись для этого же канала.
    Иметь возможность ограничения числа записей для одного канала с циклической перезаписью. Самую старую метку времени вытесняем новой записью.

    Например Имя компьютера для SNMP если и будет меняться, то очень не часто.
    А что-то может меняться часто.
    Да, тестовые вещи нужны, например для отображения заголовков на схемах, которые могут быть изменены на самом оборудовании как в примере с snmp.
    При разделении Табличных данных.
    На кнопках с изменяющимися функциями.

    #4155
    Mikhail
    Модератор

    Спасибо за Ваши предложения. Надеюсь, они будут отражены в будущих версиях.

Просмотр 8 сообщений - с 1 по 8 (из 8 всего)
  • Для ответа в этой теме необходимо авторизоваться.