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

Other languages:
English • ‎mRussian • ‎Українська

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

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

  • SYS: Список TSYS::Errors (в основном DB Errors) удалено как устарелый.
    • TSYS::modifCfg() расширено для проверки на доступ на запись.
    • Унифицировано функции strEncode() и strDecode().
    • XMLNode: Аргумент позиции функций childIns() и childDel() установлено в знаковый тип (integer) чтобы позволить вставку и удаление от конца (отрицательное значение).
  • TCntrNode: К функциям TCntrNode::load() и TCntrNode::save() добавлено аргумент "string *errs = NULL" для размещения всех ошибок загрузки и сохранения объектов.
  • DB: Расширено функции TBDS::dataGet(), TBDS::dataSet() и TBDS::dataDel() аргументом "noEx = false" для генерации исключений в случае ошибок доступа к хранилищу.
  • Transport: setAddr() изменено на невиртуальный, cfgChange() использовано вместо. К функции "start()" выходного транспорта добавлено аргумент времени, ненулевое значение которого контролирует время подключения.
  • DAQ: Аргумент "maxCalcTm" функции TTipDAQ::compileFunc() установлено в 0 для указания использования значения по умолчанию модуля.
  • Archive: TArchive, TMArchivator и TMArchivator переведено на использование TConfig::cntrCmdMake(). setValPeriod() и setArchPeriod() изменено на невиртуальные, cfgChange() использовано вместо.

Дополнения:

  • SYS: Добавлено инициированный нулём объект ошибки "TError() : cod(0)". Добавлено новую глобальную и простую функцию s2ll() для области имён OSCADA. Вариант функции TSYS::strMess() добавлено для контроля за длиной и добавления "...".
  • Archive: Добавлено приоритет выбора к объекту архиватора значений с целью предоставления контроля за последовательностью, и отключения вообще, в режиме выбора "Все", использовано для функций getVal(), getVals() и сервиса архива "/serv/val". Добавлено функции selPrior() и setSelPrior().

DB

  • AGLKS.St.db: ModBus.testTCP, DAQGate.test и OPC_UA.test установлено для запуска по умолчанию. FIX: Архиваторы сообщений "FSArch.NetRequsts" и "FSArch.StatErrors" исправлено.

SYS

  • Добавлено функции API пользователя strEncode() и strDecode(). Добавлено сообщения про проблемы доступа к хранилищам. Комплексное тестирование уведомлений про проблемы для хранилищ: SQLite, MySQL, PostgreSQL, FireBird, DBF, Cfg; результаты: wiki.oscada.org/Works/Tests/DB.
  • FIX:TFunction, TValue, UI.VCAEngine.Attr: Добавлено установку TEValObj() в атрибут объектного типа по EVAL скаляру.

DB

  • Предотвращено исключение в момент отключения объекта БД, как правило после проблем в момент подключения к сетевой БД. Уменьшено таймаут ожидания освобождения таблиц до 1 секунды в момент остановки БД, для ускорения в момент потери подключения к сетевой БД.
  • DBF: Добавлено периодическую синхронизацию (10 секунд) изменений в памяти с файлами. Добавлено выбор директории БД в строке конфигурации объекта БД. Добавлено доступ и ошибки для БД только на чтение.
  • SQLite: Добавлено поддержку записи бинарной строки в БД, формой "#'XXXXXX'". Адаптировано к работе в режиме только для чтения.
  • FireBird: Обрабатываемые типы расширено до: blr_varying, blr_varying2, blr_text, blr_text2, blr_blob, blr_short, blr_long, blr_int64, blr_float, blr_double и blr_d_float. FIX: Добавлено очистку данных API после ошибок подключения. fieldSet() и fieldDel() значительно переписано для типичности.
  • MySQL: Адаптировано к работе в режиме только чтения, fieldDel() значительно переписано для обработки режима только для чтения. Добавлено обработку CR_CONNECTION_ERROR в случае потери подключения.
  • PostgreSQL: Обрабатываемые типы расширено до: text. character varyin, character(%d), character varying(%d), smallint, integer, bigint, real, double precision, timestamp with time zone. FIX: Обработку потери подключения перенесено на момент после запроса. Обработку транзакций переписано для типичности. Адаптировано для работы в режиме только для чтения, fieldDel() значительно переписано для обработки режима только для чтения.

DAQ

  • FIX:JavaLikeCalc: "Ошибка постоянной после постоянной" дополнена положением её размещения. Добавлено типовое время безопасности во вкладке модуля.

