From OpenSCADAWiki
Jump to: navigation, search
This page is a translated version of the page Documents/Release 0.8.0/Update12 and the translation is 100% complete.

Other languages:
English • ‎российский • ‎українська

Это обновление релиза 0.8 LTS исправляет около 30 ошибок и добавляет некоторые улучшения, которые целиком вы можете почитать в протоколе изменений обновления.

API
!!!!:Изменения:

  • TConfig,DB.*: Удалено глобальный флаг noTransl() как устарелый.
  • Безопасность: Для пользователей и их групп переименовано функции lName() и descr() в descr() и longDescr(), соответственно к полям БД.
  • TElem: Расширено для создания TFld из примера-шабона присутствующего TFld но с отличным ID. Добавлено TElem::fldClear() для очистки полей.
  • TVarObj: Функции propGet() и propSet() расширено для иерархического доступа за путём.

Дополнения:

  • TConfig,DB: Для определения ключа добавлено и использовано функцию isKey().
  • DB: Добавлено метод TTable::fullDBName().
  • DAQ.JavaLikeCalc: Добавлено встроенную функцию пользовательского API tr() для запроса к базе переводов постоянных строк, как терминатор, с целью обеспечения совместимости с рабочей версией.

SYS

  • FIX:TCntrNode::chldPresent() изменено для определения всех присутствующих узлов, также и выключенных. Значительным образом для гарантированного определения за названием.
  • FIX: Обеспечено принудительное создание заданий и записей к ним в случае ошибок вроде граничного времени запуска. Предотвращение падений в некоторых случаях.
  • FIX: Выключены исключения в случае установки значения атрибута в режиме NoWrite, просто выход из функции. Значительным образом для исправления проблем с DAQ.BlockCalc.
  • FIX: Безопасность: Размер пароля расширено на более чем 8 символов путём переключения на кодирование MD5. Сохранено обратную совместимость для ранее установленных паролей. Обнаружено Василием Григорьевым.
  • CntrIf,UI.{QTCfg,WebCfgD}: К таблице добавлено флажок "noReload" с целью контроля полной перегрузки содержимого большой таблицы после запроса "SET", также использовано в таблице объекта БД.
  • DAQ, DAQ.JavaLikeCalc, UI.{QTCfg,Vision}: Добавлено атрибут "font" к корневому узлу правил подсветки синтаксиса с целью указания типичного шрифта конфигурации. Типичный шрифт для JavaLikeCalc процедур установлено в "Courier".
  • С целью лучшего определения проблем свойств реального времени к статусу задачи добавлено значение максимальной задержки вызова и использованного времени.
  • XMLNode::childGet(): добавлено поддержку отрицательных индексов с целью отсчёта от конца.
  • Использование "LibGD" в OpenSCADA ядре выключено по умолчанию и вместо использовано "SVG".

БД

  • FIX: TBDS::dataDel() исправлено для удаления записей из конфигурационного файла после таких попыток в БД, значительным образом для исправления удаления одинаковых записей БД.
  • FIX:SQLite,MySQL,PostgreSQL,FireBird: Исправлено для предотвращения загрузки перевода из непустого, но выключенного для перевода поля БД.
  • FIX:FireBird: dataSeek() исправлено поведение в случае пустого SELECT.
  • MySQL,PostgreSQL,FireBird: Для нулевой длины строки по умолчанию использовано тип TEXT.

DAQ

  • FIX: Флажок "prcStRd" в задаче резервирования установлено наперёд для предотвращения ошибочного запуска этой задачи во время подключения к отсутствующим удаленным станциям и падения при остановке.
  • FIX:JavaLikeCalc: К compileFunc() добавлено захват ресурса на генерацию ID функции по "<auto>" с целью предотвращения многоразового подключения к одной функции.
    • FIX: Добавлено ранний старт, на время загрузки, для библиотек функций. Значительным образом для запуска этих функций перед DAQ.BlockCalc.
    • Удалено флажок Func::SysAttr для IO "f_frq", "f_start", "f_stop", "this" с целью обеспечения их сохранения, ввиду возможности приоритетного и независимого запуска.
  • FIX:Siemens: Значительным образом пересмотрено захват ресурсов и добавлено новый захват на глобальный API, с целью предотвращения падений во время переподключений, параллельный доступ и переопределение индекса подключений.
  • FIX:BlockCalc: Процедуру сортирования блоков значительным образом переписано с целью исправления. Предотвращено копирование таблицы с блоками в BLOCK_SH во время копирования этого объекта контроллера.
  • DCON,ModBus: Область действия попыток последовательного интерфейса расширено на подключения, в виду возможности искажения запроса и отсутствия ответа.
  • LogicLev: Добавлено подключение к свойству объекта по пути в связи "{ModType}.{Cntr}.{Prm}.{Attr}#{ObjPath}".
  • FIX:DAQGate: Очищение обрабатываемого списка параметров перенесено с фазы остановки в отключение. Добавлено пропуск пустых параметров в режиме отдельного запроса атрибутов, с целью уменьшения общего времени запроса.
  • SoundCard: расширено для специфики X86_64 с короткими вызовами framesPerBuffer к функции обратного вызова.

