Примечания к выпуску
Продукт: Альфа платформа
Версия: 24.9.3
Дата релиза: 01.07.2025
Тип выпуска: Bundle
Перечень бандлов
DevStudio.XL
- инженерный комплект
One.Plus
- комплект для одиночных систем
Platform.SCADA Client
- клиентский комплект
Platform.SCADA Server
- серверный комплект
Storage
- комплект для хранения истории
Перечень релизных файлов
Alpha.DevStudio.XL-24.9.3+b1.g5aa3a2a1(x64).exe
Alpha.One.Plus-24.9.3+b1.g5aa3a2a1(x64).exe
Alpha.One.Plus-24.9.3+b1.g5aa3a2a1.deb.sh
Alpha.One.Plus-24.9.3+b1.g5aa3a2a1.rpm.sh
Alpha.Platform.SCADA-Client-24.9.3+b1.g5aa3a2a1(x64).exe
Alpha.Platform.SCADA-Client-24.9.3+b1.g5aa3a2a1.deb.sh
Alpha.Platform.SCADA-Client-24.9.3+b1.g5aa3a2a1.rpm.sh
Alpha.Platform.SCADA-Server-24.9.3+b1.g5aa3a2a1(x64).exe
Alpha.Platform.SCADA-Server-24.9.3+b1.g5aa3a2a1.deb.sh
Alpha.Platform.SCADA-Server-24.9.3+b1.g5aa3a2a1.rpm.sh
Alpha.Storage-24.9.3+b1.g5aa3a2a1(x64).exe
Alpha.Storage-24.9.3+b1.g5aa3a2a1.deb.sh
Alpha.Storage-24.9.3+b1.g5aa3a2a1.rpm.sh
Alpha.Documentation-Distro.24.9.3-bundle+edit3.b1.r30382.Windows.exe
Alpha.Documentation.24.9.3-bundle+edit3.b1.r30382.any.zip
Что внутри:
1. Обзор новых возможностей
2. Состав бандлов
3. Установка и обновление
4. Известные проблемы
5. История изменения компонентов
1. Обзор новых возможностей
Кратко о новых возможностях.
О всех новых функциях, улучшениях и исправлениях читайте в разделе
Cостав бандлов и История изменения компонентов
Alpha.DevStudio
Типизация в домене
- Появились новые элементы - Устройство и Тип устройства.
С помощью элемента Устройство можно описать абстрактное устройство с возможностью передачи данных по различным протоколам и интерфейсам. Элемент Тип устройства позволяет типизировать описываемые устройства
Разграничение уровней доступа к содержимому библиотек
Теперь возможно:
- Cкрытие рабочей области объектов или элементов проекта
- Защита пользовательских типов от редактирования
- Скрытие структур внутри типа
- Запрет изменения параметра в потомке
- Скрытие переменных в ассистенте ввода
Для этого добавлено свойство Уровень доступа. В качестве значения свойства можно указать, должен ли элемент быть публичным, приватным или защищённым
Утилита командной строки devstudio.cli
- Компиляция и построение отдельных проектов из решения средствами CLI
Заполнение карты адресов с помощью атрибутов
Поддержано в модулях OPC UA
, Ethernet/IP
, BACnet
- Карты адресов модуля можно задавать с помощью атрибутов.
Механизм описания связей адресов с картой при описании типов позволяет сократить время на заполнение и корректировку карты и уменьшить количество ошибок при разработке
Получения пользовательских свойств модулем Hub
- В DevStudio появилась возможность конфигурировать пользовательские свойства, которые модуль
Hub
может запрашивать у конкретного источника
Агрегация событий
Для настройки агрегации событий добавлены новые параметры, предоставляющие результаты агрегации:
- Минимальная важность среди активных событий и активных событий в ветке
- Максимальная важность актуальных событий и актуальных событий в ветке
- Максимальная важность активных событий и активных событий в ветке
и новые параметры, предоставляющие возможность квитирования:
- Минимальная важность среди активных не квитированных событий и активных не квитированных событий в ветке
Повышение удобства работы с модулем SnapShot
- Для идентификации сигналов, например, в шаблоне файла-среза, вместо тегов можно использовать индексы
- С помощью атрибутов можно задавать принадлежность сигнала к индексу и использовать индексы в шаблоне
- Возможность изменить настройки записи файла-среза, создаваемого при остановке Alpha.Server
Alpha.Server
Расширенная работа с качеством сигнала
Для протоколов IEC-104
Master/Slave, OPC UA
Server/Client:
- Обработка качества (на приём)
- Формирование качества (на отправку)
- конвертация качества выполняется с помощью пользовательской библиотеки с необходимой логикой конвертации
- качество конвертируется в новое поле сигнала и может быть сохранено в историю
- Для OPC UA поддержана конвертация качества значения сигнала в StatusCode согласно спецификации
Пользовательские атрибуты для событий
- В событие можно добавлять собственные пользовательские атрибуты при генерации, активации, деактивации, квитировании
Инверсная инициация подключения TCP Server
- Реализована возможность разворота инициации соединения между модулями HUB и TCP Server. Теперь TCP Server может самостоятельно инициировать подключение к модулю HUB.
Функциональность позволит использовать сегмент ДМЗ в неактивном режиме, когда старт передачи данных в ДМЗ инициирует связанный с ним промышленный контур, а не сам сервер ДМЗ
Коммуникационные протоколы
Расширены настройки канала связи станции с опросчиком для Modbus TCP и IEC-104
- Теперь для станции можно выделить отдельное TCP-подключение, либо сделать канал общим с каналами других устройств, если IP-адреса и порты каналов совпадают.
Изменить настройки канала можно в параметрах связи в свойстве Выделенное подключение
Modbus RTU/TCP
- Поддержка шлюзов Modbus RTU/TCP
- Поддержан протокол Modbus RTU Over TCP/IP
Modbus TCP
- Расширение протокола:
- Увеличена максимальная длина запроса
- добавлены кодировки строк UTF-16
- добавлены типы Int8, UInt8
- Поддержана адресация к конкретному устройству в источнике
- Добавлен механизм состояний устройств: режим определения готовности, исходная возможность использования
- Добавлен механизм контрольного узла: тег контрольного узла в приложении и требуемое значение контрольного узла
- Опрос нескольких станций с одинаковым номером по разным каналам
- Опрос станции через умные шлюзы, имеющие фиксированный номер станции 255
Доработаны модули IEC-101, IEC-104
IEC-104 Slave
- Поддержка буферизации данных для опросчиков
- Работа с группой станций с одинаковым номером по разным каналам
- Инверсная инициация подключения станции к мастеру (потребителю)
- Настройка передачи служебных команд в соответствии со спецификацией IEC
- Поддержка настройки сдвига времени для реверсных станций с помощью нового параметра Сдвиг метки времени
- IEC-101 может вести опрос по RTU over TCP
IEC-101 Master
, IEC-104 Master
- Получение архивных данных из ПЛК (запись напрямую в историю)
- Файловый обмен (например, файлы COMTRADE)
- Общий и групповой опрос по командам с помощью служебных сигналов
- Логирование ошибок валидации данных
IEC-61850 Client
- Получение от устройств IEC 61850 структурных типов данных
OPC UA
- Раскрытие дерева внешнего сервера OPC UA в Alpha.Server (динамические сигналы)
Новый модуль Syslog Client который обеспечивает:
- Генерацию сообщений Syslog на основе изменения строкового сигнала Alpha.Server
- Накопление сформированных сообщений Syslog для отправки
- Отправку сообщений Syslog получателям
Модуль BACnet Client полностью обновлён, в частности:
- Добавлены новые возможности при передаче данных по протоколу BACnet:
- Контроль статуса доставки команд
- Повторная отправка запросов
- Получение значений по подписке на объект
- Передача данных по категориям
- Управление динамической подпиской
- Использование внешней системы событий
- Возможности событий BACnet:
- Агрегация событий
- Получение событий с устройств BACnet с последующим преобразованием:
- в события Альфа платформы для отображения в Alpha.HMI.Alarms
- в сигналы Alpha.Server
- Квитирование событий на устройстве BACnet из:
- Alpha.HMI.Alarms
- сигналов Alpha.Server
MQTT
- Реализована возможность обмена данными по MQTT в строковом формате со внешними устройствами
- Возможность туннелирования данных через брокер MQTT между экземплярами Alpha.Server
Полезно, для использования с внешними средствами обеспечения однонаправленной передачи данных, например InfoDiode
- Поддержаны параметры настроек очередей приёма и отправки данных у Клиента MQTT
SNMP
- Добавлена возможность использования различных контекстов для разграничения доступа к нескольким физическим/логическим устройствам.
Для этого элементу Агент SNMP
добавлено свойство Имя контекста, значение которого попадает в конфигурацию всех модулей Менеджер SNMP, которые будут взаимодействовать с этим агентом.
Различные контексты можно использовать для разграничения доступа к нескольким физическим/логическим устройствам. Например, сымитировать несколько агентов, работающих на одном IP-адресе и порту.
Возможные сценарии:
- Разделение данных, предоставляемых устройством на несколько логических частей с возможным пересечением. На одном физическом устройстве выделяются несколько логических агентов, каждый из которых предоставляет свой набор данных
- Прокси-агент: например, менеджер, который говорит только на SNMPv3, а устройства говорят только на SNMPv1, может использовать прокси-сервер на одном адресе/порту и использовать Имя контекста для идентификации устройств
Alpha.Historian 4.0. Крупное обновление
- Добавлен новый формат баз данных: 4x
- Реализован новый подход к хранению конфигурации сервера
- Добавлен механизм централизованного хранения политик настроек
- Новый интерфейс мониторинга
- Добавлен интерфейс командной строки historian.cli
- Добавлены индивидуальные пулы буферов для баз данных 3x
Подробно можно почитать в истории изменений
Визуализация Alpha.HMI
Новые компоненты
: Системные принтеры, Принтер, Буфер обмена, Расширенный текст, Текстовый файл, Запрос значений сигналов AP, Сессия, Окружение: запрос системного журнала, Уведомление
Улучшения в компонентах
: Источник AP, Элемент AP, Запрос алармов, Дерево, Звук, Окружение: процесс, Окружение: система, Очередь активных алармов, Текст, Индикатор гистограммы, Данные: агрегатор, Принтер, Менеджер проекта
Компоненты и методы признаны устаревшими, но еще доступны в интерфейсе для обратной совместимости:
- Методы ReadTextFile, WriteTextFile и AppendTextFile компонента Окружение: файлы
- Компонент Узел AP
- AlarmsAxControl и TrendsAxControl
Работа с проектом
- Систематизирован и доработан функционал переходов
Из большинства областей появилась возможность быстрого перехода к:
- любому типу в родительской иерархии наследования
- предопределённому, начальному, вычисляемому значениям
- определению
- В дизайнере добавлена возможность включения подсветки результатов фильтрации/поиска в рамках любого виджета, в котором есть фильтр
- В редакторе ссылок на юниты при указании пути к внешнему модулю теперь можно использовать переменные среды и подстановочные переменные
- Добавлена возможность определения ограничений для зашифрованных биномов. Реализовано ограничение для скрытия приватного содержимого типов и глобальных объектов в графическом интерфейсе дизайнера Alpha.HMI
- Добавлена возможность быстрого перехода к обработчикам: в контекстных меню в области мнемосхемы и в структуре объекта появилось действие "Перейти к обработчику"
- Переработан и улучшен механизм запуска проекта из зашифрованного модуля
- Улучшены механизмы обнаружения среды выполнения .NET
- Добавлена поддержка climb-переходов в ссылочных выражениях и исходном коде (теперь возможно обращаться к элементу родительской иерархии с помощью символа @@@ в языке Alpha.Om, а в JavaScript - символа @$@)
Доработки в Alpha.HMI.WebViewer
- Компоненты на основе HTML5 элемента холст перебазированы на SVG, в результате чего исправлены проблемы пикселизации при использовании браузерного масштабирования
- Переработан оконный менеджер: поведение окон приведено в большее соответствие desktop версии
- Добавлена возможность изменения настроек веб-сокета без перекомпиляции веб-приложения
- Систематизирована работа веб-приложения при потере связи и переподключении
Теперь при потере связи:
- Вся рабочая область "замораживается" в последнем состоянии перед потерей связи
- Сообщение об отсутствии связи отображается поверх всех окон
- При появлении связи происходит автоматическое переподключение в рамках новой сессии
- Добавлена возможность восстановления сессии и продолжения работы после кратковременного разрыва связи между бэк-эндом и браузером. Добавлена настройка тайм-аута удержания сессии на время отсутствия связи, в течение которого возможно восстановление сессии
- Улучшены механизмы отключения соединения и завершения сессии:
- Добавлена возможность отслеживания потери связи по websocket через контрольные фреймы ping/pong, а также атрибут ConnectionTimeout в конфигурации, позволяющий задать время тайм-аута в секундах, либо полностью отключить механизм отслеживания
- Сообщения о закрытии сессии в журнале приложений теперь содержат описание причины и код ошибки
Прикладные решения Alpha.HMI
- Многочисленные улучшения во всех прикладных решениях
- Комплексно реализована возможность ограничения доступа пользователя к файловой системе
Новые прикладные решения
HMI.Statistics
- сбор статистики с исполняемых узлов Alpha.Server, Alpha.Historian.Server и Alpha.Licensing
HMI.ComtradeViewer
, HMI.Formats
- просмотр осциллограмм
Alpha.HMI.Trends
Пользовательское дерево сигналов
- Обновлен формат пользовательского дерева сигналов, создаваемого для Alpha.HMI.Trends
Новое дерево имеет иерархическую структуру
- Для сигналов можно указывать прототип, в котором определены общие свойства.
- Появилась возможность указывать пределы, добавляемые на трендовое поле вместе с графиком сигнала:
- Дерево сигналов можно настраивать в DevStudio
Добавлены новые типы
- Динамические линии (DynamicChart). Имеет вид поля графиков, на котором можно размещать линии и отдельные динамические точки, координаты которых зависят от значений выбранных вами сигналов. Для каждой точки на графике определяется пара сигналов, значения которых соответствуют координатам X и Y. Всего можно добавить 20 линий и 100 динамических точек
- Трендовое поле (Trends_Chart). Представляет собой облегченную версию типа Тренды (Trends) - не содержит дерево сигналов, панели инструментов и строки состояния
- Тренды (индикатор) (Trends_Indicator), тип предназначен для отображения графиков технологических параметров на мнемосхеме. Особенности: работает только в оперативном режиме, в одном экземпляре типа одновременно может отображаться не больше десяти линий, содержит только одно поле графиков, занимает мало места на экране
- Панель инструментов (Trends_Toolbar). Представляет собой обычную панель инструментов решения Alpha.HMI.Trends. Такую панель инструментов можно использовать совместно с экземпляром типа Трендовое поле (Trends_Chart)
Разное
- На трендовое можно выводить маркеры событий
- Возможность синхронизировать положение реперов на трендовых полях, расположенных друг под другом
- Для двух и более трендовых полей отображается только одна общая шкала времени
- Для сигналов в легенде доступны индивидуальные шкалы всех существующих трендовых полей
- Добавлена возможность подключения к произвольному серверу при запуске приложения или использовании экранной формы Trends_App
- Расширены возможности существующей функции ConfigureGraphic. Теперь с её помощью можно также управлять видимостью отдельных графиков на трендовом поле
Alpha.HMI.Alarms
- Реализована возможность просмотра и квитирования событий из внешней системы событий (в частности: событий, полученных при помощи протокола BACnet)
- Возможность подключения к произвольному серверу
- Многочисленные улучшения в интерфейсе и возможностей кастомизации
Alpha.HMI.Security
- Добавлена возможность подключения к произвольному серверу безопасности
- Компоненту Настройки безопасности: Контроль целостности добавлены новые функции и события:
Alpha.HMI.SetPoints
- Добавлена возможность изменять настройки сразу нескольких уставок, если предварительно выделить их
- Добавлена возможность отслеживать выход значения бита настроек уставки за пределы типа данных тега
- Улучшен экспорт карт уставок в MS Excel
Alpha.HMI.CommonLib
- Разработан новый тип - Редактируемая таблица с возможностью редактирования значений ячеек.
- Сообщения из Журнала сообщений теперь можно экспортировать в файл
Компоненты
Alpha.DomainClient. Новый компонент
- API предназначен для доступа к исполняемым компонентами Альфа платформы сторонних приложений и сервисов
Подробнее в истории изменений
Alpha.Security
- Добавлены новые права стандартного приложения Alpha.Security
- Запрещено удалять пользователя если есть активная сессия
- Только одна пользовательская сессия
- Принудительное завершение текущей пользовательской сессии при повторном входе
- Теперь можно отключить проверку целостности, выполняемую при запуске агента безопасности
Документация
- Вместе с бандлами теперь выпускается срез документации, состав которой максимально приближен к наполнению бандла.
Если по каким-то причинам описание функциональности не попало в срез, то просим обращаться к самой актуальной версии документации.
2. Состав бандлов
** Компоненты пока не входят в состав бандлов и скачиваются отдельными установщиками.
Распространяемые компоненты под Windows
- Microsoft Visual C++ 2015-2022 Redistributable (x64) - 14.42.34438
- Microsoft Visual C++ 2015-2022 Redistributable (x86) - 14.42.34438
- Microsoft .NET Framework 4.6.1
- OPC Core Components Redistributable (x64) 105.0
- OPC Core Components Redistributable (x86) 105.1
- OPC .NET API 2.00 Redistributables 105.0
- OpenLDAP-x64
3. Установка и обновление
3.1 Обновление
Автоматическое обновление с ранних версий ( 22.9.0 / 23.5.3 ) не поддерживается. Для установки нового бандла необходимо удалить предыдущий.
3.2 Установка под Windows
- Удалите установленный бандл стандартными средствами системы (см. раздел Удаление и восстановление)
- Запустите установщик с правами администратора
- Следуйте указаниям установщика
При необходимости, можно кастомизировать установку при момощи ключей запуска:
/help
показать окно с описанием параметров
/passive
| /quiet
- отображение минимального интерфейса без запросов или работа без интерфейса и без запросов. По умолчанию отображаются интерфейс и все запросы.
/norestart
- отключение всех попыток перезагрузки. По умолчанию в интерфейсе перед перезагрузкой отображается запрос.
/log log.txt
- запись журнала в указанный файл. По умолчанию файл журнала создается в папке % ТЕМР%.
Удаление и восстановление
Удаление и восстановление может быть осуществлено как из "Программы и компоненты, Удаление и изменение программы", так и через сам установщик (при этом, версия установленного бандла должна соответствовать версии запускаемого установщика).
Этапы процесса удаления те же, что и при установке, выполняемые в обратной последовательности.
При восстановлении бандла происходит удаление его компонентов с их последующей переустановкой.
3.3 Установка под Linux
Дистрибутивы linux-бандлов представляют из себя самораспаковывающиеся .sh архивы со скриптом установки Manage.sh
.
Каждый такой архив содержит деинсталятор, локальный репозиторий с пакетами устанавливаемых компонентов.
Алгоритм установки
1. Запуск установщика
Скрипт установки был доработан.
Запуск установщика осуществляется вызовом файла-дистрибутива с правами суперпользователя.
Например:
sudo ./Alpha.One.Plus-24.9.3+b1.g5aa3a2a1.deb.sh
Установщик поддерживает следующие ключи запуска:
-h
- вывести текст с помощью (описанием параметров).
-e
- только распаковать содержимое бандла. Игнорирует параметр -y.
-y
- не спрашивать подтверждения перед установкой бандла.
-i
- только показать содержимое бандла (набор пакетов).
Например:
sudo ./Alpha.One.Plus-24.9.3+b1.g5aa3a2a1.deb.sh -i
2. После запуска установщика процесс установки проходит в три этапа:
- Обнаружение каталога уже установленного бандла, куда будет производиться распаковка
- Распаковка содержимого бандла в соответствующий каталог
- Автоматический запуск менеджера
Manage.sh
с командой установки пакетов (см. раздел Управление бандлом (пакетами))
3. Управление бандлом (пакетами)
Управление бандлом осуществляется вызовом менеджера Manage.sh
из-под суперпользователя.
Менеджер принимает следующие команды и параметры:
Manage.sh команды <параметры>
Команды:
info
- получить инфомацию о бандле (версию, включенные пакеты и их версию).
status
- получить статус пакетов (установлены или нет, версия пакетов).
install
- установка пакетов.
reinstall
- переустановка пакетов (удаление-установка).
uninstall
- удаление пакетов без удаления бандла.
erase
- удаление пакетов и самого бандла
Параметры:
--accept
- не запрашивать подтверждение у пользователя при установке\удалении\переустановке
Пример вызова менеджера на установку пакетов из бандла с авто-подтверждением:
sudo /opt/Automiq/Alpha.SCADA-Client/Manage.sh install --accept
В случае вызова менеджера без команды (или с опечаткой), будет выведен текст с информацией о командах и параметрах.
Перед установкой каждого из пакетов осуществляется проверка наличия этого же пакета в системе:
- Если пакета в системе нет, то выполняется установка из бандла.
- Если пакет есть и он той же версии, что и в бандле, то установка пакета пропускается (например, в случае пересечения одного пакета между разными бандлами).
- Если пакет есть и версия отличается - установка прерывается.
Если установлена более ранняя версия бандла (22.9.0, 23.5.3) то необходимо удалить бандл с помощью скрипта Uninstaller.sh из каталога установки.
Например, для бандла Alpha.Platform.SCADA-Client каталог установки: /opt/Automiq/Alpha.Platform.SCADA-Client
Пример команды удаления более раннего бандла:
sudo ./opt/Automiq/Alpha.Platform.SCADA-Client/Uninstaller.sh
4. Известные проблемы
Компоненты бандла содержат большое количество изменений и нововведений.
Конвертация некоторых проектов DevStudio и HMI может проходить с предупреждениями и ошибками при компиляции.
Пожалуйста, выполняйте предписанные компилятором требования для успешной конвертации.
В сложных ситуациях, на помощь всегда придёт техническая поддержка.
5. История изменения компонентов
Alpha.DevStudio. История изменений
^ [3.24.5 --> 3.27.7]
3.27.7
Улучшения
- Для настройки агрегации событий добавлены новые параметры, предоставляющие результаты агрегации:
- MinSeverity (Минимальная важность среди активных событий);
- MinSeverityInBranch (Минимальная важность среди активных событий в ветке);
и новые параметры, предоставляющие возможность квитирования:
- MinSeverityUnacked (Минимальная важность среди активных не квитированных событий);
- MinSeverityUnackedInBranch (Минимальная важность среди активных не квитированных событий в ветке).
- [IEC-104 Master] Добавлен новый параметр связи со станцией МЭК 60870-5-104 Отправлять общий опрос при подключении, определяющий необходимость отправки общего опроса при установке связи по выбранному каналу.
Исправления
- [ОС Linux] Устранена причина, по которой Alpha.DevStudio аварийно завершала работу после развёртывания конфигурации и закрытии окна развёртывания или повторного построения решения.
- Устранена причина ошибочного возникновения исключения "Ссылка на объект не указывает на экземпляр объекта" при использовании шлюза Ethernet к последовательной шине в проекте.
3.27.6
Улучшения
- В редакторе событий столбец повторной генерации скрыт для динамического условия генерации, так как его параметр Повторная генерация (IsGenerateEqualSubcondition) всегда имеет значение "true".
- [IEC 101] Добавлена возможность указания размера общего адреса ASDU для станции. Для этого:
- элементу Станция МЭК 60870-5-101 добавлены параметры: Размер поля общего адреса ASDU, байт, Размер поля причины передачи, байт, Размер поля адреса объекта информации, байт, Размер поля адреса, байт;
- добавлены новые правила проверки соответствия размеров полей и их значений в карте адресов.
- [IEC 101] Поддержан новый параметр канала Синхронизировать время станции после инициализации, определяющий необходимость синхронизации времени при установлении соединения по каналу.
- [EtherNet/IP] Параметр Таймаут потери связи с устройством, мс заменен на Таймаут подтверждения наличия устройства на связи, мс.
- [MQTT] Поддержаны параметры настроек очередей приёма и отправки данных у Клиента MQTT: Максимальный размер очереди приема данных, шт. и Максимальный размер очереди данных на отправку, шт..
Исправления
- Мастер создания объектов теперь корректно инициализирует ссылки на другие представления объекта в типах приложений.
- Устранена причина появления ошибки "Не найден элемент приемника данных, соответствующий элементу источника", возникавшей при совпадении имени параметра с именем параметра вложенного сокета.
- [Modbus] Для модуля Modbus TCP Master удален неактуальный параметр Одно соединение на несколько станций.
3.27.5
Новая возможность
[SNMP] Добавлена возможность использования различных контекстов для разграничения доступа к нескольким физическим/логическим устройствам. Для этого элементу Агент SNMP добавлено свойство Имя контекста, значение которого попадает в конфигурацию всех модулей Менеджер SNMP, которые будут взаимодействовать с этим агентом.
Изменение
Скрыты новые параметры службы агрегации, несовместимые с рекомендуемой версией Alpha.Server.
Исправления
- Исправлено исключение, возникавшее при построении конфигурации для опроса основной и резервной станции Modbus, расположенных на одном и том же узле сети.
- Ошибка, возникавшая при совпадении имен параметров унаследованного сокета, теперь отсылает к элементу, в котором она возникла.
- Исправлено соединение с резервными исполняющими компонентами на локальном узле сети.
- Оптимизирована скорость работы с табличным представлением редактора элемента.
3.27.4
Новая возможность
- [MQTT] Поддержана возможность конфигурирования модуля MQTT. Для этого добавлены Библиотека Om.MQTT и новые элементы:
- Клиент MQTT;
- Параметры взаимодействия с брокером MQTT;
- Брокер MQTT;
- Карта адресов MQTT.
3.27.3
Улучшения
- В обозревателе решений поддержана возможность переноса элементов, описанных в разных *.omx файлах. Ранее элементы можно было переносить, только если они были описаны в одном и том же файле.
- В "Правила проверки" добавлена возможность отключения проверки совпадения узлов в дереве сигналов для разных объектов.
- Теперь появляется сообщение об ошибке, если источником и целевым элементом у связи передачи данных является один и тот же элемент.
- Для подусловий генерации событий добавлен параметр Повторная генерация (IsGenerateEqualSubcondition), предназначенный для настройки повторной генерации события по активному подусловию.
- [BACnet Client] Добавлена возможность настройки размера очереди данных на отправку на устройство. Для этого добавлен новый параметр взаимодействия с устройством - Максимальный размер очереди данных на отправку.
- [IEC-104 Master] Добавлена возможность настройки режимов работы резервных каналов.
- [МЭК 60870-5-104] Элементам "Параметры связи со станцией МЭК 60870-5-104" и "Настройки МЭК 60870-5-104 Master" добавлен параметр Режим ограничения очереди приема данных, позволяющий настроить очередь приёма данных. Обратите внимание, что по умолчанию установлено значение "Перезаписывать старые данные".
- [FINS Client] Вместо свойства Адрес узла добавлены свойства Адрес узла основного сервера и Адрес узла резервного сервера.
Исправления
- Прокси-объектам больше не добавляется ненужное свойство 999000 (Тип объекта).
- Устранена причина, по которой карты адресов OpcUa импортировались некорректно.
- Устранена причина, по которой при запуске Alpha.DevStudio под WINE не выполнялось шифрование паролей.
- Исправлено исключение, возникавшее при открытии диалога выбора пути элемента, описанного в другом узле домена.
- У разных пар резервируемых серверов теперь проверяется совпадение значений портов.
- При генерации файла пользовательского дерева сигналов теперь учитываются динамические ссылки.
- Устранена причина изменения типа данных прокси-сигналов при использовании формул.
- Файлы *.index и *.info теперь создаются заново, если были удалены.
- Исправлено появление исключения "Элемент с тем же ключом уже был добавлен." при повторном построении решения с несколькими проектами.
- Исправлено экспонирование ссылки, имя которой совпадает с именем объекта. Ранее если в объекте/типе была ссылка с таким же именем, как и имя этого объекта/типа, то при экспонировании добавлялись параметры, связанные сами с собой, а не с параметрами ссылки.
3.27.2
Улучшения
- В перечень сервисных сигналов Alpha.DevStudio добавлен новый сигнал Service.Config.BuildInfo.Dependencies. В него в формате JSON записываются наименования и версии всех подключенных к проекту модулей.
- [IEC 104] Расширены настройки канала связи станции с опросчиком. Теперь для станции можно выделить отдельное TCP-подключение, либо сделать канал общим с каналами других устройств, если IP-адреса и порты каналов совпадают. Изменить настройки канала можно в параметрах связи с Iec104Slave, в свойстве Выделенное подключение.
- [FINS Client] Добавлен параметр Опрос в резерве.
- В "Параметры взаимодействия с устройством EthernetIp" добавлены Таймаут ожидания ответа на запрос, мс и Количество повторных попыток отправки запроса.
Исправления
- Исправлена ошибка, из-за которой для модуля TCP Server не формировался список потребителей, если в решении был описан разворот подключения HUB - TCP.
- Преобразование устаревших модулей при открытии решения теперь выполняется автоматически.
- Устранена причина, по которой при использовании элемента "Устройство" имя для описываемого устройства EtherNet/IP не формировалось в конфигурации.
- Исправлена ошибка, из-за которой модуль логики не запускался после развертывания проекта, в котором описана перекладка значений через формулу внутри параметра.
- Исправлено исключение, возникавшее при проверке совпадения адресов и портов у шлюзов.
- Исправлено исключение, возникавшее при проверке необходимости передачи данных по Modbus.
3.27.1
Новые возможности
- [ModbusTCP] Поддержаны возможности конфигурирования модуля ModbusTcpMaster:
- Добавлены параметры для настройки состояний устройств: Режим определения готовности, Исходная возможность использования, Тэг контрольного узла в приложении и Требуемое значение контрольного узла.
- Поддержана адресация к конкретному устройству в источнике.
- [IEC-104] Элемент Модуль МЭК 60870-5-104 Slave теперь поддерживает настройку сдвига времени для реверсных станций - с помощью нового параметра Сдвиг метки времени.
- Точку доступа (элемент Alpha.AccessPoint) теперь можно разместить на узле домена. Ранее такой элемент мог быть добавлен только в Рабочее место.
Исправления
- Устранена причина возникновения исключения при формировании пользовательского дерева сигналов.
- Исправлена ошибка, возникавшая при использовании мастера заполнения карты адресов Modbus.
- Устранена причина, по которой после настройки модуля истории IP-адреса дублирующих серверов ввода-вывода формировались некорректно.
- Оптимизирована скорость построения решений, в которых поля карты адресов выводятся в пользовательские свойства связанного сигнала.
3.27.0
Новые возможности
- [IEC-101] Реализована возможность настройки файлового обмена IEC-101 Master с устройствами. Для этого в "Параметры связи со станцией МЭК 60870-5" добавлен новый раздел свойств Получение файлов. Здесь указываются папки устройств, откуда IEC-101 Master будет запрашивать файлы.
- [IEC-104] В модуле IEC-104 Master реализована возможность работы с несколькими станциями с одинаковым номером по разным каналам. Для этого изменена структура конфигурации модуля.
- [IEC-104] Существенно переработано конфигурирование модуля IEC-104 Slave:
- Теперь в модуле указываются станции, объединенные в группы станций. С каждой группой станций устанавливается отдельное соединение. Номера станций уникальны в рамках одной группы.
- Карта адресов может быть указана как для группы станций, так и для каждой отдельной станции. В карте адресов для группы станций задаются номера станций. В карте адресов отдельной станции номер станции не указывается, так как он задается у самой станции.
- Добавлена возможность инициации подключения станции к мастеру (потребителю), то есть в обратном направлении. Для этого у станции указываются параметры подключения к мастеру. В карте адресов указывается направление подключения - прямое или обратное. Допускается создание двух станций с одним номером, но разными направлениями.
- [OPC UA] Реализована возможность кодирования и декодирования качества при обмене данными по OPC UA. Для этого у модулей OPC UA Server и OPC UA Client добавлена настройка внешнего модуля Decoder/Encoder. В карте адресов UA можно указывать Тип для кодирования или декодирования качества, который будет использоваться внешним модулем кодирования/декодирования.
- [HubModule] Добавлена возможность конфигурирования свойств, которые модуль HubModule будет запрашивать у конкретного источника. Эти свойства определяются автоматически на основании типа атрибута Выполнять запрос свойства HubModule. Данный тип атрибута необходимо определить у типа атрибута, который используется для обозначения пользовательского свойства.
- [OPC DA] Поддержана настройка чтения модулем OPC DA Client свойств OPC DA по опросу.
Улучшения
- Новая версия элемента Шлюз Ethernet к последовательной шине позволяет описывать несколько портов для одного шлюза.
- При открытии редактора кода обработчика ошибки теперь отображаются в списке ошибок (без компиляции всего проекта). Перейти к фрагменту кода с ошибкой можно по двойному клику мышкой.
Исправления
- Устранена причина, по которой не отправлялись сообщения аудита безопасности.
- В мастере развертывания информация в столбце "Активная версия" теперь отображается и для узлов домена, описанных в других файлах *.omx решения.
3.26.1
Новая возможность
- [HubModule] Добавлена возможность конфигурирования свойств, которые модуль HubModule будет запрашивать у конкретного источника. Эти свойства определяются автоматически на основании типа атрибута Выполнять запрос свойства HubModule. Данный тип атрибута необходимо определить у типа атрибута, который используется для обозначения пользовательского свойства.
Улучшение
- Элементу Домен добавлено свойство Доменное имя. Если оно задано, то при построении конфигурации модуля резервирования указанное имя домена добавляется к именам компьютеров.
Исправления
- Устранена причина возникновения исключения при открытии и редактировании карты атрибутов.
- Увеличена скорость построения решения, использующего механизм вывода поля карты адресов в пользовательское свойство связанного сигнала.
- Уменьшена задержка отображения диалогового окна выбора пути к элементу.
3.26.0
Новые возможности
- Реализована возможность описания массивов-значений для параметров и событий. Чтобы сделать значение параметра или события массивом, следует указать значение свойства Размер массива.
- Созданы новые элементы - Устройство и Тип устройства. С помощью элемента Устройство можно описать абстрактное устройство с возможностью передачи данных по различным протоколам и интерфейсам. Элемент Тип устройства позволяет типизировать описываемые устройства.
- Появилась возможность определять доступность типов, объектов, сокетов, параметров и событий. Для этого добавлено свойство Уровень доступа. В качестве значения свойства можно указать, должен ли элемент быть публичным, приватным (в таком случае элемент доступен только в рамках родительского элемента) или защищённым (в таком случае элемент доступен только в наследниках родительского типа).
Улучшения
- [SnapShot] Теперь для идентификации сигналов, например, в шаблоне файла-среза, вместо тегов можно использовать индексы. Для добавления индексов параметрам следует создать собственный тип атрибута и добавить ему атрибуты "Индекс для модуля SnapShot" (Om.Server.SnapShot.Index) и "Свойство конфигурации" (Om.Server.Attributes.ConfigNodeProperty).
- [OPC UA] Теперь карты адресов модуля можно задавать с помощью атрибутов. Для этого следует добавить нужным параметрам атрибуты, принадлежащие пространству имён Om.OPC.UA.Address. Атрибуты соответствуют столбцам карты адресов. При построении карты значения атрибутов используются в соответствующих столбцах.
- Обновлен формат пользовательского дерева сигналов, создаваемого для Alpha.HMI.Trends. Новое дерево имеет иерархическую структуру, а еще позволяет описывать уровни, добавляемые на трендовое поле вместе с графиком сигнала.
- [EtherNet/IP] Появилась возможность добавлять пользовательские свойства, содержащие значения полей адреса из карты адресов, с помощью атрибута "Вывод поля адреса в свойство" (Om.Server.Address.FieldToProperty).
- Теперь при копировании элемента из обозревателя решений копируется полный путь до элемента, который можно вставить в поле ввода, текстовый редактор и т.д.
Исправления
- Устранена причина, по которой название атрибута "Имя модуля DataBuffer" (в английской версии "Data Buffer module name") в карте атрибутов отличалось от отображаемого имени этого же атрибута при добавлении его логическому объекту.
- Исправлена ошибка, возникавшая при компиляции параметров подключения к резервному коммуникационному модулю контроллера.
- Устранено исключение, возникавшее при компиляции ссылки на исполняемый модуль приложения в резервном исполняющем компоненте.
3.25.9
Исправление
- Список потребителей, к которым модуль TCP Server сам инициирует подключение, теперь формируется корректно. При использовании Alpha.DevStudio версий 3.25.4 - 3.25.8 после развертывания решения формировался пустой список.
3.25.8
Улучшение
- [Modbus TCP] Расширены настройки канала связи станции с опросчиком. Теперь для станции можно выделить отдельное TCP-подключение, либо сделать канал общим с каналами других устройств, если IP-адреса и порты каналов совпадают. Изменить настройки канала можно в параметрах связи с Modbus TCP Slave, в свойстве "Выделенное подключение".
Исправление
- Устранена причина, по которой было недоступно развёртывание конфигурации Alpha.DevStudio, запущенной в ОС AstraLinux под Wine.
3.25.7
Исправления
- Устранена причина, по которой в карте адресов после привязки параметра не обновлялись значения полей "Категория данных" и "Тег", изначально заданные с помощью атрибутов.
- Многократное добавление атрибута "Категория данных" параметру больше не приводит к ошибкам при компиляции проекта.
- Для атрибута "Идентификатор класса объекта Ethernet/IP" диапазон значений расширен от 0 до 65535. Ранее диапазон был ошибочно ограничен от 0 до 255.
- Исправлено поведение, при котором значения атрибутов базового типа присваивались наследуемым атрибутам дочернего типа, если для последних было указано пустое значение.
- При публикации модуля в зависимостях теперь проставляется корректная версия модуля, от которого он зависит.
- Исправлено формирование списка публикуемых веток модуля OPC UA Server. Ранее при построении конфигурации не все логические объекты попадали в "список публикуемых веток" модуля.
- Исправлена ошибка, возникавшая при компиляции проектов с несколькими доменами.
- При импорте опубликованного модуля в проект карта адресов теперь загружается нормально. Ранее загружалась пустая карта.
- Исправлено исключение, возникавшее при вычислении формул для объекта, если имена членов этого объекта совпадали.
- При запуске Alpha.DevStudio под Wine исключена загрузка Security.dll, приводившая к ошибке.
3.25.6
Новая возможность
- Теперь карты адресов модуля EtherNet/IP Scanner можно задавать с помощью атрибутов. Для этого следует добавить нужным параметрам атрибуты, принадлежащие пространству имён Om.EthernetIp.Address. Атрибуты соответствуют столбцам карты адресов. При построении карты значения атрибутов используются в соответствующих столбцах.
Исправление
- Совпадение значения адреса IEC 870-5 больше не будет считаться ошибкой для сигналов, предназначенных для записи и чтения данных по этому адресу.
3.25.5
Новая возможность
- При построении решения для сервера, для которого включен вывод отладочной информации, теперь создается файл конфигурации .xmlcfg. Файл создается в той же папке, в которой создается файл конфигурации .cfg:
.../папка проекта/bin/имя среды исполнения/имя экземпляра Alpha.Domain/имя экземпляра узла Alpha.Domain/имя экземпляра Alpha.Server
.
3.25.4
Новые возможности
- Поддержана возможность выбора версии протокола для модуля UNET Client. Версия протокола указывается у карты адресов UNET (UNET или UNET2).
- Элементу Ethernet/IP Scanner добавлено свойство "Интервал проверки изменения тегов устройства" (TypeInfoCheckInterval).
Улучшения
- При редактировании карты атрибутов для выбранного элемента окно редактирования атрибутов теперь становится пустым. Это устраняет вероятность ошибочного изменения атрибута у самого элемента.
- При редактировании строкового значения свойства теперь выполняется автоматическое удаление пробелов в начале и в конце значения. Такие пробелы обычно ставятся случайно, а их наличие приводит к ошибкам.
- Для элемента OPC UA Server параметр аутентификации "Учетной записью Windows" переименован в "Учетной записью ОС", так аутентификация возможна по учетной записи как ОС Windows, так и ОС Linux.
- При заполнении карты адресов FINS теперь можно использовать зарезервированные адреса.
- Ускорена загрузка диаграммы с большим количеством соединений.
Исправления
- Исправлена проверка принадлежности карты адресов логического адаптера к приложению с данными. Некорректность проверки приводила к появлению свойства 5000 (адрес сигнала) у всех сигналов приложения по всем логическим адаптерам вместо одного - ожидаемого.
- Пустые значения пользовательских свойств строкового типа больше не приводят к ошибкам при компиляции проекта: такие значения теперь добавляются в конфигурацию в виде пустой строки.
- Исправлено некорректное формирование ссылок в формулах на объекты, описанные в типе других объектов.
3.25.3
Новая возможность
- TCP Server теперь может самостоятельно инициировать подключение к потребителям. Для этого элементу TcpServer следует добавить параметры взаимодействия с потребителем, с которым модуль сам будет устанавливать соединение.
- Для описания потребителей добавлен новый элемент - Потребитель Link. Элементам, описывающим потребителей - Потребитель Link и HUB Module - добавлено свойство Идентификатор клиента. По значению этого идентификатора модуль TCP Server будет определять потребителей и разрешать изменения, полученные от них.
Улучшения
- При чтении структур данных, полученных по Ethernet/IP, теперь можно определять, какие структуры должны читаться с оптимизацией, а какие - без. Для этого применяется категоризация данных. Для того, чтобы данные определенной категории читались целиком, нужно в параметрах категории данных в качестве значения свойства Читать структуры целиком указать "Да".
- Стал более информативным текст ошибки, возникающей в результате неудачной обработки значения атрибута. Если некорректное значение атрибута вычисляется на основе значений других атрибутов, то в тексте ошибки будет указано название элемента, для которого вычисления завершились с ошибкой.
Исправление
- Для сигналов с направлением "вход/выход" значения теперь пересчитываются в обоих направлениях. Ранее значения таких сигналов, переданные из ПЛК в сервер, не пересчитывались.
3.25.2
Новые возможности
-
Теперь можно изменить настройки записи файла-среза, создаваемого при остановке Alpha.Server. Для этого следует в элементе, описывающем модуль SnapShot, менять значения новых свойств: "Сохранять файл-срез перед остановкой модуля" и "Имя шаблона файла-среза для сохранения перед остановкой модуля".
-
Для параметров, предназначенных для отображения на графиках, теперь можно указывать нижний и верхний пределы значений. Для этого следует добавить параметру новые атрибуты - Om.Server.Attributes.LowerRangeValue (Нижнее значение диапазона) и Om.Server.Attributes.UpperRangeValue (Верхнее значение диапазона). Назначать необходимо оба атрибута, если указать только один - возникнет ошибка.
-
Созданы новые типы параметров агрегации - "Максимальная важность актуальных событий" и "Максимальная важность актуальных событий в ветке" для типа сигнала uint4. Бывшие параметры агрегации "Максимальная важность событий" и "Максимальная важность событий в ветке" переименованы в "Максимальная важность активных событий" и "Максимальная важность активных событий в ветке" соответственно.
-
Теперь можно скомпилировать и построить отдельные проекты из решения средствами CLI. Для этого при вызове команд compile или build следует указывать параметр --project с именем проекта. Пример:
devstudio.cli compile --solution-path PATH --project PROJECT
-
Элементу, описывающему адресата в модуле рассылки событий SMTP, добавлено свойство, позволяющее выбрать часовой пояс получателя.
-
Для UNET поддержано использование входных/выходных параметров на уровне контроллера.
Исправления
- Решение, созданное в более ранней версии программы, после преобразования к новому формату компилировалось с ошибками, если содержало параметры с настроенной генерацией событий.
- Решение, содержащее модуль NetDiag2, компилировалось с ошибкой, если при описании узла вместо IP было указано имя компьютера. Так как в модуле не используется адресация по имени, теперь появляется предупреждение о правилах наименования узла в домене.
- Устранена причина, по которой не выполнялась конвертация значений атрибута Om.Server.Attributes.Alarms (События) после преобразования решения, созданного в более ранней версии программы, к новому формату.
- Устранена причина, по которой HUB Module завершал работу, если в его конфигурации не были указаны привязки и статические сигналы источника, с которым модуль должен был обмениваться данными с помощью файлового интерфейса.
- Размещение двух и более элементов "Шлюз Ethernet к последовательной шине" с одинаковыми IP адресами, но разными портами, больше не приводит к возникновению ошибок.
- Исправлены ошибки импорта карты адресов S7 Protocol, возникавшие, если карта ранее была экспортирована в файл *.xlsx и отредактирована.
- Исправлены ошибки формирования абсолютного пути к папке, используемой для обмена данными с помощью файлового интерфейса, в ОС Linux.
- Устранена причина, по которой модуль истории дублирующего сервера записывал исторические данные в Alpha.Historian.Server, подключенный к дублируемому серверу.
- Теперь файлы публикации (binom и index) корректно формируются в указанной папке сразу после построения решения.
- Объекты, содержащие большое количество вложенных объектов, теперь отображаются быстрее.
- При вставке скопированного объекта ошибочно добавлялись формулы для параметров всех вложенных в него объектов.
- Устранена причина, по которой не сохранялось новое имя параметра, присвоенное при переименовании через контекстное меню.
3.25.1
Новые возможности
- Добавлен проект-пример с использованием соединения Modbus RTU over TCP.
- Добавлены категории данных для модуля Опросчик МЭК 60870-5-101.
Улучшения
- В вычислениях теперь корректно обрабатываются обращения к сигналам, расположенным по ссылке.
Теперь такие сигналы необязательно экспонировать, чтобы использовать в вычислениях экспонированный сигнал.
Исправления
- По протоколу Modbus TCP не передавались значения сигналов, для которых были настроены категории данных.
- Устранено исключение при добавлении в опросчик Modbus RTU связи со станцией.
- Элемент домена не копировался, если был расположен в другом omx-файле.
3.25.0
Новые возможности
- Динамическое раскрытие ссылок с помощью UA Client
- Ethernet-адаптерам можно указывать динамические IP-адреса.
- Добавлена возможность публикации модулей с помощью интерфейса командной строки.
- Для событий можно использовать пользовательские атрибуты. С их помощью можно:
- Настраивать условия генерации.
- Добавлять в события дополнительные атрибуты.
- Настраивать значения дополнительных атрибутов.
- Можно отключить выполнение некоторых проверок ошибок или предупреждений при построении. Если проверка отключена, предупреждени/ошибка в журнал выводиться не будут, построение завершится успешно.
Отключение проверок предназначено для того, чтобы упростить тестирование в некоторых случаях.
В большинстве случаев отключать проверки не рекомендуется.
- В окне События в столбце Важность теперь можно указывать вычисляемое значение.
- Опросчик МЭК-101 и Modbus TCP Master могут вести опрос по RTU over TCP.
- В модуль SQL Connector:
- Добавлена возможность неявного приведения ODBC типов большей размерности к типам меньшей размерности (по умолчанию отключена).
- Добавлена возможность разделения запросов по сессиям.
- Модуль [Modbus TCP Master] может:
- Опрашивать несколько станций с одинаковым номером по разным каналам.
- Опрашивать станции через умные шлюзы, имеющие фиксированный номер станции 255 .
- Добавлены новые возможности при передаче данных по протоколу BACnet:
- Описание таблиц
- Контроль статуса доставки команд
- Повторная отправка запросов
- Получение значений по подписке на объект.
- Передача данных по категориям
- Управление динамической подпиской
- Использование внешней системы событий
- Агрегация событий выполняется с учётом внешней модели событий модуля BACnet.
Улучшения
- Номер развёртывания/публикации теперь определяется на этапе компиляции, а не после выполнения развёртывания/публикации.
Благодаря этому:
- Номер развёртывания теперь отображается в сервисных сигналах построенных конфигураций. Это позволит определить различие конфигураций, например, основного и резервного сервера, если развёртывание выполнено только для одного из них.
- В мастере развёртывания номер развёртывания конфигурации будет отображаться уже после построения, а не только после развёртывания.
- При публикации предварительного скомпилированного модуля не будет выполняться повторная генерация скомпилированных файлов.
- Имена файлов, полученных при компиляции, не будут отличаться от имён файлов, полученных при публикации.
- Предотвращено построение некорректно работающих конфигураций, если в именах узлов домена использовалось подчёркивание (символ недопустим в именах хостов в ОС Windows и Astra Linux):
- Если имя с подчёркиванием попадает в Alpha.Server конфигурацию, построение завершится ошибкой.
- Если имя с подчёркиванием используется в проекте, но не попадает в построенные конфигурации, построение завершится успешно, в журнал выведется предупреждение о некорректном имени.
- При формировании пользовательского дерева сигналов для Alpha.HMI.Trends можно выбрать, какие из сокетов попадут в дерево. Для этого атрибут "Показывать на графиках" теперь можно применять к сокетам.
- В модуль Клиент Siemens S7 добавлены параметры для настройки связи с устройством: "Таймаут потери связи", "Таймаут ожидания ответа на запрос" и "Время установления связи".
- В модулях Modbus TCP Master/Slave поддержано расширение протокола Modbus для интеграции с ПЛК ЭМИКОН:
- Поддержана кодировка строк UTF-16.
- Увеличен размер строки для типов STR и STR-COMMAND.
- При использовании расширенных функций, увеличена максимальная длина запроса:
- на чтение в Input Register - со 125 до 719
- на чтение в Holding Register - со 125 до 719
- на запись в Holding Register - со 123 до 717
Исправления
- Устранены неинформативные сообщения об ошибках в параметрах
Alpha.DevStudio
, которые возвращались при компиляции и построении. Теперь в таких сообщениях явно указано, что ошибка обнаружена не в проекте, а в параметрах Alpha.DevStudio
.
- Исправлена ошибка, из-за которой в модуле Опросчик МЭК-101 не работало резервирование канала.
- Исправлено: файл пользовательского дерева сигналов строился некорректно при наличии в описании сигналов обратного слеша "". При использовании такого файла в Alpha.HMI.Trends пользовательское дерево сигналов не выводилось.
- Устранены ошибки в мастере импорта: невозможность снять флаги с вложенных элементов и зависания при установке/снятии флагов.
3.24.7
Изменение
- Станции Modbus TCP теперь могут иметь номер 255.
Если для станции не указан её номер, ей автоматически будет задан номер 255.
3.24.6
Исправления
- Представления могли создаваться некорректно, если в пути до исходного объекта были узлы с одинаковыми именами.
3.24.5
Новые возможности
- Выбор конкретного модуля Data Buffer, который будет работать с сигналами объекта.
Исправления
- Исправлена ошибка компиляции ссылок в типах в случаях, когда их базовые типы также содержат ссылки.
- Исправлено: не применялась конфигурация к резервному серверу при развёртывании с помощью консольной команды.
- Исправлена опечатка: в названии свойства "Таймаут операции, мсек" у параметров связи HUB-модуля с источником вместо милисекунд были указаны секунды.
Alpha.Server. История изменений
^ [6.0.10 --> 6.3.23]
6.3
->> перейти к 6.3.0
6.3.23
Новая возможность
GenericDeviceComm
- Реализован новый модуль GenericDeviceComm, с помощью которого Alpha.Server может обмениваться данными с устройствами по протоколу DCON.
Исправленные ошибки
OPC AE Server
, Модуль логики
- Исправлены ошибки, из-за которых в некоторых случаях могли прекращаться генерация событий и выполнение вычислений, а Alpha.Server мог завершать работу или зависать при остановке.
6.3.22
Улучшение
IEC-104 Master
- Реализован новый алгоритм работы очереди входящих данных.
Исправленные ошибки
EtherNet/IP Scanner
- Alpha.Server завершал работу при разрыве связи с эмулятором.
IEC-104 Master
- Модуль не устанавливал плохое качество сигналам при разрыве связи со станцией в режиме "Один в работе, не поддерживать соединение по остальным".
- При возникновении ошибок протокола модуль не разрывал соединение и продолжал работу по тому же каналу, но записывал сообщения о разрыве соединения в журнал работы модуля. Теперь при ошибках протокола модуль разрывает соединение, открывает его заново и продолжает работу.
Modbus RTU Slave
, Modbus TCP Slave
- Модули ошибочно добавляли в конец строки символ '\0' в кодировках utf8 и windows-1251, если длина строки была нечетным числом.
Siemens S7 Client
- При получении строки с ПЛК значение в Alpha.Server могло быть некорректным.
Alpha.Server
- Устранены ошибки, возникавшие при использовании в вычислениях элементов массива.
6.3.21
Исправленные ошибки
SNMP Manager
- Сигналам могло кратковременно устанавливаться плохое качество при повторной смене канала соединения с агентом.
6.3.20
Исправленные ошибки
OPC AE Server
- Устранена ошибка при синхронизации подавлений и блокировок между серверами резервной пары, из-за которой после резервного перехода могли генерироваться события по подавленным источникам.
- При использовании OAT ошибочно не учитывался признак подавления источников, из-за чего после переподключения в Alpha.HMI.Alarms могли отображаться события по подавленным источникам.
6.3.19
Исправленные ошибки
Modbus TCP Master
- При задержке отправки пакетов модуль мог не опрашивать некоторые источники.
- Для сервера В резерве устранена запись в журнал работы модуля сообщений вида "Значение сигнала <Имя сигнала> не было отправлено. Причина: плохое качество (24)".
IEC-104 Master
- Модуль не инициализировался при отсутствии в конфигурации значения параметра SendCommonPollAfterConnect (Отправлять общий опрос при подключении).
OPC AE Server
- После запуска сервера ошибочно подавалась команда очистки таблицы оперативных событий.
6.3.18
Исправленные ошибки
Alpha.Server
- Иногда процесс Alpha.Server мог загружать все ядра процессора на 100%.
Модуль истории
- В OC Linux Alpha.Server мог завершать работу после высокой загрузки ЦП при использовании функции повторного сохранения последней записи сигнала в историю.
IEC-104 Master
- Модуль не учитывал, что при общем опросе значения типа <235> M_ME_TX_1 приходят в виде значений типа <234> M_ME_NX_1, и игнорировал такие значения.
EtherNet/IP Scanner
- В OC Linux модуль не устанавливал соединение с устройством.
6.3.17
Исправленные ошибки
Modbus TCP Master
- Иногда модуль мог не опрашивать некоторые станции.
6.3.16
Улучшения
OPC AE Server
- Добавлены новые агрегаторы:
- MinSeverity - минимальная важность среди активных событий;
- MinSeverityUnacked - минимальная важность среди активных неквитированных событий.
IEC-104 Master
- Добавлена возможность указывать необходимость отправки команды общего опроса при установке связи по каналу.
IEC-101 Master
- Добавлен служебный сигнал Connected, отображающий состояние связи со станцией.
Добавлена возможность отправки команды синхронизации времени при установлении соединения со станцией.
Исправленные ошибки
IEC-61850 Client
- Устранены проблемы модуля, из-за которых Alpha.Server мог:
- потреблять 100% CPU после запуска;
- завершать работу при разрыве соединения с устройством.
OPC AE Server
- Не генерировались события по условию Deviation при резервном переходе.
6.3.15
Улучшение
EtherNet/IP Scanner
- Реализована возможность настройки таймаута ожидания ответа на запрос.
Исправленные ошибки
OPC UA Client
- Находясь в резерве, модуль отправлял в UA Server уже отправленные ранее команды, получив их по каналу репликации от основного Alpha.Server после перезапуска Alpha.Server, в составе которого он функционирует:
- В транзакционной модели исполнения модуль отправлял такие команды только для нереплицируемых сигналов.
- В модели исполнения по умолчанию модуль отправлял такие команды как для реплицируемых сигналов, так и для нереплицируемых.
Дополнительным условием отправки таких команд являлось значение Запрашивать данные, установленное для режима работы модуля в резерве.
TCP Server, HUB
- Устранены причины, из-за которых обмен данными между Alpha.Server и Alpha.AccessPoint мог выполняться некорректно.
6.3.14
Исправленные ошибки
Модуль истории
- Иногда Alpha.Server мог завершать работу при остановке модуля истории.
- Устранена причина нарушения целостности OAT.
OPC AE Server
- Повторно генерировались события по подусловию Enumeration при резервном переходе.
- Генерировалось событие по подусловию Deviation при отсутствии предыдущего значения сигнала.
OPC UA Client
- В режиме работы в резерве Закрывать соединение после двойного резервного перехода модуль переставал получать данные с UA Server.
6.3.13
Улучшения
SNMP Manager
- Для агента добавлена возможность использования контекста для разграничения доступа к нескольким физическим/логическим устройствам.
- Добавлена возможность сбрасывать сохраненное время агента при потери связи. Используется для агентов, неправильно считающих перезагрузки.
Исправленные ошибки
Модуль истории
, TCP Server
, Модуль логики
- Устранены проблемы, из-за которых в редких случаях Alpha.Server мог прекращать работу.
OPC UA Client
- В режиме работы в резерве Закрывать соединение после двойного резервного перехода модуль переставал передавать данные на UA Server.
Modbus TCP Master
- Для сигналов типа String не учитывалось значение параметра Байт в слове.
Модуль логики
- Устранена ошибка модуля логики "Не найден зарегистрированный член типа" при использовании в проекте логических типов.
6.3.12
Улучшение
OPC AE Server
- Для подусловия генерации событий добавлена возможность настройки повторной генерации события по активному подусловию.
Исправленные ошибки
FINS Client
- Не выполнялся обмен данными с некоторыми моделями ПЛК OMRON.
OPC AE Server
- Важность события не изменялась с помощью вычислений.
Modbus RTU Master
- Устранена запись в журнал приложений сообщений вида "В таблице опроса отсутствуют запросы для подключения".
6.3.11
Улучшение
IEC-104 Master
- Добавлена настройка режима работы резервных каналов, который определяет каким образом будут использоваться определённые для станции каналы связи.
6.3.10
Исправленные ошибки
SQL Connector
- Запрос мог выполнялся чаще, чем было задано в параметре Период исполнения запроса.
Modbus TCP Master
- Не удавалось опросить несколько станций при одновременной отправке кадров по одному каналу через шлюз.
6.3.9
Улучшение
FINS Client
- Реализована возможность параллельного опроса одного ПЛК OMRON обоими Alpha.Server резервной пары. Для этого в настройках модуля нужно указать разные адреса узлов источника (SA1) для основного и резервного серверов.
6.3.8
Новая возможность
- Реализован новый модуль
MQTT Client
, с помощью которого Alpha.Server
может обмениваться данными с устройствами по протоколу MQTT.
6.3.7
Исправленные ошибки
Модуль резервирования
- Порт модуля резервирования мог оставаться занятым после перезапуска Alpha.Server, из-за чего не удавалось установить соединение с резервным сервером.
6.3.6
Исправленные ошибки
Modbus TCP Master
- Устранена проблема, из-за которой один из Alpha.Server резервной пары мог прекращать работу.
IEC-104 Slave
- Устранена проблема, из-за которой Alpha.Server мог прекращать работу при перезапуске.
Modbus TCP Slave
- В ОС Linux в транзакционной модели исполнения Alpha.Server мог прекращать работу после длительного бездействия.
IEC-104 Master
- В некоторых случаях при подаче команды с использованием предварительного выбора модуль мог ошибочно отправлять команду многократно.
6.3.5
Улучшения
Модуль логики
- Реализована возможность изменения звука перед отправкой события. Для изменения звука в свойстве сигнала 777013 атрибуту me.Messages.Selected.Sound укажите имя звукового файла.
IEC-104 Slave
- Добавлен служебный сигнал ConnectedCount, отображающий количество подключений к группе станций
(*Service.Modules.Iec104Slave.Groups.StationGroup_<номер>.ConnectedCount*)
.
Исправленные ошибки
OPC AE Server
- Устранена запись в журнал приложений сообщений вида "Экземпляр описан вне объекта '<идентификатор>'" при инициализации модуля.
- Добавлены доработки Alpha.Server версий 6.2.6, 5.13.10, 5.13.11.
Улучшение
- Уменьшено потребление оперативной памяти модулем логики.
Исправленные ошибки
- Иногда Alpha.Imitator не восстанавливал историю значений некоторых сигналов в режиме "Дополнение пропущенных исторических данных" (Backfilling).
- Иногда обмен данными модуля OPC UA Client с ПЛК мог прекращаться.
6.3.4
Исправленные ошибки
OPC UA Client
- Alpha.Server завершал работу при попытке подключения к UA серверу Орион Про.
Модуль логики
- Не генерировалось сообщение о событии при использовании с обработчиком триггера подготовки сообщения.
Модуль истории
- Находясь в резерве модуль сохранял в историю:
- первое сгенерированное событие по подусловию;
- события не требующие квитирования.
Modbus TCP Master
- Исправлены ошибки модуля Modbus TCP Master, из-за которых:
- в транзакционной модели исполнения Alpha.Server мог завершать работу;
- оба сервера резервной пары запускались в состоянии Активный.
Модуль резервирования
- В транзакционной модели исполнения после перезапуска одного из серверов резервной пары оба сервера переходили в состояние Активный В работе.
- Один из серверов резервной пары мог зависать при инициализации.
6.3.3
Улучшение
TCP Server
- Запрет на запись анонимным клиентам модуля теперь установлен по умолчанию.
6.3.2
Новые возможности
FINS Client
- Возможность прекращения опроса ПЛК при переходе модуля в резерв.
IEC-104 Master
- Возможность использования отдельного TCP-подключения для устройства.
Modbus TCP Master
- Возможность адресации к конкретному устройству источника для исходящих сигналов.
EtherNet/IP Scanner
- Реализован механизм состояний каналов:
- Поддержаны состояния каналов:
- Connected - наличие соединения по каналу
- Enabled - доступность канала
- Возможность отслеживания и управления состоянием каналов в режиме реального времени с помощью служебных сигналов.
- Реализован механизм состояний устройств:
- Поддержаны состояния устройств:
- Enabled - доступность устройства
- Connected - наличие соединения с устройством
- Active - активность устройства
- Возможность отслеживания и управления состоянием устройств в режиме реального времени с помощью служебных сигналов.
- Для устройств доступен выбор исходного состояния возможности использования устройства при старте модуля.
- Возможность автоматической генерации имён устройств и каналов модуля.
- Возможность указывать период времени, по истечение которого связь с устройством считается потерянной.
Улучшения
IEC-104 Master
- Выполнение проверки источников на наличие станций с одинаковыми настройками. При обнаружении у разных источников станций с одинаковыми номером, IP-адресом и портом, в журнал выводится ошибка, а получение данных выполняется по первому обнаруженному источнику.
Модуль резервирования
- Добавлены служебные сигналы, отображающие текущее состояние парного сервера в резервной паре.
EtherNet/IP Scanner
- Добавлены служебные сигналы, отображающие IP-адрес и порт канала.
Исправленные ошибки
TCP Server
- Известные клиенты, несмотря на запрет, ошибочно могли изменять значения сигналов.
OPC AE Server
- В Alpha.HMI.Alarms из OAT помимо активных событий загружались и неактивные с пустым столбцом Сообщение.
Siemens S7 Client
- Связь с ПЛК могла восcтанавливаться долго при нестабильном соединении.
EtherNet/IP Scanner
- Качество сигналов ошибочно оставалось хорошим при разрыве связи с резервным сервером и ПЛК.
- Модуль не восстанавливал соединение по каналу, который до разрыва соединения был неактивным.
- Не выполнялась проверка корректности имени канала при загрузке конфигурации из файла *.xmlcfg.
6.3.1
- В Alpha.Server 6.3.1 добавлена функциональность Alpha.Server версий 6.2.1 - 6.2.4.
Улучшение
Модуль логики
- Реализована возможность при запуске Alpha.Server вычислять значения всех формул на основании начальных значений переменных.
Исправленные ошибки
OPC UA
- Некоторые клиенты не получали данные Alpha.Server.
6.3.0
Новые возможности
- В Alpha.Server 6.3.0 добавлена функциональность Alpha.Server версий 6.0.15 - 6.0.27, 6.1.0 - 6.1.5, 6.2.0.
IEC-104 Master
- Работа с несколькими станциями с одинаковым номером по разным каналам.
- Возможность указывать параметры взаимодействия со слэйвом для каждой станции (источника).
- Использование метки времени сервера при настройке протокольного типа без метки времени.
!!!
Изменилась структура конфигурации модуля (в том числе состав полей адресного свойства) и структура служебных сигналов модуля.
IEC-104 Slave
- Возможность использовать разный общий адрес ASDU в рамках одного источника.
- Возможность указывать параметры взаимодействия с потребителем для каждой станции (источника).
- Поддержка механизма команд с предварительным выбором с возможностью внешней и внутренней блокировки управления.
- Настройка передачи служебных команд в соответствии со спецификацией протокола IEC:
- Отправка пакета с причиной передачи 10 (завершение активации) в направлении контроля
- Отправка типа данных 70 (конец инициализации) с причиной передачи 4 (сообщение об инициализации) в направлении контроля
- Приём команд с предварительным выбором
!!!
Изменилась структура конфигурации модуля (в том числе состав полей адресного свойства) и структура служебных сигналов модуля.
IEC-104 Master
, IEC-104 Slave
- При отправке/получении данных по протоколу МЭК добавлена возможность обработки (на приём) и формирования (на отправку) качества МЭК. Конвертация качества выполняется с помощью библиотеки, разработанной с учётом нужной логики конвертации, с возможностью использования (на отправку) или задания (на приём): OPC качества, CustomInfo и адреса сигнала.
OPC UA
, OPC UA Client
- При отправке/получении данных по спецификации OPC UA добавлена возможность обработки (на приём) и формирования (на отправку) качества OPC. Конвертация качества выполняется с помощью библиотеки, разработанной с учётом нужной логики конвертации, с возможностью использования (на отправку) или задания (на приём): OPC качества, CustomInfo и адреса сигнала.
Modbus TCP Master
- Адресация данных, обмен которыми выполняется по конкретному устройству в источнике.
Определение контрольного узла на устройстве, по значению которого определяется готовность устройства к работе.
- Определение возможности использования устройств в источнике и каналов в устройстве при старте модуля.
Модуль логики
- Вызов внешних функций с прореживанием данных: если предыдущий вызов функции еще не начал выполняться, то новый вызов замещает его в очереди на исполнение. Прореживание данных позволяет уменьшить задержку обработки очереди задач функциями из внешних библиотек, которые могут потенциально выполняться долго.
OPC AE Server
- Квитирование событий с ограничением по времени. Для активных событий сигнализация срабатывает повторно через заданный промежуток времени.
OPC DA Server
- Чтение отдельных атрибутов сигналов стороннего OPC DA сервера.
IEC-101 Master
- Файловый обмен с устройством.
EtherNet/IP Scanner
- Отключение устройства и выбор активного устройства с помощью служебных сигналов.
Изменение периода опроса группы с помощью служебного сигнала PollingInterval.Set.
IEC-61850 Client
- Получение от устройств IEC 61850 структурных типов данных.
Улучшения
Модуль логики
- Повышена информативность сообщения об исключении при выполнении функции динамической библиотеки. Теперь при возникновении исключения сообщение содержит:
- имя обработчика, вызвавшего функцию
- имя функции, указанное пользователем
- имя библиотеки, указанное пользователем
- код исключения
OPC UA
, OPC UA Client
- Поддержана конвертация качества значения сигнала в StatusCode согласно спецификации OPC UA.
IEC-104 Master
- Реализовано логирование ошибок валидации данных по текущему алгоритму. В сообщении указывается метка времени данных, которая получена от устройства, и причина ошибки.
BACnet Client
- Возможность взаимодействия со шлюзом, который использует широковещательный адрес (255.255.255.255) для отправки ответов на запросы.
В журнале модуля:
- область расшифровки кадров содержит информацию о свойствах, на которые создаётся/отменяется подписка, а также значения свойств, получаемые по подписке;
- для всех входящих/исходящих кадров содержится название службы, которая была использована во входящем/исходящем запросе.
- Текст сообщений в журнале приложений содержит расшифрованный код ошибки разбора JSON-строк.
- Добавлен служебный сигнал SetSubscription для управления подпиской по Area или подписки на любые свойства модуля.
Исправленные ошибки
Alpha.Server
- Устранены редкие причины прекращения работы Alpha.Server при резервном переходе, выполнении вычислений.
Alpha.Imitator
- Alpha.Imitator завершал работу при попытке ввода некорректного значения в служебный сигнал Service.Imitation.Override.
- Было невозможно прервать сессию имитации до окончания загрузки данных. Теперь прервать сессию можно в любой момент, установив служебному сигналу Service.Imitation.EndSession значение True.
- Команда Update ошибочно добавляла записи в новый набор данных при отсутствии записи с меткой времени, указанной в параметрах команды.
- Для тега, в имени которого присутствовали символы кириллицы:
- не запрашивалась история значений через служебный сигнал Service.Imitation.ReadHistory
- не перезаписывалась история значений через служебный сигнал Service.Imitation.Override
- При вводе некорректной JSON-строки в служебные сигналы ReadHistory, Override и ReadOverriden в журнал приложений записывалось неинформативное сообщение. Теперь текст сообщения содержит имя служебного сигнала и описание ошибки.
Alpha.AccessPoint
- Устранена запись сообщения вида GetSignalHandle: Нельзя добавить в список сигналов папку <имя_сигнала> в журнал приложений для модуля TCP Server при попытке на экране Alpha.HMI использовать папки.
- В некоторых случаях в журнал модуля HUB ошибочно записывалось сообщение о совпадении идентификаторов источников.
Конфигуратор
, Статистика
- Исправлены опечатки в названии параметра статистики модуля HUB.
- При просмотре списка устройств IEC-61850 Client имена устройств с дефисом ошибочно отображались без дефиса.
Дистрибутив
- В ОС Linux установленные на одном компьютере Alpha.Server и Alpha.AccessPoint сохраняли журналы работы модулей и резервные копии конфигураций в общие для них каталоги /opt/Automiq/Logs и /opt/Automiq/Backups. Теперь журналы работы модулей и резервные копии конфигураций сохраняются в каталоге установки компонента:
- Alpha.Server -
/opt/Automiq/Alpha.Server/Logs
и /opt/Automiq/Alpha.Server/Backups
- Alpha.AccessPoint -
/opt/Automiq/Alpha.AccessPoint/Logs
и /opt/Automiq/Alpha.AccessPoint/Backups
Модуль истории
- Подключение к БД становилось невозможным после неуспешных попыток установления соединения с хранилищем PostgreSQL.
Просмотрщик лога кадров
- В очень редких случаях в ОС Linux могли повреждаться журналы работы модулей Alpha.Server. При открытии такие журналы не содержали записей.
OPC AE Server
- Агрегатор не применял фильтр Кроме указанных важностей событий и включал в результат агрегации события, которые не должны были учитываться.
- При получении событий с помощью функции Refresh:
- не обрабатывалась процедура, выполняемая при генерации события
- текст сообщения в клиенте не заменялся на текст, заданный пользователем
- возвращалось событие со старым значением важности вместо измененного
IEC-101 Master
- Второй канал не мог быть использован станцией как основной при отключенном резервировании канала для станции.
IEC-101 Slave
- Устранены многочисленные сообщения об ошибке конвертации качества в журнале приложений при отправке качества, значение которого лежит за границей допустимых значений. Теперь в журнал записывается только одно сообщение об ошибке конвертации качества.
SNMP Manager
- При использовании протокола SNMPv3 модуль мог ошибочно выбирать активным канал, по которому не установлена связь с агентом.
IEC-104 Master
- Устранены многочисленные сообщения в журнале приложений об обработке очереди входящих данных.
IEC-104 Slave
- При одновременном получении нескольких команд модуль мог отправлять в ответ кадры подтверждения или завершения активации дважды по одному и тому же адресу.
IEC-61850 Client
- Иногда при большом количестве устройств смена режима работы Alpha.Server могла происходить долго.
- Не загружались файлы с устройства IEC 618506:
- из-за отличия размера файла от ожидаемого;
- модуль не находил папку для приёма файлов.
OPC UA
- При усечении значения по границе пересчета сигналу устанавливалось качество BAD вместо SENSOR_FAILURE.
Изменения
OPC UA
- Параметр Аутентификация учетной записью Windows переименован в Аутентификация учетной записью ОС.
Сервисные приложения
Новые иконки сервисных приложений Конфигуратор, Статистика, Управляющий.
6.2
->> перейти к 6.2.0
6.2.7
Исправленные ошибки
OPC UA Client
- Находясь в резерве, модуль отправлял в UA Server уже отправленные ранее команды, получив их по каналу репликации от основного Alpha.Server после перезапуска Alpha.Server, в составе которого он функционирует:
- В транзакционной модели исполнения модуль отправлял такие команды только для нереплицируемых сигналов
- В модели исполнения по умолчанию модуль отправлял такие команды как для реплицируемых сигналов, так и для нереплицируемых
Дополнительным условием отправки таких команд являлось значение Запрашивать данные, установленное для режима работы модуля в резерве.
- В режиме работы в резерве Закрывать соединение после двойного резервного перехода модуль переставал обмениваться данными с UA Server.
6.2.6
Улучшение
Модуль логики
- Уменьшено потребление оперативной памяти модулем логики.
6.2.5
Исправленные ошибки
Alpha.AccessPoint
- В редких случаях Alpha.AccessPoint мог завершать работу при запуске.
Модуль истории
- Модуль не предоставлял историю модулю HUB с прямым доступом к истории в составе этого же Alpha.Server.
6.2.4
Исправленные ошибки
HUB
- Параметр Максимальное количество сигналов в пакете не учитывался при подписке на статические сигналы.
TCP Server
- В некоторых случаях модуль прекращал отправку значений клиентам по статическим сигналам.
6.2.3
Улучшение
Alpha.Server
- Оптимизирована обработка результатов вычислений.
Исправленные ошибки
Модуль логики
- Результат вычислений мог не записываться в сигналы при использовании перекладки в транзакционной модели исполнения.
6.2.2
Исправленные ошибки
Alpha.Server
- Alpha.Server завершал работу при запуске, если в конфигурации присутствовал цикл в перекладке значений между сигналами.
NetDiag
- В ОС Linux Alpha.Server прекращал работу при отключении сетевых кабелей от компьютера.
OPC UA Client
- Модуль мог не подключиться к некоторым UA серверам по логину и паролю.
OPC AE Server
- Агрегатор AllAck мог ошибочно иметь значение True при наличии неквитированных событий.
6.2.1
- В Alpha.Server 6.2.1 добавлена функциональность Alpha.Server версий 6.0.28 и 6.1.5 - 6.1.7.
Улучшения
Modbus TCP Master
- Реализована возможность определять выделенный канал для станции, если в конфигурации модуля определены несколько каналов с одинаковым IP-адресом и портом.
Исправленные ошибки
Alpha.Server
- Alpha.Server мог завершать работу при перекладке бит.
- Устранена запись в журнал приложений неинформативных сообщений о работе Alpha.Server.
Modbus RTU Master
- В ОС Linux Alpha.Server завершал работу после резервного перехода при подписке UA клиентом на некорректно настроенный сигнал доставки модуля Modbus RTU Master.
OPC AE Server
- В OAT не сохранялись пользовательские атрибуты и информация о внешнем событии.
- Агрегаторы работали некорректно, если было настроено больше одного фильтра по важности событий.
Alpha.AccessPoint
- Устранены проблемы передачи данных по файловому интерфейсу:
- В ОС Linux могли передаваться не все данные
- В ОС Windows при успешной передаче данных в журнал работы модуля HUB записывались сообщения об ошибках
- При запуске Alpha.AccessPoint от непривилегированного пользователя не передавались данные.
IEC-104 Master
- Ошибочно игнорировались значения, полученные опросом группы.
6.2.0
Новая возможность
-
В Alpha.Server
реализованы массивы.
-
Для создания массива добавьте сигналу свойства:
- PROPERTY_ISARRAY(5003) со значением True
- PROPERTY_INITSIZE(5004) - начальный размер массива
- PROPERTY_CAPACITY(5005) - максимальный размер массива
-
Для сигналов-массивов в Alpha.Server поддержаны:
- перекладка значений массива целиком
- применение битовой маски к каждому элементу массива
- линейный пересчет для каждого элемента массива
- линейный пересчет с изломом для каждого элемента массива
-
Поддержка массивов модулями Alpha.Server
- OPC UA
Узлы-массивы отображаются в адресном пространстве. Для узлов-массивов поддержаны:
- свойства ValueRank и ArrayDimensions
- чтение, запись и публикация с использованием IndexRange
- OPC UA Client
- Возможность подписки на узлы-массивы сторонних UA серверов, чтения их значений целиком и записи полученных значений в узлы-массивы Alpha.Server.
- Возможность подписки на узлы типа BYTESTRING и записи их значений в узлы-массивы типа Uint1[] в Alpha.Server
- Возможность записи значений узлов-массивов из адресного пространства Alpha.Server в сторонние UA серверы, включая запись значений узлов-массивов типа Uint1[] в узлы типа BYTESTRING
- OPC DA Server, HDA Server
- Сигнал-массив кодируется в HEX-строку и предоставляется клиентам в виде сигнала типа String.
- Модуль логики
- Обращение по индексу к сигналам массивам в формулах и процедурах:
Чтение по индексу: Item = Array[i]
Запись по индексу: Array[i] = Item
Использование значений-массивов целиком: Array1 = Array2
- Модуль истории
- Возможность сохранения значений сигналов-массивов в Alpha.Historian.
- SnapShot
- Сохранение и восстановление значений сигналов-массивов из файлов-срезов. Значения массива сохраняются поэлементно через разделитель ;.
Полноценная поддержка массивов в Alpha.DevStudio
, в том числе в вычислениях, планируется в кросс-платформенной версии Alpha.DevStudio 4
Улучшения
Alpha.Server
- Качество буферируемых сигналов теперь восстанавливается при восстановлении связи.
SnapShot
- Для индексов реализованы:
- проверка на уникальность/неуникальность индекса
- возможность индексировать по неуникальным значениям
- запись в файл-срез сигналов по неуникальным индексам
- исключение из файла-среза сигналов по неуникальным индексам
- возможность указывать значение индекса, равное пустой строке
- Теперь если в шаблоне файла-среза указано имя индекса, которое не указано в списке индексов конфигурации модуля, то в журнал приложений выводится предупреждение.
- При указании в шаблоне файла-среза в блоке Exceptions определенного индекса, сигналы с этим индексом не сохраняются в файл-срез.
Modbus TCP Master
- Реализована возможность работы с несколькими станциями с одинаковым номером по разным каналам.
- Реализован обмен данными со шлюзом RTU-TCP, который является станцией Modbus TCP с фиксированным номером 255.
- Добавлена возможность настройки параметров связи отдельно для каждой станции:
- Время ожидания ответа от станции, мс
- Максимальное количество одновременных запросов
- Максимальное количество неуспешных запросов
- Количество повторов на отправку команды
- Таймаут потери связи, мс
- Режим работы резервных каналов
!!!
Изменилась структура конфигурации модуля и состав параметров адреса сигнала.
Дистрибутив Alpha.Server
-
В дистрибутив Alpha.Server добавлены SQL скрипты для создания БД в MS SQL, предназначенные для сохранения истории значений:
history.value.sqlserver2008.sql
;
history.value_archive.sqlserver2008.sql
.
-
Расположение скриптов:
- ОС Windows:
C:\Program Files\Automiq\Alpha.Server\Server\SQLScripts
;
- ОС Linux:
/opt/Automiq/Alpha.Server/SQLScripts
.
-
В дистрибутив Alpha.Server для ОС Linux добавлен пример динамической библиотеки на C# для использования модулем логики. Расположение библиотеки:
/opt/Automiq/Alpha.Server/ExternalLibsExamples/CSharp/Nethost
.
Модуль истории
- Реализовано уменьшение размера файла очереди queue.dat после уменьшения очереди на запись в модуле истории.
Модуль рассылки сообщений SMTP
- Служба Alpha.Server зависала при остановке после отправки сообщения, если в конфигурации модуля были указаны тип подключения STARTTLS и порт 465.
При некорректно заданном порте почтового сервера:
- Alpha.Server прекращал работу после отправки события AE
- возникала ошибка после отправки сообщения через строковый сигнал
IEC-104 Master
- Реализована возможность общего и группового опроса по командам с помощью служебных сигналов.
Добавлены новые значения сигнала доставки:
- 3 - получено положительное подтверждение активации
- 4 - получено положительное завершение активации с причиной передачи 10
- -30 - получено отрицательное подтверждение активации с причиной передачи 7
- -40 - получено отрицательное подтверждение активации с причиной передачи 10
OPC AE Server
- Реализована возможность проводить агрегацию событий по актуальным событиям из ОАТ.
Исправленные ошибки
Alpha.Server
- В транзакционной модели исполнения в некоторых случаях не выполнялись:
- инвертирование логического значения при пересчёте
- пересчёт из инженерного значения в физическое
SnapShot
- Служебные сигналы управления формированием и восстановлением файлов-срезов из стороннего формата ошибочно создавались в папке Service.Modules.<Имя модуля>, вместо папки Service.Modules.<Имя модуля>.Control.
Modbus TCP Master
- При отправке двумя объектами одной и той же команды в ПЛК, статус доставки команды получал только один из объектов.
IEC-61850 Client
- В ОС Linux модуль не восстанавливал соединение после разрыва связи.
6.1
->> перейти к 6.1.0
6.1.10
Исправленные ошибки
HUB
- Модуль ошибочно отправлял команды при нахождении Alpha.Server в состоянии "Резерв".
6.1.9
- В Alpha.Server 6.1.9 добавлена функциональность Alpha.Server версий 6.0.30 и 6.0.31.
Улучшения
Alpha.Server
- Оптимизирована обработка результатов вычислений.
- Исправленные ошибки OPC AE Server
- Устранён рост потребления памяти при использовании поврежденной OAT
- Не деактивировались события по сигналам, полученным по протоколу UNET
Исправленные ошибки
TCP Server
- В некоторых случаях модуль прекращал отправку значений клиентам по статическим сигналам.
6.1.8
Исправленные ошибки
NetDiag
- В ОС Linux Alpha.Server прекращал работу при отключении сетевых кабелей от компьютера.
OPC UA Client
- Модуль не подключался к ПЛК при использовании режима безопасности None и режима авторизации Анонимный.
6.1.7
Исправленные ошибки
Alpha.Server
- В редких случаях при запуске в транзакционной модели исполнения Alpha.Server мог завершать работу при обработке некоторых вычислений.
6.1.6
- В Alpha.Server 6.1.6 добавлена функциональность Alpha.Server 6.0.28.
Исправленные ошибки
EtherNet/IP Scanner
- Alpha.Server завершал работу после остановки модуля через служебный сигнал Active.Set и последующей попытки отправки команды.
6.1.5
- В Alpha.Server 6.1.5 добавлена функциональность Alpha.Server версий 6.0.26 и 6.0.27.
Исправленные ошибки
OPC AE Server
- Агрегаторы работали некорректно, если было настроено больше одного фильтра по важности событий.
OPC UA Client
- Модуль не передавал данные аутентификации при подключении к UA серверу KSE Platform в режиме авторизации Логин/Пароль, из-за чего не выполнялась запись значений в UA сервер.
EtherNet/IP Scanner
- Качество сигналов ошибочно оставалось хорошим после отключения модуля через служебный сигнал Active.Set.
6.1.4
Исправленные ошибки
Modbus RTU Master
- В ОС Linux в редких случаях Alpha.Server прекращал работу во время запуска.
После применения конфигурации для резервной пары модуль Modbus RTU Master активного сервера оставался в режиме РЕЗЕРВ и не подключался к станции.
Alpha.AccessPoint
- Alpha.AccessPoint получал значения служебных сигналов только с одного сервера резервной пары.
6.1.3
- В Alpha.Server 6.1.3 добавлена функциональность Alpha.Server версий 6.0.24 и 6.0.25.
Исправленные ошибки
Alpha.Server
- В транзакционной модели исполнения не выполнялась проверка соответствия типов сигнала Alpha.Server и записываемого в сигнал значения, получаемого по каналу репликации и при восстановлении значения из буфера, что могло приводить к ошибкам в работе Alpha.Server.
OPC AE Server
- После перезапуска Alpha.Server и отсутствия сгенерированных событий служебный сигнал Acknowledged ошибочно принимал значение False, соответствующее неквитированному событию. Из-за чего на мнемосхемах в Alpha.HMI могло ошибочно отображаться наличие неквитированных событий для объектов.
6.1.2
Исправленные ошибки
Modbus RTU Master
- Устранены проблемы с отправкой управляющих воздействий: теперь команды отправляются на заданные станции.
SnapShot
- При генерации файла-среза символы кириллицы стали обрабатываться корректно:
- больше не возникает ошибка при использовании символов кириллицы в названии шаблона файла-среза в служебном сигнале TemplateName;
- не происходит сбой кодировки в имени сгенерированного файла-среза при использовании символов кириллицы в служебном сигнале OutFileName.
Конфигуратор
- В модуле Modbus RTU Master в параметре Стратегия формирования запросов на чтение установленное значение На сплошные данные больше не изменяется на значение По максимуму при загрузке конфигурации, созданной в Alpha.Server версии ниже 6.0.13, что больше не приводит к ошибкам в работе модуля.
Исправленные ошибки
OPC AE Server
- Устранена утечка памяти при работе модуля OPC AE Server.
6.1.1
В Alpha.Server 6.1.1 добавлена функциональность Alpha.Server версий 6.0.11 - 6.0.22.
Улучшения
Важная доработка тракта TCP Server <-> HUB
- Реализована возможность разворота инициации соединения между модулями HUB и TCP Server. Теперь TCP Server может самостоятельно инициировать подключение к модулю HUB. Раньше инициатором соединения мог выступать только модуль HUB, поэтому, если TCP Server находился в подсети, к которой запрещено подключение извне, то было невозможно установить соединение.
Например, эта функциональность позволит использовать сегмент ДМЗ в неактивном режиме, когда старт передачи данных в ДМЗ инициирует связанный с ним промышленный контур, а не сам сервер ДМЗ.
SnapShot
- Реализована возможность выбора шаблона и сохранения файла-среза перед остановкой Alpha.Server или модуля SnapShot.
6.1.0
Новые возможности
- Реализован новый модуль
Syslog Client
, который обеспечивает:
- генерацию сообщений Syslog на основе изменения строкового сигнала Alpha.Server;
- накопление сформированных сообщений Syslog для отправки;
- отправку сообщений Syslog получателям.
BACnet Client
Модуль полностью обновлён. Конфигурации модуля предыдущих версий Alpha.Server не поддерживаются ввиду большого числа изменений.
- Возможности работы с устройствами:
- Настройка каналов связи с устройством
- Повторная отправка запроса, если результат не получен за отведённое время
- Идентификация и отображение связи с устройством или объектом
- Поддержаны все типы связывания с устройством: статическое, динамическое, динамическое через BBMD-устройство
- Возможности получения данных:
- Определение сигналов для выполнения запроса данных или опроса по команде пользователя
- Поддержаны все механизмы получения данных с устройства: запрос, опросп, подписка на изменение значений (с подтверждением и без подтверждения)
- Типы получаемых данных:
- Поддержаны все типы объектов и свойств для получения данных
- Поддержаны все типы данных, в том числе структурные
- Добавлена возможность работы со структурными типами данных или с массивами как с одним сигналом с помощью json-представления
- Возможности записи данных в устройство:
- Запись значения свойства любого объекта: с указанием приоритета, без указания приоритета
- Контроль статуса доставки команды записи значения
- Возможности событий BACnet:
- Получение событий с устройств BACnet с последующим преобразованием:
- в события Альфа платформы для отображения в Alpha.HMI.Alarms
- в сигналы Alpha.Server
- Квитирование событий на устройстве BACnet из:
- Alpha.HMI.Alarms
- сигналов Alpha.Server
- Задание таблицы соответствия приоритетов событий BACnet и Альфа платформы
- Агрегация событий BACnet
- В сети BACnet:
- Реализовано отображение модуля в сети BACnet в соответствии с параметрами, заданными в конфигурации
Улучшения
Модуль рассылки событий
- Модуль теперь называется "Модуль рассылки сообщений SMTP" и позволяет рассылать сообщения по событиям изменения значений строковых сигналов.
IEC-104 Master
- При отсутствии на диске директории, указанной в параметре Полное имя папки для записи файлов, модуль теперь создаёт указанную директорию.
UNET Client
- Поддержано чтение строковых переменных для режима чтения оперативных данных.
Исправленные ошибки
IEC-104 Master
- Alpha.Server завершал работу, если модулю IEC-104 Master было включено получение файлов и отсутствовали подкаталоги для чтения.
Модуль логики
- В ОС AstraLinux не выполнялась процедура обработчика из свойства 777013.
Внутренние изменения
Alpha.Server
- Alpha.Server переведён на внутренний протокол взаимодействия Alpha.RTLP.
OPC UA Client
- Сокращено число потоков обслуживающих сессию.
TCP Server
- Поддержан новый набор команд для получения информации о дереве сигналов.
6.0
->> перейти к 6.0.12
6.0.31
Исправленные ошибки
OPC AE Server
- Не деактивировались события по сигналам, полученным по протоколу UNET.
TCP Server
- В некоторых случаях модуль прекращал отправку значений клиентам по статическим сигналам.
6.0.30
Улучшение
Alpha.Server
- Оптимизирована обработка результатов вычислений.
Исправленные ошибки
OPC AE Server
- Устранён рост потребления памяти при использовании поврежденной OAT.
6.0.29
Исправленные ошибки
NetDiag
- В ОС Linux Alpha.Server прекращал работу при обрыве связи с ПЛК.
OPC UA Client
- Модуль не подключался к ПЛК при использовании режима безопасности None и режима авторизации Анонимный.
6.0.28
Исправленные ошибки
UNET Client
- Alpha.Server завершал работу, если на диске было недостаточно места при сохранении в файл времени последних успешно полученных данных.
6.0.27
Улучшение
Alpha.Server
- Реализована возможность отключения автоматического создания резервной копии конфигурации Alpha.Server.
- Чтобы отключить автоматическое создание резервной копии конфигурации, в файле настроек сервера *.xml в элементе удалите атрибут Time.
Исправленные ошибки
IEC-101 Master
- Параметр Количество повторов запроса данных ошибочно использовался при определении состояния связи со станцией.
6.0.26
Улучшение
UNET Client
- Добавлены служебные сигналы, позволяющие для каждого устройства отслеживать:
- процент загрузки планировщика задач
- объем отправленных и полученных данных
- с указанием метки времени, от которой начат отсчёт
- возможностью сброса счётчика
- возможностью задавать минимальный период обновления счётчика
Исправленные ошибки
Модуль истории
- При пустом интервале запроса не удавалось получить граничные значения из БД PostgreSQL, из-за чего в Alpha.HMI.Trends не строились графики.
6.0.25
Исправленные ошибки
Siemens S7 Client
- Иногда Alpha.Server завершал работу при отправке исходящего значения.
- Иногда значение входящего сигнала Alpha.Server не соответствовало значению сигнала в ПЛК.
SQL Connector
- Не выполнялись динамически формируемые SQL-запросы вида
SELECT * FROM table WHERE table.time > ?
, сравнивающие столбец типа datetime и параметр запроса типа string.
6.0.24
Исправленные ошибки
Alpha.AccessPoint
- Alpha.AccessPoint зависал при инициализации модуля HUB.
6.0.23
В Alpha.Server6.0.23 добавлены исправления известных проблем Alpha.Server 6.1.1.
Исправленные ошибки
Модуль истории
- Не удавалось получить историю событий из БД PostgreSQL при большом количестве событий в запрашиваемом интервале.
Дистрибутив
- Для ОС Windows и Linux различался срок действия сертификатов, генерируемых при установке Alpha.Server.
- В ОС Linux в генерируемом при установке Alpha.Server сертификате OPC UA Client отсутствовал ApplicationURI.
6.0.22
Исправленные ошибки
Alpha.Server
- Alpha.Server аварийно завершал работу, если имя сигнала начиналось или заканчивалось пробелом.
Alpha.AccessPoint
- Иногда при успешном подключении к Alpha.Server канал подключения оставался неактивным.
6.0.21
Исправленные ошибки
OPC UA Client
- Alpha.Server зависал при инициализации модуля, если сертификат модуля был недействительным.
6.0.20
Улучшение
IEC-101 Master
- Реализована возможность получения архивных данных ПЛК. Настройка получения архивных данных ПЛК выполняется аналогично настройке в модуле IEC-104 Master.
Исправленные ошибки
Modbus TCP Master
- В Конфигураторе было невозможно задать категорию данных в редакторе адреса.
6.0.19
Улучшения
- Устранена проблема, которая могла приводить к нарушению целостности в файлах данных Alpha.Server после некорректного завершения работы службы. Исправление затрагивает модули:
- Модуль истории;
- OPC AE Server при использовании OAT
- TCP Server при использовании файловой буферизации
!!!
Рекомендуется обновление.
IEC-101 Master
- Реализованы служебные сигналы, отображающие количество отправленных и принятых пакетов.
Исправленные ошибки
IEC-101 Master
Модуль не учитывал, что при общем опросе значения типа <231> M_IT_TD_1 приходят в виде значений типа <230> M_IT_ND_1, и игнорировал такие значения.
6.0.18
Исправленные ошибки
Модуль логики
- Иногда Alpha.Server мог аварийно завершать работу.
6.0.17
Улучшения
IEC-101 Master
- Реализована возможность общего и группового опроса по командам с помощью служебных сигналов.
- Реализована возможность обмена данными по TCP/IP, при этом Alpha.Server выступает в роли ПУ (в соответствии с ГОСТ Р МЭК 60870-5-101).
6.0.16
Улучшения
Modbus TCP Master
- Реализована возможность работы с несколькими станциями с одинаковым номером по разным каналам.
- Реализован обмен данными со шлюзом RTU-TCP, который является станцией Modbus TCP с фиксированным номером 255.
- Добавлена возможность настройки параметров связи отдельно для каждой станции:
- Время ожидания ответа от станции, мс
- Максимальное количество одновременных запросов
- Максимальное количество неуспешных запросов
- Количество повторов на отправку команды
- Таймаут потери связи, мс
- Режим работы резервных каналов
!!!
Изменилась структура конфигурации модуля и состав параметров адреса сигнала.
Исправленные ошибки
EtherNet/IP Scanner
- Иногда в ОС Astra Linux Alpha.Server мог долго останавливаться.
6.0.15
Исправленные ошибки
Подсистема резервирования
- Устранена ошибка, из-за которой в момент резервного перехода со слэйва могла пройти пересылка значений, накопленных во время работы в режиме аварийного мастера.
OPC AE Server
- В событиях вместо заданного пользовательского атрибута ошибочно указывался атрибут, используемый по умолчанию.
TCP Server
- Устранена утечка памяти в случае разрыва связи с клиентом, подключающимся к порту доступа к истории, в процессе инициализации соединения.
EtherNet/IP Scanner
- Модуль мог несвоевременно запрашивать данные.
6.0.14
Исправленные ошибки
Alpha.Server
- В ОС Linux в крайне редких случаях Alpha.Server мог прекращать работу после очистки старых журналов работы модулей.
- В редких случаях при одновременном соблюдении условий:
- в модуле OPC AE Server было включено расширение OPC AE
- Alpha.Server был запущен в транзакционной модели исполнения
- произошла деактивация динамического условия
- использовалось резервирование серверов
Alpha.Server мог прекращать работу в ходе синхронизации состояний (репликации) парных серверов.
6.0.13
Улучшение
Modbus RTU Master
- Реализована возможность опроса через коммутатор Ethernet/SerialLine устройств последовательной линии.
Исправленные ошибки
OPC UA
- В OC Linux при запуске модуля Alpha.Server прекращал работу при большом количестве опрашиваемых станций Modbus TCP.
6.0.12
Новые возможности
Modbus TCP Master
- Поддержаны новые возможности обмена данными с ПЛК Эмикон:
- запрос до 719 регистров Input Registers
- обмен строковыми значениями длиной до 1438 символов
- обмен строковыми значениями в кодировке UTF-16
Modbus TCP Slave
- Поддержан обмен строковыми значениями в кодировке UTF-16.
Улучшение
Подсистема резервирования
- Улучшен алгоритм инициализации репликации данных при выходе из нештатного состояния серверов.
Alpha.Historian. История изменений
^ [3.7.1 --> 4.0.2]
4.0.2
Основные изменения
- Теперь не требуется отключать кеширование прав доступа в настройках Агента Alpha.Security (параметр UseRightsCacheStorage): сервер Alpha.Historian будет получать обновления политик настроек независимо от значения этого флага.
Это изменение позволяет исключить возможные конфликты с другими компонентами, для работы которых требуется кеширование прав доступа.
- Исправлено: При заполнении диска X.DbCore.Log мог не возобновлять запись после появления свободного места. Исправление актуально для следующих компонентов и их функционирования:
- в Alpha.Historian: работа баз данных формата 4x.
- в Alpha.Server ( для разработчиков: требуется обновить зависимость от X.Historian в X.Server ):
- файловые очереди модуля истории
- файловые буферы
- OAT (Operative Alarm Table) в модуле OPC AE Server
Улучшения
- После миграции конфигурации в домашней папке теперь создаются файлы определения и настроек работы сервера Alpha.Historian с параметрами по умолчанию.
Поведение сервера Alpha.Historian при этом не изменилось: он, как и раньше, запускается с параметрами по умолчанию, только теперь загружает их из файлов конфигурации.
- Предупреждение об отсутствии лицензии в журналы Linux выводилось как [blob data].
- Улучшен вывод в журналы Linux: устранены дубликаты сообщений.
Исправления
- Исправлено: подключение клиента, выполняющего запись/чтение данных истории (основной API по порту 4949), к порту устаревшей статистики 3388 могло привести к аварийному завершению.
- Исправлено: при миграции конфигурации формата 3.x, в конфигурацию добавлялся параметр exceptions/panic_mode, не предназначенный для штатного использования.
4.0.1
Исправления
- Устранена причина избыточной нагрузки сервера истории на процессор в ОС Windows.
4.0.0
Новое. Добавлен новый формат баз данных: 4x
Базы данных формата 4x:
- Позволяют сохранять данные с любой меткой времени (записи, пришедшие с нарушением хронологического порядка, всё равно будут сохранены).
- Имеют улучшенные характеристики:
- Повышена производительность дисковых операций
- Значительно повышена эффективность кластеризации данных на диске, и, как следствие, повышена эффективность чтения
- Потребление оперативной памяти не зависит от числа источников и в целом уменьшено
- Более компактное хранение несжатых данных на диске
- Сохранение данных возможно по значительно большему числу элементов с меньшим объёмом накладных расходов
- Значительно ускорен запуск баз данных в работу
- Позволяют получать текущие метрики:
- Количество сохранённых данных
- Объём сохранённых данных
- В полном объёме поддерживают все новые механизмы сервера истории.
!!!
Поддержка баз данных прежнего формата (3x) полностью сохранена. При установке новой версии Alpha.Historian они продолжат работу с имеющимися настройками.
Новое. Реализован новый подход к хранению конфигурации сервера
Ключевые изменения:
- Конфигурация хранится отдельно вне папки установки, в домашней папке, которая может быть размещена в любом удобном месте.
- Настройки сервера и баз данных хранятся отдельно в соответствующих файлах.
Новый подход позволяет упростить:
- Развёртывание с учётом требований информационной безопасности: запуск от имени специальной учётной записи с соответствующими правами доступа к домашней папке.
- Использование контейнеризации: передача пути к домашней папке при запуске сервера.
- Изменение отдельных настроек, манипуляции с базами данных (создание, приостановку/возобновление работы, удаление).
- Автоматизацию работы с настройками.
Реализованы возможности:
- Применять изменения настроек без перезапуска сервера.
- Получать изменения настроек из разных источников (см. ниже о централизованном хранении политик настроек).
Вместе с дистрибутивом устанавливается шаблоная домашняя папка (server_home_template в папке установки) с примерами файлов конфигурации и краткой справкой по устройству конфигурации.
Обратите внимание. Если на компьютере ранее был установлен Alpha.Historian предыдущего поколения (версия < 4.0, в том числе специализированные сборки 3.7), то при первом запуске (сразу после установки) автоматически будет выполнена миграция его настроек:
- Все настройки сервера истории и его баз данных будут скопированы из xml-конфигурации в конфигурацию нового формата.
- Сервер истории и базы данных запустятся и будут работать в том же режиме и с теми же параметрами, с которыми они работали до переустановки Alpha.Historian.
Новое. Добавлен механизм централизованного хранения политик настроек
Политики настроек хранятся в LDAP-хранилище Alpha.Security.
Новый механизм позволяет:
- Централизованно хранить и редактировать настройки для нескольких экземпляров Alpha.Historian.
- Автоматически распространять и применять обновления настроек к экземплярам Alpha.Historian без перезапуска.
Новое. Добавлен интерфейс мониторинга
Интерфейс мониторинга - новый механизм получения диагностической информации и статистики, является заменой для предыдущего интерфейса статистики (признан устаревшим).
Интерфейс мониторинга позволяет:
- Получать информацию о сервере истории и базах данных в виде дерева сигналов.
Как следствие - информацию можно:
- Выводить на мнемосхемы и другие средства просмотра – Alpha.HMI, Alpha.HMI.Explorer, Alpha.HMI.Trends
- Использовать в вычислениях – Alpha.Om
- Получить полную информацию о внутренних процессах работы с базой данных (для баз данных 4x).
- Формировать пользовательские запросы с помощью JSON API для получения дополнительной информации и передачи некоторых команд управления.
Новое. Добавлен интерфейс командной строки
С его помощью можно:
- Собирать статистику.
- Получать состояние конфигурации сервера истории и баз данных.
- Загружать изменения конфигурации без перезагрузки.
Новое. Добавлены индивидуальные пулы буферов для баз данных 3x
Для баз данных прежнего формата 3x добавлена возможность использовать индивидуальные пулы буферов вместо общего пула буферов.
Использование индивидуальных пулов буферов позволяет исключить взаимное влияние баз данных, в частности, предотвратить проблемы с недостатком пула буферов при параллельном использовании баз данных.
Обратите внимание. После переустановки Alpha.Historian рекомендуем перевести уже существующие базы данных на использование индивидуальных пулов буферов.
Улучшения
Улучшена скорость обработки параллельных запросов по TCP:
- Добавлен механизм фонового асинхронного выполнения запросов (ограничение: только для баз данных формата 4x).
- Улучшен механизм параллелизации выполнения запросов.
Настройки механизмов можно конфигурировать.
Устаревшая функциональность
Отмечены устаревшими и будут удалены в последующих версиях:
- Предыдущий интерфейс статистики, позволявший просматривать статистику в приложениях Alpha.Statistics и Alpha.HMI.Statistics.
- DCOM-интерфейс (сохранение и предоставление данных по OPC HDA).
3.7.4
Изменения
- Внутренние изменения. Функциональность компонента не менялась.
3.7.3
Исправленные ошибки
- Устранена утечка памяти, если связь с клиентом прерывается в процессе инициализации соединения.
Alpha.Domain. История изменений
^ [1.4.6 --> 1.4.12]
1.4.12
Исправление
- При использовании Alpha.DevStudio 3.28.1 и новее конфигурация не применялась к Alpha.Server из-за ошибок Alpha.Domain.
1.4.11
Исправления
- Устранена причина, по которой возникала ошибка применения конфигурации, разработанной в Alpha.DevStudio, размером более 4.3 GB
1.4.9
Улучшение
- Неинформативный текст ошибки «Не установлена связь с узлом сети ‘parent’» заменен на «Не установлена связь с узлом сети ‘Центральный узел сети’».
1.4.8
Улучшение
- Теперь установка Alpha.Domain не приводит к изменению системных файлов ОС Linux dbus.service и dbus.socket, расположенных в /usr/lib/systemd/user. Вместе с тем изменился порядок запуска сервисов alpha.domain.service и alpha.net.service от имени непривилегированного пользователя.
Исправления
- Устранена причина появления ненужного сообщения об ошибке при развертывании конфигурации Alpha.DevStudio на экземпляр сервера, у которого отсутствует файл конфигурации *.cfg.
- Исправлено поведение, приводившее к аварийному завершению работы Alpha.DevStudio после развертывания конфигурации на АРМ с некорректными настройками системного времени.
1.4.7
Улучшение
- В конфигурационные файлы *.xml возвращены атрибуты для настройки портов. Ранее атрибуты со значениями по умолчанию были указаны в неявном виде.
Исправления
- Устранена причина, по которой становилась невозможной передача (разливка) конфигурации, разработанной в Alpha.DevStudio, после разрыва и последующего восстановления соединения между родительским и дочерним узлом.
- Устранена причина потери связи Security-агента с Net-агентом при принудительном завершении работы Alpha.HMI.
^
Alpha.Security. История изменений
^ [1.7.7 --> 1.7.23]
1.7.23
Улучшения
- В файле с текстами сообщений аудита:
- добавлен новый тег "arm.IP (N)", где N - порядковый номер интерфейса
- добавлено новое сообщение о неудачной попытке удаления учетной записи
- теперь можно использовать тег отображаемого имени в шаблонах "AUDIT_USER_FAILED_LOGIN" и "AUDIT_USER_DISABLED_TEMP"
- [только для SambaDC] В конфигурационный файл агента безопасности добавлен атрибут OSAutoLogin элемента Options, позволяющий настроить автоматический вход системного пользователя в подсистему безопасности.
Исправления
- В сообщениях аудита, связанных с проверкой целостности, не отображалась группа пользователя.
- Исправлен неинформативный текст ошибки, возникающей при неудачной попытке подключения к LDAP-серверу.
- Устранена причина, по которой права, назначенные пользователю, группе или роли, пропадали при изменении их значений на те же самые.
- Устранена причина, по которой новой учетной записи в процессе ее создания невозможно было назначить роль.
- Исправлен автоматический выход текущего пользователя при смене LDAP-сервера на резервирующий.
1.7.22
Изменения
- Устранены ошибки совместимости Alpha.Security отозванных версий 1.7.20 и 1.7.21 с другими компонентами Альфа Платформы.
- Теперь при создании учетной записи администратора помимо права "Редактирование конфигурации (ConfigurationAccess)" добавляется право "Интерактивный вход (InteractiveLogon)".
!!!
Обратите внимание, что при переходе к данной версии рекомендуется всем администраторам, чьи учетные записи созданы в более ранних версиях, добавить право "Интерактивный вход (InteractiveLogon)" со значением true.
Учтены доработки Alpha.Security 1.7.20
Новые возможности
- Добавлены новые права стандартного приложения Alpha.Security:
- Запрещено удалять пользователя если есть активная сессия (NonDeletableWhileActive). Используйте его, чтобы установить запрет на удаление активного пользователя
- Только одна пользовательская сессия (ActivityLimitedToOneWorkstationOnly). Используйте его, чтобы пользователь мог быть активен не более чем на одном АРМ
- Принудительное завершение текущей пользовательской сессии при повторном входе (ForceStopOldUserSessionOnNewLogin). Если для пользователя установлено ограничение правом Только одна пользовательская сессия (ActivityLimitedToOneWorkstationOnly), то это право можно использовать для принудительного завершения активной сессии пользователя, если он выполняет вход на новом АРМ
- Теперь можно отключить проверку целостности, выполняемую при запуске агента безопасности. Для этого следует в файле alpha.security.ic.xml изменить значение нового атрибута ICCheckOnAgentStartUp элемента Options:
- false – для отключения первоначальной проверки целостности
- true – для включения первоначальной проверки целостности
Исправления
- Устранена причина, по которой не могли выполнять вход пользователи, учетные записи которых были импортированы из Active Directory и имели кириллические имена.
- Исправлена ошибка отображения имени текущего пользователя в сообщении аудита AUDIT_USER_LOGON.
- Агент безопасности теперь сообщает об ошибке при загрузке конфигурации неподходящего формата. Ранее агент безопасности в таких случаях аварийно завершал работу.
- Устранена причина, по которой заблокированный администратором пользователь разблокировался, если истекала длительность его блокировки из-за неудачных попыток входа.
- Решена проблема запуска агента безопасности на Astra Linux Orel: понижены требования к версии glibc.
1.7.20
Новые возможности
- Добавлены новые права стандартного приложения Alpha.Security:
- Запрещено удалять пользователя если есть активная сессия (NonDeletableWhileActive). Используйте его, чтобы установить запрет на удаление активного пользователя
- Только одна пользовательская сессия (ActivityLimitedToOneWorkstationOnly). Используйте его, чтобы пользователь мог быть активен не более чем на одном АРМ
- Принудительное завершение текущей пользовательской сессии при повторном входе (ForceStopOldUserSessionOnNewLogin). Если для пользователя установлено ограничение правом Только одна пользовательская сессия (ActivityLimitedToOneWorkstationOnly), то это право можно использовать для принудительного завершения активной сессии пользователя, если он выполняет вход на новом АРМ
- Теперь можно отключить проверку целостности, выполняемую при запуске агента безопасности. Для этого следует в файле alpha.security.ic.xml изменить значение нового атрибута ICCheckOnAgentStartUp элемента Options:
- false – для отключения первоначальной проверки целостности
- true – для включения первоначальной проверки целостности
Исправления
- Устранена причина, по которой не могли выполнять вход пользователи, учетные записи которых были импортированы из Active Directory и имели кириллические имена.
- Исправлена ошибка отображения имени текущего пользователя в сообщении аудита AUDIT_USER_LOGON.
- Агент безопасности теперь сообщает об ошибке при загрузке конфигурации неподходящего формата. Ранее агент безопасности в таких случаях аварийно завершал работу.
- Устранена причина, по которой заблокированный администратором пользователь разблокировался, если истекала длительность его блокировки из-за неудачных попыток входа.
- Решена проблема запуска агента безопасности на Astra Linux Orel: понижены требования к версии glibc.
1.7.19
Исправление
- Устранена причина, по которой не удавалось сменить пароль пользователя, выполняющего вход, если ужесточилась парольная политика, а предыдущий пароль менялся менее двух дней назад. Теперь значение права "Минимальный срок действия пароля" не учитывается, если пароль требуется обновить из-за несоответствия новым парольным политикам.
1.7.18
Исправления
- [ОС AstraLinux, Alpha.HMI.SecurityConfigurator] Устранена причина, по которой после добавления текущего пользователя в группу с правами на просмотр и редактирование конфигурации было невозможно произвести вход ни под одним пользователем, состоящим в этой группе.
- Устранена причина, по которой агент безопасности не предоставлял сообщение об ошибке, если при попытке входа пользователем был указан неверный пароль.
1.7.17
Улучшение
- В файле alpha.security.agent.json расширен перечень регистрируемых событий, для которых могут быть отправлены сообщения аудита безопасности.
Исправление
- Устранена критичная ошибка версии 1.7.16, из-за которой служба Alpha.Security.Agent прекращала работу при попытке добавить, удалить или изменить право или роль приложения.
1.7.14
Улучшения
- Появилась возможность исключать логин пользователя из запрашиваемого списка пользователей. Для этого следует:
- Запретить пользователю интерактивный вход, назначив право "Интерактивный вход" со значением false
- В конфигурационном файле агента безопасности установить в качестве значения атрибута ReducedUserList элемента значение "1"
Так, например, в окне входа в конфигураторе логин такого пользователя не отобразится в выпадающем списке пользователей.
- Теперь при ручном запуске проверки целостности на удаленном компьютере в локальный журнал приходит только одно сообщение аудита о запуске проверки. Ранее приходило два одинаковых сообщения - от удаленного и от локального агентов безопасности.
Исправление
- Устранена причина, по которой при создании эталона на удаленном компьютере в локальном журнале отображалось сообщение о создании эталона с неправильным именем пользователя, создавшего эталон.
1.7.10
Улучшение
- В файл alpha.security.agent.json добавлен новый шаблон сообщения, уведомляющего о добавлении роли пользователю.
Исправления
- Устранена причина циклической перезагрузки агента безопасности, возникавшей после удаления у текущего пользователя прав доступа к папке, целостность которой контролировалась агентом.
- Теперь при авторизации пользователя после изменения парольных политик всегда требуется сменить пароль.
1.7.9
Новая возможность
- Реализована возможность указывать событиям аудита звук и необходимость квитирования. Для этого обновлены конфигурационные файлы:
- В файле alpha.security.agent.xml для карты важности событий SeverityMap звук указывается в качестве значения нового атрибута Sound
- В файле alpha.security.agent.json для каждого шаблона сообщения звук и необходимость квитирования указываются в качестве значений параметров sound и ackrequired соответсвенно
Улучшение
- В файле alpha.security.agent.json обновлен шаблон сообщения аудита AUDIT_IC_CREATE_ETHALON2, уведомляющего о создании эталона.
Исправления
- Исправлена ошибка, из-за которой для пользователя не обновлялось количество паролей в истории при переводе его из группы с назначенным правом "Количество паролей в истории" в группу без такого права.
- Устранена причина, по которой Агент Alpha.Security не мог подписаться на сигналы для генерации сообщений аудита после перезагрузки АРМ.
Alpha.Licensing.Agent. История изменений
^
1.12.15
Новые возможности
- Поддержано лицензирование новых модулей:
- MDLC;
- GenericDeviceComm (вместо модуля DCON).
Alpha.HMI, Alpha.HMI.WebViewer. История изменений
^ [2.0.7 --> 2.0.27]
2.0.27
Новые возможности
Компоненты
- Добавлен компонент Уведомление для вывода уведомлений в ОС.
Alpha.HMI.Designer
- Добавлена возможность перехода к файлам и папкам проекта и отдельных его элементов.
- В области "Ошибки" добавлена возможность перехода ко всем неиспользуемым типам в проекте.
Alpha.HMI.WebViewer
- Добавлена возможность восстановления сессии и продолжения работы после кратковременного разрыва связи между бэк-эндом и браузером. Добавлена настройка тайм-аута удержания сессии на время отсутствия связи, в течение которого возможно восстановление сессии.
Улучшения
Alpha.HMI
- В формат представления даты/времени в рамках функции DateTime.ToString добавлена поддержка миллисекунд.
- В лэйауте создаваемых объектов реализовано выравнивание тел экземпляров и дескрипторов элементов массивов.
Alpha.HMI.Designer
- В области "Ошибки" расширена поддержка фильтрации. Теперь доступна фильтрация по тексту и отдельным типам/категориям ошибок и предупреждений.
- В области "Библиотека компонентов" обеспечена устойчивость порядка элементов при копировании.
- Для глобальных объектов отключено действие "Показать активную вкладку в рантайме".
- Добавлена иконка для компонента Запрос значений сигналов AP.
Alpha.HMI.WebViewer
- Поддержана работа компонента Перемещение.
- Смена фокуса через нажатие Tab теперь происходит в соответствии с расположением элементов в DOM как в десктопной версии. Форма более не принимает фокус по нажатию Tab как в десктопной версии.
Исправленные ошибки
Компоненты
Исправлено аварийное завершение программы из-за ошибок в компоненте Запрос значений сигналов AP.
Alpha.HMI
- [Linux] Исправлено аварийное завершение программы из-за попытки захвата невыровненного мьютекса.
- Исправлена ошибка медленного разрушения экземпляров Alpha.TcpTransport, приводившая к подвисаниям в работе Alpha.HMI.
- В рамках компонента Перемещение наличие вызова DoDragDrop в обработчике TouchPress нарушало корректную работу DoDragDrop в обработчике MousePress.
- Компонент Индикатор прогресса более не может принимать фокус как в веб версии.
Alpha.HMI.Designer
- Не восстанавливался режим сортировки в области "Структура объекта".
Alpha.HMI.WebViewer
- Для компонентов Кнопка и Системная кнопка при "долгом" клике не срабатывало событие ButtonPressed.
- Исправлены различия в поведении компонента Звук по сравнению с десктопной версией при изменении значения свойства Active в состоянии ошибки.
- События касаний (touch) срабатывали при нажатии кнопок мыши на устройствах без touch интерфейса.
- Свойство PointsCount класса TouchEvent всегда возвращало 0.
- Некорректно работал скроллинг в компоненте Редактор текста при наличии вертикальной прокрутки у формы.
- При скроллинге в неактивном экземпляре компонента Редактор текста прокрутка происходила в самый конец редактора.
2.0.26
Улучшения
Alpha.HMI.Designer
- В областях "Обзор" и "Контрольные значения" для всех объектов теперь отображаются актуальные иконки.
- В области "Структура объекта" в контекстное меню для глобальных объектов добавлено действие "Скомпилировать".
Alpha.HMI.WebViewer
- Переработан механизм генерации JavaScript кода для типов и вложенных объектов. Для типов реализована генерация классов экземпляров по умолчанию.
Исправленные ошибки
Компоненты
В некоторых случаях при двойном клике по графическому объекту не срабатывало второе по счёту событие MousePress.
Alpha.HMI.Designer
- В некоторых случаях отмена действия удаления объекта через историю изменений приводила к некорректному порядку объектов.
- Исправлена ошибка, из-за которой новые функции с действием "Открыть ..." создавались некорректно.
Alpha.HMI.WebViewer
- Исправлена ошибка, из-за которой создавались лишние экземпляры переопределённых вложенных объектов.
- Графические объекты в редких случаях могли позиционироваться некорректно из-за несвоевременного пересчёта точки трансформации после изменения размеров графического объекта.
2.0.25
Улучшения
Компоненты
В компонент Окружение: система добавлена поддержка последних версий ОС Windows.
Alpha.HMI.Designer
- В подсказки автодополнения редактора кода добавлено отображение информации о ссылочности параметров функций.
- В контекстном меню областей "Обзор" и "Контрольные значения" теперь доступны действия "Найти ..." для поиска объектов.
- В редакторе функции и обработчика события в рамках действий "Открыть ..." добавлена возможность сохранения предопределённых, начальных и вычисляемых значений при смене формы.
- В области мнемосхемы при вставке графического объекта смещение копии теперь происходит на величину, заданную настройкой "Шаг перемещения объекта".
- В режиме привязки к сетке перемещение и изменение размеров графических объектов с зажатой клавишей Shift теперь производится на количество клеток сетки, заданное настройками "Шаг перемещения объекта" и "Шаг изменения размера объекта".
- В редакторе вызова внешней функции в пути к модулю теперь можно использовать переменные среды и подстановочные переменные Alpha.HMI.
- В области "Свойства" диапазон допустимых значений для свойства Z-значение (ZValue) ограничен положительными значениями.
- Переработана область "Структура объекта", улучшена работа двойного клика по элементам.
Alpha.HMI.WebViewer
- Фраза "код ошибки" в сообщениях журнала приложений переименована в "код ошибки сокета" для большей ясности.
- Поведение компонента Ползунок при использовании горячих клавиш и скролла приведено к desktop версии.
Исправленные ошибки
Компоненты
- В компоненте Учётные данные AP исправлена ошибка, приводившая к аварийному завершению программы при использовании длинной строки в методе SetPassword.
- Исправлена ошибка, из-за которой не срабатывало второе событие MouseClick у графических компонентов при двойном клике и быстром уводе курсора за пределы графического компонента.
- Исправлена ошибка, из-за которой не срабатывало второе событие ButtonPressed у компонента Кнопка при двойном клике и быстром уводе курсора за пределы кнопки.
- В компоненте Источник AP исправлена ошибка, из-за которой не загружались граничные значения при запросе исторических данных.
Alpha.HMI.Designer
Исправлены ошибки, приводившие к аварийному завершению программы:
- При отпускании левой кнопки мыши над удалённым графическим объектом в области мнемосхемы.
- При drag-n-drop'е между категориями в области "Структура объекта".
- При открытии редактора пути ресурса в области "Структура объекта".
Alpha.HMI.WebViewer
- У компонента Ползунок с вертикальной ориентацией значения были инвертированы.
- Исправлена ошибка в компоненте Дерево, возникавшая при установке свойства Текущий элемент (CurrentItem) сразу после добавления данных.
- Свойство Ориентация (Orientation) компонента Полоса прокрутки могло принимать некорректное значение.
2.0.24
Новые возможности
Компоненты
- Добавлен компонент Окружение: запрос системного журнала для получения записей системного журнала.
- Компоненту Дерево добавлено свойство Поведение выделения (SelectionBehavior), позволяющее управлять визуализацией выделения.
- Добавлен компонент Запрос значений сигналов AP для выполнения запросов значений сигналов с возможностью указания параметров запроса.
- Семейству компонентов Элемент AP добавлены:
- Методы:
- GetHistorySources для получения списка источников исторических данных сигнала
- GetCustomProperties для получения значения пользовательских свойств сигнала
- Свойства:
- CustomInfo - пользовательское поле
- IsWritable - флаг доступа к изменению данных
- IsEventSource - флаг источника событий
- События:
- OnCustomInfoChanged, срабатывающее при изменении значения пользовательского поля
- OnIsWritableChanged, срабатывающее при изменении флага доступа к изменению данных
- OnIsEventSourceChanged, срабатывающее при изменении флага источника событий
- OnGetHistorySourcesFinished, срабатывающее при завершении получения списка источников исторических данных сигнала
- OnGetCustomPropertiesFinished, срабатывающее при завершении выполнения запроса пользовательских свойств сигнала
Alpha.HMI
- Улучшены механизмы обнаружения среды выполнения .NET.
- Систематизировано использование наименований ".NET Framework" и ".NET".
- [Linux] Реализован общий механизм периодического принудительного возврата освобождённой памяти в ОС через вызов malloc_trim.
Alpha.HMI.Designer
- Добавлены иконки для категорий в области "Структура объекта".
- Добавлена иконка для компонента Размеры страницы.
- Добавлена иконка для компонента Буфер обмена.
- Добавлена иконка для компонента Запрос системного журнала.
Исправленные ошибки
Компоненты
- Исправлена ошибка в компоненте Звук в редких случаях приводившая к зависанию.
- Исправлены ошибки в компоненте Браузер источника AP, из-за которых в некоторых случаях некорректно работал метод Browse.
Alpha.HMI
[Linux] Исправлена ошибка, из-за которой не сворачивались окна с автоподбором размера.
Alpha.HMI.Designer
- Исправлена работа фильтра в области "Структура объекта" с заранее введённым значением фильтра.
- Исправлена ошибка, из-за которой индикатор главной формы в области "Библиотека компонентов" мог обновляться несвоевременно.
- В результате действия "Сохранить проект" могли измениться внешние модули без подтверждения пользователя.
- Фильтры в областях "Библиотека компонентов", "Структура объекта", "Свойства" и "События" сразу после создания нового проекта могли работать некорректно.
- Исправлены ошибки, приводившие к аварийному завершению программы:
- При наличии в типе ссылок внутрь удаляемого глобального объекта
- При фильтрации и сортировке в области "Результаты поиска" из-за наличия "подвисших" результатов
Alpha.HMI.WebViewer
- Исправлена ошибка, из-за которой не закрывались формы, открытые в окне от формы, открытой во фрейме.
- Исправлена ошибка, из-за которой не работало создание массивов глобальных объектов.
2.0.23
Новые возможности
Alpha.HMI
Добавлена возможность принудительного закрытия форм через действие "Закрыть" контекстного меню области "Обзор".
Исправленные ошибки
Компоненты
- В компоненте Запрос алармов:
- Ускорена работа фильтрации
- Исправлено подвисание, происходившее при завершении работы компонента в момент активной фильтрации
- Исправлена ошибка "Отсутствует соединение с базой данных", возникавшая при запросах истории.
- Исправлена ошибка, из-за которой в редких случаях не подписывались и не получали значения сигналы.
2.0.22
Новые возможности
Компоненты
- Добавлен компонент Буфер обмена, позволяющий записывать данные в буфер обмена ОС.
- Компоненту Принтер добавлена возможность задания размеров страницы печати. Для этого добавлен тип Размеры страницы, на экземпляр которого нужно сослаться из экземпляра типа Принтер.
- Компоненту Источник AP добавлены свойства CurrentLocation, CurrentPort, CurrentHistoryPort, отражающие фактические используемые для подключения значения хоста, порта и порта истории.
- В рамках компонента Запрос алармов поддержано раскрытие ссылок при фильтрации исторических событий по источнику.
Alpha.HMI
- Поддержана воспроизводимость сборки для файла скомпилированного юнита .ni.binom.
- В области "Свойства" добавлена иконка для псевдо-свойства Идентификатор.
- Графическим компонентам добавлено событие Прокрутка (Wheel). Событие срабатывает когда курсор наведён на элемент и одновременно выполняется прокрутка любым из способов (колёсиком мыши, через виртуальный скролл тач-пада и т.д.).
- В контекстные меню областей "Библиотека компонентов", "Открытые вкладки" и панель вкладок добавлено действие "Перейти к главной форме" для быстрого перехода к главной форме.
- В контекстное меню области "Библиотека компонентов" добавлено действие "Перейти к главной форме внешнего модуля" для быстрого перехода к главной форме внешнего модуля.
- В области "Свойства" для выделенного поля, ссылки и параметра инициализации добавлена возможность редактирования значений "по месту".
Alpha.HMI.Viewer
Обновлён сплеш-скрин визуализатора.
Исправленные ошибки
Компоненты
В рамках компонента Запрос алармов исправлена ошибка, приводившая к неограниченному накапливанию событий и росту потребления памяти.
Alpha.HMI
- Исправлены ошибки, приводившие к аварийному завершению программы:
- При переходе из области "Ошибки" по ошибке/предупреждению, связанной с юнитом
- При логировании ошибки/предупреждения, связанной с юнитом
- При компиляции рекурсивного типа
- В редакторе кода исправлена неправильная подсветка строк с ошибками при активной опции "Перенос по словам".
- Исправлена ошибка, из-за которой в инициализаторах некорректно работали функциональные вызовы после обращения по индексу.
- В области "Структура объекта" не работало действие удаления типа.
Alpha.HMI.Viewer
Исправлена ошибка, из-за которой не запускался проект с параметром "--rebuild bin-diff" если закешированный файл скомпилированного юнита .ni.binom был повреждён или неправильного формата.
Alpha.HMI.WebViewer
Исправлена ошибка, из-за которой не отображалась линия полоски гистограммы, если стиль пера самой гистограммы был выставлен в значение "Нет пера".
2.0.21
Новые возможности
Компоненты
- Компонентам Текст и Расширенный текст добавлены свойства TextWidth и TextHeight, возвращающие фактические размеры текста. В веб-версии свойства всегда возвращают 0.
- Компоненту Индикатор гистограммы добавлены свойства BarPenColor, BarPenStyle, BarPenWidth, BarLowPenColor, BarLowPenStyle, BarLowPenWidth, BarHighPenColor, BarHighPenStyle и BarHighPenWidth, позволяющие устанавливать цвет, стиль и толщину пера для различных уровней.
- В компоненте Запрос алармов добавлены:
- свойство MergeParameters для настройки параметров сведения событий
- флаг актуальности внешнего события foreign_actual
Alpha.HMI
- Добавлены действия для быстрого перехода между мнемосхемой и областью "Структура объекта".
- Добавлен механизм обнаружения простейших логических циклов в проекте.
- Добавлены действия "Вырезать без ссылок" и "Удалить без ссылок" для быстрого удаления элементов без удаления ссылок на них.
- Добавлена возможность быстрого переименования элементов без обновления ссылок на них.
- В область "Свойства" добавлено псевдо-свойство "Идентификатор", содержащее UUID объекта.
Улучшения
Компоненты
- В компоненте Данные: агрегатор событие DataChanged теперь также срабатывает перед выполнением запроса.
- В компоненте Запрос алармов ускорена загрузка данных с выставленными ограничениями размера оперативного буфера.
Alpha.HMI
- После удаления элемента в области "Структура объекта" новым текущим элементом теперь становится следующий элемент в категории, а не в лэйауте родительского объекта.
- Устранены лишние диалоги подтверждения удаления элементов решения DevSudio в области "Библиотека компонентов".
- [Linux] Реализовано принудительное возвращение освобождённой памяти в ОС с помощью вызова malloc_free, что позволило устранить повышенное потребление памяти в отдельных случаях.
- Добавлена возможность редактирования типов с помощью инструментов редактирования на мнемосхеме.
- Добавлена возможность открытия на редактирование формы с неграфическим экземпляром, внутри которого находится графический.
- В области "Структура объекта" в контекстное меню типа добавлены действия "Скомпилировать" и "Показать в рантайме".
- В окне мастера пересвязывания объектов DevStudio ссылки на местоположения помещены в область прокрутки и более не затрудняют работу с диалогом.
- В областях "Свойства" и "События" добавлены иконки для предопределённого, начального и вычисляемого значений.
- В области "Библиотека компонентов" внутри секции "Внешние модули" пустые папки более не отображаются.
- Механизм санитизации имён файлов, не допускающий использование зарезервированных имён ОС Windows, активирован на всех платформах для лучшей переносимости проектов между платформами.
- Добавлена поддержка решений Alpha.DevStudio версии 3.27 и выше.
- Логические циклы на форме, открытой во фрейме, более не приводят к блокировке в цикле обработки событий и не препятствуют завершению процесса.
Alpha.HMI.WebViewer
Веб-версия компонента Индикатор гистограммы переписана на SVG.
Исправленные ошибки
Компоненты
- [Linux] Исправлена ошибка, из-за которой компонент Запрос SQL не мог подключиться к серверу MS SQL.
- Исправлено подвисание в компонентах AP при загрузке большого объёма исторических данных.
- Исправлена ошибка в компоненте Курсор, в некоторых случаях приводившая к аварийному завершению программы.
- Не изменялись значения свойств WindowWidth и WindowHeight для форм, открытых во фрейме, при изменении размеров фрейма.
Alpha.HMI
- Исправлены ошибки при работе в режиме привязи к сетке:
- Соединительная линия редактировалась без учёта привязки к сетке
- Не работало перемещение графических элементов на мнемосхеме через клавиатуру
- Исправлена некорректная работа Undo/Redo:
- При редактировании пустой линии для первых двух добавленных точек
- В отдельных случаях для соединительной линии
- В отдельных случаях для всех видов линий после отмены добавления точки
- Исправлены ошибки, приводившие к аварийному завершению программы:
- При обращении в глобальных объектах к объекту с рекурсивным базовым типом.
- При смешивании разных версий OpenSSL в одном процессе.
- В редких случаях при работе в области "Свойства" с ссылками на экземпляры типа без базового типа.
- В редких случаях при быстром открытии/закрытии форм во фрейме.
- В области "Свойства" для полей не отображался пункт меню "Перейти по ссылке".
- При использовании режимов масштабирования вокруг формы могли отображаться ошибочные отступы.
Alpha.HMI.WebViewer
- Не работало "всплывание" событий KeyPress и KeyRelease от дочернего графического элемента к родительскому.
- В компоненте Дерево цвет текста выделения перекрывался значением свойства FontColor.
- Размеры кнопки сворачивания/разворачивания компонента Дерево рассчитывались некорректно при наличии совокупного масштаба у дерева.
2.0.20
Новые возможности
Компоненты
Компоненту Очередь активных алармов добавлено свойство InsertMode (Режим постановки событий в очередь) для выбора событий, добавляемых в очередь.
Alpha.HMI
- В редакторе ссылок на юниты при указании пути к внешнему модулю теперь можно использовать:
- переменные среды - $env:имя;
- подстановочные переменные Alpha.HMI - пока доступны 3 переменные:
- $hmi:proj:File - путь к файлу проекта
- $hmi:proj:Folder - путь к папке проекта
- $hmi:proj:ResourceFolder - путь к папке ресурсов проекта
- Добавлена возможность удаления записей из области "Результаты поиска".
- В Alpha.Sprint (пространство имен DateTime) добавлены функции для работы с микросекундами в метке времени.
Улучшения
Alpha.HMI
- [Windows] Имена файлов для типов, использующих зарезервированные имена ОС Windows, теперь автоматически санитизируются для корректного сохранения на диск.
- В контекстное меню области "Библиотека компонентов" для глобальных объектов добавлено действие "Скомпилировать".
Alpha.HMI.WebViewer
Дублирующие сообщения об изменении ширины/высоты визуальных элементов с одинаковыми значениями более не отправляются на фронт-энд.
Исправленные ошибки
Компоненты
Исправлена ошибка при разборе запроса в компоненте Браузер источника AP, в редких случаях приводившая к аварийному завершению программы.
Alpha.HMI
- При удалении/изменении некоторых элементов не удалялись связанные с ними записи в области "Ошибки".
- Не загружались транзитивные зависимости при загрузке из скомпилированного юнита.
- При невозможности загрузки зависимости выводилось неправильное сообщение об ошибке.
- При использовании в проекте компонента Веб содержимое в рабочем каталоге появлялся файл debug.log.
Alpha.HMI.WebViewer
Исправлена ошибка, из-за которой в редких случаях происходил непреднамеренный разрыв защищённого соединения и закрытие сессии.
2.0.19
Новые возможности
Компоненты
- Добавлен компонент Расширенный текст с возможностью выделения и копирования текста.
- Компоненту Сессия добавлено свойство ClientUserAgent для получения User-Agent клиентского ПО.
Улучшения
Компоненты
- В компонентах Запрос алармов и Очередь активных алармов поддержана фильтрация по всем доступным столбцам.
- В компоненте Архиватор после распаковки архива распакованным файлам и папкам выставляется время модификации, как в архиве.
Alpha.HMI
- [Windows] В качестве OpenGL бэк-энда по умолчанию теперь используется ANGLE.
- Отключен механизм предотвращения перемещений полноэкранных окон. Исправлена проблема бесконечного перемещения окна мeжду мониторами, проявляющаяся на некоторых оконных менеджерах.
- Переработаны механизмы установки геометрии и позиционирования окна на мониторе. Теперь эти действия выполняются единожды перед отображением окна, что позволяет избежать лишних изменений размеров и перемещений окна после появления.
- В области "Библиотека компонентов" теперь подсвечивается объект, соответствующий активной вкладке.
- При создании копий объектов в области "Библиотека компонентов" происходит переход к созданным копиям.
- Добавлены подсказки для параметров событий.
- Добавлена иконка для компонента Сессия.
- В области "Библиотека компонентов" добавлены иконки для категорий "Типы", "Экранные формы" и "Глобальные объекты".
- В области "События" добавлены иконки для событий и обработчиков.
- Для водяного знака снижено потребление ЦП и ускорена отрисовка.
Alpha.HMI.WebViewer
- Добавлена поддержка ориентации для компонента Индикатор прогресса.
- Добавлена поддержка метода ScaleContentTo (масштабирование к указанному размеру) в компоненте Фрейм.
Исправленные ошибки
Компоненты
При конвертации из строки в метку времени через компонент Формат даты/времени некорректно учитывалось свойство LocalTime.
Alpha.HMI
- Устранены ошибки, приводившие к аварийному завершению программы:
- При попытке задания типу дублирующего имени, но в другом регистре
- При попытке вставки копии объекта из закрытой вкладки
- При возникновении "вложенных" событий открытия в текущем окне
- При попытке перехода из области "Ошибки" к удалённому элементу
- Из-за некорректного вывода инструкций StackFrame и StackFrameThis машины исполнения Om
- Исправлена ошибка некорректного формирования имён копий для объектов, содержащих "%1" в имени.
- Исправлена неверная работа активности действия сохранения в области "Библиотека компонентов" для типов, не открытых на редактирование.
- При открытии в текущем окне не срабатывало событие Closed для предыдущей формы.
- [Linux] В некоторых случаях не работал drag-n-drop в рамках компонента Перемещение.
- При добавлении некоторых внешних юнитов для них отображалась неактуальная иконка.
Alpha.HMI.WebViewer
- Не сбрасывалось активное окно при клике по пустому пространству.
- Исправлено исчезновение изображений при изменении выделения и наведении в компоненте Дерево.
- Исправлена ошибка построения веб-приложения, возникавшая из-за ошибки при классификации SVG ресурсов.
2.0.18
Новые возможности
Компоненты
Реализованы новые возможности для семейства компонентов Элемент AP:
- Добавлена информация об идентификации сигнала :
- Добавлены свойства IdentificationState и IdentificationStateAsString для получения текущего состояния идентификации
- Добавлено событие IdentificationStateChanged для отслеживания изменения состояния идентификации
- Добавлена возможность записи значений с подтверждением:
- Добавлен метод WriteValueAsync для асинхронной записи значений
- Добавлены события WriteValueSucceeded и WriteValueFailed для отслеживания результата записи
Улучшения
Alpha.HMI
- Добавлены иконки для следующих видов модулей:
- модуль проекта
- внешний модуль в исходных кодах
- зашифрованный внешний модуль
- модуль .NET Framework
- модуль .NET Core/.NET
- Qt плагин
- В .deb дистрибутивах прописаны зависимости от системных пакетов. Теперь в ходе установки дистрибутива при отсутствии каких-либо системных зависимостей пакетный менеджер об этом явно просигнализирует.
- Ослаблены ограничения на минимальное и максимальное значения координат для свойств X и Y. Теперь координаты могут принимать значения в диапазоне [-384000; 384000].
Исправленные ошибки
Компоненты
Для компонента Запрос алармов исправлена ошибка, приводившая к высокому потреблению ЦП в оперативном режиме при недоступном источнике.
Alpha.HMI
- [Linux] Исправлена ошибка, из-за которой на некоторых многомониторных системах максимизированное окно дизайнера могло принимать некорректные размеры, в результате чего скрывалась рамка окна.
- При возникновении ошибки в ходе загрузки модуля частично загруженные к этому моменты типы оставались невыгруженными.
- После закрытия проекта в дизайнере некоторые элементы соответствующего модуля оставались невыгруженными.
- Устранены ошибки, приводившие к аварийному завершению программы:
- При смене типа на рекурсивный
- При экспорте проекта в файл .binom по пути, содержащему не ASCII символы
Alpha.HMI.WebViewer
Исправлена незначительная утечка памяти в компоненте Источник данных дерева.
2.0.17
Новые возможности
Компоненты
- Компоненту Звук добавлены :
- Свойство ErrorState, отражающее состояние ошибки
- Событие ErrorStateChanged для уведомления об изменении значения свойства ErrorState
- Метод GetErrorStateAsString для получения строкового описания состояния ошибки
- Добавлен компонент Сессия для получения информации о текущей веб сессии
- Для свойства Encoding компонента Окружение: процесс в области "Свойства" добавлен выпадающий список поддерживаемых кодировок
- Для работы с внешними моделями событий :
- Компоненту Запрос алармов добавлены колонки foreign_ack, foreign_attributes, foreign_model, foreign_uri и foreign_kind
- Компоненту Источник AP добавлен метод ForeignAck
Работа с проектом
- В редакторе соединительной линии добавлена возможность добавления новых точек по отдельности, а также возможность редактирования линии с любым количеством точек.
- Добавлена возможность определения ограничений для зашифрованных биномов. Реализовано ограничение для скрытия приватного содержимого типов и глобальных объектов в графическом интерфейсе дизайнера Alpha.HMI.
Улучшения
Компоненты
- Минимальная ширина колонки в компоненте Дерево ограничена значением 13, как в веб версии.
- Добавлена иконка для компонента Текстовый файл.
Alpha.HMI
Ускорено разворачивание узлов дерева в областях "Обзор" и "Контрольные значения".
Alpha.HMI.WebViewer
- Улучшены механизмы отключения соединения и завершения сессии :
- Добавлена возможность отслеживания потери связи по websocket через контрольные фреймы ping/pong, а также атрибут ConnectionTimeout в конфигурации, позволяющий задать время тайм-аута в секундах, либо полностью отключить механизм отслеживания.
- Сообщения о закрытии сессии в журнале приложений теперь содержат описание причины и код ошибки.
Исправленные ошибки
Компоненты
- Подключение с пустым паролем через компонент Источник AP к серверу, не требующему авторизации, более не приводит к ошибке состояния.
- Исправлено зависание в компоненте Дерево при вычитывании информации об узлах.
- Исправлена ошибка, из-за которой элементы AP с пустыми фрагментами иерархического пути исключались из рассмотрения и не участвовали в запросе свойств и подписке.
Alpha.HMI
- Переработан алгоритм закрытия редакторов и исправлено закрытие редактора сменой фокуса в диалогах редактирования алиасов и формул по условию.
- Исправлен неправильный минимальный размер элемента после удаления разметки.
- Запрещены обращения по индексу для ключевых слов here, this, me, parent, @- и $-переходов и прочих сущностей, не поддерживающих обращение по индексу.
- Исправлена ошибка, из-за которой не обновлялся внешний вид кнопки (и иных графических элементов) после закрытия диалога печати.
- Цвета фона выделенной и активной вкладок в области "Открытые вкладки" теперь визуально различимы на всех темах и платформах.
- Исправлена ошибка, из-за которой не отображалось действие "Закрыть все вкладки" при клике по открытой вкладке.
- Не работала смена масштаба на панели масштабирования через ручной ввод.
- Не открывались проекты Alpha.HMI и решения Alpha.DevStudio, если расширение файла было не в нижнем регистре.
- Не происходило обновление разметки после удаления и перемещения вспомогательных компонентов разметки (Вес элемента разметки, Выравнивание элемента разметки, Отступ элемента разметки, Ограничение размеров элемента разметки), что приводило к некорректному визуальному отображению.
- Исправлено некорректное визуальное отображение после перемещения графического элемента через действия "Переместить вперёд" или "На передний план".
- Исправлены артефакты в компоненте Поле ввода при вещественных значениях свойства X и нестандартной высоте поля ввода.
- Исправлена ошибка, из-за которой редактирование формулы по условию приводило к ошибке компиляции.
- Исправлена ошибка, из-за которой было невозможно создать ссылку на тип в рамках экземпляра этого же типа.
- Устранены ошибки, приводившие к аварийному завершению программы:
- При обращении по индексу к сущностям, не поддерживающим такое обращение
- При попытке сброса предопределённого значения в области "Свойства"
- При попытке изменить свойство InValue компонента Выходной формат через контрольное значение
- При возникновении необработанного исключения при выполнении действий планировщиком
- При запуске проектов с внешними модулями .NET Framework/.NET Core/Qt
- Из-за нулевого периода действия планировщика
- При взаимодействии с вырожденной соединительной линией
- При попытке чтения свойств только для записи
- При смене типа параметра инициализации
Alpha.HMI.WebViewer
- Исправлена ошибка, из-за которой в компоненте Дерево исчезали изображения при скролле и изменении размеров панели.
- Значение свойства Enabled компонента Дерево не влияло на состояние флажков выбора.
- Исправлена ошибка, которая могла приводить к неправильной установке цвета фона и текста для элементов в компоненте Дерево.
- Исправлена некорректная нумерация колонок в рамках событий компонента Дерево при наличии скрытых колонок.
- Не работала подсветка строк при наведении курсора в компоненте Дерево.
- Свойства MouseX и MouseY для компонента Дерево могли принимать неожиданные нулевые значения.
2.0.16
Новые возможности
Компоненты
- Компоненту Средство отладки добавлено свойство StackTraceAsString, позволяющее получить текущий стек вызовов в виде строки.
- Добавлен компонент Текстовый файл для чтения и записи текстовых файлов.
- Компоненту Браузер источника AP добавлен метод Browse, позволяющий выполнять любые типы запросов с указанием параметров, а также событие BrowseFinished для отслеживания результата исполнения.
Работа с проектом
- Для уведомляющих свойств добавлена возможность перехода к соответствующим уведомляющим событиям. Возможность доступна в областях "Свойства", "События", "Обзор", "Контрольные значения" и "Структура объекта".
Улучшения
- При запуске приложений учитывается установленное в окружении значение переменной среды LD_LIBRARY_PATH.
Компоненты
Признаны устаревшими, но еще доступны в интерфейсе для обратной совместимости:
- Методы ReadTextFile, WriteTextFile и AppendTextFile компонента Окружение: файлы.
- Компонент Узел AP.
Alpha.HMI
- Переработан и улучшен механизм запуска проекта из зашифрованного модуля.
- Примитивные типы возвращаемых значений функций более не отображаются в результатах поиска.
Alpha.HMI.WebViewer
- Добавлена поддержка быстрых кликов мыши.
- Поведение событий мыши систематизировано и приведено в соответствие desktop версии.
- Добавлена поддержка свойства Buttons для событий мыши.
- Добавлена поддержка градаций насыщенности шрифта (font weight).
Исправленные ошибки
Компоненты
- Устранена ошибка, в редких случаях приводившая к аварийному завершению программы из-за ошибочного обращения к разрушенному элементу AP.
- Исправлена ошибка, приводившая к подвисанию при ручной очистке в компоненте Запрос алармов.
Alpha.HMI
- Устранены ошибки, приводившие к аварийному завершению программы:
- При взаимодействии с вырожденной соединительной линией
- При попытке развернуть папку после перемещения в неё группы объектов
- Исправлена ошибка, приводившая к появлению визуальных артефактов при перемещении линии в редакторе мнемосхемы.
- Исправлена некорректная отрисовка пера для компонента Индикатор гистограммы.
- Исправлено ложное предупреждение о дублировании имён при переименовании объектов-массивов в структуре объекта.
- Формула по условию пересохранялась в истории изменений каждый раз при завершении редактирования, даже если изменения отсутствовали.
Alpha.HMI.WebViewer
- Устранена ошибка, приводившая к аварийному завершению программы при наличии в проекте нативной ссылки, проинициализированной вложенным объектом.
- Исправлены незначительные отличия в работе диалоговых окон относительно desktop версии.
- Исправлена доставка события MouseRelease при потере фокуса за пределы браузера.
- Исправлена некорректная отрисовка углов линии.
- Исправлена ошибка, из-за которой заливки "Точечная 1-3" для элементов на основе SVG могли работать некорректно.
- Исправлены предупреждения в консоли браузера при наличии на странице SVG элементов.
- Исправлена ошибка, возникавшая в журнале приложений из-за вещественных значений координат, полученных от браузера.
2.0.15
Улучшения
Alpha.HMI.WebViewer
- Улучшено быстродействие при установке стилей колонок.
Исправленные ошибки
Alpha.HMI
- В области "Обзор" и "Контрольные значения" исправлено неправильное формирование содержимого узлов-ссылок на элемент массива по индексу Index, а также аварийное завершение работы программы при попытке развёртывания таких узлов.
- В области "Структура объекта" при переименовании функций и параметров инициализации не обновлялось значение переименованного элемента.
- Исправлена непредвиденная ошибка, возникавшая в некоторых случаях при открытии сессии работы с базой данных.
2.0.14
Новые возможности
Компоненты
- Компоненту Запрос алармов добавлено свойство Режим фильтрации источника событий. В свойстве можно указать будет ли использоваться фильтрация при запросе событий и для каких (оперативных или исторических) событий.
Работа с проектом
- В дизайнере добавлена возможность включения подсветки результатов фильтрации/поиска в рамках любого виджета, в котором есть фильтр.
Улучшения
Компоненты
Компоненты AlarmsAxControl и TrendsAxControl признаны устаревшими.
Alpha.HMI
Систематизировано контекстное меню для экземпляров компонента Линия.
Alpha.HMI.WebViewer
- Компоненты на основе HTML5 элемента холст перебазированы на SVG, в результате чего исправлены проблемы пикселизации при использовании браузерного масштабирования.
- Переработан оконный менеджер: поведение окон приведено в большее соответствие desktop версии.
- Добавлена возможность изменения настроек веб-сокета без перекомпиляции веб-приложения.
- Систематизирована работа веб-приложения при потере связи и переподключении.
Теперь при потере связи:
- Вся рабочая область "замораживается" в последнем состоянии перед потерей связи
- Сообщение об отсутствии связи отображается поверх всех окон
- При появлении связи происходит автоматическое переподключение в рамках новой сессии
Исправленные ошибки
Компоненты
- Исправлено зависание в компоненте Процесс в случае, когда дочерний процесс активно писал в поток вывода или поток ошибок, а родительский процесс не вычитывал данные.
- Исправлена ошибка, из-за которой через компонент Запрос значений множества сигналов AP было невозможно запросить исторические данные по всем сигналам, если хотя бы у одного из сигналов исторических данных не было.
Alpha.HMI
- Устранены ошибки, в некоторых случаях приводившие к аварийному завершению программы:
- При использовании фильтра в инструменте "Смена типа"
- При использовании контрольных значений
- При использовании команды "Актуализировать версии элементов"
- При работе с сигналами, по которым не пишется история
- Предупреждения компиляции об использовании устаревшего типа не выводились для типов и экземпляров с устаревшим типом в базовой иерархии и при обращения к устаревшим элементам в коде.
- В библиотеке компонентов после переименования типа, не открытого на редактирование, не активировались кнопки сохранения.
- Переименование в области "Структура объекта" иногда не срабатывало.
Alpha.HMI.WebViewer
- Исправлена проблема "проваливания" дочерних окон под родительские.
- Не отображались иконки в компоненте Дерево, если в пути к файлу иконки имелись пробелы.
- Устранены ошибки, в редких случаях приводившие к аварийному завершению программы:
- При закрытии формы во фрейме, который уже разрушен
- При закрытии вкладки в браузере если была открыта форма и дочерняя форма от неё
- При остановке бэк-энда
2.0.13
Новые возможности
Компоненты
- Компонент Плоская разметка теперь поддерживает отступы для элементов, задаваемые через компонент Отступы элемента разметки.
Работа с проектом
- В контекстное меню области "События" добавлен пункт "Перейти к форме" для быстрого перехода к типу вложенной формы.
- Добавлена возможность редактирования вырожденных кривых линий с количеством точек меньше 2.
Улучшения
Компоненты
- Служебное содержимое фрейма теперь создаётся отложено, в момент открытия формы во фрейме. Это позволяет снизить расход ресурсов, пока во фрейме ничего не открыто.
Alpha.HMI.Viewer
- Исходный проект и связанные юниты теперь выгружаются после компиляции для экономии памяти.
Alpha.HMI.WebViewer
- Добавлена поддержка ручного масштабирования содержимого фрейма через метод SetContentScale.
Исправленные ошибки
Alpha.HMI
- При изменении видимости .NET Framework компонента не происходил перерасчёт разметки, под управлением которой этот компонент находится.
- При откате операции переименования формы через историю изменений в подсказке на мнемосхеме оставалось старое имя.
- Для вырожденных линий с толщиной пера больше 1 неправильно вычислялся охватывающий многоугольник.
- В некоторых случаях в области "События" некорректно работала фильтрация.
- Устранены ошибки, приводившие к аварийному завершению программы:
- При частом и многократном открытии рантайма
- При переходе по ошибке "Не загружен юнит линк" в области "Ошибки"
- При восстановлении открытых вкладок при запуске дизайнера
Alpha.HMI.WebViewer
[Linux] Исправлена проблема, из-за которой копирование файлов при построении и развёртывании веб-приложения могло прекращаться с ошибкой "Invalid cross-device link".
2.0.12
Новые возможности
Компоненты
- Добавлена поддержка очереди запросов чтения в компоненте Дерево.
- Добавлена возможность встраивания произвольных иконок в ячейках компонента Дерево.
Работа с проектом
- В области "Контрольные значения" добавлена колонка "Характеристики".
- Систематизирован и доработан функционал переходов.
Из большинства областей появилась возможность быстрого перехода к:
- любому типу в родительской иерархии наследования
- предопределённому, начальному, вычисляемому значениям
- определению
Прочие
- Добавлена поддержка climb-переходов в ссылочных выражениях и исходном коде (теперь возможно обращаться к элементу родительской иерархии с помощью символа @@@ в языке Alpha.Om, а в JavaScript - символа @$@).
Улучшения
Компоненты
- В рамках компонента Менеджер проекта теперь запрещён сценарий обновления проекта, если путь к резервной копии находится внутри папки обновления.
Alpha.HMI
- Создание и редактирование линии на мнемосхеме теперь производятся через единый механизм редактирования линии.
- При редактировании линии добавляемый фрагмент линии теперь рисуется пунктиром.
- Улучшен механизм переходов к начальным значениям из области "Ошибки".
- Улучшено контекстное меню для уведомляющих полей в области "Структура объекта".
- После удаления разметки элементы теперь принимают свои исходные координаты и размеры, которые были до применения разметки.
Alpha.HMI.WebViewer
- Исходный проект и связанные юниты теперь выгружаются после компиляции для экономии памяти.
- Для координат и размеров теперь используются вещественные значения. Это позволяет избавиться от проблем смещения и некорректного позиционирования, вызванных округлением до целого.
Исправленные ошибки
Alpha.HMI
- Устранены ошибки, приводившие к аварийному завершению программы:
- При синхронизации в элементе AP
- При редактировании линии без точек
- При работе с отображением подсказок перегрузок методов в редакторе кода
- Исправлена ошибка, из-за которой для графических элементов под управлением разметки, изменение положения графического объекта в структуре объекта не приводило к обновлению положения на мнемосхеме.
- В редких случаях методы FormX и FormY работали некорректно.
- Изменение оконных флагов более не приводит к повторному срабатыванию события Opened.
- В областях "Свойства" и "События" при выделенной строке могли не отображаться характеристики.
- Исправлена ошибка, из-за которой для выключенных графических объектов-виджетов не отображалась всплывающая подсказка.
- Исправлена ошибка, из-за которой на сенсорных экранах не работали touch события для компонента Веб содержимое.
Alpha.HMI.WebViewer
- Исправлена некорректная работа автоматического масштабирования для форм, открытых во фрейме.
- Исправлена ошибка, из-за которой не срабатывало событие Closed для формы, открытой во фрейме, при закрытии родительского окна.
2.0.11
Новые возможности
Компоненты
Компоненту Запрос алармов добавлен столбец для отображения времени деактивации условия.
Работа с проектом
- Добавлена возможность настройки отступов от содержимого на сцене.
- Добавлены возможности фильтрации и сортировки в области "Результаты поиска".
Улучшения
- Подписаны горячие клавиши копирования и удаления в контекстном меню области "Библиотека компонентов".
- Пункт меню "Закрыть все вкладки" в области "Открытые вкладки" теперь отсутствует, если нет открытых вкладок.
Исправленные ошибки
Alpha.HMI
- Устранены ошибки, приводившие к аварийному завершению программы:
- При разрушении контекста фрейма, родителем которого являлся глобальный контекст
- При закрытии дочерних фреймов контекста фрейма
- Исправлена ошибка, из-за которой полноэкранное окно с положением окна "По центру монитора" открывалось не на том мониторе.
- Исправлена ошибка, из-за которой для некоторых графических элементов в некоторых случаях некорректно работали события MouseEnter, MouseLeave и MouseMove.
- Исправлена ошибка, из-за которой в некоторых случаях некорректно отслеживалось состояние дочерних процессов, запущенных через компонент Окружение: процесс.
2.0.10
Исправленные ошибки
Alpha.HMI.WebViewer
- Исправлена ошибка, в редких случаях возникавшая при отложенной отрисовке элементов на основе canvas, когда элемент уже был разрушен. В результате такой ошибки элементы могли не отображаться.
- Скрытые колонки становились видимыми при изменении количества колонок.
- Исправлена ошибка распространения CSS стилей, из-за которой заливка формы, открытой в окне, могла работать некорректно.
- Исправлена ошибка, из-за которой метод GetColumnName компонента Дерево мог возвращать некорректный результат.
2.0.9
Новые возможности
Alpha.HMI
- Добавлен компонент Системные принтеры, позволяющий получить информацию о доступных принтерах в системе.
- Добавлен компонент Принтер для настройки принтера и печати на нём.
- Теперь отдельным ячейкам дерева можно добавлять всплывающую подсказку с помощью метода SetItemTooltip компонента Дерево. Получать содержимое всплывающей подсказки можно с помощью метода GetItemTooltip.
Работа с проектом
- Видимостью отдельных групп кнопок панели инструментов теперь можно управлять с помощью действий меню "Вид".
- Добавлена возможность быстрого перехода к обработчикам: в контекстных меню в области мнемосхемы и в структуре объекта появилось действие "Перейти к обработчику".
- Видимостью панели вкладок теперь можно управлять действием "Панель вкладок" в контекстных меню рабочих областей, панели инструментов и меню "Вид".
- Добавлена поддержка семейства функций TypeConvert.ToXBitwise для побитового преобразования чисел и функции генерации псевдослучайных чисел Math.Random.
Alpha.HMI.WebViewer
- Добавлена возможность изменения цвета фона компонента Дерево.
- Поддержана возможность навигации по содержимому компонента Дерево с помощью стрелок на клавиатуре по аналогии с Alpha.HMI.
Улучшения
Alpha.HMI
- Область "Редактор свойств" переименована в "Свойства".
- Сообщение об ошибке при наличии в проекте повреждённых *.omobj файлов стало более информативным.
- В области "Библиотека компонентов" в рамках секции "Внешние модули" больше не отображаются пустые категории.
- Действие "Сглаживание изображения" в дизайнере теперь всегда активно.
- Мастер создания более не вызывается при попытке создания элемента внутри параметра инициализации.
- Улучшена генерация байт-кода Alpha.Sprint.
Alpha.HMI.WebViewer
- Фон формы теперь распространяется на всё окно как в Alpha.HMI.
- Улучшена отрисовка компонентов, основанных на canvas.
- Реализация компонента Оборудование: клавиатура теперь представляет собой заглушку и не приводит к лишним ошибкам при отсутствии X server на Linux системах.
Исправленные ошибки
Компоненты
- Исправлена функция EnumChildrenJSON компонента Дерево, возвращавшая в некоторых случаях некорректный JSON.
- Исправлены ошибки, из-за которых не работал курсор:
- Для экземпляров типа Графический объект.
- Для экземпляров типа Текст при наличии обработчиков некоторых событий.
- Исправлена некорректная работа линейной разметки при наличии ограничений размеров элементов разметки.
- [Windows] Исправлена ошибка, из-за которой функция FileSize компонента Окружение: файлы возвращала некорректное значение для корневого пути.
- Исправлена ошибка, приводившая к аварийному завершению программы при инициализации/идентификации узла AP.
Alpha.HMI
- Исправлена ошибка, из-за которой при редактировании обработчика без внесения изменений, в истории изменений всё равно появлялась лишняя запись.
- Исправлена ошибка, из-за которой некорректно получался UUID .NET Core сборки.
- [Linux] Исправлена ошибка, из-за которой после нажатия кнопки "Сохранить проект" она оставалась активной.
- Исправлено ошибочное состояние после возникновения ошибки в ходе создания типа через мастер создания. Теперь частично выполненное действие создания типа корректно откатывается до исходного состояния.
- Исправлена ошибка, из-за которой могла не работать отрисовка нового сегмента кривой линии в режиме редактирования.
- Исправлена ошибка, приводившая к аварийному завершению дизайнера при формировании контекстного меню области "Структура объекта" для типа Не задан.
- В некоторых случаях при смене базового типа не обновлялись иконки типа на панели вкладок и в области "Открытые вкладки".
- В областях "Свойства" и "События" для отключенных свойств иконки колонки "Характеристика" отрисовывались не в сером цвете.
- Исправлена ошибка, в результате которой могла некорректно работать отрисовка в областях "Свойства" и "События".
- Исправлена ошибка, из-за которой фильтрация в областях "Обзор" и "Контрольные значения" в редких случаях работала некорректно.
- В области "Ошибки" для параметра функции указывалось полное иерархическое имя без учёта имени функции.
- Исправлено зависание при закрытии программы из-за необработанных событий в рамках глобального контекста.
- Исправлена ошибка, из-за которой в режиме редактирования на сцене было невозможно выделить фрейм, если свойство Перемещение мышью было выставлено в "true".
- Исправлена ошибка, из-за которой было затруднено переопределение присваивателя при редактировании формулы по условию.
- Исправлена ошибка, приводившая к аварийному завершению программы при использовании виджетов настройки некоторых фильтров.
- В рамках функциональности "Установить путь до объекта" в диалоге параметров инициализации путь теперь рассчитывается относительно экземпляра приложения.
Alpha.HMI.WebViewer
- Исправлены ошибки, приводившие к аварийному завершению программы:
- Из-за обращения к разрушенному родительскому контексту из контекста фрейма
- При попытке вывода в журнал приложений сообщения, содержащего некорректную форматирующую последовательность
- При обращении к разрушенному контексту в рамках обработки сообщения закрытия формы
- Исправлена генерация JavaScript кода веб-приложения для массивов "особых" невизуальных объектов
- Исправлены ошибки, возникавшие в консоли браузера:
- При попытке доставки события MouseEnter элементу, который уже стал невидимым
- При клике по пустому месту в компоненте Дерево
- При работе с компонентом Дерево
- Исправлена ошибка, из-за которой не срабатывало масштабирование при открытии в текущем окне формы с активным режимом масштабирования.
- Исправлена ошибка, из-за которой последовательные скрытие и показ всплывающей подсказки по новым координатам могли приводить к отображению подсказки по старым координатам.
- Исправлена ошибка, из-за которой в редких случаях изменение позиции X/Y не приводило к перерисовке.
- Исправлены ошибки, из-за которых не работали декорации шрифтов (зачёркнутый, подчёркнутый) для содержимого компонента Дерево, а также для компонентов, имеющих свойства для управления шрифтом.
- Исправлена ошибка, из-за которой сегменты соединительной линии с незначительными отклонениями от горизонтали/вертикали отображались некорректно.
- Исправлена работа позиционирования по координатам X/Y для форм, открытых во фрейме.
- В теме classic не работал стартовый цвет заливки для компонента Кнопка.
- Исправлена ошибка, из-за которой события мыши могли проходить сквозь всплывающие окна.
- Исправлены ошибки в работе компонента Дерево:
- Размеры колонок могли самопроизвольно меняться при сворачивании/разворачивании содержимого дерева
- Видимость рамки не сохранялась при изменении числа столбцов
- Исправлена ошибка, из-за которой в некоторых случаях колонкам выдавались некорректные порядковые имена
- Исправлена работа функции GetColumnWidth
- Исправлено некорректное смещение объектов, вложенных в кривую линию.
2.0.8
Новая возможность
- Событиям мыши добавлены свойства ScreenX и ScreenY для получения экранных координат сработавшего события.
Исправленные ошибки
Компоненты
- Исправлено получение данных типа VARCHAR при использовании компонента Запрос SQL.
Alpha.HMI
- Дублирующие записи вложенных объектов более не отображаются в окнах "Обзор" и "Контрольные значения".
- Не отображались водяные знаки на форме в случае, если в момент их появления окно было свёрнуто.
Alpha.HMI.WebViewer
- Исправлена ошибка, из-за которой не работала установка пользовательского фокуса после закрытия формы.
Alpha.HMI.Explorer. История изменений
^ [2.0.1 --> 2.1.2]
2.1.2
Исправление
- Устранена причина задержки, возникавшей при добавлении сигнала из дерева в инспектор двойным кликом мыши.
2.1.1
Улучшения
- Добавлено поле поиска по дереву сигналов.
- В дереве сигналов теперь справа от названия каждого сигнала отображается столбец с иконками атрибутов. По иконкам можно понять, является ли сигнал источником событий, и ведется ли для него запись истории значений.
- Типу Explorer добавлено свойство init_Log - ссылка на экземпляр типа Обработчик события, создаваемый для обработки события, произошедшего в Explorer. Тип предоставляется библиотекой Alpha.HMI.CommonLib.
Исправления
- Исправлено поведение, при котором нельзя было добавить в таблицу инспектора новый сигнал после превышения максимально допустимого количества сигналов в таблице и последующего удаления из нее нескольких сигналов.
- Устранена причина, по которой сигналу, доступному только для чтения, можно было присвоить новое значение.
2.1.0
Новая возможность
- Во внешний модуль Explorer добавлена новая форма Explorer_Form. Форма предназначена для подключения к единственному серверу, указанному в свойствах формы. Форма отличается от полноценного приложения тем, что верхняя панель инструментов сокращена: здесь нельзя подключиться к другому серверу, сохранить или открыть список сигналов.
Улучшение
- Теперь в инспектор сигналов можно добавлять папки целиком, а не только сигналы по отдельности.
2.0.5
- Для корректной работы этой версии используйте:
Улучшение
- Время в инспекторе сигналов теперь отображается с точностью до миллисекунд.
2.0.4
Исправление
- Исправлена ошибка, из-за которой при работе в Alpha.HMI.WebViewer было невозможно выделить несколько сигналов с помощью клавиш Shift или Ctrl.
2.0.3
Улучшение
- Панель инструментов теперь оформляется в соответствии с выбранной темой.
Исправление
- Исправлена ошибка, возникавшая при попытке открыть файл со списком сигналов, содержащим разделитель строк.
2.0.2
- Для корректной работы этой версии используйте:
Улучшения
- В окне подключения к серверу теперь отображаются адрес и порт последнего подключения.
- Теперь при добавлении сигнала в таблицу инспектора выполняется выделение добавленной строки и прокрутка, если строка добавляемого сигнала оказывается вне видимой части инспектора.
- Сигналы, добавленные в таблицу инспектора, теперь можно перемещать вверх или вниз. Для этого следует использовать команды контекстного меню, либо сочетания клавиш.
Исправление
- Устранена причина, по которой сигнал, добавленный в таблицу инспектора с включенным фильтром, не был выделен подсветкой сразу после добавления.
Alpha.HMI.Charts. История изменений
^ [2.0.3 --> 2.0.9]
2.0.9
Новые возможности
- В компонент График: экспорт добавлено событие ExportProgress, позволяющее отслеживать прогресс выполнения долговременных процедур, например таких как SetJSONData.
- Для события OnRangeChange компонента График: Ось добавлен параметр Source, который идентифицирует причину изменения диапазона.
Исправленные ошибки
-
(ОС Linux) Исправлена ошибка, приводившая к аварийному завершению Alpha.HMI.Viewer после обновления версии Alpha.HMI.Charts.
-
Устранены причины, приводившие к аварийному завершению работы Alpha.HMI.Webviewer после обновления версии Alpha.HMI.Webviewer.
-
Исправлены незначительные ошибки в работе декоратора.
-
Не срабатывало событие ReadFinished у компонента График: данные.
-
Решены проблемы, приводившие к ошибкам в работе Alpha.HMI.Trends:
- Зависание Alpha.HMI при быстрой прокрутке исторических значений
- Аварийное завершение Alpha.HMI при добавленном строковом сигнале на трендовом поле после нажатия кнопки "Печать"
-
В окне печати тип данных для строкового сигнала ошибочно менялся на double, что приводило к неправильному положению графика. Новые возможности
-
В компонент График: экспорт добавлено событие ExportProgress, позволяющее отслеживать прогресс выполнения долговременных процедур, например таких как SetJSONData.
-
Для события OnRangeChange компонента График: Ось добавлен параметр Source, который идентифицирует причину изменения диапазона.
Исправленные ошибки
- (ОС Linux) Исправлена ошибка, приводившая к аварийному завершению Alpha.HMI.Viewer после обновления версии Alpha.HMI.Charts.
- Устранены причины, приводившие к аварийному завершению работы Alpha.HMI.Webviewer после обновления версии Alpha.HMI.Webviewer.
- Исправлены незначительные ошибки в работе декоратора.
- Не срабатывало событие ReadFinished у компонента График: данные.
- Решены проблемы, приводившие к ошибкам в работе Alpha.HMI.Trends:
- Зависание Alpha.HMI при быстрой прокрутке исторических значений
- Аварийное завершение Alpha.HMI при добавленном строковом сигнале на трендовом поле после нажатия кнопки "Печать"
- В окне печати тип данных для строкового сигнала ошибочно менялся на double, что приводило к неправильному положению графика.
2.0.7
Новые возможности
Компоненту График: реперная линия добавлены:
- Функция ResetTitlePos, которая сбрасывает позицию выноски репера по оси времени к позиции по умолчанию.
- Свойство Подвижность (Moveable) для отключения возможности перемещения реперных линий и красной линии, в том числе.
- Свойство Изображение символа точки (PointSymbolImageStr) для задания маркера линии в формате *.svg (файл нужно размещать в папке ресурсов проекта) и свойство Использовать изображение символа точки (UsePointSymbolImage) для разрешения использования указанного файла в формате *.svg.
Исправленные ошибки
- Решены проблемы, приводившие к ошибкам в работе Alpha.HMI.Trends:
- Не применялся выбранный интервал дискретизации при экспорт данных в файл
- Открытие нескольких окон приводило к аварийному завершению Alpha.HMI
- Добавление нескольких реперов приводило к аварийному завершению Alpha.HMI
- Зависание Alpha.HMI при экспорте большого количества точек
- Решены проблемы, приводившие к ошибкам в работе веб-версии Alpha.HMI.Trends:
- Не отображался репер при переносе
- Запуск с отсутствием областей интерфейса, если веб-сервер был развернут на ОС Astra Linux
- Репер оставался видимым, даже если его видимость была отключена с помощью условия, содержащего поля уведомляющего типа
- После выполнения функции SetTitlePos координаты позиции выноски ошибочно произвольно сбрасывались к первоначальным значениям.
- Экспортер выдавал данные (в формате *.json), несовместимые с TableModel.
2.0.6
Новые возможности
- Поддержано использование микросекунд в метках времени. Теперь на графиках метки времени с микросекундами не округляются до миллисекунд, как ранее.
- Добавлена возможность получения информации о позициях выносок реперов для точек данных.
Для этого компоненту Точка пересечения добавлены:
- Функции GetLabelPositionX которая получает позицию Х выноски репера, GetLabelPositionY, которая получает позицию Y выноски репера и SetLabelPosition, которая задает позицию выноски репера
- Функция ResetLabelPosition, которая сбрасывает позицию выноски репера к позиции по умолчанию
- Свойство Количество пересечений с линией (NumberIntersectionPoints), доступное только в режиме рантайма
- Добавлена возможность получения информации о позициях выносок реперов в точках с пересечением с осью времени. Для этого компоненту График: реперная линия добавлены функции: GetTitlePosX, которая получает позицию Х выноски репера, GetTitlePosY(), которая получает позицию Y выноски репера и SetTitlePos, которая задает позицию выноски репера.
- Реализована возможность задания маркера линии в виде файла в формате .svg.
Для этого компоненту График: Линия добавлены свойства:
- Изображение символа точки (PointSymbolImagePath) - имя файла в формате .svg из папки ресурсов проекта
- Использовать изображение символа точки (UsePointSymbolImage) - разрешение использования указанного файла в формате .svg
- Высота изображения символа точки (PointSymbolImageHeight) - высота изображения, используемого для маркера
- Ширина изображения символа точки (PointSymbolImageWidth) - ширина изображения, используемого для маркера
- Компоненту График: Линия добавлена функция GetColumnValueByIndex, позволяющая получить данные (VQT) графика.
Исправленные ошибки
- Решены проблемы, приводившие к ошибкам в работе Alpha.HMI.Trends:
- Невозможно было точно определить количество точек и диапазон значений при чтении данных из истории
- При включении для графика ручного ввода (в окне настроек) график исчезал с трендового поля
- (ОС Linux). Иногда не загружались графики при запуске оперативного режима
- Отсутствовала выноска репера у графика плохого качества в историческом режиме
- Решены проблемы, приводившие к ошибкам в работе веб-версии Alpha.HMI.Trends:
- Исправлена ошибка, из-за которой область минитрендов отображалась неполностью в окне предпросмотра печати
- Зависание службы Alpha.HMI.Webviewer при запуске проекта
- Исправлена некорректная работа свойства Координата Y строкового сигнала (StringTagsYValue) компонента График: линия.
- Исправлена некорректная индексация в функции GetColumnValueByIndex компонента График: линия.
- Исправлены проблемы, приводившие к зависанию веб-версии Alpha.HMI.ComtradeViewer.
- Исправлена ошибка, из-за которой в Alpha.HMI.ComtradeViewer часть репера ошибочно накладывалась поверх панели инструментов.
2.0.5
Исправленные ошибки
- Решены проблемы, приводившие к ошибкам в работе веб-версии Alpha.HMI.Trends:
- Отсутствовали маркеры пересечения реперов и графиков
- Не применялась толщина шрифта осей
- (ОС Linux) Периодически не загружались данные из файла
- Кнопка запроса исторических данных была постоянно перечеркнута
- Не полностью прорисовывалась рамка чарта
- Исправлена ошибка, из-за которой в Alpha.HMI.Trends не срабатывало событие DataChanged компонента График: реперная линия.
- Исправлены проблемы синхронизации видимости графика на чарте и внешнем минитренде.
- (ОС Linux) Решены некоторые проблемы в работе декоратора линии.
- Исправлены ошибки в работе Alpha.HMI.Charts, из-за которых периодически аварийно завершалась работа Alpha.HMI.
- Исправлены ошибки, из-за которых единицы измерения по оси Y периодически исчезали, а по оси Y устанавливались не там, где указано в настройках.
- Устранена причина периодического аварийного завершения работы Alpha.HMI.Trends при прокрутке тренда.
- При просмотре таблицы данных на экспорт прекращалось обновление значения точек.
2.0.4
Новая возможность
- Компоненту График: ось добавлено свойство Видимость шкалы для вывода графиков в максимально компактном виде: без шкалы значений.
Исправленные ошибки
- В веб-версии Alpha.HMI.Trends для линий графиков теперь применяются все доступные стили.
- Исправлена ошибка, из-за которой в веб-версии некорректно срабатывало событие MouseRelease для компонента График: поле графика.
Alpha.HMI.Security. История изменений
^ [2.0.3 --> 2.0.10]
2.0.10
Улучшение
- Компоненту "Настройки безопасности: Контроль целостности" добавлены новые функции и события:
- функция SubscribeEtalonDiffConfig() предназначена для подписки на событие изменения файла конфигурации контроля целостности, функция UnsubscribeEtalonDiffConfig() - для отмены подписки. Можно не указывать входной параметр - тогда будет меняться состояние подписки на изменения локального файла; либо указать имя удаленной рабочей станции для подписки на изменения удаленного файла
- события EtalonDiffConfig и RemoteEtalonDiffConfig, активирующиеся при получении уведомления об изменении файла конфигурации контроля целостности на локальной или удаленной станции соответственно
- события EtalonDiffConfigFailed и RemoteEtalonDiffConfigFailed, активирующиеся при возникновении проблем при получении уведомления об изменении файла конфигурации контроля целостности на локальной или удаленной станции соответственно
Исправления
- Устранены ошибки, связанные с выполнением функции SetConfigureServer() компонента "Настройка безопасности: Менеджер":
- Увеличен таймаут запроса данных с удаленного LDAP-сервера. Ранее запрос часто завершался с ошибкой "Ответ не получен за отведенное время"
- Устранена причина, по которой при подключении к удаленному LDAP-серверу сохранение и восстановление конфигурации из резервной копии ошибочно выполнялось для локального сервера
- Исправлен неинформативный текст ошибки, возникающей при попытке редактирования конфигурации от имени пользователя, имеющего права на просмотр, но не редактирование конфигурации.
- Устранена причина аварийного завершения работы Alpha.HMI при указании слишком длинного пароля в качестве значения входного параметра функции AsyncLogin() компонента "Контекст безопасности".
2.0.9
Новые возможности
- Добавлена возможность подключения к произвольному серверу безопасности. Для этого компоненту "Настройка безопасности: Менеджер (SecurityManager)" добавлены новые:
- свойства CurrentLdapHost, CurrentLdapPort - для получения информации о текущем LDAP-сервере;
- функции SetConfigureServer(), ResetConfigureServer() - для подключения и отключения от LDAP-сервера;
- события LDAPServerChanged, LDAPServerChangeFailure - для получения информации о подключении к LDAP-серверу.
Улучшение
- При создании учетной записи с помощью компонента "Настройка безопасности: Пользователь (SecurityManagerUser)" теперь выполняется проверка уникальности указанных логинов и отображаемых имен.
Исправления
- Устранена причина, по которой функция RequestUsersList() компонента "Настройка безопасности: Менеджер (SecurityManager)" не предоставляла обновленный список пользователей после импорта учетных записей из домена.
- Исправлена некорректная активация событий DeleteUserComplete и DeleteUserFailed компонента "Настройка безопасности: Менеджер (SecurityManager)" при попытке удаления учетной записи с правом "Запрещено удалять пользователя если есть активная сессия (NonDeletebleWhileActive)".
- Исправлен текст ошибки, возникающей при попытке повторного входа пользователя с правом "Только одна пользовательская сессия (ActivityLimitedToOneWorkstation)". Ранее текст ошибки был неинформативен.
- Устранена ошибка, возникавшая при попытке создать приложение или право с длинным названием: допустимое количество символов увеличено до 100.
2.0.8
Исправления
- Устранена причина, по которой при неуспешном создании эталона активировалось событие CreateFinished компонента "Настройка безопасности: Контроль целостности".
- Исправлена ошибка, возникавшая при попытке указать ссылку на экземпляр типа "Контекст безопасности" из свойства какого-либо компонента.
2.0.7
Исправления
- Устранена причина, по которой свойство GuestMode компонента Контекст безопасности предоставляло некорректное значение при первом запуске проекта в рантайм.
- Функция ValidatePassword() компонента Настройка безопасности: Пользователь теперь возвращает корректные значения, если проверяемый пароль пустой или содержит пробелы.
- Исправлена ошибка, из-за которой права, назначенные роли, не удалялись при использовании функции RoleDeleteRight() компонента Настройка безопасности: Приложение.
2.0.5
Исправление
- Устранена причина, по которой функция GroupDisplayName() компонента Контекст безопасности не возвращала значений. Ошибка возникала при использовании предыдущей версии - 2.0.4.
2.0.4
Исправления
- Исправлена ошибка, из-за которой был невозможен вход под учетной записью, которой требовалась смена пароля, во время другой активной пользовательской сессии.
- Устранена причина активации двух событий компонента Настройка безопасности: Менеджер при вызове функции ExportConfiguration() - успешное и неуспешное сохранение резервной копии конфигурации - если сохранить копию пытался пользователь без прав на создание файлов в указанной папке.
- Теперь при сохранении учетной записи пользователя с помощью функции Save() компонента Настройка безопасности: Пользователь выполняется проверка, не указан ли пустой пароль.
- Исправлена ошибка, из-за которой у пользователя не учитывались права, назначенные его группе из приложения, если этой группе также была назначена роль из этого приложения.
- Устранена причина, по которой функция GetApplicationsList() компонента Настройка безопасности: Группа не возвращала список прав группы, унаследованных от родительской группы.
- Исправлена ошибка, из-за которой у компонента Настройка безопасности: Контроль целостности активировались события об успешном завершении операции при обращении к несуществующему узлу.
- События ConnectedChanged и CurrentUserChanged компонента Контекст безопасности снова активируются дважды при запуске проекта Alpha.HMI в рантайм. Два события - это более правильное поведение компонента. В первый раз событие активируется при начальной инициализации проекта. Второй раз - когда агент передает в проект информацию о текущем пользователе.
- Исправлены другие некритичные ошибки.
Alpha.HMI.Tables. История изменений
^ [2.0.4 --> 2.0.13]
2.0.13
Исправленные ошибки
- Устранено аварийное завершение работы Alpha.HMI при вызове функции SetDataAsJson для компонента Таблица: модель данных.
- Устранено зависание Alpha.HMI при сохранении больших объемов табличных данных в форматы *.csv и *.xlsx, а также реализован прогресс сохранения для указанных форматов
- Не работал перенос слов в заголовках столбцов в Alpha.HMI.WebViewer
- Устранены ошибки при работе в Alpha.HMI.Alarms:
- В колонтитулы печати не помещались две и более строк
- В ОС Astra Linux фильтрация отображаемых событий ошибочно была регистрозависимая
- Устранено аварийное завершение работы Alpha.HMI.Viewer:
- При экспорте журнала событий
- При закрытии окна с печатью
2.0.12
Исправленные ошибки
- Устранена причина возникновения ошибки при открытии в MS Excel экспортированного табличного файла.
- Функция GetRowTop() компонента Таблица всегда ошибочно возвращала 0.
- Устранено аварийное завершение работы Alpha.HMI.Viewer при экспорте журнала событий.
- (Веб-версия проекта) Пропадала возможность перемещаться по ячейкам таблицы (компонент Редактируемая таблица) с помощью клавиш управления курсором.
- В экспортированном табличном файле, открытом с помощью MS Excel, отсутствовал перенос строк (включенный с помощью свойства WordWrap компонента Таблица: столбец).
2.0.11
Новые возможности
- Добавлено автоматическое вычисление высоты колонтитулов и перенос строк. Размер колонтитула теперь не ограничен тремя строками.
- Компоненту Таблица добавлены:
- Функция PreparePrintPageInfo для распределения строк по страницам для печати. Параметр pagePixelHeight - высота страницы в пикселях, второй параметр includeMargins - флаг, показывающий учитывать ли размер колонтитулов при печати. Функция возвращает данные о колонтитулах в формате JSON
- Свойство Focus, позволяющее возвращать фокус на таблицу
Изменение
- Минимальное значение ширины столбца уменьшено с 20 до 5.
Исправленные ошибки
- Устранено периодическое аварийное завершение работы Alpha.HMI.WebViewer при использовании таблиц.
- Исправлена причина, приводившая к аварийному завершению Alpha.HMI.WebViewer при работе с Alpha.HMI.IntegrityControl, а именно при выполнении удаленного контроля целостности.
- Устранено зависание Alpha.HMI при выделении большого количества ячеек таблицы и нажатии правой кнопки мыши.
- Устранено сообщение об ошибке повреждения экспортированного табличного файла, возникавшего при открытии такого файла в Alpha.HMI.SecurityConfigurator.
- Устранено размытие границ таблицы и его содержимого при масштабировании.
- Исправлено ошибочное изменение высоты первых строк в таблице при изменении размера заголовка.
- Исправлены искажения кириллических символов в именах экспортированных файлов формата *.xlsx и *.csv.
- В подсказке функции SetRowsDataAsJson отображались неверные входные параметры. Теперь параметры заменены на актуальные.
2.0.10
Исправленные ошибки
Исправлены причины, приводившие к аварийным завершениям Alpha.HMI:
- При сохранении в *.pdf в Alpha.HMI.Trends.
- При запуске проекта в режим рантайма (периодическая ошибка).
Изменение
Изменено поведение декоратора. Теперь в массиве применяется последнее форматирование, а не первое, как было раньше.
2.0.9
Новая возможность
- Компоненту Таблица: столбец добавлено событие SortIndicatorChanged, позволяющее сменить направление сортировки в столбце.
Исправленные ошибки
- Устранена ошибочная обрезка заголовков столбцов таблицы при отображении их через Alpha.HMI.WebViewer.
- Исправлена ошибка, из-за которой в Alpha.HMI.Alarms отображались колонки, отображение которых отключено в настройках вида таблицы.
- Исправлены ошибки, приводившие к аварийному завершению Alpha.HMI.SecurityConfigurator.
- Устранена проблема, из-за которой в Alpha.HMI.Trends не удалялся сигнал из легенды кнопкой Delete.
- Решены проблемы обратной совместимости, из-за которых конструкции фильтров, работающие в Alpha.HMI.Tables 2.0.7, не работали в Alpha.HMI.Tables 2.0.8.
2.0.8
Исправленные ошибки
- Исправлено некорректное выравнивание текста в заголовках столбцов.
- Исправлена ошибка, из-за которой при изменении ширины столбца оставались следы от старых границ столбцов.
- Устранено аварийное завершение работы Alpha.HMI.WebViewer, возникавшее после установки Alpha.HMI.Tables версии 2.0.7.
- Устранено аварийное завершение работы Alpha.HMI при вызове контекстного меню у свойства Модель данных компонента Таблица.
- Замедление работы Alpha.HMI.SetPoints при прокрутке таблицы карты уставок.
- Исправлена ошибка, из-за которой в Alpha.HMI.Alarms выделенная строка смещалась при значении false для свойства LookLatestEvent.
- Исправлено зависание главного потока Alpha.HMI при экспорте из таблиц среза больших объемов в формат *.pdf
2.0.7
Исправленные ошибки
- Исправлена обработка прозрачности в цвете фона таблиц и столбцов.
- Устранено аварийное завершение работы Alpha.HMI.Trends (веб-версия) после нажатия кнопки печати.
- Исправлена ошибка, из-за которой заголовок таблицы перекрывал кнопку прокрутки таблицы.
- Скорректировано ошибочное поведение при двойном клике на стрелки прокрутки: теперь при двойном клике на любую из стрелок автопрокрутка не выполняется.
- Исправлена ошибка, из-за которой отрисовывались не все границы таблицы при задании цвета сетки.
2.0.5
Улучшение
- Теперь входные параметры функций компонентов имеют информативные имена.
Alpha.HMI.Alarms. История изменений
^ [2.2.0 --> 3.2.1]
3.2.0
Новые возможности
- Доработан механизм печати. Теперь в колонтитулах напечатанного документа помещается вся необходимая информация без потерь.
Также, добавлены:
- Настройки макета печати
- Перенос строк
- Точный расчёт количества листов и распределение строк по листам
- Появилась возможность подключения к произвольному серверу. Для этого на панели инструментов добавлена кнопка "Подключиться к серверу".
- Появилась возможность декорирования журнала исторических событий (без редактора). Для этого добавлено сохраняемое свойство HistoryCustomDecorator в тип ConfigEvents.
Улучшения
- Расширенный фильтр запроса теперь может работать по всем столбцам.
- В колонитул экспорта добавлены шаблоны Interval и MessageCount.
Исправленные ошибки
- Команда "Сортировка по умолчанию" в контекстном меню не устанавливала сортировку по времени генерации и времени срабатывания, а также не перезаписывала конфигурационный файл с параметрами сортировки.
- При переоткрытии окна печати вместо нужного содержимого шаблонов ViewFilter и Interval в колонтитуле ошибочно отображалась сама конструкция шаблона.
- Изменялись условия сортировки после их перемещения вверх или вниз внутри диалога сортировки.
- Кнопка прерывания запроса истории была заблокирована во время запроса.
- Отсутствовало подключение к серверу при запуске приложения без конфигурационного файла app_session.
- Исправлены другие некритичные ошибки.
3.1.0
Новые возможности
- Реализована возможность просмотра и квитирования событий из внешней системы событий (в частности: событий, полученных при помощи протокола BACnet).
- Добавлена функция SetAcknowledgeAvailability, позволяющая указывать зоны, для сообщений о событиях которых доступна возможность квитирования и комментирования. Для сообщений остальных зон возможность квитирования и комментирования блокируется.
- Для вывода детальной статистики на печатный лист теперь можно использовать шаблон колонтитула ${SeverityStatistics}.
Улучшения
- Теперь во всплывающей подсказке фильтра отображения время выводится в более информативном виде: DD.MM.YYYY HH:MM:SS.FFF, где DD – день, MM – месяц, YYYY – год, HH – часы, MM – минуты, SS – секунды, FFF - миллисекунды.
- Теперь при обнаружении звука, проиграть который невозможно, единожды выводится сообщение в журнал. Повторная попытка проиграть такой звук не выполняется.
Исправленные ошибки
- Не блокировалась команда "Добавить комментарий" при отсутствии сообщений в таблице.
- Исправлена ошибка, из-за которой при включенном режиме снимка и свойстве LookLatestEvent = true вновь сгенерированные события возвращали журнал в начало списка событий.
- Исправлены другие некритичные ошибки.
3.0.1
Исправленные ошибки
- Устранена причина, из-за которой не было возможности менять ширину столбцов при включенном разрешении на изменение (свойство Возможность изменения вида пользовательского интерфейса установлено в true и у пользователя есть право ChangingView).
3.0.0
Новые возможности
- Добавлена возможность отключать подтверждение квитирования для отдельного сообщения, сохраняя возможность оставлять включённым подтверждение квитирования всех сообщений. Для этого используйте флаги "Запрашивать комментарий при квитировании выбранного сообщения" и "Запрашивать комментарий при квитировании всех сообщений" на вкладке "Квитирование" окна параметров.
- Теперь можно отключить таймер кнопки отмены в окне ввода комментария квитирования. Для этого используйте флаг "Таймаут ввода комментария" на вкладке "Квитирование" окна параметров.
- Реализован словарь значений полей в фильтре отображения. Новые слова можно добавлять на вкладке "Фильтр отображения" окна параметров.
Изменения и улучшения
Удалены свойства
- Доступность кнопок квитирования всех сообщений (AckAllAvailable), позволявшее скрыть кнопки для квитирования всех сообщений в контекстном меню и на панели инструментов. Для скрытия этих кнопок рекомендуем использовать флаги в окне параметров (вкладка "Панель инструментов" и "Контекстное меню").
- Отображать строку состояния при запуске (DisplayStatePanelAtStartup) и Отображать панель инструментов при запуске (DisplayToolbarAtStartup), позволявшие скрыть строку состояния и панель инструментов. Для скрытия этих областей рекомендуем использовать свойства Показывать панель инструментов (DisplayToolbar) и Показывать строку состояния (DisplayStatePanel).
- Удалено уведомляющее поле objectId, в которое записывался идентификатор объекта, выделенного в столбце "Источник события". Теперь при действии в столбце "Источник объекта" срабатывает новое событие (ссылка на обработчик события) OnActionInSourceColumn, которое возвращает идентификатор объекта.
- Поверх всех окон (AlwaysOnTopForm), включающее расположение дочерних окон поверх других запущенных приложений.
- Не требовать квитирования группы Прочие (NotAckOtherEvents). Рекомендуем отключать требование квитирования при конфигурировании сервера (с помощью параметра AckRequired).
- Разрешить полный доступ (IsFullAccessAllowed), позволяющее ограничивать доступ к файловой системе Windows.
- Интервал запроса истории по умолчанию (DefaultHistoricalInterval), в котором устанавливался интервал запроса, действующий при переходе из оперативного режима в исторический. Теперь при открытии исторического режима будет установлен интервал 24 часа от реального времени или значение из сессии. Для загрузки нужного интервала теперь надо использовать команды контекстного меню кнопки "Запросить данные".
- Режим фильтрации источника событий (SourceFilterMode), позволяющее отфильтровать оперативные или исторические события по пути источника. Теперь фильтруются и оперативные и исторические события по пути, указанному в источнике AP.
- ShowRelativeTag (Отображать относительный тег источника сообщения). Теперь для указания тега родительского узла источника события добавляйте пользовательский столбец с идентификатором area_path или relative_tag.
Изменения в событиях
- Типу Alarms добавлена ссылка на команду OnOperativeLoad , которая вызывается при:
- при запуске приложения в оперативном режиме
- после переключения в оперативный из исторического
- при изменении параметров в оперативном и нажатии кнопки "Применить"
- У событий OnSoundPlayed, OnExport, OnSave, OnLoad, OnAck, OnOpenTrends и OnOpenForm тип сменился с "Команды" на "Обработчик события".
Изменения в функциях
- Удалена функция SetSize, задающая размер экземпляра типа Alarms и позиционирующая экземпляр на форме.
Определять размер и положение экземпляра можно:
- В дизайнере Alpha.HMI (свойства X, Y, Ширина (Width) и Высота (Height))
- В режиме рантайма, обращаясь к свойствам X, Y, Ширина (Width) и Высота (Height)
- Удалены функции DisplayCurrentEventsSnapshot и DisplayCurrentEvents, используемые для включения и отключения режима снимка. Вместо них теперь введена новая функция SetSnapshotState.
- Удалена функция GetEventParam.
Добавлены новые типы
- EventStatistics. Не отображается на форме и предназначен для вывода детальной статистики по событиям, которая раньше выводилась в статусной строке. В тип Alarms_Table добавлена ссылка на экземпляр типа EventStatistics куда записываются данные статистики.
- Alarms_Sounds. Не отображается на форме и предназначен только для воспроизведения звуков событий.
- Alarms_Table. Представляет собой таблицу сообщений о событиях без панели инструментов, статусной строки и возможности проигрывания звуков событий.
- Разрешения пользователя (Permissions). Не отображается на форме и предназначен для ограничения прав пользователей.
Другие изменения
- Переработаны настройки в окне "Параметры".
- Вкладка "Важность событий" переделана на "Звуки событий"
- На вкладке "Вид таблицы" добавлены возможности:
- скрывать заголовки столбцов
- включать сортировку по заголовкам
- включать перенос строк
- включать отображение миллисекунд
- включать слежение за последними событиями
- разрешать выбор нескольких строк в таблице
- скрывать полосы прокрутки
- Вкладка "Механизмы очистки" переделана на "Подключение"
- Добавлена вкладка "Фильтр отображения" для создания словаря для полей фильтров, а также для выбора столбцов, которые будут отображаться в окне "Фильтр пользователя"
- Добавлена вкладка "Квитирование"
- Файл сессии приложения session.json переименован на app_session.json.
- Ликвидирован тип UnacknowledgedEventsButton, приводящий к зависаниям.
- Добавлена возможность ограничения прав пользователей на действия в столбце "Источник события". Для этого в типе Разрешения пользователя (Permissions) есть свойство Разрешить действия в столбце источник события (ActionInSourceColumn).
- Все свойства экземпляра типа Alarms (кроме ActiveMode) вынесены на кладки окна параметров.
- Переработаны правила настроек экземпляра типа Alarms.
Теперь экземпляр можно настроить:
- Через функцию LoadConfiguration
- Задать свойства экземпляра в дизайнере. При первой загрузке настроек из файлов значения используются как начальные и далее сохраняются по команде пользователя
- Обращаться к свойствам экземпляра в рантайме
Исправленные ошибки
- В историческом режиме отображались оперативные сообщения.
- Устранён ошибочный пробел в имени свойства ClearSoundQueryTag.
- Не блокировалась кнопка запроса при некорректном интервале запроса.
- Исправлены причины зависания Alpha.HMI при ведении детальной статистики.
- Функция SetAdvancedRequestFilterAsJson не возвращала ошибку при неверном выражении фильтра.
- Фильтр, установленный функцией RequestRecentEvents, применялся и при запросе истории.
- При фильтрации по столбцу "Группа важности" таблица предпросмотра экспорта оказывалась ошибочно пуста.
- Исправлены прочие некритичные ошибки.
2.5.3
Исправленные ошибки
- Исправлена ошибка, из-за которой при включенном режиме снимка и свойстве LookLatestEvent = true вновь сгенерированные события возвращали журнал в начало списка событий.
2.5.2
Исправленные ошибки
- Исправлены ошибки в работе функции SetAdvancedRequestFilterAsJson, из-за которых активные события запрашивались, но не отображались в оперативном режиме.
2.5.1
Исправленные ошибки
- Исправлено зависание Alpha.HMI.Viewer при большом количестве событий и включенном свойстве Отображать детальную статистику по важности.
2.5.0
Новые возможности
- Типу Alarms добавлена ссылка на команду OnHistoryLoad, которая вызывается по окончании загрузки истории и после подгрузки истории в оперативный режим.
- Теперь последняя использованная папка запоминается и загружается при следующем запуске Alpha.HMI.Alarms. Такое возможно только если есть доступ к файловой системе.
- Добавлены новые права пользователей, используемые при работе с подсистемой безопасности :
- Выбор принтера (PrinterSelecting) для включения разрешения сменить принтер. Право добавлено вместо существующего права FileSystemAccess
- Принтеры (Printers), содержащее списки разрешенных и запрещённых принтеров
- Теперь последний используемый принтер сохраняется и предлагается при перезапуске окна печати.
- Добавлена возможность настройки состава фильтра отображения.
- Для типа Alarms добавлены новые свойства:
- Папка для экспорта и импорта (ExportImportFolderPath), позволяющее задавать папку экспорта событий
- Режим фильтрации источника событий (SourceFilterMode), позволяющее выбрать какие события (все или только по передаваемому источнику) будут отображаться в оперативном и историческом режиме
Улучшения
- Теперь SetAdvancedFilter и фильтр отображения "умеют" работать с операторами OR и AND.
- Ранее при фильтрации по признаку квитированности отображались только квитированные события. Теперь же отображаются еще и события, не требующие квитирования.
- Обновлён механизм экспорта для совместимости с Alpha.HMI.Tables 2.0.9.
- Добавлена возможность произвольной настройки колонтитулов экспорта и печати с помощью редактора колонтитулов.
Исправленные ошибки
- В веб-версии исправлено смещение списка столбцов в настройках вида таблицы.
- Ранее при отключенных правах на фильтрацию блокировался также доступ к хронологии и предустановленным интервалам. Теперь такая ошибка исправлена.
- Исправлена ошибка, из-за которой в строке состояния отсутствовало предупреждение о том, что тег сигнала очистки очереди звуков задан неверно.
- Исправлена ошибка, из-за которой функции AckAll и AckSelected экземпляра типа Alarms не работали сразу после вызова функции LogOn.
- Устранена ошибка, возникающая при выводе детальной статистики по важности вместе с установленной фильтрацией по квитированным событиям.
- Устранена причина, по которой не удавалось получить идентификатор объекта при действии в столбце "Источник события".
- Исправлены прочие некритичные ошибки.
2.4.1
Новая возможность
- Теперь можно отключить требование воспроизведения звука default.wav, который должен звучать по умолчанию, если никакой звук для события не указан. Для этого каждой группе важности добавлен флаг "Принудительное воспроизведение".
Исправленные ошибки
- Исправлена ошибка, из-за которой пользовательский столбец не заполнялся данными в историческом режиме.
- Исправлена ошибка, из-за которой не удавалось выполнить запрос истории и применить фильтр отображения в одном скрипте.
- Исправлены прочие ошибки.
2.4.0
Новые возможности
- Добавлена возможность задать цвета панели инструментов при помощи темы оформления.
- Добавлена возможность задать цвета контекстного меню при помощи темы оформления.
Исправленные ошибки
- Устранена причина, по которой данные событий OnSoundPlayed и OnExport помещались в одну переменную - EventParams [0], из-за чего данные одного события могли подмениться данными другого события. Теперь данные события OnSoundPlayed перемещены в переменную EventParams [10], и путь до звукового файла относительно папки ресурсов проекта по событию OnSoundPlayed можно теперь получить с помощью функции GetEventParam(10).
- Исправлены ошибки работы функции SetAdvancedFilter со словами, заканчивающимися на "НЕ".
- Решена проблема, из-за которой при наличии переноса строк вместо текущей страницы печаталось две страницы.
- Устранены зацикливания алгоритмов, из-за которых тормозило перемещение скролла мышью.
- Исправлены прочие ошибки.
2.3.0
Новые возможности
Улучшения
- Теперь при запуске приложения по ярлыку всегда выполняется принудительная компиляция проекта и автоматическое обновление выходной папки с результатом компиляции. Таким образом, теперь не нужно вручную очищать выходную папку для применения изменений, сделанных в проекте.
- Ранее состояние флага "Текст" из окна экспорта не сохранялось ни в какой в конфигурационный файл, а введенный текст сохранялся в файл с настройками печати (print.json). Теперь же состояние флага "Текст" и сам текст сохраняются отдельно от настроек печати - в конфигурационный файл export.json.
Исправленные ошибки
- Исправлены некритичные ошибки.
Alpha.HMI.Trends. История изменений
^ [2.1.1 --> 2.8.1]
2.8.1
Улучшение
- Теперь для двух и более трендовых полей отображается только одна общая шкала времени.
Исправленные ошибки
- Не обновлялся график оперативных значений после повторного подключения к источнику.
- Строковый сигнал отображался линией с точкой (вместо точки) на предпросмотре печати.
2.8.0
Новые возможности
- Доработки в легенде:
- Вывод среднего значения за видимый интервал времени (по оси Y). Значение выводится в новом столбце "Среднее"
- Возможность включать/выключать видимость графика. Для этого добавлен столбец "Видимость". Когда график скрывается, текст его строки отображается серым цветом
- Появилась возможность редактировать описание сигнала. Для этого в окне "Настройка графика" добавлено отдельное поле. Отредактированное описание отображается в легенде, в таблице данных и в печати. Включить/отключить возможность редактирования описания можно с помощью общего свойства Изменение вида (ChangingView), которое в целом влияет на открытие окна "Настройка графика".
- Добавлена возможность указывать данные, которые будут содержаться в выносках на пересечении графиков и реперных линий. Для этого у объекта ControlLineSettings добавлено поле Шаблон выноски репера (CrossPointLabelTemplate). Для значения и качества уже подготовлены шаблоны valueи{quality} (которые можно удалять). В дополнение к имеющимся шаблонам можно также указывать произвольный текст.
- Реализована возможность синхронизировать положение реперов на трендовых полях, расположенных друг под другом.
Для этого:
- В ссылке на обработчик события pControlLineChanged каждого экземпляра типа Трендовое поле сошлитесь на отдельный экземпляр компонента Обработчик события (из состава внешнего модуля CommonLib)
- Для первого трендового поля в обработчике события Invoke экземпляра компонента Обработчик события пропишите
Chart_2.Repers.Configure(Args.Get());
- Для второго трендового поля в обработчике события Invoke экземпляра компонента Обработчик события пропишите
Chart_1.Repers.Configure(Args.Get());
Исправленные ошибки
- Не прорисовывался график сигнала (при использовании типа Тренды (индикатор)), если значение сигнала не менялось.
- Не отображалось полное описание сигнала в легенде, если в ссылке на источник АР экземпляра типа Тренды был указан источник АР из глобальных объектов.
2.7.0
Улучшение
- Теперь все всплывающие диалоговые окна открываются не по центру родительского окна, а по центру родительского компонента.
Исправленные ошибки
- При печати не сохранялось положение выносок, установленное пользователем.
2.6.1
Новая возможность
- Теперь для сигналов в легенде доступны индивидуальные шкалы всех существующих трендовых полей. Так, при выборе для сигнала шкалы другого трендового поля, график автоматически переместится на это поле.
Исправленные ошибки
- В историческом режиме:
- Не отображался график, перемещенный с одного трендового поля на новое трендовое поле
- Поля даты выделялись красной рамкой при загрузке списка сигналов
- При переходе в режим кнопка запроса истории сигнализировала о возможности отметить запрос, хотя запроса не было
- Данные по уровню ошибочно отображались в таблице с данными, а также попадали в экспортированную таблицу.
- Данные, подгруженные из истории в оперативном режиме после масштабирования, не отображались в таблице данных.
- На выносках репера не отображались точность и качество значения.
- В оперативном режиме при подгрузке истории и одновременно при паузе пропадала часть графика за пределами хранимого интервала.
- В легенде не заполнялись столбцы "Значение", "Время" и "Качество" при включенной красной линии.
- Не применялись стили графиков, устанавливаемые с помощью функции ConfigureGraphic.
- Исправлена повторная загрузка пользовательского дерева при запуске с включенным свойством Показывать описание в дереве сигналов. Теперь дерево загружается один раз.
2.6.0
Новые возможности
- Реализован вывод на трендовое поле маркеров событий, источники которых (сигналы) пользователь добавил на трендовое поле.
Основные доработки:
- В дереве сигналов появилась индикация для сигналов с историей значений и сигналов - источников событий. Рядом с сигналом отображается соответствующая иконка
- Узлы дерева, которые являются источником событий, можно добавить на трендовое поле
Для этого:
- Типу Trends_Chart добавлена функция AddEventSource
- Для узлов дерева добавлены команды контекстного меню "Показать события" и "Добавить события на поле"
- События, отображаемые на поле вместе с графиками, сохраняются в архив с данными (*.avz)
- Значения строковых сигналов отображаются на трендовом поле в виде маркеров, положение которых задается в относительных единицах. Относительное значение указывается в настройках графика от 0 до 100, где 0% это низ поля графиков, а 100% это верх поля графиков
- Расширены настройки в окне "Параметры". Теперь здесь появились вкладки: "Поле графиков", "Данные", "Линии", "Реперы", "Легенда", "Дерево сигналов", "Импорт и экспорт", "Контекстное меню".
- Общее возможное количество линий увеличено до 100.
- Доработан механизм вывода уровней на трендовое поле:
- В историческом режиме, если у уровня нет значения в истории, используется значение из оперативного режима
- При выделении графика в легенде выделяется график и его уровни . Такое возможно только если уровни "привязаны" к этому графику. "Привязать" уровни к графику можно:
- В пользовательском дереве, указав теги уровней сигнала
- При использовании функции Trends_Chart.AddLevel можно указать для какого сигнала добавляется уровень
- Добавлено отображение прогресса экспорта табличных данных.
- Пользовательское дерево сигналов теперь выделено в отдельный тип Пользовательское дерево сигналов (Trends_CustomTree). Позволяет создавать собственные тренды на основе пользовательского файла.
- Добавлена возможность управлять видимостью уровней через контекстное меню легенды.
Улучшения
- В столбце легенды "Качество" теперь вместо кода качества отображается его текстовое описание.
- Теперь у точек данных отображаются всплывающие подсказки.
Исправленные ошибки
- (ОС Linux). Иногда не отображались графики на трендовом поле и данные в легенде при переключении режимов.
- Устранены сообщения при компиляции проекта об использовании устаревшей функции Files.WriteTextFile.
- Раньше выноски на форме предпросмотра печати отображались в положении по умолчанию, а не в том, в каком пользователь их расположил на трендовом поле. Теперь такая ошибка исправлена для выносок на пересечениях реперов и линий. Для выносок со временем ошибка будет исправлена в следующих выпусках.
2.5.3
Новые возможности
- Ранее конфигурация всегда загружалась автоматически из папки, указанной в свойстве ConfigurationPath (или из папки по умолчанию, если это свойство пустое). Теперь появилась возможность отключения автоматической загрузки конфигурации. Для этого типу Trends добавлено свойство Автоматически загружать конфигурацию (AutoLoadConfiguration), которое включено по умолчанию.
- Добавлена возможность индивидуальной настройки сессии (например, свойств Автоматическое определение диапазона значений для всех сигналов (AutoRange), Общий диапазон значений для всех сигналов (GlobalRanges) и Видимость легенды (ShowLegend)) для экземпляров типа Trends внутри одного проекта, а также в рамках нескольких проектов. Для этого у типа Trends появилось свойство Идентификатор экземпляра (Id), а настройки сессии пользователя сохраняются в пользовательской папке с именами "-session.json", где это идентификатор экземпляра.
Изменения
- Теперь, если автоматическая загрузка конфигурации отключена (с помощью нового свойства Автоматически загружать конфигурацию (AutoLoadConfiguration)) и конфигурация не загружена с помощью функции LoadConfiguration, кнопка "Параметры..." скрыта.
Исправленные ошибки
- Устранена причина, по которой не загружались исторические данные при добавлении графика командами контекстного меню дерева сигналов.
- Исправлена ошибка, из-за которой при использовании функции ForcedAddItem компонент запускался в режиме паузы.
- Устранены сообщения (при компиляции/запуске проекта в рантайм) об использовании устаревшей функции Files.WriteTextFile.
2.5.2
Исправленные ошибки
При запуске форм с функцией ForcedAddItem, используемой в обработчиках событий AboutToOpen / Opened:
- не отображался график;
- не был установлен отображаемый интервал;
- Alpha.HMI.Trends запускались в режиме приостановки рисования графиков.
2.5.1
Исправленные ошибки
- Исправлена критическая ошибка: при использовании пользовательского дерева сигналов старого формата (без уровней) не было возможности добавить график сигнала из дерева.
2.5.0
Улучшение
- Интервал времени в историческом режиме теперь сохраняется и автоматически восстанавливается при перезапуске формы.
Новые возможности
-
Добавлена возможность блокировки доступа к контекстному меню легенды. Для блокировки нужно в типе Разрешения (Trends_Permissions) отключить свойство безопасности Изменение вида.
-
Добавлены новые типы:
- Динамические линии (DynamicChart). Имеет вид поля графиков, на котором можно размещать линии и отдельные динамические точки, координаты которых зависят от значений выбранных вами сигналов. Для каждой точки на графике определяется пара сигналов, значения которых соответствуют координатам X и Y. Всего можно добавить 20 линий и 100 динамических точек
- Трендовое поле (Trends_Chart). Представляет собой облегченную версию типа Тренды (Trends) - не содержит дерево сигналов, панели инструментов и строки состояния
- Панель инструментов (Trends_Toolbar). Представляет собой обычную панель инструментов решения Alpha.HMI.Trends. Такую панель инструментов можно использовать совместно с экземпляром типа Трендовое поле (Trends_Chart)
-
Добавлена возможность скрывать уровни. Для этого в легенде в контекстном меню графика появился пункт "Уровни", в котором можно включать/отключать видимость как для одного, так и для нескольких уровней сразу.
-
Переработан формат пользовательского дерева сигналов.
Что нового:
- Теперь узлы дерева расположены в виде иерархии
- Для сигналов можно указывать прототип, в котором определены общие свойства, а также уровни графика
- Для сигналов можно указывать уровни, которые будут добавляться вместе с графиком. Параметры стилей линий можно группировать в отдельные блоки, а затем подставлять имена блоков при добавлении уровней сигналам
-
В состав дистрибутива входит файл примера trends_tree.sample.jtr, на основе которого вы можете сделать свой файл в новом формате. Старый формат файла с пользовательским деревом по-прежнему поддерживается, поэтому вы можете продолжать пользоваться им.
Исправленные ошибки
- Отсутствовала возможность перемещения по форме экземпляра типа Тренды (индикатор) (Trends_Indicator). Теперь возможность перемещения восстановлена.
- Исправлена ошибка, из-за которой при отсутствии разрешения на изменение вида ошибочно присутствовала команда "Разместить график на поле" > "Новое поле".
- Решены проблемы, из-за которых при перетаскивании графика на новое поле вновь появлялось удаленное трендовое поле и график размещался на нем.
- Исправлена ошибка, из-за которой репер не перемещался стрелками клавиатуры в историческом режиме.
- Исправлено ошибочное выставление нулевого качества у сигналов плохого качества в историческом режиме.
- Исправлено отсутствие диалога об успешном сохранении при экспорте.
2.4.1
Новые возможности
- Теперь в экспортируемой таблице (получаемой по нажатию кнопки "Экспортировать таблицу с данными в файл") данные автоматически отсортированы по времени, а не по значению, как раньше.
- Добавлена возможность обновлять дочерние элементы выделенного узла в дереве сигналов без переподключения к источнику. Для этого в контекстном меню появилась кнопка "Обновить".
- Добавлена возможность ограничения прав пользователя на:
- Скрытие/отображение таких элементов интерфейса как: панель инструментов, строка состояния, дерево сигналов, легенда и минитренды. Для этого типу Разрешения (Trends_Permissions) добавлено свойство Изменение вида (ChangingView). При отключенном свойстве нет возможности скрывать/отображать указанные области (на панели инструментов скрываются кнопки "Показать дерево сигналов", "Показать минитренды" и "Показать легенду", а в контекстном меню скрываются команды "Вид", "Отобразить только графики" и "Удалить поле графиков")
- На смену режима работы. Для этого типу Разрешения (Trends_Permissions)" добавлено свойство Изменение режима работы (ChangingWorkMode). При отключенном свойстве нет возможности переключаться между оперативным и историческим режимом, а также ставить на паузу и возвращаться к текущему времени (на панели инструментов скрываются кнопки "Оперативный режим", "Исторический режим", "Приостановить/Возобновить", а в контекстном меню скрывается команда "Приостановить/Возобновить")
- Добавлена возможность изменять цвет текста на графиках. Для этого типу Trends_Theme добавлено свойство Цвет меток осей (AxisFontColor).
Исправленные ошибки
- Устранено зависание приложение при наличии объемного файла пользовательского дерева.
- Устранена самопроизвольная постановка Alpha.HMI.Trends на паузу.
- Исправлены ошибки в работе команды "Разместить график на шкале" > "Отдельная шкала", из-за которых график не перемещался со старой шкалы на новую.
- Исправлены ошибки отображения альтернативного графика при установленном значении 1 (метка времени сервера) для настройки ModeTimeSourceServer в конфигурационном файле.
- Не происходила очистка неиспользуемых интервалов исторического ряда из памяти. Из-за этого данные в столбцах "Минимум", "Максимум" и "Количество" не обновлялись до текущих при масштабировании. Теперь очистка выполняется.
- Устранена причина, по которой не выполнялось восстановление соединения при перезапуске Alpha.AccessPoint.
- В веб-версии:
- Флаги в окне параметров не сохраняли своё состояние после повторного открытия окна
- Исправлено смещение за пределы родительского окна контекстного меню окна "Таблица данных"
- Устранены множественные сообщения об ошибках при запуске формы с добавленным экземпляром типа Trends
- Исправлена ошибка, из-за которой отсутствовали заголовки у столбцов в экспортируемой таблице.
- Исправлены ошибки, приводящие к невозможности настроить видимость столбцов в легенде и выводу сообщений об ошибках в журнал.
- Решена проблема, из-за которой не восстанавливался график из списка сигналов, сохраненном в историческом режиме.
- В предыдущей версии Alpha.HMI.Trends некорректно интерпретировался абсолютный путь к пользовательскому дереву сигналов.
- Исправлены ошибки, из-за которых некорректно открывались окна во фрейме после загрузки списка сигналов, полученных с Alpha.HMI.Trends другого проекта.
2.4.0
Изменения
- Для запрета доступа к файловой системе:
- В окне печати вместо кнопки "Предпросмотр печати" добавлены возможности выбора из выпадающего списка доступных принтеров и выбора ориентации страниц (Книжная/Альбомная)
- Вместо двух команд "Выбрать параметры печати..." и "Предпросмотр печати..." у выпадающего меню кнопки "Печать..." оставлена одна команда "Предпросмотр печати...", открывающая форму предпросмотра печати
- Для форматирования значений теперь вместо поля YAxisPrecision из типа Trends нужно использовать новое поле ValueFormat типа Trends_Settings.
- В списке доступных для открытия типов файлов теперь остались типы: "Список сигналов (.jtsl)", "Архив с данными (.avz)" и "Файл с данными (.csv)".
- Заголовок окна предпросмотра печати изменен с "Печать" на "Предпросмотр печати".
Исправленные ошибки
- Решена проблема, из-за которой сигнал не добавлялся на трендовое поле, если у источника AP в свойстве Путь было задано непустое значение.
- Исправлена ошибка, из-за которой сигнал, найденный с использованием строки поиска в имени папки, не добавлялся на трендовое поле.
- Устранена причина, по которой при использовании функции SaveSignalsList ошибочно появлялось диалоговое окно с результатом сохранения.
- Решена проблема, из-за которой при пустой легенде и трендовом поле в окне Таблица данных ошибочно содержались данные, загруженные из файла.
- Исправлена ошибка, из-за которой не запрашивались исторические данные при смещении интервала времени с помощью кнопок "Перейти к предыдущему интервалу времени" и "Перейти к следующему интервалу времени".
- Исправлена ошибка, из-за которой не возобновлялась оперативная отрисовка после масштабирования.
- Устранена причина, по которой переставало отображаться качество на выносках репера после смены режима с оперативного на исторический.
- Исправлена ошибка, из-за которой в выноске репера не отображалось качество для графика, расположенного на втором трендовом поле.
- Исправлена ошибка, из-за которой точки графика, открытого из файла, периодически начинали самостоятельно удаляться.
- Устранена причина, по которой отключенная видимость панели инструментов или кнопок на панели инструментов не сохранялась после перезапуска.
- Устранена причина, по которой иногда вместе с добавляемым сигналом на трендовое поле добавлялся сигнал с ошибкой подписки.
- Исправлена ошибка, из-за которой путь сохранения не запоминался при сохранении с помощью команды "Экспортировать таблицу с данными в файл".
- Изменены коэффициенты пересчёта Бар и МПа в кгс/см2, т.к. ранее использовались неправильные коэффициенты.
2.3.0
Новые возможности
- Добавлена возможность подключения к произвольному серверу при запуске приложения или использовании экранной формы Trends_App. Для этого на панель инструментов добавлена кнопка "Подключиться к серверу...". Рядом расположена кнопка открытия выпадающего списка, хранящего до десяти последних подключений.
- Разработан новый тип Trends_Indicator. Тип предназначен для отображения графиков технологических параметров на мнемосхеме. Особенности:
- работает только в оперативном режиме
- в одном экземпляре типа одновременно может отображаться не больше десяти линий
- содержит только одно поле графиков
- занимает мало места на экране
- Теперь при экспорте в файл или при печати данных можно использовать колонтитулы. Верхний и нижний колонтитул редактируются отдельно: для них могут быть указаны разные текст и положение. При формировании текста колонтитула можно использовать текстовые шаблоны. Для этого понадобится экземпляр типа Текстовые шаблоны из библиотеки CommonLib.
- Создайте экземпляр типа Текстовые шаблоны. С помощью функции Set(string name, varuant value) компонента создайте сам текстовый шаблон. Пример:
Templates.Set("Участок","Участок 1");
- Сошлитесь на созданный экземпляр из свойства Шаблоны (init_Templates) типа Trends.
Тогда в окне редактирования колонтитулов станет активной кнопка "Вставить шаблон", раскрывающая список доступных текстовых шаблонов.
- Добавлена возможность ограничения доступа пользователя к кнопкам "Экспорт", "Открыть", "Сохранить" и "Печать". Для этого типу "Разрешения (Trends_Permissions)" добавлены свойства Печать (Printing) и Экспорт в файл (Export). При отсутствии прав на печать скрыта кнопка "Печать" на панели инструментов. При отсутствии прав на экспорт в файл, скрыты кнопки "Сохранить в файл", "Экспорт данных в файл", "Сохранить текущее изображение в файл" на панели инструментов и команда контекстного меню "Сохранить текущее изображение в файл".
Если для определения прав доступа используется сервер безопасности, пользователям необходимо назначить права "Печать (Printing)" и "Экспорт в файл (Export)" с нужными значениями.
- Появилась возможность получать описание ошибки, возникающей при экспорте данных в файл. Для этого при обработке событий OnTableExport, OnDataSave, OnSaveSignalList типа Trends следует вызывать внутреннюю функцию GetEventParam(int4 numParam). Пример:
error: string = GetEventParam(1);
Улучшения
- Если пользовательское дерево открывается из некорректного файла *.json, теперь появляется диалоговое окно с уведомлением об ошибке. Ранее такое уведомление появлялось только в журнале времени выполнения.
- Если у сигнала, добавляемого на трендовое поле из файла пользовательского дерева, указаны дополнительные поля "LowRange (Нижний предел значений)" и "HighRange (Верхний предел значений)", то график сигнала будет отрисован с присвоением указанного диапазона значений.
- Панель инструментов теперь оформляется в соответствии с выбранной темой.
- Теперь при изменении настроек периода отображения в историческом режиме запрос данных выполняется не сразу, а после нажатия кнопки "Запрос исторических данных".
Исправление
- Устранена причина, по которой графики не отображались на трендовом поле при добавлении их после включения на панели инструментов функций "Индивидуальный масштаб" и "Фиксированный диапазон значений".
2.2.2
Новые возможности
-
Теперь можно ограничивать доступ пользователя к файловой системе
- Для ограничения доступа укажите значение false в свойстве Доступность файловой системы (FileSystemAccess) у объекта разрешений Permissions.
- При ограниченном доступе в файловых диалогах нельзя просматривать дерево папок и создавать новые папки.
- Доступна только папка, указанная в свойстве Папка для экспорта и импорта (ExportImportFolderPath) экземпляра типа Trends. Через эту папку можно сохранять и загружать список сигналов, работать с файлами графиков, экспортировать данные, а также сохранять текущее изображение.
Если же в свойстве Папка для экспорта и импорта не указывать путь к определенной папке, то по умолчанию будет использоваться папка C:\ProgramData\Automiq\HMI.Trends\Export (ОС Windows) или /home//Automiq/HMI.Trends/Export (ОС Linux).
-
При неудачном сохранении текущего изображения в файл или экспорте данных в файл теперь возникает уведомление с текстом ошибки.
-
События сохранения текущего изображения в файл (ScreenSaved), экспорта графиков в файл (DataSaved) и сохранения таблицы значений в файл (TableExported) теперь можно самостоятельно обрабатывать и выводить статусы сохранения в журнал. Для этого событиям добавлен второй аргумент, к которому можно обращаться для получения текста ошибки.
Например, для вывода в журнал сообщения о сохранении текущего изображения в файл добавьте экземпляру типа Trends команду (к примеру, с именем actOnScreenSave) с кодом обработчика в событии Invoked:
filePath: string = GetEventParam(0);
error: string = GetEventParam(1); //обращаемся ко второму аргументу
if (error == "")
Debug.Log("Выполнено сохранение текущего изображения в файл " + filePath);
else Debug.Log("Ошибка сохранения текущего изображения в файл " + filePath + "\n" + error);
А в свойстве OnScreenSave экземпляра типа Trends сошлитесь на добавленную команду actOnScreenSave.
-
Для вывода вывода в журнал сообщения об экспорте графиков в файл нужно аналогично добавить команду (например, с именем actOnDataSave) экземпляру типа Trends, а затем сослаться на эту команду в свойстве OnDataSave экземпляра типа Trends.
-
Для вывода в журнал сообщения о сохранении таблицы значений в файл нужно добавить команду (например, с именем actOnTableExport) экземпляру типа Trends, а затем сослаться на эту команду в свойстве OnTableExport экземпляра типа Trends.
Исправленные ошибки
- Исправлена ошибка, из-за которой не приостанавливалась отрисовка графиков при открытии окна "Таблица данных".
2.2.1
Новая возможность
- Расширены возможности существующей функции ConfigureGraphic. Теперь с её помощью можно также управлять видимостью отдельных графиков на трендовом поле. Для отображения или скрытия графика нужно при вызове функции ConfigureGraphic задать в её входном параметре (формат json) нужное значение параметра visible: false - для скрытия графика или true - для его отображения.
Исправленные ошибки
- Исправлена ошибка, из-за которой выноска репера на дополнительных трендовых полях не скрывалась при отключении видимости выносок.
- Устранена проблема, из-за которой выноски репера не скрывались после работы функции SetGraphicMarkerLabelVisible в историческом режиме.
2.2.0
Улучшения
- Максимальное количество графиков увеличено с 20 до 30.
- Реализованы настраиваемые стили графиков. Теперь в файле settings.json указываются стили, которые применяются для новых графиков по умолчанию.
- Изменять стили графика можно и с помощью функции ConfigureGraphic.
Настраиваемые стили позволяют изменять стиль линии для графика параметра плохого качества и цвет графика при выходе значения параметра за заданные пределы.
Изменение
- Удалены свойства Включать индикацию ручного ввода (EnableManualColor) и Цвет ручного ввода по умолчанию (DefaultManualColor). Данные параметры теперь настраиваются в файле settings.json.
Alpha.HMI.CommonLib. История изменений
^ [1.7.2 --> 2.3.0]
2.3.0
Улучшения
- В Журнале сообщений теперь можно увеличить количество отображаемых строк, указав нужное значение в свойстве Максимальное количество строк (MaxRowCount). При превышении указанного здесь количества строк устаревшие сообщения будут автоматически удалены.
- Типу Редактируемая таблица добавлены новые свойства и функции для настройки сохранения и восстановления ширины столбцов - GetViewSettings(), UpdateView(), pViewChanged, pColumnWidthChanged.
2.2.0
Новая возможность
Разработан новый тип - Редактируемая таблица с возможностью редактирования значений ячеек. В экземпляре типа можно:
- конфигурировать столбцы таблицы на основе модели данных или с помощью функции;
- использовать тему оформления для декорирования таблицы с возможностью переопределить декоратор;
- добавлять и удалять строки с помощью клавиш;
- проверять корректность ввода в редакторе значений;
- добавлять пользовательские редакторы значений;
- использовать встроенные типы редакторов значений: поле ввода, выпадающий список и флажок.
Улучшения
- Теперь можно настраивать открытие диалогового окна по центру родительского компонента. Для этого компонентам-диалогам добавлено свойство-ссылка на родительский компонент pParent.
- Положение Диалог смены пароля теперь зависит от положения Диалог авторизации, из которого оно открывается.
- Высоту окна Редактор колонтитулов теперь можно менять.
- Добавлена возможность проверять и устанавливать фокус в Редакторе целого числа. Для этого добавлены свойство IsFocused (В фокусе ввода) и функция SetFocus().
- Типу Утилиты для работы с окном добавлена функция FitToRect(), которая размещает форму в центре заданного прямоугольника.
- Типу Конвертер значений добавлена функция GetVariantDataType(), которая возвращает тип данных переменной variant в строковом виде.
2.1.3
Улучшения
- Сообщения из Журнала сообщений теперь можно экспортировать в файл. Для этого на панели инструментов журнала добавлена кнопка экспорта, а самому компоненту - новые свойства Доступность файловой системы и Папка для экспорта, позволяющие ограничить доступность файловой системы для пользователей одной папкой.
- В Диалоге авторизации пользователя кнопка смены пароля стала недоступной для пользователей, импортированных из домена, так как менять пароли для таких пользователей следует средствами ОС.
2.1.2
Улучшения
- В Дереве сигналов теперь:
- При наведении курсора на узел всплывает подсказка с названием и описанием узла
- В результатах поиска по дереву отображаются теги вместо имен для найденных сигналов
- Сигналы-массивы помечены специальной иконкой
- В Диалоге подключения к серверу для удобства переставлены поля ввода: теперь сначала указывается порт, затем - порт истории.
- Компоненту Утилиты для работы с файлами добавлены ссылка на обработчик события pErrorOccurred и свойство LastError. С помощью них можно получить описание ошибки, возникшей в результате работы с файлами.
Исправления
Alpha.HMI.WebViewer
Для типа Дерево сигналов устранена причина моргания иконок атрибутов сигнала (наличие истории, источник событий).
- Устранена причина, по которой кнопки, добавленные на Панель инструментов, отображались некорректно после нескольких переключений у них значения свойства Enabled.
2.1.1
Новые возможности
- Создан новый компонент Утилиты для работы с файлами. С помощью функций компонента ReadFromFile() / WriteToFile() можно быстро прочитать/записать указанный во входных параметрах текстовый файл.
- Функция GetCurrentItemInfo() компонента Дерево сигналов теперь может предоставлять данные не только о сигналах, но и о папках. Информация о папках также доступна в аргументах обработчиков событий pDragStarted и pDoubleClicked.
- Функция GetCurrentItemInfo() компонента Дерево сигналов теперь предоставляет больше данных о выделенном сигнале:
- доступна ли запись значений (атрибут "isWritable")
- ведется ли запись истории значений (атрибут "isHistorized")
- является ли сигнал источником событий (атрибут "isEventSource")
Эта информация также доступна в аргументах обработчиков событий pDragStarted и pDoubleClicked дерева.
- В Дерево сигналов добавлено новое свойство - Показывать столбец атрибутов (ShowAttributesColumn). Если выставить для него значение "true", то справа от названия каждого сигнала в дереве будет отображен столбец с иконками атрибутов сигнала. По иконкам можно будет понять, является ли сигнал источником событий, и ведется ли для него запись истории значений.
- В Панель поиска добавлены:
- свойство pGotFocus - ссылка на команду, которая должна вызываться при получении фокуса у панели поиска
- функция SetFocus(), устанавливающая фокус на панели поиска
- Типу Конвертер значений добавлена функция QualityCodeToString(), предоставляющая описание качества сигнала на основе его числового кода.
Исправления
Результат поиска по дереву сигналов, в котором включено отображение описаний, отображал имена, а не описания найденных сигналов.
2.1.0
Новые возможности
- Добавлены новые компоненты:
- Редактор даты и времени (DateTimeEditor), предназначенный для ввода даты и времени в виде день:месяц:год и часы:минуты:секунды
- Тип Нажата клавиша CapsLock (CapsLockWarning), предназначенный для отображения предупреждения о включенном CapsLock, например, в диалоговых окнах
- В Редактор даты (DateEditor) и Редактор времени (TimeEditor) добавлены:
- свойство pGotFocus - ссылка на команду, которая должна вызываться при получении фокуса у поля ввода редактора
- функция SetFocus(), устанавливающая фокус на поле ввода редактора
- свойство LastFocused, хранящее информацию о поле, в котором находится фокус (или находился в последний раз)
Исправление
- Устранена причина, по которой в "Дереве сигналов" (ItemTree) невозможно было просмотреть содержимое динамической папки после её обновления.
2.0.2
Новая возможность
- Разработана новая функция GetMonitorForRect() компонента Утилиты для работы с окном, служащая для определения монитора, на котором отображается большая часть прямоугольника. Может использоваться для открытия дочерней формы в центре родительского компонента.
Улучшение
- Улучшено выполнение функции FitToMonitor() компонента Утилиты для работы с окном: при размещении окна на указанном мониторе теперь учитываются примерные толщина границ и высота заголовка окна.
Исправление
- Поиск в дереве сигналов по названию папки выполнялся некорректно: при раскрытии найденной папки её содержимое помещалось в корень дерева.
2.0.1
Новые возможности
- Для компонента Дерево сигналов реализованы функции Find(pattern: string) и CancelFind(). Первая предназначена для поиска сигналов в дереве по шаблону названия, вторая - для отмены поиска.
- Компоненту Редактор интервала времени добавлено свойство-ссылка на событие pShiftCompleted. Указанное событие активируется только при смещении интервала времени с помощью кнопок "Перейти к предыдущем интервалу времени" и "Перейти к следующему интервалу времени".
Улучшения
Размеры некоторых компонентов увеличены для удобства использования на сенсорной панели. Среди них:
- ширина Кнопки выпадающего списка;
- ширина кнопок изменения значения в Редакторе целого числа, Редакторе времени и Редакторе интервала времени;
- ширина кнопки вызова календаря в Редакторе даты;
- толщина Горизонтального сплиттера и Вертикального сплиттера.
Исправления
- Дерево сигналов теперь очищается в процессе подключения к новому серверу.
- Пустое Меню теперь не открывается. Ранее меню, не содержавшее элементов, открывалось в виде короткой полосы толщиной в один пиксель.
2.0.0
Изменения
- Англоязычные названия компонентов заменены русскоязычными.
- Для корректной работы компонента Дерево сигналов (ItemTree) в свойствах pDragStarted и pDoubleClicked вместо ссылок на экземпляр типа Команда необходимо указывать ссылки на экземпляр нового типа Обработчик события, описанный в блоке "Новые возможности".
- У компонентов Редактор времени (TimeEditor), Редактор даты (DateEditor) и Редактор интервала времени (IntervalEditor) удалено свойство IsVisible. Вместо него достаточно использовать стандартное свойство Visible.
- Компонент Редактор интервала времени (IntervalEditor) теперь использует шрифт и цвет фона из указанного экземпляра типа Тема.
Новые возможности
- Созданы новые компоненты библиотеки:
- Обработчик события, позволяющий создать пользовательское событие с возможностью передачи его аргументов
- Редактор колонтитула, позволяющий создавать колонтитулы, например, для таблиц, при сохранении в файл или при печати на принтере
- Тип Текстовые шаблоны, представляющий собой набор текстовых шаблонов, которые могут быть подставлены, например, в текст колонтитула
- Компоненты Горизонтальный сплиттер и Вертикальный сплиттер, предназначенные для разделения области пользовательского интерфейса на две части с возможностью изменять размеры этих частей с помощью мышки
- Расширены возможности применения компонента Тема:
- Добавлены свойства для цветового оформления панели инструментов
- Добавлены свойства для цветового оформления меню
- Добавлен вспомогательный тип Тема оформления панели инструментов, позволяющий менять тему оформления визуальных компонентов, добавленных на панель инструментов.
Исправления
- Добавлена проверка существования папки в диалогах открытия и сохранения файлов. Ранее при указании пустого пути или несуществующей папки была доступна кнопка Сохранить, а при ее нажатии в разных случаях появлялись сообщения об успешном сохранении файла или об ошибке.
- Устранена причина, по которой экранная клавиатура в AstraLinux открывалась только при первом нажатии Кнопки вызова экранной клавиатуры.
1.7.3
Улучшение
- Теперь при авторизации пользователя после изменения парольных политик в окне LoginDialog предлагается сменить пароль, если старый пароль не подходит новым парольным политикам. Ранее в таком случае возникала ошибка.
Alpha.HMI.Statistics. История изменений
^ [1.0.1 --> 1.1.1]
1.1.1
Исправления
- Устранена причина, по которой не удавалось создать файл статистики *.jstat сервера, защищенного паролем.
- После отмены поиска по дереву сигналов, выполнявшегося по нескольким серверам, их содержимое переставало отображаться в дереве.
- В таблице параметров не отображался единственный сигнал добавленной в таблицу секции или папки.
WebViewer
Поиск в дереве сигналов не выполнялся с первого раза.
1.1.0
Новая возможность
Разработана возможность ограничения доступа пользователей к файловой системе.
-
Создан тип Statistics_Permissions со следующими свойствами:
- FileSystemAccess (Доступность файловой системы), значение которого регулирует доступ к системе;
- UseSecurity (Использовать сервер безопасности для определения прав), позволяющее получать информацию о доступе к файловой системе текущего пользователя из подсистемы безопасности Alpha.Security;
- SecurityApplication (Имя приложения с правами безопасности), хранящее название приложения подсистемы безопасности, которое содержит право доступа к файловой системе "FileSystemAccess (Доступность файловой системы)".
-
Создан тип Statistics_Settings со свойствами, значения которых могут содержать путь к соответствующим папкам:
- ParameterListFolder (Папка со списками параметров);
- SnapshotFolder (Папка с файлами статистики);
- ExportFolder (Папка для экспорта).
Если у пользователя отсутствует доступ к файловой системе (FileSystemAccess = false), то:
- в файловых диалогах будет недоступен просмотр дерева папок и создание новых папок;
- сохранение и загрузка списка параметров будут возможны только из папки, указанной в ParameterListFolder (Папка со списками параметров);
- работа с файлами статистики будет возможна только в папке, указанной в SnapshotFolder (Папка с файлами статистики);
- экспорт будет возможен только в папку, указанную в ExportFolder (Папка для экспорта).
По умолчанию используются папки ParameterLists, Shapshots и Export, расположенные в:
C:\ProgramData\Automiq\HMI.Statistics
- в ОС Windows;
/home/<user>/Automiq/HMI.Statistics
- в ОС Linux.
Улучшение
- Панель инструментов теперь оформляется в соответствии с выбранной темой.
1.0.2
Исправления
- Устранена причина дублирования идентификаторов, происходившего при попытке встроить Alpha.HMI.Statistics в проект Alpha.HMI.
- Свойство Отображать дерево (Tree Visible) типа Statistics теперь работает корректно. Ранее при назначении свойству значения false дерево не скрывалось.
- Устранена причина нарушения работы серверов, по которым выполнялся поиск в дереве сигналов.
Alpha.HMI.IntegrityControl. История изменений
^ [2.0.3 --> 2.2.0]
2.2.0
Улучшение
- Из результатов проверки целостности исключен столбец "Дополнительная информация". Описания нарушений целостности теперь отображаются в виде всплывающих подсказок.
Исправления
- Экспорт результатов проверки целостности в файл теперь выполняется корректно.
- Строка папки, содержащей файл с нарушением целостности, теперь окрашивается в тот же цвет, что и файл с нарушением.
2.1.2
Улучшение
- Ускорена загрузка результатов контроля целостности файлов.
2.1.1
Улучшение
- Панель инструментов теперь оформляется в соответствии с выбранной темой.
2.1.0
Новые возможности
- Папка для экспорта теперь указывается через поле ExportFolder отдельного типа IntegrityControl_Settings . Такой способ задания папки экспорта заменил существующий ранее - через свойство ExportFolder компонента IntegrityControl. Если же для указания папки экспорта не использовать тип IntegrityControl_Settings, данные будут экспортироваться в папку:
- ОС Windows: C:\ProgramData\Automiq\HMI.IntegrityControl\Export
- ОС Linux: /home//Automiq/HMI.IntegrityControl/Export
- Реализована возможность ограничения доступа пользователя к файловой системе. Для ограничения доступа укажите значение false в свойстве FileSystemAccess у объекта разрешений Permissions. При ограниченном доступе для пользователя:
- В файловых диалогах будет недоступен просмотр дерева папок и создание новых папок.
- Экспорт будет возможен только в папку экспорта, указанную в свойстве ExportFolder типа IntegrityControl_Settings.
Alpha.HMI.SetPoints. История изменений
^ [2.1.0 --> 2.4.1]
2.4.1
Исправление
- Устранена причина, по которой редактор значения выбранной ячейки открывался в случайном месте, если помимо выбранной ячейки были выделены и другие ячейки таблицы.
2.4.0
Улучшения
- Для уставок с типом значения bool теперь можно выбирать формат отображения значения. Формат отображения указывается в конфигурационном файле в поле Format в следующем виде: falseText|trueText.
- В таблице просмотра уставок теперь можно включить фильтрацию значений по столбцам.
- Экранную клавиатуру теперь можно вызвать в любом месте, где подразумевается ввод значений. Ранее экранную клавиатуру можно было вызвать только в окне подключения к серверу. Чтобы отобразить кнопку вызова экранной клавиатуры в приложении, измените в конфигурационном файле app_settings.json значения параметров раздела ScreenKeyboard.
Исправления
- Экспорт карт уставок в файл теперь по умолчанию выполняется в папку, расположенную в C:\ProgramData\Automiq\HMI.SetPoints. Ранее папка экспорта располагалась в папке пользователя.
- Устранена причина, по которой изменение значения свойства Доступность файловой системы (FileSystemAccess) типа Разрешения не приводило к фактическому изменению доступности файловой системы в диалоговом окне экспорта сообщений из журнала в файл.
- Значения уставок в таблице и значения уставок в окне сравнения с источником теперь форматируются одинаково.
- Устранена причина ошибочного автоматического подключения к локальному серверу при перезапуске приложения, возникавшего в том случае, если при предыдущем использовании приложения не было выполнено ни одного подключения.
- Устранена причина возникновения ошибок при подключении экземпляра типа SetPoints к источнику данных, у которого указано значение свойства Путь (Path).
2.3.0
Новая возможность
- Добавлена возможность изменять настройки сразу нескольких уставок, если предварительно выделить их.
Изменение
- Теперь значения уставок вводятся непосредственно в ячейки по двойному щелчку левой кнопки мыши, нажатию клавиши F2 или нажатию клавиши текста/цифр. Такие возможности ввода значений появились благодаря тому, что таблица теперь построена на основе типа Редактируемая таблица (EditableTable) из библиотеки Alpha.HMI.CommonLib.
Исправленная ошибка
- Настройки уставок не подгружались из постоянного архива в оперативный архив.
2.2.3
Новые возможности
- Добавлена возможность отслеживать выход значения бита настроек уставки за пределы типа данных тега. Теперь при выходе значения в журнале выводится соответствующее сообщение.
Изменения
- Некорректно устанавливались размеры форм таблицы при открытии карт уставок. Это происходило из-за доработок в Alpha.HMI: изменения механизма установки геометрии и позиционирования окна на мониторе. Теперь внутренние механизмы Alpha.HMI и Alpha.HMI.SetPoints приведены в соответствие и размеры формы таблицы устанавливаются верно.
Исправленные ошибки
- Значение уставки, заданное в режиме "Архив", не сохранялось в этом же режиме после перезапуска. Теперь оперативный архив обновляется после каждого изменения, внесенного пользователем в режиме "Архив". Значения в оперативном архиве хранятся даже после перезапуска.
- При сравнении значений с источником в таблице отображались не все существующие уставки.
- Не применялась тема оформления к карте уставок.
- При повторной загрузке конфигурации:
- Сообщения об отсутствующих тегах, выведенные при первой загрузке конфигурации, повторно не выводились.
- Единственная карта уставок, которая открывалась сразу же при первой загрузке конфигурации, повторно не открывалась.
- Не редактировались и не применялись колонтитулы при экспорте одной карты уставок.
2.2.2
Изменения
- Были внесены изменения в механизм получения массива изменений уставок . Ранее изменения в таком массиве могли перетираться. Теперь же изменения накапливаются в json-массиве до их первого получения.
Для возможности получения массива изменений и их дальнейшей обработки:
- В типе SetPoints у события Уставки были изменены (pSetPointsChanged) тип "Команда" сменился на тип "Обработчик события".
- Для форм SetPoints_Form и SetPoints_Page добавлены ссылки на pSetPointsChanged.
Если вы желаете получить массив изменений на своей форме:
- В свойстве Уставки были изменены (pSetPointsChanged) экземпляра типа SetPoints сошлитесь на экземпляр компонента "Обработчик события" (из состава CommonLib).
- В обработчике события Invoke экземпляра компонента "Обработчик события" пропишите вызов функции Args.Get(). Результатом вызова этой функции будет json-строка с массивом изменений.
Исправленные ошибки
- Устранены сообщения (при компиляции/запуске проекта в рантайм) об использовании устаревшей функции Files.WriteTextFile из состава Alpha.HMI.CommonLib.
- Исправлена ошибка, из-за которой на предпросмотр печати и на печать не выводился последний столбец карты уставок.
2.2.1
Новая возможность
- Добавлены всплывающие подсказки для ячеек с ошибочным значением уставки.
Изменение
- Теперь при отсутствии уставок, которые можно изменять, скрываются кнопки "Сохранить в ПЛК", "Прочитать из ПЛК" и "Загрузить из архива". Такое изменение реализовано по причине того, что задачи, выполняемые этими кнопками, не нужны при отсутствии у параметров тегов на запись.
Исправление
- Исправлена ошибка, из-за которой при сохранении в ПЛК иногда передавались некорректные значения настроек уставок.
2.2.0
Новые возможности
-
Разработана возможность ограничения доступа пользователей к файловой системе. Доступ к файловой системе регулируется с помощью свойства FileSystemAccess (Доступность файловой системы) экземпляра компонента SetPoints_Permissions. Если у пользователя отсутствует доступ к файловой системе (FileSystemAccess = false), то:
- в файловых диалогах будет недоступен просмотр дерева папок и создание новых папок
- загрузка конфигураций будет возможна только из папки, указанной в свойстве ConfigFolder (Папка с конфигурациями) компонента SetPoints_Settings
- экспорт будет возможен только в папку, указанную в свойстве ExportFolder (Папка для экспорта) компонента SetPoints_Settings
- По умолчанию в качестве папок для хранения конфигураций и экспорта используются папки Cfg и Export, расположенные в:
- C:\ProgramData\Automiq\HMI.SetPoints - в ОС Windows
- /home//Automiq/HMI.SetPoints - в ОС Linux
-
Теперь при экспорте в файл или при печати данных можно использовать колонтитулы. Верхний и нижний колонтитул редактируются отдельно: для них могут быть указаны разные текст и положение. При формировании текста колонтитула можно использовать текстовые шаблоны. Для этого понадобится экземпляр типа Текстовые шаблоны из библиотеки CommonLib.
- Создайте экземпляр типа Текстовые шаблоны. С помощью функции Set(string name, varuant value) компонента создайте сам текстовый шаблон. Пример:
Templates.Set("Участок","Участок 1");
- Сошлитесь на созданный экземпляр из свойства Шаблоны (init_Templates) типа SetPoints.
Тогда в окне редактирования колонтитулов станет активной кнопка "Вставить шаблон", раскрывающая список доступных текстовых шаблонов.
Если для определения прав пользователей используется сервер безопасности, возможность изменять настройки колонтитулов можно ограничить. Для этого в конфигурации подсистемы безопасности необходимо добавить пользователям право EditSettings (Редактирование настроек) с нужными значениями.
Улучшения
- Курсор теперь меняет внешний вид при наведении мыши на разделитель между деревом навигации и картой уставок.
- При загрузке конфигурации теперь выполняется проверка, не совпадают ли идентификаторы в разных картах уставок. Если встречается совпадение, выводится сообщение об ошибке.
- Панель инструментов теперь оформляется в соответствии с выбранной темой.
Исправление
- Устранена причина, по которой настройки доступа к файловой системе для пользователей не распространялись на кнопку "Выбрать папку" при экспорте всех карт уставок в файл.
2.1.1
Новые возможности
Улучшен экспорт карт уставок в MS Excel:
- Теперь можно экспортировать не только все карты уставок сразу, но и всего одну - текущую.
- Добавлено диалоговое окно экспорта, в котором можно :
- Выбрать папку для экспорта
- Выбрать тип файла: *.csv или *.xlsx
- Ввести произвольный текст, который будет отображаться в верхнем колонтитуле (например, наименование объекта)
- Указать имя экспортируемого файла
- Прогресс выполнения экспорта отображается в статусной строке.
Изменение
- Настройки колонтитулов при экспорте и печати для всех сразу карт уставок указываются теперь в одном месте - поле PrintSettings.
Исправленная ошибка
- Устранена причина, по которой в файле оперативного архива отсутствовала запись о флаге уставки.
Alpha.HMI.SecurityConfigurator. История изменений
^ [2.1.2 --> 2.3.3]
2.3.3
Исправление
- Исправлена ошибка совместимости с Alpha.HMI.CommonLib 2.2.0.
2.3.2
Изменение
- Видоизменена (увеличен размер и добавлена надпись) кнопка задания пароля.
Исправления
- Исправлена ошибка, из-за которой не отображался список ролей в окне "Выбор роли".
- Теперь запрещено создавать пользователей, у которых совпадают логины и отображаемые имена без учета регистра.
2.3.1
Изменения
- Теперь при попытке использовать в именах приложений и прав спец. символы (.,+";<>) появляется предупреждение о запрете их использования.
- В окне создания нового пользователя больше нет полей "Пароль" и "Подтверждение пароля". Чтобы задать пароль для новой учетной записи, используйте кнопку задания пароля. Кнопка находится рядом с предупреждением "Необходимо задать пароль". Предупреждение и кнопка отображаются, пока пароль не будет задан.
Исправление
- Исправлена ошибка, из-за которой нажатие клавиши Shift в окне просмотра учетных записей приводило к возникновению множества диалоговых окон с ошибкой "Очередь остановлена".
2.3.0
Улучшения
- Редактирование значений прав на просмотр и редактирование конфигурации теперь заблокировано для текущего пользователя и для группы, в которой состоит текущий пользователь.
- При экспорте приложения в файл-шаблон *.json теперь экспортируются не только права, но и роли приложения. При импорте такого файла в конфигурацию, соответственно, добавляются не только права, но и роли.
- В окне редактирования значения права теперь отображаются его название и описание.
Исправления
- Устранена причина, по которой в окне редактирования роли не удалялись назначенные ей права.
- Тема оформления теперь применяется корректно к экземплярам конфигуратора, добавленным в проект.
2.2.2
Исправление
- Максимально допустимое значение для прав "Максимальное время сессии" и "Максимальное время бездействия" увеличено до 10000. При назначении прав по умолчанию устанавливается значение 1440 (минут).
2.2.1
Улучшения
- Тип Разрешения (SecurityConfigurator_Permissions) теперь позволяет использовать сервер безопасности для определения прав доступа пользователя к файловой системе.
- Панель инструментов теперь оформляется в соответствии с выбранной темой.
Исправление
- При использовании Alpha.HMI.WebViewer разделитель областей окна конфигуратора не позволял нормально изменять их размеры.
2.2.0
Новая возможность
-
Разработана возможность ограничения доступа пользователей к файловой системе.
- Создан тип SecurityConfigurator_Permissions со свойством FileSystemAccess (Доступность файловой системы), значение которого регулирует доступ к системе.
- Типу SecurityConfigurator_Settings добавлено свойство ExportFolder (Папка для экспорта).
-
Если у пользователя отсутствует доступ к файловой системе (FileSystemAccess = false), то в файловых диалогах будет недоступен просмотр дерева папок и создание новых папок, а экспорт будет возможен только в папку экспорта, указанную в свойстве ExportFolder. По умолчанию папкой для экспорта является:
C:\ProgramData\Automiq\HMI.SecurityConfigurator\Export
- в ОС Windows.
/home/<user>/Automiq/HMI.SecurityConfigurator/Export
- в ОС Linux.
Улучшения
- Пункты контекстного меню с командами на изменение конфигурации скрыты, если пользователю запрещено редактирование конфигурации.
- Теперь при назначении прав пользователю или группе в окне выбора прав не отображаются уже назначенные права.
- При создании новой роли все права приложения больше не назначаются ей автоматически. Права приложения можно добавить или удалить, как это делается для групп и пользователей.
Изменение
Исключена возможность экспорта информации в файлы *.pdf во всех местах, где можно выполнить экспорт:
- экспорт списка пользователей и их прав;
- экспорт таблицы "Список прав и их значений для приложения" со страницы списка приложений;
- экспорт прав открытого на редактирование приложения.
Исправления
- Исправлена ошибка, из-за которой пользователю, добавленному в группу с нулевым значением права "История паролей", нельзя было установить текущий пароль.
- Теперь при авторизации пользователя после изменения парольных политик предлагается сменить пароль, если старый пароль не подходит новым парольным политикам. Ранее в таком случае возникала ошибка.
- Устранена причина, по которой после импорта приложения в таблице прав роли отображались не сразу, а, например, только после перехода к редактированию приложения.
- При изменении размеров окна выбора прав кнопки "Добавить" и "Отмена" оставались на месте, из-за чего ими было неудобно пользоваться. Теперь кнопки перемещаются соответственно изменению размеров окна.
^
1.0.2
Новые возможности
- Компоненту COMTRADE: источник добавлено свойство DataPath (Путь данных) для отдельного указания пути до dat-файла COMTRADE
1.0.1
Исправленные ошибки
- Не отображалась иконка компонента в списке установленных компонентов на Windows.
- Исправлено описание DLL файла модуля x.formats.comtrade.dll в свойствах файла, доступных через контекстное меню.
1.0.0
-
Выпущен новый компонент Alpha.HMI.Formats
. В будущем компонент будет содержать коллекцию расширений к Alpha.HMI
, предназначенных для работы со стандартными форматами данных.
-
На данный момент в Alpha.HMI.Formats
входит одно расширение - модуль поддержки формата COMTRADE. Расширение встраивается в библиотеку компонентов Alpha.HMI
в виде юнита Формат COMTRADE и содержит компоненты, позволяющие получать данные из файлов в формате COMTRADE и передавать их другим компонентам Alpha.HMI.
Компоненты юнита Формат COMTRADE:
- COMTRADE: источник (ComtradeSource) - получает данные из файлов COMTRADE по указанному пути. Представляет общие сведения из файла конфигурации (.CFG), включая число аналоговых и дискретных каналов, число выборок в файле данных (.DAT), и список доступных частот дискретизации.
- COMTRADE: аналоговый канал (ComtradeAnalogChannel) - представляет общие сведения для аналогового канала по указанному номеру.
- COMTRADE: дискретный канал (ComtradeDiscreteChannel) - представляет общие сведения для дискретного канала по указанному номеру.
- COMTRADE: запрос значений канала (ComtradeQuery) - позволяет получить набор сэмплированных значений по каналу в табличном представлении для последующей передачи другим компонентам Alpha.HMI.
Alpha.HMI.ComtradeViewer. Новый компонент
^
1.1.0
Новые возможности
- Добавлена возможность смены кодировки файла конфигурации перед открытием файла.
- Добавлена возможность переключения выбранного масштаба у аналоговых каналов.
Исправленные ошибки
- При нажатии кнопки "Восстановить исходный размер" на поле вместо всего графика отображалась только его отдельная часть. Теперь кнопка работает корректно.
1.0.1
Исправленные ошибки
- Время на графике не совпадало с временем, указанном в файле конфигурации.
- Часть репера ошибочно накладывалась поверх панели инструментов.
- При метке времени "Абсолютная" два выделенных графика не синхронизировались друг с другом.
1.0.0
Новые возможности
- Новое приложение
Alpha.HMI.ComtradeViewer
, предназначенное для просмотра и анализа файлов осциллограмм в формате COMTRADE.
Первая версия приложения позволяет:
- подгружать осциллограммы из файлов выборки;
- отображать полученные осциллограммы в виде графиков.
При подключении Alpha.HMI.ComtradeViewer к проекту подключите также Alpha.HMI.CommonLib
Alpha.RMap. История изменений
^ [1.4.2 --> 1.7.0]
1.7.0
Поддержана работа в Postgres Pro Standard:
- для ОС Linux - версии 11/14/15/16;
- для ОС Windows - версии 11/14.
Изменение
Alpha.RMap теперь устанавливается по умолчанию в каталоги:
- в ОС Windows - C:\Program Files\Automiq\Alpha.RMap
- в ОС Linux - /opt/Automiq/Alpha.RMap
После установки:
- Запустите скрипт:
- в ОС Windows - install.cmd от имени администратора;
- в ОС Linux - install.sh от суперпользователя.
- Введите версию PostgreSQL, в которой планируете использовать Alpha.RMap.
- Выберите редакцию PostgreSQL.
- Выполните скрипт init_rmap_history.sql.
Исправленная ошибка
- Не удавалось удалить Alpha.RMap, если предварительно был удален PostgreSQL.
1.6.1
Исправленные ошибки
- Обновление данных в PostgreSQL версий 14, 15 и 16 выполнялось долго.
- Останавливались службы PostgreSQL версий 14, 15 и 16 при попытке обновления большого объема данных.
1.6.0
Улучшения
Поддержана работа с:
- PostgreSQL 15;
- PostgreSQL 16;
- Tantor BE 15.
Исправленная ошибка
- Устранена ошибка, возникавшая при установке пакетов *.rpm Alpha.RMap.
Изменение
1.5.3
Улучшение
- Добавлен дистрибутив для установки Alpha.RMap в ALT Linux для PostgreSQL 14 (пакет *.altlinux.rpm).
1.5.2
Исправленные ошибки
- Alpha.RMap завершал работу при запросе истории сигналов с одинаковым nodeid, но разными appid.
- Запрос, содержащий внешнюю таблицу и несколько операций JOIN, выполнялся некорректно и иногда мог приводить к завершению работы Alpha.RMap.
1.5.1
Улучшение
- Для PostgreSQL 14, устанавливаемого из расширенного репозитория Astra Linux, добавлен отдельный дистрибутив Alpha.RMap (*.pg.14.astra-extended.deb).
1.5.0
Улучшение
- Поддержана работа с PostgreSQL 14.
Исправленная ошибка
- При запросе истории значений по нескольким временным меткам/интервалам в результат попадали значения только одной метки/интервала.
1.4.5
Улучшение
- Ускорено выполнение запросов истории по именам сигналов.
1.4.3
Исправленные ошибки
- Alpha.RMap прекращал работу при запросе к таблице nodes_history, если запрос содержал:
- оператор OR для выборки времени.
- сигнал, отсутствующий в конфигурации Alpha.Server.
- Запросы к таблице nodes_attributes могли выполняться долго.
1.4.2
Улучшение
- В журнал PostgreSQL теперь записываются сообщения о наличии проблем с подключением по TCP к источнику исторических значений.
Исправленные ошибки
- Alpha.Rmap завершал работу при отсутствии подключения к источнику оперативных данных.
- Запросы на обновление значения не всегда выполнялись при наличии оператора RETURNING.
- При подключении по DCOM некорректно выполнялись запросы значений нескольких сигналов по имени.
- В PostgreSQL 11 не выполнялись запросы, содержащие групповые вычисления и оператор JOIN.
- При выполнении процедур создавались и не завершались дополнительные процессы PostgreSQL, из-за чего переставали работать PostgreSQL и Alpha.Rmap. Теперь дополнительные процессы PostgreSQL завершаются.
Alpha.DomainClient. Новый компонент
^
1.1.1
Исправления
- Исправлена инструкция сборки примера проекта на C++.
1.1.0
Новые возможности
- Добавлена возможность записывать историю значений сигналов в
Alpha.Historian
.
- Добавлен API для взаимодействия с
Alpha.Security
.
- Добавлен метод запроса свойств элементов по их GlobalItemId.
1.0.0
Новые возможности
- Новый компонент
Alpha.Domain.Client
. Компонент предназначен для того, чтобы сторонние приложения могли программно взаимодействовать с компонентами Альфа платформы. Для этого компонент предоставляет API, который разработчик может использовать в своём приложении для обращения к компонентам Альфа платформы. API предоставляется на языках C++ и Python.
В дистрибутив компонента входят:
- Файлы, необходимые для использования API.
- Инструкция по установке и первоначальной настройке.
- Встроенный справочник по API.
- Примеры использования.
Доступные возможности
- Работа с Alpha.Server:
- Просмотр адресного пространства Alpha.Server.
- Чтение/установка значений сигналов.
- Подписка на изменения значений сигналов.
- Чтение/установка свойств сигналов.
- Получение активных событий.
- Подписка на получение событий.
Работа с Alpha.Historian.Server
:
- Чтение истории значений сигналов.
- Чтение истории событий.