Это обновление содержит большое количество полезных изменений. Основным является полное обновление системы архивации переменных. Архивация теперь ведется в три отдельных слоя, что приводит к увеличению производительности при чтении и снижению нагрузки на сервер и сеть. Переменные могут архивироваться по времени, по-изменению или комбинировано.
Обратите внимание! При переходе на новую версию все архивные переменные автоматически перейдут на систему архивации по-времени. Мы бы рекомендовали везде где это возможно использовать архивацию "по-изменению" с установкой "зоны нечувствительности". При таком способе значение переменной добавляется в архив только если оно изменилось на величину больше чем зона нечувствительности. В результате в архив не попадают "лишние" мелкие изменения переменной, а любое более значительное изменение идет в архив. Для медленно меняющихся переменных можно использовать архивацию "комбинированным" способом. Подробнее можно прочесть
здесь в разделе Архив. В нижней части сообщения приводится сравнение способов архивации.
Изменения:
- новый компонент "Календарь" для удобной работы с переменными даты-времени (DateTime);
- группы трендов теперь могут быть редактируемыми. Пользователь может прямо во время работы менять набор трендов в таких группах (см. свойство "Редактируемая");
- новая система архивации. Значительно увеличена производительность. Архивация теперь идёт в три отдельных "слоя". Возможна архивация по времени, по-изменению и комбинированная;
- резервное копирование архивных буферов (каждые 10 минут) и автоматическое восстановление в случае аварийного завершения работы сервера;
- временные тренды теперь могут двигаться в любом из четырёх направлений (см. свойство Направление);
- теперь можно создавать обратные шкалы. Например: от 0 до -100.
- у окон можно изменить Шрифт заголовка, его цвет и прозрачность;
- в редакторе скриптов улучшено выделение текста двойным щелчком, автовставка методов, исправлена работа клавиши END и выделение текста, работают кнопки PageUp и PageDown;
- разрешено множественное редактирование OPC-сервера и Адреса у переменных;
- изменения переменных теперь передаются клиентам без задержек по времени;
- заслонка теперь может работать на основе двух переменных для состояний "Открыта" и "Закрыта";
- при наведении мыши на легенду тренда выводится точное среднее значение с учетом времени;
- обновлена система взаимодействия с базами данных;
- мелкие исправления и улучшения в клиент-серверном взаимодействии;
- на клиентах теперь выдается сообщение о вводе значения вне допустимых границ;
- в Редакторе добавлена кнопка для выхода из режима редактирования;
- улучшена работа при перемещении зоны просмотра в Редакторе с низким FPS;
- улучшена блокировка гор. клавиш;
- улучшена работа с LongWord переменными через компонент Поле;
- вирт. переменные больше не инициализируются вне зоны шкалы;
- в Options.exe появилась опция для клиентов "Выделять активные объекты при наведении мыши";
- перемещение курсора стрелками в меню трендов больше не смещает временный интервал;
- значительно улучшена работа с Microsoft SQL Server;
- перемещение и изменение размеров объекта теперь не зависит от смещения указателя;
- изменен процесс отпускания кнопки без фиксации;
- повторяющие изменения в ходе выполнения скрипта не передаются клиентам;
- исправление в работе сервера когда к нему не подключены клиенты;
- исправлена ошибка редактора при вводе символа "-" в некоторые числовые поля;
- исправлена проблема экспорта в Excel с длинным именем листа;
- исправлена работа с переменными только для записи;
- исправлена компиляция кода с недопустимыми конструкциями;
- исправлено переключение раскладки в редакторе скриптов;
- исправление редактирования общих свойств разнотипных объектов;
- исправлено выделение объектов при перемещении скролла других компонентов;
- исправлено затирание строки скрипта при вставке текста;
Изменения в скриптах:
- новая глобальная процедура AddMessage. Позволяет из скрипта добавить новое сообщение с заданным текстом и типом (обычное, предупреждающее или аварийное);
- у объекта Таблица появилась новая функция GetCell. Возвращает ячейку таблицы по номеру столбца и строки;
- добавлены функции MySQLDateTime и SQLServerDateTime для удобной конвертации даты-времени в строку для последующей вставки в SQL-запрос;
- у всех объектов и переменных появилось новое свойство AsSQLDateTime, которое возвращает значение переменной, как дату/время в формате строки для SQL запроса;
Изменения импорта из .CSV файлов:
У переменной появились новые свойства архивации. Соответственно теперь в .CSV файле должны быть указаны эти свойства. Смотрите новую структуру .CSV-файла в демо-файле "..\Simple-Scada 2\Import\Шаблон.xlsx".
Процесс обновления:
- скачать и распаковать архив;
- завершить работу скады (Server.exe, Client.exe, Editor.exe);
- скопировать свой проект в папку "..\Simple-Scada 2\Projects\";
- при необходимости скопировать пользовательские изображения в папку "..\Simple-Scada 2\Pictures\";
- открыть свой проект в Редакторе и сохранить его, чтобы он перевёлся на новую версию;
- готово! На клиентских компьютерах нужно проделать те же действия, но при этом можно не копировать и не пересохранять проект.
Сравнение новых способов архивации:
Чтобы наглядно понять разницу между способами архивации можно посмотреть на тренд "пила". Таким он будет если выбрана архивация по-времени:

Видно что в архив идут точки через равный интервал времени. Резкие изменения значения не влияют на запись в архив. Желтым пунктиром показано реальное изменение значения. Оно проигнорировалось, т.к. запись в архив идет через заданные интервалы.
А так выглядит тренд с типом архивации "по-изменению" с соответствующей зоной нечувствительности:

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