Archive

  • FIX:FSArch: Исправлено на предмет предотвращения дубликатов и ошибочного подключения архивов, для источников данных которые поздно добавляются, а также добавлено обязательную проверку перед добавление новых архивов. Указание на область данных для последнего значения индекса предотвращено для типа Строка.

Transport

  • FIX:TTransportIn: Добавлено раннюю остановку в postDisable() для предотвращения падения в деструкторе на освобождённых данных объекта предка.

Protocol

  • FIX:ModBus: Исправлено несоответствие формата диагностики узла для реальных счётчиков.

UI

  • FIX:VCAEngine,Vision: Процедуру опускания изменений значительным образом исправлено и адаптировано на предмет обновления родительского виджета, в открытом для редактирования режиме. Добавлено поддержку редактирования ячейки вида “Таблица” примитива "FormEl".
  • QTCfg,Vision: Установка курсора ожидания исправлено на установку и восстановление после интервала задержки 50 мс, для предотвращения мигания и высокой нагрузки в некоторых окружениях рабочего стола.
  • FIX:WebUser: Предотвращено падение во время обработки новых HTTP переменных.
  • FIX:QTCfg: Исправлено политику определения размера для значения логического типа в режиме только для чтения. Виджет таблицы значительным образом расширено на предмет:
    • Включено вертикальный скролинг по пикселам.
    • resizeRowsToContents() расширено на предмет ограничения высоты строк в 0.9 от общей высоты таблицы и вызовом через нажатие мышей в секции заголовка, для перенастройки.
    • Представление строки в многострочном режиме текста ItemsDelegate переписано с целью предотвращения ошибочного Qt eliding для строк и другого.
  • FIX:VCAEngine: Предотвращено двойную установку страниц в обработку и потерю контекста перво-инициализации. Предотвращено двойное исполнение страниц для инициализации из процедуры установки в обработку и по каскаду из страниц верхнего уровня.
    • FIX: Загрузку mime расширено и исправлено для проектов.
    • Унифицировано доступ у таблице времени сеанса проекта добавлением функций атрибута сеанса sessAttr(), sessAttrSet(). Эти функции использовано в: примитиве "Документ", стиле сеанса, редактируемых ресурсах с помощью функций API пользователя "mime()" и "mimeSet()", "fromSess" и "toSess" функций API пользователя "attr()" и "attrSet()". Сервис "/serv/attrSess/" добавлено для доступа к атрибутам сеансов.
    • Добавлено поддержку наследования для владельца и разрешений віджета.
    • Автоматическое создание сеанса во время включения модуля обновлено.
    • Добавлено доступ к атрибутам DAQ объектного типа по пути в связях типа "/DAQ/{Cntr}/{Prm}/{Attr}#/{oAttr1}/{oAttr2}".
  • FIX:Vision: Установлено прокси фокуса для редактируемого контейнера виджета на этот виджет, в режиме разработки, чтобы обеспечить общность источника фокуса и потерю выбора вложенных виджетов в общих случаях.
    • FIX: Исправлено примитив "Диаграмма" на предмет актуальной установки курсора и значений параметров под ним в случае значительной разницы между хостом сеанса сервера и хостом визуализатора этого сеанса, на предмет отставания позиции курсора на один период.
    • FIX: Виджет LineEdit несколько исправлено на предмет применения реального размера кнопки путём получения реального и предотвращения этим плывучего увеличения размера окна в виду несоответствия.
    • FIX: Исключено потерю рисок в виде “Слайдер” и дефекты похожих видов примитива “FormEl” после нажатии в контейнере этого элемента путём глобальной обработки сообщений QEvent::MouseButtonPress и QEvent::MouseButtonRelease.
    • FIX: Исправлено обновление изменений после их принятия в групповом режиме менеджера атрибутов виджета путём обновления отличных атрибутов виджета в группе а также в первом виджете группы.
    • Кеш ресурсов значительным образом улучшено для ускорения доступа и обновления.
    • Добавлено контроль и сохранение позиции окон режима исполнения с помощью включения опции "winPosCntrSave" и использования нового сервиса "/serv/attrSess/". Номер экрана расширено не только для связи с различными физическими дисплеями, а и для независимого контроля и сохранения позиции.
    • Для автоматического запуска добавлено возможность указания сеанса в параметре “Список проектов для пуска”, значительным образом для подключения к уже запущенным или фоновым сеансам.
    • Добавлено время контроля восстановления подключения для предотвращения блокирования удалённых подключений к серверу визуализации и обновления экрана.
  • WebVision: Коррекция прокручивания для разных вариантов включения в контейнер. Кеш изображений значительным образом расширено очисткой похожей на UI.Vision.
  • WebCfgD: Расширено попыткой загрузки файлов WebCfgDVCA.html и WebCfgDVCA.js с рабочей папки. JavaScript код значительным образом очищено и Таблицу расширено упрощением контроля и выходу из режима редактирования ячеек.

Special

  • FIX:FLibSYS: Исправлено и расширено функцию strDec4Bin() аргументом разделителя со значением по умолчанию " ", с целью восстановления обратной совместимости.