Корневой объект TDAQS расширено запросом интерфейса управления "/serv/PrmAttr" для удалённой навигации по дереву DAQ параметров.

  • FIX:ModBus: Исправлено запись по комплексным типам вроде "_f", "_i4" в режиме только для записи. Комплексные типы расширено с "u2" - uint16, "d" - Double.
  • SNMP: Значительно расширено навигацией в строке по OID, MIB дерево использовано для определения режима доступа и вариантов выбора перечисления.
  • OPC_UA: К объекту конфигурации параметра добавлено навигацию в строке по дереву OPC UA узлов. FIX: Расширено контроль размера входного пакета и заголовка для ранней обработки и отбрасывания.
  • DAQGate: Добавлено навигацию в строке по внешним узлам и дереву удалённых параметров. Расширено для идентификации удалённых параметров в независимом пространстве названий и связывания по идентификатору удалённого параметра. Разрешено прохождение "/prm/*" переменных для обработки некоторых глобальных списков. Расширено для связывания с иерархическими параметрами (из OpenSCADA 0.9).

Архив

  • FIX: Исправлено потерю подключения архивов к архиватору в случае его перезапуска.
  • FIX: Исправлено установку отрицательного уровня нарушений в случае прямого их запроса через сервис "/serv/mess" на предмет исключения модификации сохранённых данных.
  • Установка периода архиватора расширена на предмет нулевого значения и отключения по нему обработки буфера значений, т.е. только для прямой записи в архив.
  • Адаптировано для записи не выровненных к периоду значений и буферов.
  • FIX:DBArch: Добавлено принудительное перечитывание meta-данных для архивов значений, после ошибочного их чтения на старте, по причине недоступности сетевой БД. Добавлено обнаружение отключения архиватора от БД и использование следующего архиватора по приоритету.
  • {DBArch,FSArch}: Типовой приоритет установлено в 1 для DBArch и 1000 для FSArch.

Transport

  • Добавлено ко вкладке "Запрос" выходного транспорта получение измеренного время запроса после его прерывания исключениями. FIX: TTransportOut, TTransportIn исправлено на предмет проверки и обработки установки значений.
  • Sockets: Типичные таймауты выходных транспортов возвращено в "5:1".

Протокол

  • ModBus: Добавлено поддержку функций 0x2 (CI) и 0x4 (RI). Добавлено классическую форму записи регистров и комплексные типы расширено "d" - Double.
  • SelfSystem: Реализацию протокола улучшено для проверки и ожидания полноты заголовка. Добавлено аргумент "conTm" к выходной части транспорта. SES_OPEN ограничено в 10 подключений от одного источника и пользователя. Сеанс перемещено в std::map для ускорения.

UI

  • QTCfg: Добавлено проверку и предупреждение про непринятые изменения на странице. Добавлено и использовано функцию getPrintVal() для проверки и кодирования откровенно бинарных строк. Добавлено поддержку команд "load" и "save" к группе узлов.
  • VCAEngine: Расширено функции API пользователя области сеанса attr() и attrSet() аргументами "bool fromSess" и "bool toSess" соответственно для установления атрибутов в таблице сеанса. FIX: Исправлено слежение изменения родителя для проектов и библиотек виджетов. VCAEngine: атрибут "geomZ" виджетов разрешено для отрицательных значений.
  • Vision: Управление атрибутом "geomZ" изменено на его смену только у одного виджета для исключения отрыва от реально рабочей позиции, в основном для исключения смены "geomZ" у группы виджетов и коллизий реальной не смены позиций. Функцию обновления последовательности вложенных виджетов расширено для исключения случайности упорядочивания для одинаковых значений "Z", путём досортировки по идентификатору. FIX: Для вложенных в контейнер страниц установлено атрибут окна Qt::WA_WindowPropagation с целью обеспечения реальной прозрачности путём распространения палитры, в основном из-за скрытия Slider. FIX: Исправлено обновление последовательности виджетов после ручной установки "geomZ", в режиме разработки.
  • {QTCfg,Vision}: В качестве курсора занятости-ожидания использовано QApplication::setOverrideCursor(Qt::WaitCursor).
  • {VCAEngine,Vision}: Добавлено функцию опускания изменений визуального элемента к его родителю. Добавлено проверку и предупреждение про непринятые изменения в конфигурационном диалоге элементов.