<?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'> <html class="client-nojs" dir="ltr" lang="en"> <head> <meta charset="UTF-8" /> <title>Документи/Реліз 0.9 - OpenSCADAWiki</title> <meta content="MediaWiki 1.26.4" name="generator" /> <link href="https://www.gnu.org/copyleft/fdl.html" rel="copyright" /> <link href="../en/files/doc.css" rel="stylesheet" /></head> <body><div class="floatright"><a href="index.html"><img alt="OpenSCADA" src="../en/files/index.png" /></a></div><div id="mw_header"> <div class="mw-indicators"> </div> <h1 id="firstHeading" lang="uk">Документи/Реліз 0.9</h1> </div><div class="mw-content-ltr" dir="ltr" id="mw-content-text" lang="uk"><div class="mw-pt-translate-header noprint" dir="ltr" lang="en">This page is a <span class="plainlinks"><a class="external text" href="http://oscada.org/wiki/index.php?title=Special:Translate&group=page-Documents%2FRelease+0.9&action=page&filter=&language=uk" rel="nofollow noreferrer noopener" target="_blank">translated version</a></span> of the page <a class="external" href="http://oscada.org/wiki/Documents/Release_0.9" title="Documents/Release 0.9">Documents/Release 0.9</a> and the translation is 100% complete.</div><hr /><div class="mw-pt-languages" dir="ltr" lang="en"><div class="mw-pt-languages-list autonym"><a class="mw-pt-languages-ui mw-pt-progress mw-pt-progress--complete" href="../en/Release_0.9.html" title="Documents/Release 0.9 (100% translated)">English</a> • ‎<a class="mw-pt-progress mw-pt-progress--complete" href="../ru/Release_0.9.html" title="Документы/Релиз 0.9 (100% translated)">mRussian</a> • ‎<span class="mw-pt-languages-selected mw-pt-progress mw-pt-progress--complete">УкраїнÑька</span></div></div> <div class="toc" id="toc"><div id="toctitle"><h2>Contents</h2></div> <ul> <li class="toclevel-1 tocsection-1"><a href="#.D0.92.D1.81.D1.82.D1.83.D0.BF"><span class="tocnumber">1</span> <span class="toctext">Ð’Ñтуп</span></a> <ul> <li class="toclevel-2 tocsection-2"><a href="#.D0.97.D0.B0.D0.B3.D0.B0.D0.BB.D1.8C.D0.BD.D0.B0_.D1.96.D0.BD.D1.84.D0.BE.D1.80.D0.BC.D0.B0.D1.86.D1.96.D1.8F"><span class="tocnumber">1.1</span> <span class="toctext">Загальна інформаціÑ</span></a></li> <li class="toclevel-2 tocsection-3"><a href="#.D0.97.D0.B0.D1.81.D1.82.D0.BE.D1.81.D1.83.D0.B2.D0.B0.D0.BD.D0.BD.D1.8F"><span class="tocnumber">1.2</span> <span class="toctext">ЗаÑтоÑуваннÑ</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-4"><a href="#.D0.A0.D0.B5.D0.B7.D1.83.D0.BB.D1.8C.D1.82.D0.B0.D1.82.D0.B8_.D0.BF.D0.BE.D0.BF.D0.B5.D1.80.D0.B5.D0.B4.D0.BD.D1.8C.D0.BE.D0.B3.D0.BE_.D1.80.D0.B5.D0.BB.D1.96.D0.B7.D1.83_0.8.0_LTS"><span class="tocnumber">2</span> <span class="toctext">Результати попереднього релізу 0.8.0 LTS</span></a></li> <li class="toclevel-1 tocsection-5"><a href="#.D0.9F.D0.BB.D0.B0.D0.BD.D0.BE.D0.B2.D1.96_.D0.B7.D0.B0.D0.B2.D0.B4.D0.B0.D0.BD.D0.BD.D1.8F_.D1.80.D0.B5.D0.BB.D1.96.D0.B7.D1.83"><span class="tocnumber">3</span> <span class="toctext">Планові Ð·Ð°Ð²Ð´Ð°Ð½Ð½Ñ Ñ€ÐµÐ»Ñ–Ð·Ñƒ</span></a></li> <li class="toclevel-1 tocsection-6"><a href="#.D0.97.D0.B0.D0.B3.D0.B0.D0.BB.D1.8C.D0.BD.D0.BE.D1.81.D0.B8.D1.81.D1.82.D0.B5.D0.BC.D0.BD.D1.96_.D0.B2.D0.BB.D0.B0.D1.81.D1.82.D0.B8.D0.B2.D0.BE.D1.81.D1.82.D1.96"><span class="tocnumber">4</span> <span class="toctext">ЗагальноÑиÑтемні влаÑтивоÑÑ‚Ñ–</span></a> <ul> <li class="toclevel-2 tocsection-7"><a href="#.D0.92.D0.BD.D1.83.D1.82.D1.80.D1.96.D1.88.D0.BD.D1.96"><span class="tocnumber">4.1</span> <span class="toctext">Внутрішні</span></a></li> <li class="toclevel-2 tocsection-8"><a href="#.D0.92.D0.B4.D0.BE.D1.81.D0.BA.D0.BE.D0.BD.D0.B0.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_.D1.82.D0.B0_.D0.B0.D0.B4.D0.B0.D0.BF.D1.82.D0.B0.D1.86.D1.96.D1.8F_.D0.B4.D0.BE_.D1.80.D1.96.D0.B7.D0.BD.D0.B8.D1.85_.D0.BF.D0.BB.D0.B0.D1.82.D1.84.D0.BE.D1.80.D0.BC"><span class="tocnumber">4.2</span> <span class="toctext">ВдоÑÐºÐ¾Ð½Ð°Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° Ð°Ð´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ різних платформ</span></a></li> <li class="toclevel-2 tocsection-9"><a href="#.D0.9E.D0.BF.D1.82.D0.B8.D0.BC.D1.96.D0.B7.D0.B0.D1.86.D1.96.D1.8F.2C_.D1.81.D1.82.D0.B0.D0.B1.D1.96.D0.BB.D1.96.D0.B7.D0.B0.D1.86.D1.96.D1.8F_.D1.82.D0.B0_.D0.BF.D1.80.D0.BE.D0.B4.D1.83.D0.BA.D1.82.D0.B8.D0.B2.D0.BD.D1.96.D1.81.D1.82.D1.8C"><span class="tocnumber">4.3</span> <span class="toctext">ОптимізаціÑ, ÑÑ‚Ð°Ð±Ñ–Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ñ‚Ð° продуктивніÑÑ‚ÑŒ</span></a></li> <li class="toclevel-2 tocsection-10"><a href="#.D0.97.D0.B1.D1.96.D1.80_.D0.B4.D0.B0.D0.BD.D0.B8.D1.85"><span class="tocnumber">4.4</span> <span class="toctext">Збір даних</span></a></li> <li class="toclevel-2 tocsection-11"><a href="#.D0.93.D1.80.D0.B0.D1.84.D1.96.D1.87.D0.BD.D0.B5_.D0.BE.D1.82.D0.BE.D1.87.D0.B5.D0.BD.D0.BD.D1.8F"><span class="tocnumber">4.5</span> <span class="toctext">Графічне оточеннÑ</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-12"><a href="#.D0.9D.D0.BE.D0.B2.D1.96_.D1.82.D0.B0_.D0.B7.D0.BD.D0.B0.D1.87.D0.BD.D0.BE_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D1.96_.D0.BC.D0.BE.D0.B4.D1.83.D0.BB.D1.96"><span class="tocnumber">5</span> <span class="toctext">Ðові та значно оновлені модулі</span></a></li> <li class="toclevel-1 tocsection-13"><a href="#.D0.92.D0.B8.D1.81.D0.BD.D0.BE.D0.B2.D0.BA.D0.B8"><span class="tocnumber">6</span> <span class="toctext">ВиÑновки</span></a></li> <li class="toclevel-1 tocsection-14"><a href="#.D0.9E.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="tocnumber">7</span> <span class="toctext">ОновленнÑ</span></a> <ul> <li class="toclevel-2 tocsection-15"><a href="#.5B01.01.7533.2F01.03.2025.5D_.D0.92.D0.9E.D0.A1.D0.AC.D0.9C.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="tocnumber">7.1</span> <span class="toctext">[01.01.7533/01.03.2025] ВОСЬМЕ оновленнÑ</span></a></li> <li class="toclevel-2 tocsection-16"><a href="#.5B01.01.7532.2F01.03.2024.5D_.D0.A1.D0.AC.D0.9E.D0.9C.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="tocnumber">7.2</span> <span class="toctext">[01.01.7532/01.03.2024] СЬОМЕ оновленнÑ</span></a> <ul> <li class="toclevel-3"><a href="#.D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.BD.D1.96_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="tocnumber">7.2.1</span> <span class="toctext">СервіÑні оновленнÑ</span></a></li> </ul> </li> <li class="toclevel-2 tocsection-17"><a href="#.5B01.01.7531.2F01.03.2023.5D_.D0.A8.D0.9E.D0.A1.D0.A2.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="tocnumber">7.3</span> <span class="toctext">[01.01.7531/01.03.2023] ШОСТЕ оновленнÑ</span></a> <ul> <li class="toclevel-3"><a href="#.D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.BD.D1.96_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_2"><span class="tocnumber">7.3.1</span> <span class="toctext">СервіÑні оновленнÑ</span></a></li> </ul> </li> <li class="toclevel-2 tocsection-18"><a href="#.5B22.12.7529.2F22.02.2022.5D_.D0.9F.27.D0.AF.D0.A2.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="tocnumber">7.4</span> <span class="toctext">[22.12.7529/22.02.2022] П'ЯТЕ оновленнÑ</span></a> <ul> <li class="toclevel-3"><a href="#.D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.BD.D1.96_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_3"><span class="tocnumber">7.4.1</span> <span class="toctext">СервіÑні оновленнÑ</span></a></li> </ul> </li> <li class="toclevel-2 tocsection-19"><a href="#.5B14.04.7529.2F14.06.2021.5D_.D0.A7.D0.95.D0.A2.D0.92.D0.95.D0.A0.D0.A2.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="tocnumber">7.5</span> <span class="toctext">[14.04.7529/14.06.2021] ЧЕТВЕРТЕ оновленнÑ</span></a> <ul> <li class="toclevel-3"><a href="#.D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.BD.D1.96_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_4"><span class="tocnumber">7.5.1</span> <span class="toctext">СервіÑні оновленнÑ</span></a></li> </ul> </li> <li class="toclevel-2 tocsection-20"><a href="#.5B20.10.7528.2F20.12.2020.5D_.D0.A2.D0.A0.D0.95.D0.A2.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="tocnumber">7.6</span> <span class="toctext">[20.10.7528/20.12.2020] ТРЕТЕ оновленнÑ</span></a> <ul> <li class="toclevel-3"><a href="#.D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.BD.D1.96_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_5"><span class="tocnumber">7.6.1</span> <span class="toctext">СервіÑні оновленнÑ</span></a></li> </ul> </li> <li class="toclevel-2 tocsection-21"><a href="#.5B17.06.7528.2F17.08.2020.5D_.D0.94.D0.A0.D0.A3.D0.93.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="tocnumber">7.7</span> <span class="toctext">[17.06.7528/17.08.2020] ДРУГЕ оновленнÑ</span></a> <ul> <li class="toclevel-3"><a href="#.D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.BD.D1.96_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_6"><span class="tocnumber">7.7.1</span> <span class="toctext">СервіÑні оновленнÑ</span></a></li> </ul> </li> <li class="toclevel-2 tocsection-22"><a href="#.5B08.02.7528.2F08.04.2020.5D_.D0.9F.D0.95.D0.A0.D0.A8.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="tocnumber">7.8</span> <span class="toctext">[08.02.7528/08.04.2020] ПЕРШЕ оновленнÑ</span></a> <ul> <li class="toclevel-3"><a href="#OpenSCADA_.D0.B1.D1.96.D0.B1.D0.BB.D1.96.D0.BE.D1.82.D0.B5.D0.BA.D0.B8_.D1.82.D0.B0_.D0.BF.D1.80.D0.BE.D0.B5.D0.BA.D1.82.D0.B8"><span class="tocnumber">7.8.1</span> <span class="toctext"><span>OpenSCADA бібліотеки та проекти</span></span></a></li> <li class="toclevel-3"><a href="#API"><span class="tocnumber">7.8.2</span> <span class="toctext">API</span></a></li> <li class="toclevel-3"><a href="#.D0.A1.D0.B8.D1.81.D1.82.D0.B5.D0.BC.D0.B0"><span class="tocnumber">7.8.3</span> <span class="toctext">СиÑтема</span></a></li> <li class="toclevel-3"><a href="#.D0.91.D0.94"><span class="tocnumber">7.8.4</span> <span class="toctext">БД</span></a></li> <li class="toclevel-3"><a href="#.D0.97.D0.B1.D1.96.D1.80_.D0.94.D0.B0.D0.BD.D0.B8.D1.85"><span class="tocnumber">7.8.5</span> <span class="toctext">Збір Даних</span></a></li> <li class="toclevel-3"><a href="#.D0.90.D1.80.D1.85.D1.96.D0.B2.D0.B8-.D0.86.D1.81.D1.82.D0.BE.D1.80.D1.96.D1.8F"><span class="tocnumber">7.8.6</span> <span class="toctext">Ðрхіви-ІÑторіÑ</span></a></li> <li class="toclevel-3"><a href="#.D0.A2.D1.80.D0.B0.D0.BD.D1.81.D0.BF.D0.BE.D1.80.D1.82.D0.B8"><span class="tocnumber">7.8.7</span> <span class="toctext">ТранÑпорти</span></a></li> <li class="toclevel-3"><a href="#.D0.A2.D1.80.D0.B0.D0.BD.D1.81.D0.BF.D0.BE.D1.80.D1.82.D0.BD.D1.96_.D0.9F.D1.80.D0.BE.D1.82.D0.BE.D0.BA.D0.BE.D0.BB.D0.B8"><span class="tocnumber">7.8.8</span> <span class="toctext">ТранÑпортні Протоколи</span></a></li> <li class="toclevel-3"><a href="#.D0.86.D0.BD.D1.82.D0.B5.D1.80.D1.84.D0.B5.D0.B9.D1.81_.D0.9A.D0.BE.D1.80.D0.B8.D1.81.D1.82.D1.83.D0.B2.D0.B0.D1.87.D0.B0"><span class="tocnumber">7.8.9</span> <span class="toctext">Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐšÐ¾Ñ€Ð¸Ñтувача</span></a></li> <li class="toclevel-3"><a href="#.D0.A1.D0.BF.D0.B5.D1.86.D1.96.D0.B0.D0.BB.D1.8C.D0.BD.D1.96"><span class="tocnumber">7.8.10</span> <span class="toctext">Спеціальні</span></a></li> <li class="toclevel-3"><a href="#.D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.BD.D1.96_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_7"><span class="tocnumber">7.8.11</span> <span class="toctext">СервіÑні оновленнÑ</span></a></li> </ul> </li> </ul> </li> <li class="toclevel-1 tocsection-23"><a href="#.D0.9F.D0.BE.D1.81.D0.B8.D0.BB.D0.B0.D0.BD.D0.BD.D1.8F"><span class="tocnumber">8</span> <span class="toctext">ПоÑиланнÑ</span></a></li> </ul> </div> <h2><span class="mw-headline" id=".D0.92.D1.81.D1.82.D1.83.D0.BF"><span class="mw-headline-number">1</span> Ð’Ñтуп</span></h2> <p>Реліз OpenSCADA, відкритої SCADA(Supervisory control and data acquisition) ÑиÑтеми, верÑÑ–Ñ— 0.9 Ñ” Ñтабільним промиÑловим релізом тривалої підтримки (LTS). </p><p>ОÑновною метою релізу Ñ” Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð¾Ñ— та Ñтабільної платформи побудови рішень комплекÑних ÑиÑтем автоматизації та інших Ñуміжних рішень Ð´Ð»Ñ ÑпівтовариÑтва кориÑтувачів та розробників вільного програмного забезпеченнÑ. Також, реліз призначено Ñтати актуальним та міцним підґрунтÑм у побудові комерційних рішень. </p><p>Реліз Ñ” наÑтупною верÑією Ñтабільної гілки Ð´Ð»Ñ Ñкого, протÑгом тривалого чаÑу, надаєтьÑÑ Ñ‚ÐµÑ…Ð½Ñ–Ñ‡Ð½Ð° підтримка від розробників та забезпечуєтьÑÑ Ð²Ð¸Ð¿ÑƒÑк виправлень у виглÑді публічних збірок Ð´Ð»Ñ Ð¾Ñновних та Ñтабільних оточень Linux, а також оперативних збірок Ð´Ð»Ñ Ð²Ð»Ð°Ñників пакетів технічної підтримки. Життєвий цикл попереднього релізу 0.8.0 LTS припинÑєтьÑÑ Ð¹Ð¾Ð³Ð¾ оÑтаннім поновленнÑм, безпоÑередньо перед першими збірками пакетів 0.9 LTS. </p><p>Саме на цій верÑÑ–Ñ— відбувÑÑ Ð¾Ñтаточний перехід на Ñхему розробки Work/LTS, тобто, розробка здійÑнюєтьÑÑ Ñƒ межах робочої верÑÑ–Ñ— та на Ñ—Ñ— оÑнові періодично випуÑкаютьÑÑ Ñтабільні релізи, Ñкі, Ñвоєю чергою та паралельно розробці, оновлюютьÑÑ ÑˆÐ»Ñхом зворотнього Ð¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ ÑуміÑних змін із робочої верÑÑ–Ñ—. Ініціюючий перехід відбувÑÑ Ñƒ 2013 році, коли поточною Ñтабільною верÑÑ–ÑŽ визнано 0.8.0 LTS, а робочою 0.9 Work. Ðаразі, Ñтабільною верÑÑ–ÑŽ Ñтає анонÑована 0.9 LTS, а робочою 1 Work. </p><p>Загалом, нова Ñтабільна верÑÑ–Ñ Ñ” результатом шеÑти років роботи з розробки, Ð²Ð¿Ñ€Ð¾Ð²Ð°Ð´Ð¶ÐµÐ½Ð½Ñ Ñƒ різні рішеннÑ, Ñтабілізації та екÑплуатації OpenSCADA у Ñ—Ñ— робочій гілці, Ñка наразі випуÑкаєтьÑÑ Ð¿Ð¾Ñ‚Ð¾Ñ‡Ð½Ð¾ÑŽ Ñтабільною. ВеÑÑŒ цей Ñ‡Ð°Ñ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ 0.8.0 LTS продовжували випуÑкатиÑÑ Ñ‚Ð° що буде здійÑнюватиÑÑ Ð´Ð»Ñ Ð°Ð½Ð¾Ð½Ñованої 0.9 LTS. </p><p>Цей документ Ñ” узагальненнÑм протоколу змін (ChangeLog), починаючи з нульової ревізії попередньої LTS верÑÑ–Ñ—, через Ñ—Ñ— Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° закінчуючи поточною. Документ покликано коротко та наочно оÑвітлити нові можливоÑÑ‚Ñ– OpenSCADA. Детально ознайомитиÑÑ Ð·Ñ– змінами можна у файлі "ChangeLog" диÑтрибутивних пакетів або із першоджерела: <a class="external free" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog" rel="nofollow noreferrer noopener" target="_blank">http://oscada.org/svn/tags/openscada_0.9/ChangeLog</a>. </p> <h3><span class="mw-headline" id=".D0.97.D0.B0.D0.B3.D0.B0.D0.BB.D1.8C.D0.BD.D0.B0_.D1.96.D0.BD.D1.84.D0.BE.D1.80.D0.BC.D0.B0.D1.86.D1.96.D1.8F"><span class="mw-headline-number">1.1</span> Загальна інформаціÑ</span></h3> <p>Проєкт OpenSCADA заÑновано Савоченко Романом у 2003 році Ñк вільну Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð¡Ð¸Ñтеми ДиÑпетчерÑького Контролю та Збору Даних (SCADA) або Людино Машинний Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ (HMI), на оÑнові Ñ—Ñ— ґрунтовного Ð¿Ñ€Ð¾Ñ”ÐºÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ñ‚Ñгом 2002 року та доÑвіду викориÑÑ‚Ð°Ð½Ð½Ñ Ñ– розробки комерційної SCADA-ÑиÑтеми до цього. </p><p>SCADA або HMI ÑиÑтеми загалом призначені та викориÑтовуютьÑÑ Ð´Ð»Ñ Ð·Ð´Ñ–Ð¹ÑÐ½ÐµÐ½Ð½Ñ Ð»ÑŽÐ´Ð¸Ð½Ð¾ÑŽ оперативного контролю за роботою Ñкладного та відповідального технологічного Ð¾Ð±Ð»Ð°Ð´Ð½Ð°Ð½Ð½Ñ Ñ‚Ð° процеÑів різноманітних виробничих підприємÑтв. </p><p>Ðа Ñ‡Ð°Ñ Ð°Ð½Ð¾Ð½Ñу 0.9 LTS, OpenSCADA Ñ” розвиненою SCADA/HMI ÑиÑтемою, Ñка доволі широко заÑтоÑовуєтьÑÑ Ñк за прÑмим призначеннÑм, так, завдÑки Ñвоїй гнучкоÑÑ‚Ñ–, Ñ– у багатьох Ñуміжних галузÑÑ…, та Ñка із впевненіÑÑ‚ÑŽ може називатиÑÑ Ð±Ñ–Ð»ÑŒÑˆ загально — динамічна ÑиÑтема роботи із даними реального чаÑу. </p><p>Ðомер Ñтабільної верÑÑ–Ñ— OpenSCADA менше за одиницю тільки через те, що Ñ—Ñ— метою була заÑвлена багатоплатформніÑÑ‚ÑŒ, доÑÑгти Ñкої у запланованому об'ємі плануєтьÑÑ Ð½Ð°Ñтупним Ñтабільним релізом з номером 1. Загалом, цілÑми OpenSCADA Ñ”: </p> <ul><li> <b>відкритіÑÑ‚ÑŒ</b> — переважно GPLv2;</li> <li> <b>маÑштабованіÑÑ‚ÑŒ, гнучкіÑÑ‚ÑŒ, розширюваніÑÑ‚ÑŒ</b> — модульніÑÑ‚ÑŒ та Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð´Ð¸Ð½Ð°Ð¼Ñ–Ñ‡Ð½Ñ–ÑÑ‚ÑŒ;</li> <li> <b>виконавча надмірніÑÑ‚ÑŒ</b> — резервуваннÑ;</li> <li> <b>доÑтупніÑÑ‚ÑŒ</b> — відкриті вихідні текÑти; багатомовніÑÑ‚ÑŒ; динамічна багатомовніÑÑ‚ÑŒ; автоматичне ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ð°Ñ€Ñ…Ñ–Ð²Ñ–Ð², пакетів, живих диÑків, ...; ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ñ‚Ð° Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð½Ð° Linux оточеннÑÑ… у широкому віковому діапазоні, від 2002 року (2009-<a class="external text" href="http://ftp.oscada.org/ALTLinux/6" rel="nofollow noreferrer noopener" target="_blank">ALTLinux 6</a>, <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Using/ICPDAS_LP8x81" title="Special:MyLanguage/Using/ICPDAS LP8x81">LP8x81</a>, <a class="external text" href="http://ftp.oscada.org/OpenSCADA/LTS/Fedora/12" rel="nofollow noreferrer noopener" target="_blank">Fedora 12</a>; 2012-<a class="external text" href="http://ftp.oscada.org/Debian/7" rel="nofollow noreferrer noopener" target="_blank">Debian 7</a>) по ÑучаÑні;</li> <li> <b>надійніÑÑ‚ÑŒ</b> — практичне заÑтоÑуваннÑ, швидке Ð²Ð¸Ñ€Ñ–ÑˆÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð±Ð»ÐµÐ¼;</li> <li> <b>безпечніÑÑ‚ÑŒ</b> — розподіл прав, SSL;</li> <li> <b>багатоплатформніÑÑ‚ÑŒ</b> — x86_32, x86_64, ARM, Web, Android, QNX (<a class="external text" href="http://oscada.org/ua/forum/posts/razrabotka_openscada/popytka_adaptacii_openscada_k_qnx_65/" rel="nofollow noreferrer noopener" target="_blank">преадаптовано</a>), MS Windows (<a class="external text" href="http://oscada.org/en/development/tasks/posts/tasks_forming_formirovanie_zadach/adapting_openscada_to_work_on_os_ms_windows/" rel="nofollow noreferrer noopener" target="_blank">заплановано</a>);</li> <li> <b>єдиний, уніфікований, зручний та розвинутий Ñ–Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐºÐ¾Ñ€Ð¸Ñтувача</b> — Qt, Web, прозоре та багаторівневе віддалене керуваннÑ;</li> <li> <b>широкий Ñпектр джерел даних</b> — універÑальні, плати DAQ та низькорівневі шини, Ñтворені у оточені OpenSCADA.</li></ul> <h3><span class="mw-headline" id=".D0.97.D0.B0.D1.81.D1.82.D0.BE.D1.81.D1.83.D0.B2.D0.B0.D0.BD.D0.BD.D1.8F"><span class="mw-headline-number">1.2</span> ЗаÑтоÑуваннÑ</span></h3> <div class="thumb tright"><div class="thumbinner" style="width:302px;"><a class="image" href="http://oscada.org/wiki/File:Oscada_use_uk.png"><img class="thumbimage" height="367" src="files/300px-Oscada_use_uk.png" srcset="/wiki/images/thumb/1/13/Oscada_use_uk.png/450px-Oscada_use_uk.png 1.5x, /wiki/images/1/13/Oscada_use_uk.png 2x" width="300" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:Oscada_use_uk.png" title="Enlarge"></a></div>Ролі OpenSCADA.</div></div></div> <p>До актуальних галузей заÑтоÑуваннÑ, де відоме хоча-б одне Ð²Ð¿Ñ€Ð¾Ð²Ð°Ð´Ð¶ÐµÐ½Ð½Ñ Ñ‚Ð° із коротким переліком Ñких від учаÑників проєкту можна ознайомитиÑÑ Ð·Ð° <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Using" title="Special:MyLanguage/Using">цим поÑиланнÑм</a>, відноÑÑÑ‚ÑŒÑÑ: </p> <ul><li> <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Using" title="Special:MyLanguage/Using">ÐСУ ТП (SCADA/HMI)</a> або ÑиÑтеми телемеханіки — оÑновний напрÑмок та тут Ñ–Ñнує багато впроваджень;</li> <li> <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Using/Model_AGLKS" title="Special:MyLanguage/Using/Model AGLKS">динамічні моделі, імітатори та тренажери</a> технологічних процеÑів у реальному чаÑÑ–;</li> <li> <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Using/Vacuum_processing_unit" title="Special:MyLanguage/Using/Vacuum processing unit">Ñтанки та промиÑлові роботи</a>;</li> <li> <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Using/Yaroslavskij_broiler" title="Special:MyLanguage/Using/Yaroslavskij broiler">ÑиÑтеми ÑільÑко-гоÑподарчої диÑпетчеризації та керуваннÑ, пташники</a>;</li> <li> <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Using#Devices" title="Special:MyLanguage/Using">вбудовані та мобільні ÑиÑтеми</a> — Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÐŸÑ€Ð¾Ð³Ñ€Ð°Ð¼Ð¾Ð²Ð°Ð½Ð¾Ð³Ð¾ Логічного Контролеру (ПЛК), роботи, ...;</li> <li> <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Server" title="Special:MyLanguage/Sub-projects/Server">моніторинг Ð¾Ð±Ð»Ð°Ð´Ð½Ð°Ð½Ð½Ñ Ñерверів</a>;</li> <li> <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Using/HouseSpirit" title="Special:MyLanguage/Using/HouseSpirit">розумні будинки та домова автоматика</a>.</li></ul> <p>Із деÑкими обмеженнÑми та доробками, значним чином у внутрішньому оточенні кориÑтувача, OpenSCADA може викориÑтовуватиÑÑ Ð¹ у таких галузÑÑ…: </p> <ul><li> ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÑурÑами підприємÑтва (ERP);</li> <li> Geo-Ð»Ð¾ÐºÐ°Ñ†Ñ–Ñ Ñ‚Ð° відÑÑ‚ÐµÐ¶ÐµÐ½Ð½Ñ Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð½Ñ;</li> <li> торговельні ÑиÑтеми;</li> <li> медичні діагноÑтичні ÑиÑтеми;</li> <li> бухгалтерÑький облік;</li> <li> білінгові ÑиÑтеми.</li></ul> <h2><span class="mw-headline" id=".D0.A0.D0.B5.D0.B7.D1.83.D0.BB.D1.8C.D1.82.D0.B0.D1.82.D0.B8_.D0.BF.D0.BE.D0.BF.D0.B5.D1.80.D0.B5.D0.B4.D0.BD.D1.8C.D0.BE.D0.B3.D0.BE_.D1.80.D0.B5.D0.BB.D1.96.D0.B7.D1.83_0.8.0_LTS"><span class="mw-headline-number">2</span> Результати попереднього релізу 0.8.0 LTS</span></h2> <p>Реліз 0.8.0 LTS випущено у квітні 2012 року та протÑгом цих шеÑти років він отримав 20 оновлень, Ñкими, загалом, виправлено більше 500 помилок та додано багато вдоÑконалень, Ñкі не порушують ÑуміÑноÑÑ‚Ñ– бібліотечних БД та конфігурації. </p><p>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° бібліотечні БД 0.8.0 LTS були загалом заморожені, через великі неÑуміÑні зміни у 0.9 Work, Ð´Ð»Ñ Ð¼ÐµÑ‚Ð¾Ð´Ñ–Ð² запуÑку OpenSCADA, та недоÑконаліÑÑ‚ÑŒ розповÑÑŽÐ´Ð¶ÐµÐ½Ð½Ñ Ð±Ñ–Ð±Ð»Ñ–Ð¾Ñ‚ÐµÑ‡Ð½Ð¸Ñ… БД на момент випуÑку 0.8.0 LTS. Тому, Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° перехід на верÑÑ–ÑŽ 0.9 LTS буде нетривіальним, хоча у 0.9 LTS передбачено вÑе можливе Ð´Ð»Ñ ÑÐ¿Ñ€Ð¾Ñ‰ÐµÐ½Ð½Ñ <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Documents/Release_0.9/Updating_0.8.0_LTS" title="Special:MyLanguage/Documents/Release 0.9/Updating 0.8.0 LTS">цієї процедури</a>. ОновленнÑ-же 0.9 LTS до запланованої у майбутньому 1 LTS вже не буде таким Ñкладним Ñ– фактично може перетворитиÑÑ Ð²Ð¸ÐºÐ»ÑŽÑ‡Ð½Ð¾ у формальну зміну верÑÑ–Ñ— робочої гілки, оÑкільки тепер плануєтьÑÑ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ñього, включно з бібліотечними БД. </p> <h2><span class="mw-headline" id=".D0.9F.D0.BB.D0.B0.D0.BD.D0.BE.D0.B2.D1.96_.D0.B7.D0.B0.D0.B2.D0.B4.D0.B0.D0.BD.D0.BD.D1.8F_.D1.80.D0.B5.D0.BB.D1.96.D0.B7.D1.83"><span class="mw-headline-number">3</span> Планові Ð·Ð°Ð²Ð´Ð°Ð½Ð½Ñ Ñ€ÐµÐ»Ñ–Ð·Ñƒ</span></h2> <p>Розвиток OpenSCADA, піÑÐ»Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð½ÑŒÐ¾Ñ— LTS верÑÑ–Ñ— та у межах робочої гілки, переважно здійÑнювавÑÑ ÑˆÐ»Ñхом глибокої Ñтабілізації та через практичну адаптацію з елементами Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ñ–Ñнуючого функціоналу, націлені на Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ñтабільного та надійного Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ð·Ð°Ñ†Ñ–Ñ— промиÑлових та Ñуміжних завдань, а відтак Ñ– не Ñ–Ñнувало чітко визначеного плану. Та за три роки до цього релізу такий план з'ÑвивÑÑ Ñ– Ñклав наÑтупні завданнÑ, що видно із <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Works/Road_map" title="Special:MyLanguage/Works/Road map">загального плану розвитку</a>: </p> <ul><li> Повна Ñ€ÐµÐ²Ñ–Ð·Ñ–Ñ Ð¾Ñновної документації та підготовка анонÑу цього релізу.</li> <li> <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Adaption_to_Android" title="Special:MyLanguage/Sub-projects/Adaption to Android">ÐÐ´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ роботи на програмній платформі "Android"</a>.</li> <li> ПеренеÑÐµÐ½Ð½Ñ Ð±Ð°Ð·Ð¸ знань OpenSCADA, та Wiki-реÑурÑу документуваннÑ, на новий рушій із уніфікацією Ñтруктури під багатомовніÑÑ‚ÑŒ із пріоритетом: ÐнглійÑька, УкраїнÑька, mRussian; та генерації автономної (offline) документації за Ñ—Ñ— зміни.</li> <li> РевізіÑ, Ð°ÐºÑ‚ÑƒÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ñ‚Ð° деÑке Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Web-модулів OpenSCADA.</li> <li> Ð Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ñ‚Ð° Ð°Ð´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ OpenSCADA до прÑмої роботи із низькорівневими шинами та приÑтроÑми на кшталт 1Wire, I2C та Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð¿Ñ€Ð¾Ñ”ÐºÑ‚Ñƒ розумного будинку у влаÑному помешканні.</li> <li> Формальне ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ‚Ð° Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Automation_Linux_distributive" title="Special:MyLanguage/Sub-projects/Automation Linux distributive">проєкту диÑтрибутиву Linux автоматизації із OpenSCADA</a>.</li> <li> Ð¡Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ð·Ð¾Ð²Ð°Ð½Ð¾Ñ— ÑиÑтеми ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ð¿Ð°ÐºÐµÑ‚Ñ–Ð² OpenSCADA.</li> <li> ПеренеÑÐµÐ½Ð½Ñ Ñерверної інфраÑтруктури OpenSCADA на <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Server" title="Special:MyLanguage/Sub-projects/Server">влаÑне Ð¾Ð±Ð»Ð°Ð´Ð½Ð°Ð½Ð½Ñ Ñ‚Ð° канал у інтернет</a>.</li> <li> <a href="Modules/OPC_UA.html" title="Special:MyLanguage/Modules/OPC UA">DAQ.OPC_UA</a>: СпрощеннÑ, Ð·Ð±Ñ–Ð»ÑŒÑˆÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ð¾Ð½Ð°Ð»ÑŒÐ½Ð¾ÑÑ‚Ñ– та перенеÑÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ñ‚Ð¾ÐºÐ¾Ð»ÑŒÐ½Ð¾Ð³Ð¾ коду у окрему LGPL v3 бібліотеку.</li></ul> <p>Ці Ð·Ð°Ð²Ð´Ð°Ð½Ð½Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð¾ та деÑкі деталі щодо них наведено далі. </p> <h2><span class="mw-headline" id=".D0.97.D0.B0.D0.B3.D0.B0.D0.BB.D1.8C.D0.BD.D0.BE.D1.81.D0.B8.D1.81.D1.82.D0.B5.D0.BC.D0.BD.D1.96_.D0.B2.D0.BB.D0.B0.D1.81.D1.82.D0.B8.D0.B2.D0.BE.D1.81.D1.82.D1.96"><span class="mw-headline-number">4</span> ЗагальноÑиÑтемні влаÑтивоÑÑ‚Ñ–</span></h2> <p>Ðова Ñтабільна верÑÑ–Ñ OpenSCADA отримала помітні загальноÑиÑтемні розширеннÑ, набула більшої ÑтабільноÑÑ‚Ñ– у роботі та Ð·Ð±Ñ–Ð»ÑŒÑˆÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð´ÑƒÐºÑ‚Ð¸Ð²Ð½Ð¾ÑÑ‚Ñ–, а також отримала помітні удоÑÐºÐ¾Ð½Ð°Ð»ÐµÐ½Ð½Ñ Ð³Ñ€Ð°Ñ„Ñ–Ñ‡Ð½Ð¾Ð³Ð¾ інтерфейÑу та Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ Ð´Ð¾Ð²ÐºÐ¾Ð»Ð° неї на кшталт: розширеного налаштуваннÑ, документації, доÑтупної прÑмо з програми (offline та online), та Ñку значним чином переглÑнуто Ñ– актуалізовано. </p><p>ОÑновну чаÑтину документації проєкту перенеÑено на нову Wiki, на оÑнові MediaWiki, та значний об'єм цієї чаÑтини було відревізовано та перекладено на три мови — ÐнглійÑька, УкраїнÑька, mRussian. Ð”Ð»Ñ Ð¿ÐµÑ€ÐµÐ½ÐµÑÐµÐ½Ð½Ñ Ð±ÑƒÐ»Ð¾ Ñтворено <a href="Libs_Service_procedures.html#wacko2media" title="Special:MyLanguage/Libs/Service procedures"> процедуру конвертації Ñтатей з діалекту Ñ€ÑƒÑˆÑ–Ñ WackoWiki на MediaWiki</a>, Ñку було повніÑÑ‚ÑŽ напиÑано на внутрішній мові OpenSCADA та Ñку повÑÑкчаÑно викориÑтано Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ½ÐµÑÐµÐ½Ð½Ñ Ð²ÐµÐ»Ð¸ÐºÐ¾Ð³Ð¾ об'єму Ñтарої Wiki. Формат автономної (offline) документації було змінено зі Ñтатичних PDF-файлів, Ñкі не оновлювалиÑÑ Ð¿Ñ–ÑÐ»Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð½ÑŒÐ¾Ñ— LTS верÑÑ–Ñ—, на HTML-файли, Ñкі динамічно генеруютьÑÑ Ð· актуальної бази знань проєкту (Wiki), а також мають актуальні кроÑ-поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð¼Ñ–Ð¶ Ñторінками та поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° online-документацію, Ð´Ð»Ñ Ð²Ð¸ÐºÐ»ÑŽÑ‡Ð½Ð¾ зовнішніх матеріалів. Ð“ÐµÐ½ÐµÑ€Ð°Ñ†Ñ–Ñ offline-документації також здійÑнюєтьÑÑ <a href="Libs_Service_procedures.html#docOffLine" title="Special:MyLanguage/Libs/Service procedures">Ñпеціально напиÑаною процедурою</a> на внутрішній мові OpenSCADA, що, разом із процедурою конвертації Wiki-діалекту та <a href="Libs_Service_procedures.html#releaseTests" title="Special:MyLanguage/Libs/Service procedures">комплекÑного теÑÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÐ»Ñ–Ð·Ñƒ OpenSCADA</a>, Ñ” ÑÑкравою ознакою потужноÑÑ‚Ñ– та поточного Ñ€Ñ–Ð²Ð½Ñ Ñ€Ð¾Ð·Ð²Ð¸Ð½ÐµÐ½Ð¾ÑÑ‚Ñ– внутрішньої мови OpenSCADA. </p><p>У межах Ñтарої Wiki, піÑÐ»Ñ Ð²Ð¸Ð¿ÑƒÑку 0.8.0 LTS було додано та оновлено деÑкі документи, а з перенеÑеннÑм на нову Wiki, окрім ревізії та перекладу оÑновної чаÑтини документації, було здійÑнено загальну уніфікацію Ñ—Ñ— Ñтруктури з міркувань: багатомовноÑÑ‚Ñ– (ÐнглійÑької Ñк первинної мови), логічноÑÑ‚Ñ– організації, зручноÑÑ‚Ñ– перекладу та можливоÑÑ‚Ñ– прибрати Ð´ÑƒÐ±Ð»ÑŽÐ²Ð°Ð½Ð½Ñ Ñтатей з офіційним Ñайтом, Ñкі на разі проÑто викориÑтовуютьÑÑ Ñ–Ð· Wiki. Окремо відзначимо значно-розширені головні документи: </p> <ul><li> <a href="Quick_start.html" title="Special:MyLanguage/Documents/Quick start">Швидкий Ñтарт</a>;</li> <li> <a href="Program_manual.html" title="Special:MyLanguage/Documents/Program manual">ПоÑібник по програмі</a>;</li> <li> <a href="User_API.html" title="Special:MyLanguage/Documents/User API">API кориÑтувача OpenSCADA</a>;</li> <li> <a href="FAQ.html" title="Special:MyLanguage/Documents/FAQ">ЧÐП</a> та <a href="How_to.html" title="Special:MyLanguage/Documents/How to">Як виконати ...</a>;</li> <li> <a href="How_to_Create_module.html" title="Special:MyLanguage/Documents/How to/Create module">Ð¡Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ OpenSCADA</a>.</li></ul> <p>Первинну мову (ÐнглійÑьку) було повніÑÑ‚ÑŽ відревізовано у оригінальних повідомленнÑÑ… програми та багато у оÑновних ÑтаттÑÑ… документації-Wiki OpenSCADA, що наразі робить OpenSCADA адекватно ÑприÑтливою Ð´Ð»Ñ Ð°ÑƒÐ´Ð¸Ñ‚Ð¾Ñ€Ñ–Ñ—, що не розуміє вихідних мов — УкраїнÑької або mRussian. Та, разом із Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ñƒ повному обÑÑзі механізму динамічного перекладу, робить можливим побудову на оÑнові OpenSCADA динамічно багатомовних інтерфейÑів кориÑтувача, що Ви можете, зокрема, побачити на публічно доÑтупному Web-інтерфейÑÑ– динамічних моделей ТП: <a class="external text" href="http://oscada.org:10002" rel="nofollow noreferrer noopener" target="_blank">ÐГЛКС</a>, <a class="external text" href="http://oscada.org:10003" rel="nofollow noreferrer noopener" target="_blank">Котел</a>. </p><p>Робочою верÑією, у оÑнові цієї Ñтабільної, вперше було визначено понÑÑ‚Ñ‚Ñ Ð¿Ñ€Ð¾Ñ”ÐºÑ‚Ñƒ OpenSCADA та реалізовано Ñценарій командного Ñ€Ñдку Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑку та ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ñ”ÐºÑ‚Ñ–Ð² OpenSCADA. БезпоÑередньо перед випуÑком цієї верÑÑ–Ñ—, понÑÑ‚Ñ‚Ñ Ð¿Ñ€Ð¾Ñ”ÐºÑ‚Ñƒ OpenSCADA було оÑтаточно закріплено за текою з даними окремого проєкту та конфігураційним файлом OpenSCADA, а реалізацію менеджеру проєкту було інтегровано безпоÑередньо у OpenSCADA. Відтак, Ñ†Ñ LTS верÑÑ–Ñ Ð¼Ð°Ñ” розвинуте понÑÑ‚Ñ‚Ñ Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ€Ñƒ проєктів, що дозволÑÑ” гнучко з ними працювати та виключити небезпечну можливіÑÑ‚ÑŒ багаторазового запуÑку із загальними даними одного проєкту. </p><p>Робочою верÑією, також, запроваджено зміну верÑій модулів за змінами у коді Ð¼Ð¾Ð´ÑƒÐ»Ñ Ñ‚Ð° безпоÑередньо перед Ñ—Ñ… вивантаженнÑм до репозиторію вихідних текÑтів, а відтак, верÑÑ–Ñ— модулів OpenSCADA цього релізу наочно відзеркалюють загальний рівень Ñ—Ñ… розвинутоÑÑ‚Ñ– та ÑтабільноÑÑ‚Ñ–. </p> <div class="thumb tright"><div class="thumbinner" style="width:502px;"><a class="image" href="http://oscada.org/wiki/File:HowTo_livebootlang.png"><img class="thumbimage" height="192" src="../en/files/500px-HowTo_livebootlang.png" srcset="/wiki/images/thumb/0/02/HowTo_livebootlang.png/750px-HowTo_livebootlang.png 1.5x, /wiki/images/thumb/0/02/HowTo_livebootlang.png/1000px-HowTo_livebootlang.png 2x" width="500" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:HowTo_livebootlang.png" title="Enlarge"></a></div>Живі диÑки диÑтрибутиву Linux автоматизації проєкту OpenSCADA.</div></div></div> <p>У процеÑÑ– здійÑÐ½ÐµÐ½Ð½Ñ Ñ€Ð¾Ð±Ñ–Ñ‚ над робочою гілкою, у оÑнові цієї Ñтабільної, було запроваджено Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÐ¿Ð¾Ð·Ð¸Ñ‚Ð¾Ñ€Ñ–Ñ—Ð² пакетів диÑтрибутивів Linux зі збірками OpenSCADA, Ñкі до цього надавалиÑÑ Ð»Ð¸ÑˆÐµ Ñк окремі пакети. Що помітно ÑпроÑтило Ñ€Ð¾Ð·Ð³Ð¾Ñ€Ñ‚Ð°Ð½Ð½Ñ OpenSCADA та ÑƒÑ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ—Ñ— актуальною. Потім було Ñтворено <a class="external text" href="http://oscada.org/en/development/tasks/posts/core/the_automatic_openscada_builder/" rel="nofollow noreferrer noopener" target="_blank">автоматичний Ñкладальник цих пакетів</a>, Ñкий наразі нараховує до 100 цілей, та що значно ÑпроÑтило випуÑк оновлень Ñк Ð´Ð»Ñ Ñ€Ð¾Ð±Ð¾Ñ‡Ð¾Ñ— гілки так Ñ– Ð´Ð»Ñ Ñ†Ñ–Ñ”Ñ— Ñтабільної. Відтак, до цієї LTS верÑÑ–Ñ— надаютьÑÑ Ð·Ð±Ñ–Ñ€ÐºÐ¸ пакетів Ð´Ð»Ñ Ð¾Ñновних оточень Linux та вÑÑŽ Ñ–Ñторію публічних оновлень буде збережено. </p><p>До пакетів збірок OpenSCADA надаютьÑÑ Ñ‚Ð°ÐºÐ¾Ð¶ Ñ– збірки <a href="How_to_Live_disk.html" title="Special:MyLanguage/Documents/How to/Live disk">живих диÑків</a> швидкого Ð¾Ð·Ð½Ð°Ð¹Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° Ñ€Ð¾Ð·Ð³Ð¾Ñ€Ñ‚Ð°Ð½Ð½Ñ OpenSCADA разом із ÑиÑтемним оточеннÑм. Які до цього моменту отримали формальне Ð¿Ñ–Ð´Ò‘Ñ€ÑƒÐ½Ñ‚Ñ Ñƒ виглÑді <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Automation_Linux_distributive" title="Special:MyLanguage/Sub-projects/Automation Linux distributive">Linux диÑтрибутиву автоматизації проєкту OpenSCADA</a>. </p> <div class="thumb tright"><div class="thumbinner" style="width:302px;"><a class="image" href="http://oscada.org/wiki/File:Server_net.png"><img class="thumbimage" height="244" src="../en/files/300px-Server_net.png" srcset="/wiki/images/thumb/6/68/Server_net.png/450px-Server_net.png 1.5x, /wiki/images/thumb/6/68/Server_net.png/600px-Server_net.png 2x" width="300" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:Server_net.png" title="Enlarge"></a></div>ОÑновний Ñервер OpenSCADA.</div></div></div> <p>Збірки та пакети OpenSCADA ÑупроводжуютьÑÑ Ð½Ð¸Ð·ÐºÐ¾ÑŽ відкритого та вільного матеріалу внутрішнього Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸, а Ñаме, це: Ð½Ð°Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ ÑˆÐ°Ñ€Ñƒ збору та обробки даних, елементи графічного предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° цілі-комплекÑні проєкти моделей ТП. Ці матеріали надаютьÑÑ Ñƒ виглÑді файлів БД SQLite та включають: </p> <ul><li> <i>Бібліотеки функцій</i> (<b>OscadaLibs</b>), "LibsDB/OscadaLibs.db" — міÑтить вÑÑ– Ð½Ð°Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ñ”ÐºÑ‚Ñƒ OpenSCADA у шарі збору та обробки даних включно з <a href="DAQ.html#UserPrt" title="Special:MyLanguage/Documents/DAQ">елементами джерел даних кориÑтувацького протоколу</a>.</li> <li> <i>СВУ: Головні бібліотеки</i> (<b>vcaBase</b>), "LibsDB/vcaBase.db" — міÑтить <a href="Libs_Main_graphical_elements.html" title="Special:MyLanguage/Libs/Main graphical elements">оÑновні елементи графічного предÑтавленнÑ</a> та <a href="Libs_Mnemo_elements.html" title="Special:MyLanguage/Libs/Mnemo elements">елементи мнемоÑхем</a> проєкту OpenSCADA.</li> <li> <i>СВУ: ТеÑти</i> (<b>vcaTest</b>), "LibsDB/vcaTest.db" — міÑтить елементи теÑтів примітивів графічного предÑтавленнÑ.</li> <li> <i>СВУ: Бібліотека електро-елементів мнемоÑхем кориÑтувацького інтерфейÑу</i> (<b>vcaElectroEls</b>), "LibsDB/vcaElectroEls.db" — міÑтить елементи графічного предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½Ñ‚Ñ–Ð² електричних Ñхем.</li></ul> <p>ХоÑтинг проєкту загалом та матеріалів 0.9 LTS зокрема, було перенеÑено на <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Server" title="Special:MyLanguage/Sub-projects/Server">влаÑний Ñервер проєкту</a>, де додатково було розгорнуто: демонÑтраційні Web-інтерфейÑи моделей OpenSCADA, проєкт моніторингу Ñерверу та розумного будинку на оÑнові OpenSCADA та Ñкладальник пакетів репозиторію OpenSCADA. </p> <h3><span class="mw-headline" id=".D0.92.D0.BD.D1.83.D1.82.D1.80.D1.96.D1.88.D0.BD.D1.96"><span class="mw-headline-number">4.1</span> Внутрішні</span></h3> <p>Роздільну здатніÑÑ‚ÑŒ внутрішніх даних цілого типу Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ OpenSCADA збільшено до 64 розрÑдів. Загалом-же, внутрішні дані OpenSCADA, з резервуваннÑм Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¸ (EVAL) Ð´Ð»Ñ ÐºÐ¾Ð¶Ð½Ð¾Ð³Ð¾, уніфіковано загальними типами: логічне, ціле, реальне, Ñ€Ñдок та об'єкт. Що в першу чергу ÑтоÑуєтьÑÑ Ð´Ð¶ÐµÑ€ÐµÐ» даних. </p><p>До Ñдра OpenSCADA, <a href="Modules/UserProtocol.html" title="Special:MyLanguage/Modules/UserProtocol">влаÑного протоколу</a> та вÑÑ–Ñ… вузлів що працюють з віддаленими ÑтанціÑми OpenSCADA; додано можливіÑÑ‚ÑŒ "піднÑÑ‚Ñ‚Ñ" вузлів OpenSCADA, що знаходÑÑ‚ÑŒÑÑ Ð·Ð° іншими вузлами та, Ñк правило, у іншій мережі. Що загалом дозволÑÑ” централізовано керувати мережею Ñтанцій OpenSCADA на будь-Ñкому рівні ієрархії. </p> <h3><span class="mw-headline" id=".D0.92.D0.B4.D0.BE.D1.81.D0.BA.D0.BE.D0.BD.D0.B0.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_.D1.82.D0.B0_.D0.B0.D0.B4.D0.B0.D0.BF.D1.82.D0.B0.D1.86.D1.96.D1.8F_.D0.B4.D0.BE_.D1.80.D1.96.D0.B7.D0.BD.D0.B8.D1.85_.D0.BF.D0.BB.D0.B0.D1.82.D1.84.D0.BE.D1.80.D0.BC"><span class="mw-headline-number">4.2</span> ВдоÑÐºÐ¾Ð½Ð°Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° Ð°Ð´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ різних платформ</span></h3> <div class="thumb tright"><div class="thumbinner" style="width:302px;"><a class="image" href="http://oscada.org/wiki/File:AsusNexus7.png"><img class="thumbimage" height="172" src="../en/files/300px-AsusNexus7.png" srcset="/wiki/images/thumb/6/69/AsusNexus7.png/450px-AsusNexus7.png 1.5x, /wiki/images/thumb/6/69/AsusNexus7.png/600px-AsusNexus7.png 2x" width="300" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:AsusNexus7.png" title="Enlarge"></a></div>OpenSCADA на Android.</div></div></div> <p>Ð¦Ñ Ð²ÐµÑ€ÑÑ–Ñ OpenSCADA набула поглибленої підтримки та здібноÑÑ‚Ñ– до адаптації до різноманітних платформ. Це переважно ÑталоÑÑ Ð·Ð°Ð²Ð´Ñки адаптації до роботи на програмній платформі Android та Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð±Ñ–Ñ€ÐºÐ¸ Ñ– роботи з ucLibC, та що плануєтьÑÑ Ð²Ð¸ÐºÐ¾Ñ€Ð¸Ñтати у подальшій адаптації до роботи на програмних платформах QNX та MS Windows. </p> <div class="thumb tright"><div class="thumbinner" style="width:292px;"><a class="image" href="http://oscada.org/wiki/File:RaspberryPi.png"><img class="thumbimage" height="690" src="../en/files/RaspberryPi.png" width="290" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:RaspberryPi.png" title="Enlarge"></a></div>Raspberry Pi.</div></div></div> <div class="thumb tright"><div class="thumbinner" style="width:152px;"><a class="image" href="http://oscada.org/wiki/File:OrangePi.png"><img class="thumbimage" height="106" src="../en/files/150px-OrangePi.png" srcset="/wiki/images/thumb/b/b2/OrangePi.png/225px-OrangePi.png 1.5x, /wiki/images/b/b2/OrangePi.png 2x" width="150" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:OrangePi.png" title="Enlarge"></a></div>Orange Pi.</div></div></div> <p>Роботу на одноплатних ПК було розширено платами <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Using/Raspberry_Pi" title="Special:MyLanguage/Using/Raspberry Pi">Raspberry Pi</a> та <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Using/Orange_Pi" title="Special:MyLanguage/Using/Orange Pi">Orange Pi</a>. </p> <div class="thumb tright"><div class="thumbinner" style="width:202px;"><a class="image" href="http://oscada.org/wiki/File:Nokia_N9.png"><img class="thumbimage" height="105" src="../en/files/200px-Nokia_N9.png" srcset="/wiki/images/thumb/7/75/Nokia_N9.png/300px-Nokia_N9.png 1.5x, /wiki/images/thumb/7/75/Nokia_N9.png/400px-Nokia_N9.png 2x" width="200" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:Nokia_N9.png" title="Enlarge"></a></div>Nokia N9.</div></div></div> <p>Підтримку Linux Ñмартфорнів Nokia доповнено оÑтаннім, заÑнованим на MeeGo 1.2, це — Nokia N9. Ðбо це було Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ Nokia N950. </p><p>Окрім безпоÑередньої роботи (нативно) на різних платформах, було значно розширено Web-інтерфейÑ, Ñкий наразі реалізує вÑÑ– загальні можливоÑÑ‚Ñ– концепції Ñередовища візуалізації та ÑƒÐ¿Ñ€Ð°Ð²Ð»Ñ–Ð½Ð½Ñ (СВУ). </p> <h3><span class="mw-headline" id=".D0.9E.D0.BF.D1.82.D0.B8.D0.BC.D1.96.D0.B7.D0.B0.D1.86.D1.96.D1.8F.2C_.D1.81.D1.82.D0.B0.D0.B1.D1.96.D0.BB.D1.96.D0.B7.D0.B0.D1.86.D1.96.D1.8F_.D1.82.D0.B0_.D0.BF.D1.80.D0.BE.D0.B4.D1.83.D0.BA.D1.82.D0.B8.D0.B2.D0.BD.D1.96.D1.81.D1.82.D1.8C"><span class="mw-headline-number">4.3</span> ОптимізаціÑ, ÑÑ‚Ð°Ð±Ñ–Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ñ‚Ð° продуктивніÑÑ‚ÑŒ</span></h3> <p>Значної Ñтабілізації Ñдра OpenSCADA, та програми загалом, доÑÑгнуто через уніфікацію контролю внутрішніх реÑурÑів та Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ <a href="How_to_Debug.html" title="Special:MyLanguage/Documents/How to/Debug">можливоÑтей Ð½Ð°Ð»Ð°Ð³Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ ÐºÐ¾Ñ€Ð¸Ñтувачем</a>. Загалом, кориÑтувацьку діагноÑтику та Ð½Ð°Ð»Ð°Ð³Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð¾: </p> <ul><li> загальним ввімкненнÑм-вимкненнÑм Ð½Ð°Ð»Ð°Ð³Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ Ñ‚Ð° цільовим контролем вузлів налагодженнÑ;</li> <li> оÑобливим налагодженнÑм об'єктів контролерів джерел даних;</li> <li> оÑобливим налагодженнÑм Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ñ”ÐºÑ‚Ñ–Ð² СВУ;</li> <li> формуваннÑм поглибленої ÑтатиÑтики Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð´Ð¸Ð½Ð°Ð¼Ñ–Ñ‡Ð½Ð¸Ñ… об'єктів OpenSCADA, Ñк то: об'єкти контролерів джерел даних та Ñ—Ñ… параметрів, вхідних та вихідних транÑпортів, ÑеанÑів СВУ з деталізацією до віджетів;</li> <li> <a href="Program_manual.html#Transports" title="Special:MyLanguage/Documents/Program manual">протоколюваннÑм вхідного та вихідного трафіку транÑпортів</a>.</li></ul> <p>Глибокої та вÑебічної Ñтабілізації притерпіли майже вÑÑ– модулі OpenSCADA та багато було оптимізовано, з Ñких оÑобливо треба відзначити: </p> <ul><li> <i><a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Modules#DB" title="Special:MyLanguage/Modules">Ð’ÑÑ– модулі БД</a></i> — додано обробку та перевірку помилок БД або СУБД, та видачу повідомлень про ці помилки у випадку кориÑтувацького Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ‚Ð° запиÑу; збільшено продуктивніÑÑ‚ÑŒ (до порÑдку) БД що підтримують SQL, через реалізацію режиму Ð¿Ñ€ÐµÐ´Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñканувального запиту;</li> <li> <i>ОбчиÑлювач на оÑнові Java-подібної мови</i> (<a href="Modules/JavaLikeCalc.html" title="Special:MyLanguage/Modules/JavaLikeCalc">DAQ.JavaLikeCalc</a>) — збільшено продуктивніÑÑ‚ÑŒ через: Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ‚ÐµÐºÑту Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ—, Ð¿Ñ€ÐµÐ´Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ð¾Ñтійних та прÑмий доÑтуп до Ñ€Ñдку.</li> <li> <i>Ðрхіватор на БД</i> (<a href="Modules/DBArch.html" title="Special:MyLanguage/Modules/DBArch">Archive.DBArch</a>) — значно оптимізовано Ð·Ð°Ð¿Ð¸Ñ Ñ‚Ð° Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð‘Ð”, а Ñаме це: гуртовий Ð·Ð°Ð¿Ð¸Ñ Ð´ÐµÐºÑ–Ð»ÑŒÐºÐ¾Ñ… архівів до однієї таблиці та Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð±Ð»Ð¾ÐºÐ°Ð¼Ð¸ (кратними деÑÑти) у одному запиті.</li> <li> <i><a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Modules#Transports" title="Special:MyLanguage/Modules">Ð’ÑÑ– транÑпорти</a></i> — загально підвищено продуктивніÑÑ‚ÑŒ.</li> <li> <i>Робочий кориÑтувацький Ñ–Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ (WEB)</i> (<a href="Modules/WebVision.html" title="Special:MyLanguage/Modules/WebVision">UI.WebVision</a>) — збільшено чутливіÑÑ‚ÑŒ інтерфейÑу викориÑтаннÑм аÑинхронних запитів у загальному циклі оновленнÑ.</li></ul> <div class="thumb tright"><div class="thumbinner" style="width:302px;"><a class="image" href="http://oscada.org/wiki/File:DAQ_red_uk.png"><img class="thumbimage" height="200" src="files/300px-DAQ_red_uk.png" srcset="/wiki/images/thumb/8/86/DAQ_red_uk.png/450px-DAQ_red_uk.png 1.5x, /wiki/images/8/86/DAQ_red_uk.png 2x" width="300" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:DAQ_red_uk.png" title="Enlarge"></a></div>Ð ÐµÐ·ÐµÑ€Ð²ÑƒÐ²Ð°Ð½Ð½Ñ OpenSCADA Ñтанцій.</div></div></div> <p>ÐадійніÑÑ‚ÑŒ резервованої Ñтанції у маÑштабі комплекÑного рішеннÑ, точніше Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… Ñ–Ñторії, було вдоÑконалено розширеннÑм механізму резервуваннÑ, Ñкий потенційно передбачає Ñ€ÐµÐ·ÐµÑ€Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð±ÑƒÐ´ÑŒ-Ñкої підÑиÑтеми та реалізує наразі Ñ€ÐµÐ·ÐµÑ€Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´ÑиÑтем "Збір даних" та "Ðрхіви-ІÑторіÑ". </p><p>Та, Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸ загалом, було виконано <a class="external" href="http://oscada.org/wiki/Documents/Release_0.9/Tests" title="Documents/Release 0.9/Tests">низку формальних вÑебічних теÑтів</a>, Ñкі було попередньо розширено у <a href="Libs_Service_procedures.html#releaseTests" title="Special:MyLanguage/Libs/Service procedures">внутрішній процедурі комплекÑного теÑÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÐ»Ñ–Ð·Ñƒ OpenSCADA</a>. За підÑумком цих теÑтів було виÑвлено декілька помилок, Ñкі виправлено. </p> <h3><span class="mw-headline" id=".D0.97.D0.B1.D1.96.D1.80_.D0.B4.D0.B0.D0.BD.D0.B8.D1.85"><span class="mw-headline-number">4.4</span> Збір даних</span></h3> <div class="thumb tright"><div class="thumbinner" style="width:402px;"><a class="image" href="http://oscada.org/wiki/File:Oscada_UserOM_uk.png"><img class="thumbimage" height="181" src="files/400px-Oscada_UserOM_uk.png" srcset="/wiki/images/thumb/3/39/Oscada_UserOM_uk.png/600px-Oscada_UserOM_uk.png 1.5x, /wiki/images/thumb/3/39/Oscada_UserOM_uk.png/800px-Oscada_UserOM_uk.png 2x" width="400" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:Oscada_UserOM_uk.png" title="Enlarge"></a></div>КориÑтувацька об'єктна модель Ñдра OpenSCADA.</div></div></div> <p>Враховуючи ключову роль збору даних у програмах такого роду, Ñ†Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ, у оÑобі підÑиÑтеми "Збір даних" та Ñ—Ñ— модулів, отримала значні вдоÑконаленнÑ, з Ñких оÑобливо треба відзначити: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð°ÐºÑ†ÐµÐ½Ñ‚Ñƒ у розширені підтримуваних джерел даних з реалізації окремих модулів підÑиÑтеми "Збір даних" на ÑиÑтемній мові "C/C++", на Ñ—Ñ… реалізацію у оточені OpenSCADA та на Ñ—Ñ— внутрішній мові — <a href="DAQ.html" title="Special:MyLanguage/Documents/DAQ">логічний рівень OpenSCADA</a>. Тобто, на логічному рівні OpenSCADA, може та реалізуєтьÑÑ Ð²Ñе, що: Ð´Ð»Ñ Ð´Ð¾Ñтупу до даних викориÑтовує мережу, не потребує викориÑÑ‚Ð°Ð½Ð½Ñ Ñпецифічних бібліотек та функцій та не Ñ” дуже Ñкладним. Ðаразі, таким чином реалізовано: </p> <div class="thumb tright"><div class="thumbinner" style="width:402px;"><a class="image" href="http://oscada.org/wiki/File:RaspberryPi_experiments.jpg"><img class="thumbimage" height="390" src="../en/files/400px-RaspberryPi_experiments.jpg" srcset="/wiki/images/thumb/1/1f/RaspberryPi_experiments.jpg/600px-RaspberryPi_experiments.jpg 1.5x, /wiki/images/thumb/1/1f/RaspberryPi_experiments.jpg/800px-RaspberryPi_experiments.jpg 2x" width="400" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:RaspberryPi_experiments.jpg" title="Enlarge"></a></div>Ðизькорівневі приÑтрої підключені до Raspberry Pi.</div></div></div> <div class="thumb tright"><div class="thumbinner" style="width:402px;"><a class="image" href="http://oscada.org/wiki/File:RaspberryPi_LCD.png"><img class="thumbimage" height="267" src="../en/files/400px-RaspberryPi_LCD.png" srcset="/wiki/images/4/47/RaspberryPi_LCD.png 1.5x, /wiki/images/4/47/RaspberryPi_LCD.png 2x" width="400" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:RaspberryPi_LCD.png" title="Enlarge"></a></div>OpenSCADA на LCD екрані Raspberry Pi.</div></div></div> <ul><li> Ð’Ñ–Ð´Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ SMS повідомлень (SMS) та електронних лиÑтів (SMTP).</li> <li> Джерело Безперервного Ð–Ð¸Ð²Ð»ÐµÐ½Ð½Ñ (UPS), Ñк об'єкт даних із атрибутами зі значеннÑми.</li> <li> ПроÑÑ‚Ñ– ÑенÑори та давачі: <ul><li> Елемер TM510x;</li> <li> EDWARDS TURBOMOLECULAR PUMPS (SCU750);</li> <li> Sycon Multi Drop Protocol (SMDP);</li> <li> Блок Ð¶Ð¸Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚ÑƒÑ€Ð±Ð¾-молекулÑрного наÑоÑу (TMP-xx03);</li> <li> Ð’Ð¸Ð¼Ñ–Ñ€ÑŽÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐ¼Ð¿ÐµÑ€Ð°Ñ‚ÑƒÑ€Ð¸ IT-3 (IT3);</li> <li> IVE-452HS-02;</li> <li> OPTRIS CT/CTL;</li> <li> CTR 100, 101.</li></ul></li> <li> Комп'ютер теплового лічильника VKT7.</li> <li> IEC-60870-104.</li> <li> ТеÑтові реалізації та приклади: DCON, OWEN.</li> <li> Шина "One Wire" за допомогою {DS9097,DS9097U} (1W_{DS9097,DS9097}) Ð´Ð»Ñ Ñ‡Ð¸Ð¿Ñ–Ð²: DS1820, DS1820/DS18S20/DS1920, DS1822, DS2413, DS2408, DS2450, DS2438.</li> <li> Шина I2C: PCF8591, PCF8574, BMP180, DS3231, AT24C{32|64}.</li> <li> Загальні порти Ð’Ð’ (GPIO): DHT11,22 (AM23XX). GPIO|I2C: 1602A(HD44780).</li></ul> <p>Враховуючи Ð·Ð±Ñ–Ð»ÑŒÑˆÐµÐ½Ð½Ñ Ñ€Ð¾Ð»Ñ– логічного Ñ€Ñ–Ð²Ð½Ñ OpenSCADA, зроÑли Ñ– вимоги до гнучкоÑÑ‚Ñ– моделі даних джерела даних та загалом, що було задоволено: </p> <ul><li> завершеннÑм Ð¿Ð¾ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½ÑŒÐ¾Ñ— моделі даних вÑіма функціÑми, характерними до галузей заÑтоÑуваннÑ;</li> <li> доданнÑм ієрархічноÑÑ‚Ñ– до параметрів об'єктів контролерів джерел даних;</li> <li> доданнÑм можливоÑÑ‚Ñ– довільного та динамічного Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð¼Ð¾Ð´ÐµÐ»Ñ– даних — набору атрибутів параметрів.</li></ul> <p>Ð’Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¼Ð¾Ð²Ð° Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ OpenSCADA набула значних удоÑконалень та, наразі, задовольнÑÑ” вÑім вимогам галузей заÑтоÑÑƒÐ²Ð°Ð½Ð½Ñ OpenSCADA. Багато з цих удоÑконалень потрапили до попередньої верÑÑ–Ñ— 0.8.0 LTS, та низка не могла туди потрапити через Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð·Ð²Ð¾Ñ€Ð¾Ñ‚Ð½ÑŒÐ¾Ñ— ÑуміÑноÑÑ‚Ñ– або недоÑтатньої ÑтабільноÑÑ‚Ñ– на той чаÑ. З цих, Ñуттєвих вдоÑконалень, треба ще раз відзначити: Ð·Ð±Ñ–Ð»ÑŒÑˆÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»ÑŒÐ½Ð¾Ñ— здатноÑÑ‚Ñ– даних внутрішнього Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ OpenSCADA цілого типу до 64 розрÑдів та Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ‚ÐµÐºÑту Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ–Ñ… процедур. </p> <h3><span class="mw-headline" id=".D0.93.D1.80.D0.B0.D1.84.D1.96.D1.87.D0.BD.D0.B5_.D0.BE.D1.82.D0.BE.D1.87.D0.B5.D0.BD.D0.BD.D1.8F"><span class="mw-headline-number">4.5</span> Графічне оточеннÑ</span></h3> <div class="thumb tright"><div class="thumbinner" style="width:202px;"><a class="image" href="http://oscada.org/wiki/File:QTStarter_dialog_uk.png"><img class="thumbimage" height="315" src="files/200px-QTStarter_dialog_uk.png" srcset="/wiki/images/thumb/8/8e/QTStarter_dialog_uk.png/300px-QTStarter_dialog_uk.png 1.5x, /wiki/images/thumb/8/8e/QTStarter_dialog_uk.png/400px-QTStarter_dialog_uk.png 2x" width="200" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:QTStarter_dialog_uk.png" title="Enlarge"></a></div>Діалог Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ñ”ÐºÑ‚Ñ–Ð² OpenSCADA.</div></div></div> <div class="thumb tright"><div class="thumbinner" style="width:402px;"><a class="image" href="http://oscada.org/wiki/File:QTStarter_cfg_uk.png"><img class="thumbimage" height="370" src="files/400px-QTStarter_cfg_uk.png" srcset="/wiki/images/thumb/2/23/QTStarter_cfg_uk.png/600px-QTStarter_cfg_uk.png 1.5x, /wiki/images/2/23/QTStarter_cfg_uk.png 2x" width="400" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:QTStarter_cfg_uk.png" title="Enlarge"></a></div>КориÑтувацький контроль виглÑду інтерфейÑу Qt.</div></div></div> <p>Загалом, графічне Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð»Ð¾ значний розвиток та головним з них Ñтало Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ <a href="Modules/QTStarter.html" title="Special:MyLanguage/Modules/QTStarter">Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð·Ð°Ð¿ÑƒÑку Qt-інтерфейÑу</a>, Ñк Ð¿Ñ–Ð´Ò‘Ñ€ÑƒÐ½Ñ‚Ñ Ð´Ð»Ñ Ñ€ÐµÑˆÑ‚Ð¸ локальних. Ð’ першу чергу, цей модуль та Ñдро OpenSCADA адаптовано Ð´Ð»Ñ Ð¼Ð¾Ð¶Ð»Ð¸Ð²Ð¾ÑÑ‚Ñ– запуÑку бібліотеки графічного Ñередовища Qt у оÑновному потоці програми, що виключило багато проблем, пов'Ñзаних із виконаннÑм у неголовному потоці, а також забезпечено роботу з верÑією 5 цієї бібліотеки. По друге, цей модуль взÑв на Ñебе роль інтерфейÑу Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ñ”ÐºÑ‚Ñ–Ð² OpenSCADA при Ñ—Ñ— запуÑку та перемиканні, а також ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ…. І по трете, через його первинніÑÑ‚ÑŒ до запуÑку Qt, він отримав функцію ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ð³Ð»Ñдом програми незалежно від графічного Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ Ñ‚Ð° можливіÑÑ‚ÑŒ його запуÑку-Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñƒ ÑиÑтемний лоток. Що загалом уможливило Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ OpenSCADA під перÑональні вимоги кориÑтувача та адаптовувати Ñ—Ñ— до дуже Ñпецифічних оточень на кшталт <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Automation_Linux_distributive" title="Special:MyLanguage/Sub-projects/Automation Linux distributive">Android</a>. </p><p>Помітних удоÑконалень отримали модулі конфігурації Qt та Web, де оÑобливо треба відзначити: </p> <ul><li> <i>Конфігуратор-Qt</i> (<a href="Modules/QTCfg.html" title="Special:MyLanguage/Modules/QTCfg">UI.QTCfg</a>): здійÑÐ½ÐµÐ½Ð½Ñ Ð·Ð°Ð¿Ð¸Ñ‚Ñ–Ð² до віддалених Ñтанцій у окремому потоці від потоку Qt, що зробило його зручнішим та більш прогнозованим та що навіть, разом з одним із оновленнÑм, потрапило до попередньої Ñтабільної верÑій 0.8.0 LTS.</li> <li> <i>Конфігуратор-WEB</i> (<a href="Modules/WebCfgD.html" title="Special:MyLanguage/Modules/WebCfgD">UI.WebCfgD</a>): загалом, був повніÑÑ‚ÑŽ оновлений на предмет інтерфейÑу, Ñкий наразі Ñ” більш динамічним, зручним та може бути розширений темами.</li></ul> <div class="thumb tright"><div class="thumbinner" style="width:402px;"><a class="image" href="http://oscada.org/wiki/File:WebVision_wvis_run_uk.png"><img class="thumbimage" height="316" src="files/400px-WebVision_wvis_run_uk.png" srcset="/wiki/images/thumb/0/06/WebVision_wvis_run_uk.png/600px-WebVision_wvis_run_uk.png 1.5x, /wiki/images/thumb/0/06/WebVision_wvis_run_uk.png/800px-WebVision_wvis_run_uk.png 2x" width="400" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:WebVision_wvis_run_uk.png" title="Enlarge"></a></div>OpenSCADA на Web.</div></div></div> <p>Помітних вдоÑконалень також отримало Ñередовище візуалізації та ÑƒÐ¿Ñ€Ð°Ð²Ð»Ñ–Ð½Ð½Ñ (СВУ), у Ñкладі вÑÑ–Ñ… його модулів: </p> <ul><li> <i>Рушій СВУ та модулі візуалізаторів загалом</i> (<a href="Modules/VCAEngine.html" title="Special:MyLanguage/Modules/VCAEngine">UI.VCAEngine</a>): <ul><li> дозволÑÑ” здійÑнювати повноцінну-гарÑчу розробку, тобто — Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ñ”ÐºÑ‚Ñƒ СВУ на момент його Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÑеанÑами;</li> <li> оригінальні Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ–Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñу Ñ” цілком відкориговано, граматично та орфографічно коректними Ð´Ð»Ñ ÐнглійÑької мови;</li> <li> надано низку додаткових видів примітиву "Елементи форми", "Діаграма" та розширено примітив "Text" відображеннÑм "HTML";</li> <li> надано механізм Ñпецифічних до візуалізатору атрибутів віджетів, що дозволило розкрити та викориÑтовувати Ñ—Ñ… індивідуальні влаÑтивоÑÑ‚Ñ–;</li> <li> новий-гнучкий механізм повідомлень кориÑтувача про позаштатні події у контрольованому ÑиÑтемою процеÑÑ–, Ñкий передбачає можливіÑÑ‚ÑŒ вільного Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ ÐºÐ¾Ñ€Ð¸Ñтувацьких Ñповіщувачів з потрібними влаÑтивоÑÑ‚Ñми, Ñк то: моно-тоновий Ñигнал, Ñинтез мови.</li></ul></li> <li> <i>Візуалізатор-Qt</i> (<a href="Modules/Vision.html" title="Special:MyLanguage/Modules/Vision">UI.Vision</a>): <ul><li> помітно покращено роботу з Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ð´Ð°Ð»ÐµÐ½Ð¸Ñ… інтерфейÑів та забезпечено здійÑÐ½ÐµÐ½Ð½Ñ Ð·Ð°Ð¿Ð¸Ñ‚Ñ–Ð² до віддаленої Ñтанції у окремому потоці від потоку Qt, що ÑпроÑтило віддалену розробку із паралельним виконаннÑм проєкту;</li> <li> Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¸Ð¼Ñ–Ñ‚Ð¸Ð²Ñƒ "Документ" може здійÑнюватиÑÑ Ð·Ð° допомогою WebKit.</li></ul></li> <li> <i>Візуалізатор-WEB</i> (<a href="Modules/WebVision.html" title="Special:MyLanguage/Modules/WebVision">UI.WebVision</a>): <ul><li> уніфіковано, оптимізовано та розширено викориÑтаннÑм CSS3;</li> <li> надано реалізацію вÑÑ–Ñ… елементів-примітивів уніфікованого інтерфейÑу;</li> <li> здійÑнюєтьÑÑ Ð¼Ð°ÑÑˆÑ‚Ð°Ð±ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¾ доÑтупного проÑтору вікна браузеру;</li> <li> збільшено продуктивніÑÑ‚ÑŒ роботи та чутливіÑÑ‚ÑŒ інтерфейÑу, через викориÑÑ‚Ð°Ð½Ð½Ñ Ð²Ð¸ÐºÐ»ÑŽÑ‡Ð½Ð¾ аÑинхронного механізму при оновлені.</li></ul></li></ul> <p>Ð’ÑÑ– Web-модулі, загалом, набули можливіÑÑ‚ÑŒ зміни виглÑду за поÑередництва тем, через загальноÑиÑтемні інтерфейÑи <a href="Modules/HTTP.html" title="Special:MyLanguage/Modules/HTTP">Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð¿Ñ€Ð¾Ñ‚Ð¾ÐºÐ¾Ð»Ñƒ HTTP</a> та його механізми обробки запитів Ñ– Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ð¿Ð¾Ð²Ñ–Ð´ÐµÐ¹. Також, вÑÑ– вони отримали підтримку динамічного перекладу інтерфейÑу, що оÑобливо актуально Ð´Ð»Ñ Ð±Ð°Ð³Ð°Ñ‚Ð¾ÐºÐ¾Ñ€Ð¸Ñтувацьких Web-інтерфейÑів та з чим Ви можете ознайомитиÑÑ Ð½Ð° демонÑтраційних Web-інтерфейÑах моделей OpenSCADA: <a class="external text" href="http://oscada.org:10002" rel="nofollow noreferrer noopener" target="_blank">ÐГЛКС</a>, <a class="external text" href="http://oscada.org:10003" rel="nofollow noreferrer noopener" target="_blank">Котел</a>. Додано також механізм розподілу доÑтупу до Ñторінок, Ñкий, зокрема, дозволÑÑ” розмежувати доÑтуп до Web-модулів загалом. </p> <h2><span class="mw-headline" id=".D0.9D.D0.BE.D0.B2.D1.96_.D1.82.D0.B0_.D0.B7.D0.BD.D0.B0.D1.87.D0.BD.D0.BE_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D1.96_.D0.BC.D0.BE.D0.B4.D1.83.D0.BB.D1.96"><span class="mw-headline-number">5</span> Ðові та значно оновлені модулі</span></h2> <p>У новій верÑÑ–Ñ— було додано нові модулі та значним чином оновлено низку чинних: </p> <ul><li> Додано нові модулі: <ul><li> <i>MMS(IEC-9506)</i> (<a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Modules/MMS" title="Special:MyLanguage/Modules/MMS">DAQ.MMS</a>) — модуль підтримки обміну даних за протоколом "Manufacturing Message Specification (MMS, IEC-9506)".</li> <li> <i>Comedi</i> (<a href="Modules/Comedi.html" title="Special:MyLanguage/Modules/Comedi">DAQ.Comedi</a>) — модуль підтримки джерел даних реального чаÑу (бібліотека "Comedi"), Ñкі оÑновані на платах збору даних різних виробників та вÑтановлюютьÑÑ Ð½Ð° шинах: ISA, PCI, PCMCIA та USB.</li> <li> <i>SMH2Gi</i> (<a href="Modules/SMH2Gi.html" title="Special:MyLanguage/Modules/SMH2Gi">DAQ.SMH2Gi</a>) — модуль реалізації доÑтупу до апаратних модулів джерел даних ПЛК Segnetics SMH2Gi,SMH4 Ð´Ð»Ñ "MC", "MR", а також взаємодії із оригінальним оточеннÑм "SMLogix".</li> <li> <i>Fastwel IO</i> (<a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Modules/Fastwel" title="Special:MyLanguage/Modules/Fastwel">DAQ.Fastwel</a>) — модуль обміну даними з апаратними модулÑми Fastwel IO.</li> <li> <i>FT3 (ÐПСТМ)</i> (<a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Modules/FT3" title="Special:MyLanguage/Modules/FT3">DAQ.FT3</a>) — модуль обміну даними з контролерами ÐПСТМ, ÐСДКУ, СУÐП.</li> <li> <i>GPIO</i> (<a href="Modules/GPIO.html" title="Special:MyLanguage/Modules/GPIO">DAQ.GPIO</a>) — модуль доÑтупу до GPIO одноплатних ПК на кшталт Raspberry Pi, Orange Pi та інші.</li></ul></li> <li> <i>ОбчиÑлювач на оÑнові Java-подібної мови</i> (<a href="Modules/JavaLikeCalc.html" title="Special:MyLanguage/Modules/JavaLikeCalc">DAQ.JavaLikeCalc</a>) розширено: підтримкою внутрішніх функцій, динамічним перекладом повідомлень та багатьма іншими функціÑми інтерфейÑу кориÑтувацького Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð³Ð°Ð»Ð¾Ð¼.</li> <li> <i>Шлюз джерел даних</i> (<a href="Modules/DAQGate.html" title="Special:MyLanguage/Modules/DAQGate">DAQ.DAQGate</a>) розширено шлюзуваннÑм повідомлень, пов'Ñзаних із обраним джерелом даних.</li> <li> <i>Збір даних ОС</i> (<a href="Modules/System.html" title="Special:MyLanguage/Modules/System">DAQ.System</a>) розширено джерелами даних: "Файлова СиÑтема", "ДБЖ", "QSensor" та можливіÑÑ‚ÑŽ відокремленнÑм повільних джерел від швидких.</li> <li> <i>ModBus</i> (<a href="Modules/ModBus.html" title="Special:MyLanguage/Modules/ModBus">{DAQ,Protocol}.ModBus</a>) розширено підтримкою Ñ€Ñдка, Ñк поÑлідовноÑÑ‚Ñ– значень регіÑтрів.</li> <li> <i>Клієнт DCON</i> (<a href="Modules/DCON.html" title="Special:MyLanguage/Modules/DCON">DAQ.DCON</a>) значно розширено підтримкою Ñпецифічних модулів.</li> <li> <div class="thumb tright"><div class="thumbinner" style="width:302px;"><a class="image" href="http://oscada.org/wiki/File:Oscada_use_opcua_uk.png"><img class="thumbimage" height="284" src="files/300px-Oscada_use_opcua_uk.png" srcset="/wiki/images/thumb/5/59/Oscada_use_opcua_uk.png/450px-Oscada_use_opcua_uk.png 1.5x, /wiki/images/5/59/Oscada_use_opcua_uk.png 2x" width="300" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:Oscada_use_opcua_uk.png" title="Enlarge"></a></div>Ролі OpenSCADA Ñк OPC-UA Ñервер.</div></div></div> <i>OPC-UA</i> (<a href="Modules/OPC_UA.html" title="Special:MyLanguage/Modules/OPC UA">DAQ.OPC_UA</a>) значно розширено публікацією та підтримкою "шматків" у клієнтÑькій чаÑтині ÑервіÑу, Ñпецифічний код протоколу відокремлено у бібліотеку.</li> <li> <i>ÐžÐ±Ð»Ð°Ð´Ð½Ð°Ð½Ð½Ñ ICP_DAS</i> (<a href="Modules/ICP_DAS.html" title="Special:MyLanguage/Modules/ICP DAS">DAQ.ICP_DAS</a>) значно розширено, а фактично повніÑÑ‚ÑŽ перепиÑано, підтримкою вÑÑ–Ñ… наÑвних плат збору даних від фірми ICP_DAS Ð´Ð»Ñ Ñерії I8k, I-87k, на шині ISA та уніфіковані типи Ð´Ð»Ñ Ñтандартних модулів Ñерії I7k.</li> <li> <i>Siemens S7 ПЛК</i> (<a href="Modules/Siemens.html" title="Special:MyLanguage/Modules/Siemens">DAQ.Siemens</a>) значно розширено влаÑною реалізацію ISO-TSAP.</li> <li> <i>Diamond плати збору даних</i> (<a href="Modules/DiamondBoards.html" title="Special:MyLanguage/Modules/DiamondBoards">DAQ.DiamondBoards</a>) значно розширено, а фактично повніÑÑ‚ÑŽ перепиÑано, підтримкою вÑÑ–Ñ… наÑвних плат збору даних від фірми Diamond Systems.</li> <li> <i>ПриÑтрої ÐСКО</i> (<a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Modules/AMRDevs" title="Special:MyLanguage/Modules/AMRDevs">DAQ.AMRDevs</a>) реалізовано підтримку лічильника Контар (МЗТÐ).</li> <li> <i><a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Modules#DB" title="Special:MyLanguage/Modules">Ð’ÑÑ– модулі БД</a></i> значно розширено динамічним перекладом.</li> <li> <i>Ðрхіватор на БД</i> (<a href="Modules/DBArch.html" title="Special:MyLanguage/Modules/DBArch">Archive.DBArch</a>) розширено архівацією декількох архівів у одну таблицю та відновленнÑм переліку архівів із інформації у БД.</li> <li> <i>Ðрхіватор на ФС</i> (<a href="Modules/FSArch.html" title="Special:MyLanguage/Modules/FSArch">Archive.FSArch</a>) додано підтримку проміжних типів "Int16", "Int32", "Int64", "Float", "Double" та доповнено абÑолютним обмеженнÑм розміру архіву на диÑку.</li> <li> <i><a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Modules#Transports" title="Special:MyLanguage/Modules">Ð’ÑÑ– модулі транÑпортів</a></i> розширено режимом пулінгу вхідних транÑпортів та протоколів.</li> <li> <i>Сокети</i> (<a href="Modules/Sockets.html" title="Special:MyLanguage/Modules/Sockets">DAQ.Sockets</a>) розширено підтримкою шини RAWCAN та ініціативним підключеннÑм вхідного транÑпорту.</li> <li> <i>ПоÑлідовний інтерфейÑ</i> (<a href="Modules/Serial.html" title="Special:MyLanguage/Modules/Serial">Transport.Serial</a>) розширено підтримкою низькорівневої шини I2C; Ñпеціальними кориÑтувацькими функціÑми поÑлідовного інтерфейÑу: "sendbreak", "TS", "DR", "DCD", "RI"; розширеним керуваннÑм RTS Ð´Ð»Ñ RS-485.</li> <li> <i>Шар безпечних Ñокетів</i> (<a href="Modules/SSL.html" title="Special:MyLanguage/Modules/SSL">Transport.SSL</a>) розширено підтримкою: TLSv1.1, TLSv1.2, DTLSv1.</li> <li> <i>ВлаÑний протокол програми</i> (<a href="Modules/SelfSystem.html" title="Special:MyLanguage/Modules/SelfSystem">Protocol.SelfSystem</a>) розширено ієрархічним та багаторівневим ÑпрÑмуваннÑм запитів до зовнішніх хоÑтів.</li> <li> <i>HTTP</i> (<a href="Modules/HTTP.html" title="Special:MyLanguage/Modules/HTTP">Protocol.HTTP</a>) розширено адаптивніÑÑ‚ÑŽ до інтерфейÑів кориÑтувача у ÑиÑтемних діалогах та наданнÑм загального API побудови HTTP-інтерфейÑів Ñк Ð´Ð»Ñ ÐºÐ¾Ñ€Ð¸Ñтувача, так Ñ– модулÑм за ним.</li> <li> <i>Програмний конфігуратор (Qt)</i> (<a href="Modules/QTCfg.html" title="Special:MyLanguage/Modules/QTCfg">UI.QTCfg</a>) запити інтерфейÑу ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ OpenSCADA винеÑено до окремого потоку та покращено реалізацію елементів контролю.</li> <li> <i>Програмний конфігуратор (Динамічний WEB)</i> (<a href="Modules/WebCfgD.html" title="Special:MyLanguage/Modules/WebCfgD">UI.WebCfgD</a>) розширено новим дизайном з викориÑтаннÑм CSS3 та можливоÑтей ÑучаÑних WEB-браузерів.</li> <li> <i>ÐšÐ¾Ð½Ñ†ÐµÐ¿Ñ†Ñ–Ñ Ñ– рушій Ñередовища візуалізації та керуваннÑ</i> (<a href="Modules/VCAEngine.html" title="Special:MyLanguage/Modules/VCAEngine">UI.VCAEngine</a>) розширено: підтримкою Ñпецифічних до візуалізатору атрибутів віджетів, реалізацією нового-гнучкого механізму Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ ÐºÐ¾Ñ€Ð¸Ñтувача, фоновим (у окремому потоці) виконаннÑм задачі Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ñ–Ð², збільшеннÑм кількоÑÑ‚Ñ– трендів на одному кадрі до 100 та підтримкою логарифмічної шкали примітиву "Діаграма".</li> <li> <i>Робочий кориÑтувацький Ñ–Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ (Qt)</i> (<a href="Modules/Vision.html" title="Special:MyLanguage/Modules/Vision">UI.Vision</a>) розширено: Ð´Ð»Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸ у мережі через Ñервер візуалізації; реалізацією групи Ñпецифічних до цього візуалізатору атрибутів; реалізацією видів "Дерево", "ТаблицÑ" та розширеннÑм виду "Кнопка", примітиву "Елементи форми"; реалізацією виду "XY" примітиву "Діаграма"; значним рефакторингом коду примітиву "Елементарна фігура".</li> <li> <i>Робочий кориÑтувацький Ñ–Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ (WEB)</i> (<a href="Modules/WebVision.html" title="Special:MyLanguage/Modules/WebVision">UI.WebVision</a>) розширено викориÑтаннÑм CSS3 та можливоÑтей ÑучаÑних браузерів, зокрема: додано маÑÑˆÑ‚Ð°Ð±ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¾ доÑтупного проÑтору вікна браузеру, реалізовано вÑÑ– примітиви уніфікованого інтерфейÑу.</li> <li> <i>Бібліотека функцій ÑиÑтемного API Ñередовища кориÑтувацького програмуваннÑ</i> (<a href="Modules/FLibSYS.html" title="Special:MyLanguage/Modules/FLibSYS">Special.FLibSYS</a>) розширено функціÑми та об'єктами: "floatExtract", "md5", "tmSleep", об'єкт "IO"; значно розширено чинні функції та об'єкти: "dbReqSQL", "FFT", "strParse", "strDec4Bin".</li></ul> <h2><span class="mw-headline" id=".D0.92.D0.B8.D1.81.D0.BD.D0.BE.D0.B2.D0.BA.D0.B8"><span class="mw-headline-number">6</span> ВиÑновки</span></h2> <p>Ðа шлÑху до нового релізу 0.9 LTS промиÑлового Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð´Ñ–Ð¹Ñнено велику роботу по Ñтабілізації, розширенню функціональних можливоÑтей, а також розширенню адаптаційних можливоÑтей до роботи на альтернативних платформах. Ð’Ñе це загалом ще більше розширило межі повноцінного заÑтоÑÑƒÐ²Ð°Ð½Ð½Ñ OpenSCADA на вÑÑ–Ñ… рівнÑÑ… ÑиÑтем промиÑлової автоматизації та Ñуміжних напрÑмків автоматизації та автоматики. </p><p>LTS верÑÑ–Ñ— OpenSCADA не Ñ” порожнім звуком, вони реально підтримуютьÑÑ Ð²ÐµÑÑŒ чаÑ, до наÑтупної LTS верÑÑ–Ñ—, та підтримку цієї верÑÑ–Ñ— ще буде розширено ÑервіÑними оновленнÑми. Також, буде здійÑнено Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð°ÐºÑ†ÐµÐ½Ñ‚Ñƒ та політики Ð²Ð¿Ñ€Ð¾Ð²Ð°Ð´Ð¶ÐµÐ½Ð½Ñ LTS верÑÑ–Ñ—, Ñка до цього рекомендувалаÑÑŒ до Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ð¹ із замороженими бібліотечними БД, на пріоритет у викориÑтанні на широкому Ñпектрі нових рішень. </p> <div class="thumb tright"><div class="thumbinner" style="width:402px;"><a class="image" href="http://oscada.org/wiki/File:Release0.9_QNX4.5-preadaption.png"><img class="thumbimage" height="320" src="../en/files/400px-Release0.9_QNX4.5-preadaption.png" srcset="/wiki/images/thumb/3/31/Release0.9_QNX4.5-preadaption.png/600px-Release0.9_QNX4.5-preadaption.png 1.5x, /wiki/images/thumb/3/31/Release0.9_QNX4.5-preadaption.png/800px-Release0.9_QNX4.5-preadaption.png 2x" width="400" /></a> <div class="thumbcaption"><div class="magnify"><a class="internal" href="http://oscada.org/wiki/File:Release0.9_QNX4.5-preadaption.png" title="Enlarge"></a></div>ÐŸÑ€ÐµÐ´Ð°Ð´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ OpenSCADA до роботи на QNX.</div></div></div> <p>У поÑві нової промиÑлової верÑÑ–Ñ— OpenSCADA 0.9 LTS прийнÑли учаÑÑ‚ÑŒ: </p> <ul><li> <i><a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a></i>: оÑновний об'єм робіт по розробці, теÑтуванню, збірці, документуванню та перекладу програми Ñ– документації трьома мовами.</li> <li> <i>МакÑим Кочетков</i>: Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ–Ð² DAQ.Fastwel, DAQ.FT3; Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ <a href="Modules/Sockets.html" title="Special:MyLanguage/Modules/Sockets">Transport.Sockets</a> підтримкою RAWCAN та Ð¼Ð¾Ð´ÑƒÐ»Ñ <a href="Modules/Serial.html" title="Special:MyLanguage/Modules/Serial">Transport.Serial</a> розширеним керуваннÑм RTS Ð´Ð»Ñ RS-485.</li> <li> <i>ÐÑ€Ñен ЗакоÑн</i>: Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð¿Ñ–Ð´Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ лічильників електроенергії "Меркурій 200" та "Меркурій 230".</li> <li> <i>РуÑлан Ярмолюк</i>: Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð¿Ñ–Ð´Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ лічильнику електроенергії NIK 2303.</li> <li> <i>Ðлмаз Каримов</i>: Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ— протоколу DCON.</li> <li> <i>Ðркадій КиÑіль</i>: Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð¿Ñ–Ð´Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ I2C ÑенÑору температури, барометричного тиÑку та вологоÑÑ‚Ñ– BME280.</li> <li> <i>КонÑтантин (IrmIngeneer)</i>: підтримка ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ OpenSCADA на диÑтрибутиві Linux Gentoo.</li> <li> <i>Сергій Дорошка</i>: <a class="external text" href="http://oscada.org/ua/forum/posts/razrabotka_openscada/popytka_adaptacii_openscada_k_qnx_65/" rel="nofollow noreferrer noopener" target="_blank">Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð½Ñ Ð°Ð´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ OpenSCADA до роботи на QNX</a>.</li> <li> Організації, що ÑприÑли найбільш значущому вдоÑконаленню OpenSCADA через Ñ—Ñ— інтеграцію до влаÑних ÑиÑтем керуваннÑ: <ul><li> <i>Proviron Holding NV</i>: Ð¿Ñ€Ð¸Ð´Ð±Ð°Ð½Ð½Ñ Ð¿Ð°ÐºÐµÑ‚Ñ–Ð² технічної підтримки Ð´Ð»Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ñ— підтримки, Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° Ð¿Ð¾ÐºÑ€Ð°Ñ‰ÐµÐ½Ð½Ñ Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ— протоколу Siemens ISO-TSAP(ProfiNet), деÑких напрацювань довкола Raspberry Pi, 2014, 2016-2018.</li> <li> <i>Ð›Ð°Ð±Ð¾Ñ€Ð°Ñ‚Ð¾Ñ€Ñ–Ñ Ð²Ð°ÐºÑƒÑƒÐ¼Ð½Ð¸Ñ… технологій</i>: "Вакуумна технологічна уÑтановка", 2011-2018, та фінанÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¾Ð±Ð»Ð°Ð´Ð½Ð°Ð½Ð½Ñ Ñерверу OpenSCADA, 2014.</li> <li> <i>Оптима</i>: "СиÑтема Ðвтоматизації Метрополітену", 2016.</li> <li> <i>Вектор</i>: Ð¿Ñ€Ð¸Ð´Ð±Ð°Ð½Ð½Ñ Ð¿Ð°ÐºÐµÑ‚Ñ–Ð² технічної підтримки Ð´Ð»Ñ Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° Ð¿Ð¾ÐºÑ€Ð°Ñ‰ÐµÐ½Ð½Ñ Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ— OPC-UA у роботі з різними OPC-UA клієнтами та Ñерверами, 2015-2016.</li> <li> <i>КраматорÑьктеплоенерго+<a class="external text" href="http://diyaorg.dp.ua" rel="nofollow noreferrer noopener" target="_blank">ДІЯ</a></i>: "СÐУ кульових барабанних млинів ШБМ 287\410 котлоагрегату â„–8 БКЗ 160–100 ПТ", 2015, та "СÐУ ФоÑфатуваннÑ, ÐÐ¼Ñ–Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° Гідразину котлоагрегатів БКЗ 160–100 ПТ", 2014. У ÑкоÑÑ‚Ñ– ПЛК викориÑтано ICP-DAS LP-8781 із OpenSCADA у ролі Ñередовища Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÐŸÐ›Ðš.</li> <li> <i>Хартрон</i>: "СиÑтема Контролю РеактивноÑÑ‚Ñ– (СКР) Ядерної Підкритичної УÑтановки (ЯПУ)", 2013-2015.</li></ul></li> <li> Багато інших організацій та окремих кориÑтувачів, що побажали залишитиÑÑ Ð°Ð½Ð¾Ð½Ñ–Ð¼Ð½Ð¸Ð¼Ð¸, через Ð¿Ñ€Ð¸Ð´Ð±Ð°Ð½Ð½Ñ Ñ‚ÐµÑ…Ð½Ñ–Ñ‡Ð½Ð¾Ñ— підтримки та поÑлуг, конÑтруктивні відгуки Ð²Ð¿Ñ€Ð¾Ð²Ð°Ð´Ð¶ÐµÐ½Ð½Ñ Ñ‚Ð° екÑплуатації.</li></ul> <p>Подальші зуÑÐ¸Ð»Ð»Ñ Ñ€Ð¾Ð·Ñ€Ð¾Ð±ÐºÐ¸ буде ÑпрÑмовано на: </p> <ul><li> Ð—Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ€ÐµÐ²Ñ–Ð·Ñ–Ð¹ оÑновної документації, переважно по модулÑм та бібліотекам.</li> <li> Чітке Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ‚Ð° Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ð»Ñ–Ñ‚Ð¸ÐºÐ¸ Ð½Ð°Ð´Ð°Ð½Ð½Ñ ÐºÐ¾Ð¼ÐµÑ€Ñ†Ñ–Ð¹Ð½Ð¸Ñ… поÑлуг довкола проєкту OpenSCADA: <ul><li> переглÑд та Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÑƒÐ¼Ð¾Ð² пакетів технічної підтримки;</li> <li> політика та Ð¾Ñ€Ð³Ð°Ð½Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð·Ð±Ñ–Ñ€Ð¾Ðº оновлень до Ñтабільної гілки: Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ñ–Ñторії вÑÑ–Ñ… публічних оновлень та Ð¾Ñ€Ð³Ð°Ð½Ñ–Ð·Ð°Ñ†Ñ–Ñ ÑервіÑних;</li> <li> диÑÑ‚Ñ€Ð¸Ð±ÑƒÑ†Ñ–Ñ Ð²Ð¸ÐºÐ»ÑŽÑ‡Ð½Ð¾ комерційних збірок із публічними демонÑтраційними на прикладі пакетів Ð´Ð»Ñ Android — розробка та Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð¼ÐµÑ…Ð°Ð½Ñ–Ð·Ð¼Ñƒ контролю за терміном пакету технічної підтримки та демонÑтраційного режиму. </li></ul></li> <li> ОÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ñ‚Ð° адаптацію до галузі "ÐšÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÑурÑами підприємÑтва (ERP)" із ÑпрÑмуваннÑм на: <ul><li> ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ–Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñу ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÑурÑами на Ñервері проєкту;</li> <li> ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ інтерфейÑу контролю задач та Ñ—Ñ… фінанÑуваннÑ, з організацією розробників до Ð·Ð°Ð»ÑƒÑ‡ÐµÐ½Ð½Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ñ†Ð¸Ñ… задач та технічної підтримки.</li></ul></li> <li> Ð Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ð¹ заÑтоÑÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ галузÑÑ… "Розумний будинок", "Домова автоматика" та "Побутові роботи".</li> <li> Ðдаптацію до роботи в оточені операційних ÑиÑтем QNX та MS Windows.</li></ul> <h2><span class="mw-headline" id=".D0.9E.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="mw-headline-number">7</span> ОновленнÑ</span></h2> <h3><span class="mw-headline" id=".5B01.01.7533.2F01.03.2025.5D_.D0.92.D0.9E.D0.A1.D0.AC.D0.9C.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="mw-headline-number">7.1</span> [01.01.7533/01.03.2025] ВОСЬМЕ оновленнÑ</span></h3> <div style="float:right; border:1px solid gray; width:300px; padding:2px; margin-left: 10pt; margin-bottom: 10pt;"> <ul><li> <b>Стан:</b> <span style="color: red">теÑÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° піÑлÑ-ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ ...</span></li></ul> <p>Загальний Ð¿Ñ€Ð¾Ñ†ÐµÑ Ð²Ð¸Ð¿ÑƒÑку кориÑтувачам Ð´Ð»Ñ Ð¾Ñ†Ñ–Ð½ÐºÐ¸ ваших очікувань та розробникам Ð´Ð»Ñ Ð½Ð°Ð³Ð°Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð²Ð´Ð°Ð½ÑŒ:<br /> <b><u>1. Тиждень Ð¿Ñ€Ð¸Ð³Ð¾Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° ÑкладаннÑ:</u></b><br /> </p> <ul><li> Ð¡ÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ð¾Ñтанньої Робочої (Work) SVN-ревізії Ð´Ð»Ñ Ð²ÑÑ–Ñ… оточень нерегулÑрного ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð± забезпечити ранне та широке теÑÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¸Ð¹Ð´ÐµÑˆÐ½ÑŒÐ¾Ð³Ð¾ LTS релізу.</li> <li> ÐÐ½Ð¾Ð½Ñ Ð¿Ð¾Ñ‡Ð°Ñ‚ÐºÑƒ процеÑу випуÑку: <ul><li> ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¾Ñ— <a href="index.html" title="Special:MyLanguage/Documents">Ñторінки релізу</a> або <a href="Release_0.9.html" title="Special:MyLanguage/Documents/Release 0.9">Ñторінки оновленнÑ</a> на Wiki;</li> <li> ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¾Ñ— новини-Ñторінки на <a class="external text" href="http://oscada.org/ua/golovne/%7Cофіційному" rel="nofollow noreferrer noopener" target="_blank">Ñайті OpenSCADA</a>.</li></ul></li> <li> Ð—Ð»Ð¸Ñ‚Ñ‚Ñ Ð·Ð¼Ñ–Ð½ Робочої (Work) верÑÑ–Ñ— або ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ñ†Ñ–Ð»ÐºÐ¾Ð¼ дерева Робочої гілки до LTS гілки-дерева.</li> <li> ВнеÑÐµÐ½Ð½Ñ Ð´ÐµÑких змін, Ñпецифічних до LTS, ÑтоÑовно піднÑÑ‚Ñ‚Ñ Ð²ÐµÑ€ÑÑ–Ñ—: <ul><li> Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ <b>configure.ac</b> щодо верÑÑ–Ñ— випуÑку-Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° бібліотеки Ñдра;</li> <li> Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ <b>data/*.spec</b> та <b>data/{debian,debian_mod}/changelog</b> ÑтоÑовно нового номеру верÑÑ–Ñ— та Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ñ‚Ð¾ÐºÐ¾Ð»Ñƒ змін файлів новими запиÑами випуÑку-оновленнÑ.</li></ul></li> <li> ФормуваннÑ-Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ ÐŸÑ€Ð¾Ñ‚Ð¾ÐºÐ¾Ð»ÑƒÐ—Ð¼Ñ–Ð½ LTS змінами з ПротоколуЗмін Work, групуючи зміни за розташуваннÑм та Ñортуючи Ñ—Ñ… за Ñтаном Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° рівнем, із ÐºÐ¾Ð¼Ð±Ñ–Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ… можливоÑтей у одному елементі та без Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð±ÑƒÐ´ÑŒ-Ñких відмінних змін.</li> <li> ÐšÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ð·Ð½Ð°Ñ‡Ð½Ð¸Ñ… змін із Ñформованого ПротоколуЗмін LTS до відповідної Ñторінки релізу-оновленнÑ, беручи зміни за рівнем більш або рівні "!!".</li> <li> Переклад Ñторінки(ок) релізу-оновленнÑ, Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ "<a href="../en/To_do.html" title="Special:MyLanguage/Works/To do">Ð—Ð°Ð²Ð´Ð°Ð½Ð½Ñ (ToDo)</a>" та "<a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Works/Road_map" title="Special:MyLanguage/Works/Road map">Дорожньої карти (RoadMap)</a>".</li> <li> Ð“ÐµÐ½ÐµÑ€Ð°Ñ†Ñ–Ñ Ð°ÐºÑ‚ÑƒÐ°Ð»ÑŒÐ½Ð¾Ñ— позамережевої документації, викориÑтовуючи ÑервіÑну процедуру "<a href="Libs_Service_procedures.html#docOffLine" title="Special:MyLanguage/Libs/Service procedures">EXT: Off-line documentation</a>".</li> <li> ЗаÑтоÑуваннÑ-Ð²Ð¸Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½ LTS дерева до репозиторію та ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ñ†ÑŒÐ¾Ð³Ð¾.</li></ul> <p><b><u>2. Тиждень(Ñ–) теÑÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° піÑлÑ-ÑкладаннÑ:</u></b><br /> </p> <ul><li> ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ <a class="external text" href="http://oscada.org/ua/golovna/zavantazhiti/" rel="nofollow noreferrer noopener" target="_blank">Ñторінки ЗавантаженнÑ</a>.</li> <li> ÐнонÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÐ»Ñ–Ð·Ñƒ-оновленнÑ, також на <a class="external text" href="https://www.facebook.com/Roman.Savochenko" rel="nofollow noreferrer noopener" target="_blank">FaceBook</a> Ñ– <a class="external text" href="https://www.linkedin.com/in/roman-savochenko-71b50272/" rel="nofollow noreferrer noopener" target="_blank">LinkedIn</a>.</li> <li> ГарÑче теÑÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð±Ñ–Ñ€Ð¾Ðº релізу.</li> <li> Ð—Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ‚Ð° Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ ПротоколуЗмін та документації.</li> <li> Ð“ÐµÐ½ÐµÑ€Ð°Ñ†Ñ–Ñ Ð°ÐºÑ‚ÑƒÐ°Ð»ÑŒÐ½Ð¾Ñ— позамережевої документації викориÑтовуючи ÑервіÑну процедуру "<a href="Libs_Service_procedures.html#docOffLine" title="Special:MyLanguage/Libs/Service procedures">EXT: Off-line documentation</a>".</li> <li> ЗаÑтоÑуваннÑ-Ð²Ð¸Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½ÑŒ релізу до репозиторію та ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ñ†ÑŒÐ¾Ð³Ð¾ щодо другої збірки, Ñ– Ð´Ð»Ñ ÐºÐ¾Ð¶Ð½Ð¾Ð³Ð¾ Ñ‚Ð¸Ð¶Ð½Ñ Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ ÐºÑ€Ð¸Ñ‚Ð¸Ñ‡Ð½Ð¸Ñ… помилок — перший тиждень без критичних виправлень означатиме Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð²Ð¸Ð¿ÑƒÑку LTS, тож, КОРИСТУВÐЧІ — теÑтуйте ретельно LTS реліз щоб потім не ÑкаржитиÑÑŒ на його кінцеву збірку!</li> <li> ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð±Ñ–Ð½Ð°Ñ€Ð½Ð¸Ñ… копій Ñтандартних бібліотек OpenSCADA: <a class="external" href="http://oscada.org/wiki/File:OscadaLibs.db.gz" title="File:OscadaLibs.db.gz">OscadaLibs.db</a>, <a class="external" href="http://oscada.org/wiki/File:VcaBase.db.gz" title="File:VcaBase.db.gz">VcaBase.db</a>, <a class="external" href="http://oscada.org/wiki/File:VcaElectroEls.db.gz" title="File:VcaElectroEls.db.gz">VcaElectroEls.db</a>.</li></ul> </div> <p>Це Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ <a href="Release_0.9.html" title="Special:MyLanguage/Documents/Release 0.9">релізу 0.9 LTS</a> виправлÑÑ” Ð±Ñ–Ð»Ñ 70 помилок та додає БÐГÐТО удоÑконалень із декількома значними-концептуальними, з Ñкими цілком можна ознайомитиÑÑ Ñƒ <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=3017" rel="nofollow noreferrer noopener" target="_blank">протоколі змін оновленнÑ</a>. </p><p><b><u><a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Automation_Linux_distributive" title="Special:MyLanguage/Sub-projects/Automation Linux distributive">Linux ДиÑтрибутив Ðвтоматизації проєкту OpenSCADA</a></u></b><br /> </p> <ul><li> Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ TDE до 14.1.3, а також ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ð»Ð°Ñ‚Ð°Ð½Ð¾Ð³Ð¾ Ð´Ð»Ñ Debian 8,10 ARMHF;</li> <li> Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð°Ð¿ÑƒÑку <b>nm-applet</b> у ÑиÑтемному лотку Ñ– Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð¿Ð°ÐºÐµÑ‚Ñƒ "raspi-firmware" із вÑтановлень Debian 12;</li> <li> Ñ„Ð¾Ñ€Ð¼Ð°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ñ‡Ð°Ñткового Ð²Ñ–Ð´Ð³Ð°Ð»ÑƒÐ¶ÐµÐ½Ð½Ñ TDE за підпроєктом — the <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Automation_Linux_distributive#TDE" title="Special:MyLanguage/Sub-projects/Automation Linux distributive">Linux ДиÑтрибутив Ðвтоматизації проєкту OpenSCADA</a>;</li> <li> TDE > tdepowersave-trinity: Ð—Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½ÑŽ-залипанню ознаки "blacklisted_running" піÑÐ»Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¾Ð´Ð½Ñ–Ñ”Ñ— з програм у чорному переліку.</li> <li> TDE > basket-trinity: Ð’Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð½Ðµ заміни обраних блоків у нотатку за вÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ RTE, проÑте Ð´Ð¾Ð´Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ´ блоком.</li> <li> TDE > tdepim-trinity > KOrganizer: Ð—Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿Ð¾Ñві двох діалогів Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚Ñƒ Ñ– нового елементу за подвійним клацаннÑм на клітинці із елементами у міÑÑчному переглÑді.</li> <li> TDE > krusader-trinity: Ð’Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð°Ð½ÐµÐ»Ñ– джерела за операцій переміщеннÑ.</li> <li> TDE > tdebase-trinity > Konqueror: Ð—Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ñ–Ð½ÐºÐ¾Ð»Ð¸ дублюванню елементів у елементі вкладки "СиÑтема (system:/)" через подвійний виклик <i>setOpen(true)</i>;</li> <li> TDE > tdebase-trinity > QuickLauncher: Ð—Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ñви у QuickLauncher порожніх елементів піÑÐ»Ñ Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ ÑкогоÑÑŒ елементу, що пов'Ñзано із вÑтавленнÑм вже відÑутнього desktop-файлу (піÑÐ»Ñ Ð´ÐµÑ–Ð½ÑталÑції програми) із популÑрноÑтей;</li> <li> TDE > krusader-trinity: Ð—Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¸Ð¼ÑƒÑовому блокуванню змонтованих медіа-тек піÑÐ»Ñ Ð·Ð¼Ñ–Ð½Ð¸ локальної директорії на віддалену-віртуальну, шлÑхом зміни локальної теки у Дім. Також Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ñ‚ÐµÑ‡Ñ– пам'ÑÑ‚Ñ– на виклику функції <i>getcwd(0, 0)</i> без Ð·Ð²Ñ–Ð»ÑŒÐ½ÐµÐ½Ð½Ñ Ñ—Ñ— результату;</li> <li> TDE > krusader-trinity: Ð—Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½ÑŽ панелі із переліком елементів Ñпільної теки SMB піÑÐ»Ñ Ð¿ÐµÑ€ÐµÐ¹Ð¼ÐµÐ½ÑƒÐ²Ð°Ð½Ð½Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚Ñƒ через Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð´Ñ€ÑƒÐ³Ð¾Ñ— чи третьої події <i>result()</i> від IO-Slave, тобто Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð°Ð½ÐµÐ»Ñ– зараз відкладено на 0.5 Ñекунди піÑÐ»Ñ Ð¿ÐµÑ€ÐµÐ¹Ð¼ÐµÐ½ÑƒÐ²Ð°Ð½Ð½Ñ;</li> <li> TDE > tdebase-trinity > KDesktop: Ð—Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ð½Ð¾Ð³Ð¾ Ð·Ð°Ð¼Ð¾Ñ€Ð¾Ð¶ÑƒÐ²Ð°Ð½Ð½Ñ KDesktop на очікуванні Ð ÑƒÑˆÑ–Ñ Ð—Ð±ÐµÑ€Ñ–Ð³Ð°Ñ‡Ð° протÑгом Ð±Ñ–Ð»Ñ Ñ…Ð²Ð¸Ð»Ð¸Ð½Ð¸ піÑÐ»Ñ Ð¿Ñ€Ð¾Ð±ÑƒÐ´Ð¶ÐµÐ½Ð½Ñ, через Ð²Ð¸ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð°Ð½Ð½Ñ <i>sigsuspend()</i> при очікуванні "mSaverProcessReady" де доÑтатньо виклику <i>tqApp->processEvents()</i>;</li> <li> TDE > tdelibs-trinity > DCOP: ÐŸÐµÑ€ÐµÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ–Ñ… інтервальних таймерів на ÑучаÑну Ñтруктуру "timespec" Ñ– Монотонний лічильник у оÑнові, що зробило DCOP нечутливим до Ñтрибків реального чаÑу, оÑобливо при пробуджені;</li> <li> TDE > tqt3-trinity: Повне Ð¿ÐµÑ€ÐµÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Qt3 інтервальних таймерів (QTimer) на ÑучаÑну Ñтруктуру "timespec" Ñ– Монотонний лічильник у оÑнові, що зробило Qt3 нечутливим до Ñтрибків реального чаÑу, оÑобливо при пробуджені;</li> <li> TDE > kaffeine-trinity: Ð”Ð¾Ð´Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ медіа-формату WEBM;</li> <li> TDE > tdelibs-trinity > MIME: Ð”Ð¾Ð´Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ медіа-формату WEBM;</li> <li> xine-lib: ÐŸÐµÑ€ÐµÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ "display_queue.mutex" у Відео виході на рекурÑивний режим Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð·Ð°Ð²Ð¸Ñань у <i>xine_new_framegrab_video_port()</i>;</li> <li> TDE > tdemultimedia-trinity > XineThumbnails: У Картинках до Відео від Xine вимкнено Ðудіо від <i>xine_new_framegrab_audio_port()</i> Ñ– відкориговано передачу кольору. Ðа додаток до Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¼ÐµÑ€Ñ‚Ð²Ð¸Ð¼ блокуваннÑм у Xine;</li> <li> TDE > tdelibs-trinity > TDE IO: Ð’ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ‡Ð°Ñу Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´Ð»ÐµÐ³Ð»Ð¾Ð³Ð¾ SLAVE_CONNECTION_TIMEOUT_MIN із 2 у 10 Ñ– SLAVE_CONNECTION_TIMEOUT_MAX із 10 у 30 Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿Ð¾Ð¼Ð¸Ð»Ð¾Ðº відÑутноÑÑ‚Ñ– підлеглого FILE на загалом повільному обладнані Ñ– HDD/SSD із повільними Ñекторами;</li> <li> TDE > tdeadmin-trinity > KPackage: Ð”Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¼ÐµÐ½ÑŽ "APT Додаткове" елементами: "ÐžÑ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ (<span style="border: solid gray 1px; padding: 1px; font-family: monospace; font-size: 1.2em; white-space: nowrap;">apt-get clean</span>)", "ÐÐ²Ñ‚Ð¾Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ (<span style="border: solid gray 1px; padding: 1px; font-family: monospace; font-size: 1.2em; white-space: nowrap;">apt-get autoremove</span>)";</li> <li> TDE > tqt3-trinity: Ð—Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð·Ð°Ð²Ð¸ÑаннÑм на креÑлені помилкових образів Ñимволів у TQTextEngine, помічено у KCharSelect на Ñторінці 15;</li> <li> TDE > tdelibs-trinity: Ð’Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´ÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ ÐºÐ¾Ñ€ÐµÐºÑ‚Ð½Ð¾Ð³Ð¾ року у kdatepicker відповідно до обраної Календарної СиÑтеми;</li> <li> TDE > kdiff3-trinity: ÐŸÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð°Ð´Ñ€ÐµÑ Ñƒ меню плагіну на гарний виглÑд заміÑÑ‚ÑŒ ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ UTF-8 Ñимволів рідних локалей;</li> <li> TDE > tqt3-trinity: Пом'ÑÐºÑˆÐµÐ½Ð½Ñ ÐµÑ„ÐµÐºÑ‚Ñƒ виÑокого-повного Ð½Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¦ÐŸ із генерацією Ðезавершених подій від інтерфейÑу GLib до Ñерверу X11, що ÑÑкраво проÑвлÑєтьÑÑ Ð½Ð° digikam-showfoto, або qtwaittimer, що виÑвлено на kdesktop-screensaver при пробуджені, Ñ– шлÑхом Ð´Ð¾Ð´Ð°Ð½Ð½Ñ ÐºÐ¾Ñ€Ð¾Ñ‚ÐºÐ¾Ð³Ð¾ Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ 1Ð¼Ñ Ð¿Ñ–ÑÐ»Ñ Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ð´Ñ–Ð¹;</li> <li> TDE > amarok-trinity: Ð—Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ ÑˆÑƒÐ¼Ñƒ із виÑоким навантаженнÑм ЦП оÑобливо на Ñтарих-повільних ÑиÑтемах протÑгом Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ñƒ ÑиÑтемному лотку перед відкриттÑм вікна ПерелікуПрограваннÑ, через помилковий фоновий запуÑк аналізаторів при зміні періодичноÑÑ‚Ñ– анімації;</li> <li> TDE > tdebase-trinity > MediaManager: Ð”Ð¾Ð´Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð°Ð½Ð½Ñ /etc/fstab або утилітою Ð¼Ð¾Ð½Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ð° кшталт <b>udisks</b> або загальною програмою монтуваннÑ. І воно кориÑне Ñк Ð´Ð»Ñ FD, так Ñ– CD/DVD/BLURAY, оÑкільки <b>udisks[2]</b> не монтує Ñ—Ñ… без запиÑу у /etc/fstab;</li> <li> TDE > tdebase-trinity > MediaManager: Ð’Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð½ÐµÐ²Ñ–Ð´Ð¿Ð¾Ð²Ñ–Ð´Ð½Ð¾ÑÑ‚Ñ– у назві піктограм Ð´Ð»Ñ CD-R Ñ– CD-RW у tdeioslave (14.0.10 на Debian 7);</li> <li> TDE > kaffeine-trinity: Ð’Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð²Ð°Ð½Ð½Ñ DVD верÑÑ–Ñми XINE, Ñкі не розуміють URM "dvd://", лише "dvd:/";</li> <li> TDE > tdebase-trinity > Kate: ÐŸÐ¾Ð²ÐµÑ€Ð½ÐµÐ½Ð½Ñ Ð·Ð»Ð°Ð¼Ð°Ð½Ð¸Ñ… ÑеанÑів із 14.0.</li></ul> <p><b><u>ОÑновні WWW-реÑурÑи, Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ Ð¿Ñ€Ð¾Ñ”ÐºÑ‚Ñƒ Ñ– підпроєктів</u></b><br /> </p> <ul><li> Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ <a href="Libs_Devices.html" title="Special:MyLanguage/Libs/Devices">Ñторінки бібліотеки промиÑлових приÑтроїв</a> опиÑом нових шаблонів;</li> <li> Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ <a href="Libs_LowLevelDevices.html" title="Special:MyLanguage/Libs/LowLevelDevices">Ñторінки бібліотеки низькорівневих ÑенÑорів та чипів</a> опиÑом нових шаблонів;</li> <li> Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ <a href="Libs_Main.html" title="Special:MyLanguage/Libs/Main">Ñторінки оÑновної бібліотеки</a> опиÑом нових шаблонів.</li></ul> <p><b><u>New and significantly updated parts</u></b><br /> </p> <ul><li> OpenSCADA Core: 3:14:0 => <b>3:15:0</b></li></ul> <dl><dd> (<a href="#Upd8ControlObjProp">Implementing properties of the Control Objects</a>, <a href="#Upd8ControlObjACL">Implementing the custom ACLs to the control nodes</a>, <a href="#Upd8InitCon">Implementing initiative connections</a>, <a href="#Upd8ExpProjMan">Expanding the project management</a>, <a href="#Upd8MessTrFix">Messages Translation — fixes of the conceptual changes of the previous updates</a>)</dd></dl> <ul><li> OpenSCADA "Transports" subsystem: 20 => <b>21</b></li> <li> DAQ.DAQGate: 2.13 => <b>2.14</b></li> <li> DAQ.JavaLikeCalc: 5.6 => <b>5.7</b></li> <li> Archive.FSArch: 3.8 => <b>3.9</b></li> <li> Transport.SSL: 4.5 => <b style="color: red">5.1</b></li></ul> <dl><dd> (<a href="#Upd8SSLSockAddrResolv">Unification and overriding the address resolving in different ways</a>)</dd></dl> <ul><li> Transport.Sockets: 4.8 => <b style="color: red">5.0</b></li></ul> <dl><dd> (<a href="#Upd8SSLSockAddrResolv">Unification and overriding the address resolving in different ways</a>)</dd></dl> <ul><li> Protocol.OPC_UA: 2.2 => <b>2.3</b></li></ul> <dl><dd> (<a href="#Upd8OPC_UA">True authentication with control the permission</a>)</dd></dl> <ul><li> Protocol.HTTP: 3.8 => <b>3.9</b></li> <li> UI.QTCfg: 6.0 => <b>6.1</b></li> <li> UI.VCAEngine: 7.13 => <b>7.16</b></li> <li> UI.Vision: 9.1 => <b>9.4</b></li> <li> UI.WebUser: 1.6 => <b style="color: red">2.0</b></li></ul> <dl><dd> (<a href="#Upd8WebUserExt">Expanding for support direct writing</a>)</dd></dl> <ul><li> UI.WebVision: 6.9 => <b>6.13</b></li> <li> UI.WebCfgD: 2.6 => <b>2.8</b></li> <li> LibsDB.OscadaLibs.base: 2.2 => <b>2.3</b></li></ul> <dl><dd><ul><li> initRemCntr: <b style="color: red">1.1</b></li> <li> fileServerHTTP: 1.0 => <b>1.2</b></li></ul></dd></dl> <ul><li> LibsDB.OscadaLibs.LowDevLib: 1.5 => <b>1.6</b></li></ul> <dl><dd><ul><li> 1W: <b style="color: red">2.1</b></li> <li> S1BP: <b style="color: red">1.0</b></li> <li> UC96: 1.0 => <b>1.2</b></li></ul></dd></dl> <ul><li> LibsDB.OscadaLibs.DevLib: 3.0 => <b>3.1</b></li></ul> <dl><dd><ul><li> ergomera125: <b style="color: red">0.5</b></li> <li> mbBase: 1.2 => <b>1.3</b></li></ul></dd></dl> <ul><li> LibsDB.vcaBase.Main</li></ul> <dl><dd><ul><li> storeHouse: 1.4 => <b style="color: red">2.1</b></li></ul> <dl><dd> (<a href="#Upd8StoreHouse">Added file inclusion and image preview</a>)</dd></dl> <ul><li> grph_panel: 1.5 => <b>1.6</b></li> <li> doc_panel: 1.2 => <b>1.3</b></li> <li> userManager: 1.6 => <b>1.7</b></li></ul></dd></dl> <ul><li> LibsDB.vcaTest.test.docTestGasNodeDayRep: 1.0 => <b>1.1</b></li></ul> <p><b><u><span id="Upd8ControlObjProp" title="#Upd8ControlObjProp">КОÐЦЕПТУÐЛЬÐЕ > Ð ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð²Ð»Ð°ÑтивоÑтей Об'єктів Контролю</span> </u></b><br /> </p> <ul><li> СиÑтема: TCntrNode: <ul><li> Ð”Ð¾Ð´Ð°Ð½Ð½Ñ Ð¾Ð±'єктних влаÑтивоÑтей у групах за префікÑами Ð´Ð»Ñ Ñ€Ñ–Ð·Ð½Ð¸Ñ… чаÑтин OpenSCADA: ÑиÑтема (sys), кориÑтувач (usr), Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ (con), безпека (sec), ... .</li> <li> Ð”Ð¾Ð´Ð°Ð½Ð½Ñ ÐšÐ¾Ñ€Ð¸Ñтувацької функції <i>property()</i> Ð´Ð»Ñ Ð´Ð¾Ñтупу до об'єктних влаÑтивоÑтей із контекÑту кориÑтувача на додачу до прÑмого-натурального шлÑху.</li></ul></li> <li> ТранÑпорти: ÐŸÐµÑ€ÐµÐ²ÐµÐ´ÐµÐ½Ð½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ñ–Ð² Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð½Ð° об'єктні влаÑтивоÑÑ‚Ñ– у групі "con".</li> <li> Збір Даних: ÐŸÐµÑ€ÐµÐ²ÐµÐ´ÐµÐ½Ð½Ñ Ð¿Ñ€Ð°Ð¿Ð¾Ñ€Ñ†Ñ–Ð² TValue <i>resB1()</i> Ñ– <i>resB2()</i> на об'єктні влаÑтивоÑÑ‚Ñ– у групі "DAQ", тобто Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ‚Ð°ÐºÐ¸Ñ… функцій.</li></ul> <p><b><u><span id="Upd8ControlObjACL" title="#Upd8ControlObjACL">КОÐЦЕПТУÐЛЬÐЕ > Ð ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ ÐºÐ¾Ñ€Ð¸Ñтувацького ACL до вузлів контролю</span> </u></b><br /> </p> <ul><li> СиÑтема: <ul><li> TCntrNode: <ul><li> нові функції <i>nodeAccess()</i>, <i>nodeLoadACL()</i>, <i>nodeLoadACLSnthHgl()</i>;</li> <li> Ð¿ÐµÑ€ÐµÐ²ÐµÐ´ÐµÐ½Ð½Ñ Ñ–Ð· Ñтатичного із деÑким вдоÑконаленнÑм Ñ– адаптацією до ACL із ÑуміÑніÑÑ‚ÑŽ прÑмих правил Ð´Ð»Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ð¹ інтерфейÑу керуваннÑ: <i>ctrMkNode()</i>, <i>ctrChkNode()</i>;</li> <li> нове визначеннÑ-Ð¼Ð°ÐºÑ€Ð¾Ñ Ñ–Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñу ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ ACL: <i>ctrMkNode3()</i> Ñк поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° <i>ctrMkNode()</i> із автоматичним аргументом Ð¿ÐµÑ€ÐµÑ€Ð¸Ð²Ð°Ð½Ð½Ñ NULL, <i>ctrChkNode2()</i> Ñк поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° <i>ctrChkNode()</i>;</li> <li> <i>ctrMkNode()</i> перемкнено у режим без Ð²Ð¸ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð·Ð° відÑутноÑÑ‚Ñ– контейнерних вузлів, проÑто не Ñтворювати Ñ– повертати NULL.</li></ul></li> <li> TFld: <i>cntrCmdMake()</i> додано аргументом <i>cntrO</i> Ð´Ð»Ñ Ð·Ð²'ÑÐ·ÑƒÐ²Ð°Ð½Ð½Ñ Ñ–Ð· Вузлом Контролю, Ñ– веÑÑŒ код адаптовано до цього.</li> <li> TConfig: <i>cntrCmdMake()</i> Ñ– <i>cntrCmdProc()</i> додано аргументом <i>cntrO</i> Ð´Ð»Ñ Ð·Ð²'ÑÐ·ÑƒÐ²Ð°Ð½Ð½Ñ Ñ–Ð· Вузлом Контролю, Ñ– веÑÑŒ код адаптовано до цього.</li></ul></li> <li> ТранÑпорти: TTransportS: <i>cntrCmdPrm()</i> додано аргументом <i>cntrO</i> Ð´Ð»Ñ Ð·Ð²'ÑÐ·ÑƒÐ²Ð°Ð½Ð½Ñ Ñ–Ð· Вузлом Контролю, Ñ– веÑÑŒ код адаптовано до цього.</li> <li> Збір Даних: ÐÐ´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ ACL у полÑÑ… опиÑу Об'єктів Контролеру Ñ– Параметру, DAQ-Шаблонах Ñ– Ñ—Ñ… конфігурації, DAQ-Ðтрибутах, DAQ.DAQGate. Типові влаÑник-доÑтуп Ð´Ð»Ñ Ð¿Ñ–Ð´ÑиÑтеми Збір Даних вÑтановлено у "root:DAQ"-0775.</li> <li> Protocol.OPC_UA: ВикориÑÑ‚Ð°Ð½Ð½Ñ ACL у перевірці доÑтупу.</li></ul> <p><b><u><span id="Upd8InitCon" title="#Upd8InitCon">КОÐЦЕПТУÐЛЬÐЕ > <a href="DAQ.html#PassiveAndInitiative" title="Special:MyLanguage/Documents/DAQ">ÐšÐ¾Ð½Ñ†ÐµÐ½Ñ‚Ñ€Ð°Ñ†Ñ–Ñ Ñ€Ñ–Ð·Ð½Ð¸Ñ… OpenSCADA хоÑтів на загальному Ñервері, Ñк Ð´Ð»Ñ Ð†Ð½Ñ‚ÐµÑ€Ð½ÐµÑ‚Ð ÐµÑ‡ÐµÐ¹ (IoT) на OpenSCADA, так Ñ– ні</a> </span> </u></b><br /> </p> <ul><li> LibsDB.OscadaLibs: <ul><li> tmplib_base: Доповнено шаблоном "Контроль віддалених ініціативних підключень (initRemCntr)", із документуваннÑм Ñ– повним перекладом українÑькою.</li> <li> Доповнено кориÑтувачем "RemCntr" із паролем "RemCntr" Ñ– у групі DAQ Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð°Ð½Ð½Ñ Ñƒ ініціативних віддалених підключеннÑÑ… до Ñерверу OpenSCADA.</li> <li> Доповнено вимкненими транÑпортами "RemCntr" до Transport.Sockets Ñ– Transport.SSL, тобто Ñкщо бажаєте надати дані вашої Ñтанції, ви проÑто вмикаєте один з них.</li></ul></li> <li> ModelsDB/{AGLKS/oscada_AGLKS.xml,Boiler/oscada_Boiler.xml}: Ð’Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ ÑиÑтемних груп без кориÑтувачів, чим даючи можливіÑÑ‚ÑŒ Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð³Ñ€ÑƒÐ¿ у бібліотеках.</li> <li> FIX:ТранÑпорти: TTransportOut доповнено функцією isFromInput() виÑÐ²Ð»ÐµÐ½Ð½Ñ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡Ð½Ð¾-Ñтворених об'єктів із вхідного транÑпорту. Зовнішні ініціативні Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ OpenSCADA хоÑтів попереджено від зупинки.</li></ul> <p><b><u><span id="Upd8ExpProjMan" title="#Upd8ExpProjMan">КОÐЦЕПТУÐЛЬÐЕ > Ð Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð¼ÐµÐ½ÐµÐ´Ð¶Ð¼ÐµÐ½Ñ‚Ñƒ проєктів</span> </u></b><br /> </p> <ul><li> data/openscada-proj.in: Ð Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð°Ð¼Ð¸ <b>snapshot</b>, <b>crash</b>, <b>cores</b> із уніфікацією Ð¿Ñ€Ð¸Ð³Ð¾Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð²Ñ–Ñ‚Ñ–Ð² з аварійного завершеннÑ, також Ð´Ð»Ñ Ð¾Ð±Ñ€Ð¾Ð±ÐºÐ¸ аварійного Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð²Ñ–Ð´ Ñебе. Ð”Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð·Ð²Ñ–Ñ‚Ñ–Ð² з аварійного Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð²Ð¸ÐºÐ»Ð¸ÐºÐ¾Ð¼ "info thread" Ñ– "info sharedlibrary". <ul><li> ÐŸÐµÑ€ÐµÐ¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð°Ð»Ð³Ð¾Ñ€Ð¸Ñ‚Ð¼Ñƒ обробки проєктів у СиÑтемній Ñ– КориÑтувацькій теці, тобто Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ‚ÐµÐºÐ¸ проєкту у СиÑтемній директорії за наÑвноÑÑ‚Ñ– СиÑтемного конфігураційного файлу.</li></ul></li> <li> СиÑтема: Увімкнено у опрацюванні Ñигналів SIGFPE Ñ– SIGSEGV із викликом <span style="border: solid gray 1px; padding: 1px; font-family: monospace; font-size: 1.2em; white-space: nowrap;">openscada-proj crash {ProjID}</span> Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð³Ð¾Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð²Ñ–Ñ‚Ñƒ з аварійного Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð½ÐµÐ³Ð°Ð¹Ð½Ð¾ Ð´Ð»Ñ SIGFPE, SIGABRT Ñ– SIGSEGV. <ul><li> Результат уÑпішного поверненнÑ-виходу процеÑу примуÑово вÑтановлено у EXIT_SUCCESS, а Ð´Ð»Ñ Ð²Ñ–Ð´Ð¼Ð¾Ð²Ð¸ у EXIT_FAILURE.</li></ul></li></ul> <p><b><u><span id="Upd8MessTrFix" title="#Upd8MessTrFix">КОÐЦЕПТУÐЛЬÐЕ > Переклад Повідомлень (Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ <a href="Release_0.9.html#MessTrFix" title="Special:MyLanguage/Documents/Release 0.9">концептуальних змін попередніх оновлень</a>) </span> </u></b><br /> </p> <ul><li> LibsDB.OscadaLibs: Ðвтоматичне Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð´ÐµÑких перекладів.</li> <li> LibsDB.vcaBase.wlb_Main: <ul><li> Доповнено динамічними повідомленнÑми із перекладом УкраїнÑькою Ð´Ð»Ñ Ð¾Ñновних у DiskSMART Ñ– UPS, протÑгом предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñƒ "ВлаÑтивоÑÑ‚Ñ– об'єкту (objProps)".</li> <li> anShow,anShow1: Доповнено перекладом динамічних повідомлень із атрибутів параметрів NAME Ñ– DESCR.</li> <li> FIX:RootPgSo: Ðтрибут "Проц. Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð²Ð°Ð½Ð½Ñ Ð´ÐµÐ¼Ð¾ (demoPlayProc)" вÑтановлено у тип "ТекÑÑ‚ (переклад)".</li></ul></li> <li> SYS,DAQ,UI.VCAEngine: Ð ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ Ñ€Ñдків конфігураційних полів, атрибутів Збору Даних, атрибутів КориÑтувацького ІнтерфейÑу при зміні у динамічному виконанні: <ul><li> SYS,DAQ,DB.{FireBird,MySQL,ODBC,PostgreSQL,SQLite}: Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ ÑƒÐ½Ñ–Ñ„Ñ–ÐºÐ¾Ð²Ð°Ð½Ð¸Ð¼ методом <i>{TCfg,TVal}::isTransl()</i> перевірки перекладу елементу, Ñ– Ð¿ÐµÑ€ÐµÐ²ÐµÐ´ÐµÐ½Ð½Ñ Ð½Ð° нього вÑюди;</li> <li> TVal: Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿Ñ€Ð°Ð¿Ð¾Ñ€Ñ†ÐµÐ¼ "mNoTransl" Ñ– функціÑми Ð¿Ð¾Ð²Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ Ñ–Ð· ним: <i>noTransl()</i>, <i>setNoTransl()</i>, <i>TValue::setNoTransl()</i>;</li> <li> UI.VCAEngine::Attr: Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿Ñ€Ð°Ð¿Ð¾Ñ€Ñ†ÐµÐ¼ "NoTransl" Ñ– Ð¿Ð¾Ð²Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ Ñ–Ð· ним у <i>isTransl()</i>;</li> <li> переклад вимикаєтьÑÑ: <ul><li> при запиÑу за поÑиланнÑм реалізації шаблонів у <i>TPrmTempl::Impl::lnkOutput()</i>;</li> <li> при виклику КориÑтувацького API <i>TVal::set()</i>;</li> <li> UI.VCAEngine: при зміні атрибуту Віджету у контекÑÑ‚Ñ– СеанÑу Ð´Ð»Ñ Ð¾Ð¿Ñ€Ð°Ñ†ÑŒÐ¾Ð²ÑƒÐ²Ð°Ð½Ð¸Ñ… віджетів Ñ– при запиÑÑ– до атрибуту Збору Даних за поÑиланнÑм.</li></ul></li> <li> Параметри Збору Даних додано відновленнÑм Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´ÐµÐ½Ð½Ñ Ð´Ð¸Ð½Ð°Ð¼Ñ–Ñ‡Ð½Ð¾ зміненого Ð¿Ð¾Ð»Ñ Ð¿Ñ€Ð¸ завантажені.</li></ul></li> <li> FIX:SYS: TMess: Ð”Ð¾Ð´Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ до таблиці "Trs" увімкнено лише у рівні повідомлень ÐалагодженнÑ, Ð·Ð°Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð·Ð°Ð»Ð¸Ñ‚Ñ‚ÑŽ таблиці будь Ñкими перекладеними повідомленнÑми Ñ– ні.</li> <li> FIX:DAQ.OPC_UA,Protocol.HTTP,UI.{QTCfg,Vision}: Ð’Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ– вдоÑÐºÐ¾Ð½Ð°Ð»ÐµÐ½Ð½Ñ Ð´ÐµÑких оригінальних повідомлень.</li> <li> FIX:Збір Даних: ВиправленнÑ-Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð´Ð¸Ð½Ð°Ð¼Ñ–Ñ‡Ð½Ð¾Ð³Ð¾ перекладу Ð´Ð»Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÑƒ об'єкту контролера Ñ– параметра. <ul><li> FIX: Шаблони виправлено-адаптовано до динамічного перекладу у викориÑтанні назв Ð’Ð’.</li> <li> FIX: ВиправленнÑ-Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð´Ð¸Ð½Ð°Ð¼Ñ–Ñ‡Ð½Ð¾Ð³Ð¾ перекладу запиту значень у Керувальному Запиті <b>TValue::"get:/serv/attr"</b> Ð´Ð»Ñ Ð½ÐµÐ°Ñ€Ñ…Ñ–Ð²Ð½Ð¸Ñ… елементів.</li> <li> Шаблони параметрів дозволено до вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€Ð¾Ð¶Ð½Ñ–Ñ… імен Ð·Ð°Ð´Ð»Ñ Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ñ—Ñ… перекладу у режимі динамічного перекладу.</li> <li> FIX:DAQGate: Дещо виправлено переклад УкраїнÑькою.</li> <li> FIX:JavaLikeCalk: Дещо вдоÑконалено у перекладі.</li></ul></li> <li> FIX:Protocol.OPC_UA: ÐÐ´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ динамічного перекладу у запитах даних.</li> <li> FIX:UI.{QTCfg,Vision}: ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ "Завантажити із БД" Ñ– "Зберегти до БД" перейменовано у "Завантажити" Ñ– "Зберегти", та із "Ñховище" заміÑÑ‚ÑŒ "БД" у повних повідомленнÑÑ….</li> <li> FIX:UI.VCAEngine: Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ ÐšÐ¾Ñ€Ð¸Ñтувацького API проÑтору ÑеанÑу <i>this.attr()</i> виправлено у перевірці Ð¿Ñ€Ð°Ð¿Ð¾Ñ€Ñ†Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ TFld::TransltText. <ul><li> FIX: Шаблони виправлено-адаптовано до динамічного перекладу у викориÑтанні конфігураційного шаблону атрибутів.</li></ul></li></ul> <p><b><u>OpenSCADA бібліотеки Ñ– проєкти</u></b><br /> </p> <ul><li> FIX:LibsDB.OscadaLibs: <ul><li> tmplib_DevLib: Доповнено шаблоном "Ergomera 125 (ergomera125)" із ініціюючою імплементацією влаÑного протоколу Ñ– документуваннÑм. <ul><li> mbBase: Розширено підтримкою Вхідних РегіÑтрів функцією 4.</li> <li> FIX:VSE002: ПерепиÑано у режим поÑлідовного Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð¿Ð°ÐºÐµÑ‚Ñ–Ð², тобто виÑÐ²Ð»ÐµÐ½Ð½Ñ ÑƒÑÑ–Ñ… пакетів із зауваженнÑм невідомих.</li> <li> FIX:Incubator: Ð’Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ð¾Ð»Ñ 'ТранÑпорт (transport)'.</li></ul></li> <li> tmplib_LowDevLib: Доповнено шаблоном "BT: ATORCH S1BP (S1BP)" із документуваннÑм Ñ– повним перекладом українÑькою. <ul><li> Доповнено шаблоном "1-Дріт (1W)" Ñк Ð¿Ð¾Ñ”Ð´Ð½Ð°Ð½Ð½Ñ 1W_DS9097 Ñ– 1W_DS9097U перед доданнÑм I2C Драйверів Ñ– розширено параметром "Додавати лише при Ñкануванні", із документуваннÑм Ñ– повним перекладом українÑькою. Ð”Ð¾Ð´Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ I2C Драйверу DS2482-100 Ñ– деÑкі вдоÑÐºÐ¾Ð½Ð°Ð»ÐµÐ½Ð½Ñ Ñ–Ð· виправленнÑм.</li> <li> UC96: Розширено підтримкою ATORCH UD24. Розширено читаннÑм: "Вольти макÑимум (Vup)", "Вольти мінімум (Vdwn)", "Дата+, Ð’ (Dplus)", "Дата-, Ð’ (Dminus)".</li></ul></li> <li> FIX:tmplib_base.fileServerHTTP: Розширено Ð¿ÐµÑ€ÐµÐ´Ð°Ð²Ð°Ð½Ð½Ñ Ð²ÐµÐ»Ð¸ÐºÐ¸Ñ… даних у шматках шлÑхом прÑмого запиÑу функцією <i>writeTo()</i>. Ð”Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ доповнено атрибутами: "ТранÑпорт (tr)", "Протокол (prt)" Ñ– "Відправник (sender)".</li> <li> FIX:flb_doc.diagram: Додано креÑÐ»ÐµÐ½Ð½Ñ Ð½ÐµÐ¿ÐµÑ€Ñ–Ð¾Ð´Ð¸Ñ‡Ð½Ð¸Ñ… прÑмих даних на кшталт міÑÑці. Ð ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð¾ÐºÑ€ÑƒÐ³Ð»ÐµÐ½Ð½Ñ Ð²ÐµÐ»Ð¸ÐºÐ¸Ñ… інтервалів точок Кривими Кубічної Безіє.</li></ul></li> <li> LibsDB.vcaBase: <ul><li> wlb_Main: <ul><li> grph_panel,doc_panel: Ð”Ð¾Ð´Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸ активноÑÑ‚Ñ– контрольованого тренду або документу, Ñ– Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð·Ð° його неактивноÑÑ‚Ñ–. ÐŸÐµÑ€ÐµÐ²ÐµÐ´ÐµÐ½Ð½Ñ Ñƒ полі розміру-глибини на редагований ÐºÐ¾Ð¼Ð±Ð¾Ð±Ð¾ÐºÑ Ñ–Ð· чиÑельним номером Ñ– множником людÑьким текÑтом, заÑновано на новій функції КориÑтувацького API <i>time2str()</i> Ñ– <i>str2time()</i>, тобто Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ‚ÑƒÑ‚ Ð¿Ð¾Ð»Ñ Ñ‚Ð¸Ð¿Ñƒ.</li> <li> docRepDay,docRepMonth,docUsersSet,docRepInstVals,docDin,docRep2WorkSh,docAlarmsRep,docMessRep: ÐÐ´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð¿Ð°Ð½ÐµÐ»Ñ– контролю документів піÑÐ»Ñ Ð´ÐµÐºÑ–Ð»ÑŒÐºÐ¾Ñ… Ñекунд запуÑку-відкриттÑ, тобто Ð´Ð»Ñ Ð½Ð°Ð´Ð°Ð½Ð½Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŽ документом при відображені у QtWebengine.</li> <li> grpGraph,grpCadr,doc_panel,grph_panel,prescrEdit,prescrRun,prescrRunSimple,accept,treeSelect,calendar,userManager,alarmsStReport,docRepDay,docRepMonth,docRepYear},wlb_prescr.{prescrEdit,prescrRun,prescrRunSimple: Змінну <i>ev_cur</i> перейменовано у <i>evCur</i>.</li> <li> <span id="Upd8StoreHouse" title="#Upd8StoreHouse">storeHouse</span>: Розширено підтримкою Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² Ñк до MySQL Ð¿Ð¾Ð»Ñ LONGTEXT, так Ñ– до FS. Ð”Ð¾Ð´Ð°Ð½Ð½Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð½ÑŒÐ¾Ð³Ð¾ переглÑду завантажених зображень у формі Ñ– звіті елементу. Ð”Ð¾Ð´Ð°Ð½Ð½Ñ Ð´Ð¸Ð½Ð°Ð¼Ñ–Ñ‡Ð½Ð¾Ñ— панелі ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¾ обраних елементів у таблиці Ð´Ð»Ñ ÑˆÐ²Ð¸Ð´ÐºÐ¾Ð³Ð¾ контролю Ñ– доÑтупу до даних Ñкладних полів.</li> <li> FIX:grpGraph10: Виправлено у атрибуті "geomZ" Ð´Ð»Ñ Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ… віджетів "el9" Ñ– "el10".</li> <li> FIX:RootPgSo: Покращено, вÑтановленнÑм Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð´ÐµÐ¼Ð¾-процедури на паузу за відÑутноÑÑ‚Ñ– запитів на WEB, чим запобігаючи відкриттю уÑÑ–Ñ… Ñторінок до реального закриттÑ. ПрÑмий перелік Ñторінок доповнено перевіркою прав Ñторінок.</li> <li> FIX:grpGraph: Виправлено у атрибуті "geomZ" Ð´Ð»Ñ Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ… віджетів "trnd1" Ñ– "arh".</li> <li> FIX:weather: Ð”Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿Ñ–ÐºÑ‚Ð¾Ð³Ñ€Ð°Ð¼Ð°Ð¼Ð¸ предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ€Ñ–Ð·Ð½Ð¸Ñ… Ñтанів. Виправлено у гарантуванні Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð³Ð¾Ð´Ð¸Ð½Ð½Ð¸Ñ… даних при проблемах підключеннÑ.</li> <li> treeSelect: ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ–ÐºÑ‚Ð¾Ð³Ñ€Ð°Ð¼Ð¸ кадру із покращеннÑм назви.</li> <li> userManager: ÐŸÐµÑ€ÐµÐ²ÐµÐ´ÐµÐ½Ð½Ñ Ð½Ð° команди ІнтерфейÑу ÐšÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸ у резервованих ÑиÑтемах.</li></ul></li> <li> wlb_doc.docRepYear: ÐŸÐµÑ€ÐµÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ ÐºÑ€ÐµÑÐ»ÐµÐ½Ð½Ñ Ð¿Ñ€Ñмих даних на діаграмі у неперіодичний режим.</li></ul></li> <li> LibsDB.vcaTest.wlb_test.docTestGasNodeDayRep: ÐÐ´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð¿Ð°Ð½ÐµÐ»Ñ– контролю документу при вÑтановленні атрибуту "pgOpen" Ñ– не вÑтановленому атрибуті "pgOpen" у панелі, оÑкільки документ архівний, тобто Ð´Ð»Ñ Ð½Ð°Ð´Ð°Ð½Ð½Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŽ документом при відображені у QtWebengine.</li> <li> ModelsDB.AGLKS: <ul><li> wlb_doc.{docRepMonth,docRepDay}: Ð’Ñтановлено до не Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿ÐµÑ€Ñ–Ð¾Ð´Ð¸Ñ‡Ð½Ð¾.</li> <li> wlb_test.docTestGasNodeDayRep: Ð’Ñтановлено до Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ñ–Ð· періодичніÑÑ‚ÑŽ 10 Ñекунд.</li></ul></li></ul> <p><b><u>API</u></b><br /> <i>!!!!:Зміни</i>: </p> <ul><li> СиÑтема: Тип змінних Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ "limUserFile_SZ", "limUserIts_N" змінено у беззнакове. <ul><li> TCntrNode: Ð¿ÐµÑ€ÐµÐ²ÐµÐ´ÐµÐ½Ð½Ñ Ð·Ñ– Ñтатичного із перейменуваннÑм деÑких аргументів: <i>ctrMkNode()</i>, <i>ctrChkNode()</i>. ÐŸÐµÑ€ÐµÐ²ÐµÐ´ÐµÐ½Ð½Ñ <i>ctrMkNode2()</i> у визначеннÑ-Ð¼Ð°ÐºÑ€Ð¾Ñ Ñ–Ð· автоматичним аргументом Ð¿ÐµÑ€ÐµÑ€Ð¸Ð²Ð°Ð½Ð½Ñ NULL. ÐŸÐ¾Ñ”Ð´Ð½Ð°Ð½Ð½Ñ <i>_ctrMkNode()</i> до <i>ctrMkNode()</i>. Зміна прототипу функції <i>objPropSet()</i> у аргументі "val".</li> <li> TVal: ÐŸÐµÑ€ÐµÐ²ÐµÐ´ÐµÐ½Ð½Ñ Ñƒ конÑтанту Ð´Ð»Ñ <i>fld()</i>.</li> <li> TFld: До <i>cntrCmdMake()</i> додано аргумент "cntrO" із перейменуваннÑм деÑких аргументів.</li> <li> TConfig: До <i>cntrCmdMake()</i> Ñ– <i>cntrCmdProc()</i> додано аргумент "cntrO" із перейменуваннÑм деÑких аргументів.</li></ul></li> <li> Безпека: ÐŸÐµÑ€ÐµÐ¹Ð¼ÐµÐ½ÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñƒ "access" функції <i>TSecurity::access()</i> у "perm", також Ð´Ð»Ñ ÐšÐ¾Ñ€Ð¸Ñтувацького API.</li> <li> ТранÑпорти: До <i>TTransportS::cntrCmdPrm()</i> додано аргумент "cntrO".</li> <li> Збір Даних: ÐŸÐµÑ€ÐµÐ²ÐµÐ´ÐµÐ½Ð½Ñ Ð¿Ñ€Ð°Ð¿Ð¾Ñ€Ñ†Ñ–Ð² TValue <i>resB1()</i> Ñ– <i>resB2()</i> до влаÑтивоÑтей об'єкту у групі "DAQ", тобто Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ‚Ð°ÐºÐ¸Ñ… функцій.</li></ul> <p><i>ДоповненнÑ</i>: </p> <ul><li> СиÑтема: Ð”Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ”ÑŽ <i>sysTmJmp()</i>, Ñк варіант <i>sysTm()</i>. <ul><li> Ð”Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñм "DEF_HTaskPer".</li> <li> TError: Ðова помилка "Tr_ErrUnknown".</li> <li> TCfg,TVal: Ðовий уніфікований метод <i>isTransl()</i>.</li> <li> TVal: Ðові функції: <i>noTransl()</i>, <i>setNoTransl()</i>.</li> <li> TValue: Ðова Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ <i>setNoTransl()</i>.</li> <li> TCntrNode: Ðові функції: <i>nodeAccess()</i>, <i>nodeLoadACL()</i>, <i>nodeLoadACLSnthHgl()</i>, <i>property()</i>, <i>propertyClrGrp()'</i>; Ñ– нові визначеннÑ: <i>ctrMkNode3()</i>, <i>ctrChkNode2()</i>. Ð”Ð¾Ð´Ð°Ð½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— КориÑтувацького API <i>property()</i>.</li> <li> Ð”Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð¼ Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ "limObjDscr_SZ" Ð´Ð»Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ð¹Ð½Ð¸Ñ… полів опиÑу (DESCR).</li> <li> Ð”Ð¾Ð´Ð°Ð½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— <i>str2time()</i> із розбором людÑького чаÑу від <i>time2str()</i>, Ñку також доповнено аргументом "inParts".</li> <li> Ð”Ð¾Ð´Ð°Ð½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ… функцій КориÑтувацького API із предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ ÑиÑтемних у проÑторі кориÑтувача: <i>time2str()</i>, <i>cpct2str()</i>, <i>str2time()</i>.</li> <li> XMLNodeObj: <i>getElementsBy()</i> Ñ– Ñ—Ñ— варіант КориÑтувацького API розширено аргументами "limit" Ñ– "from".</li> <li> Mess: Ð”Ð¾Ð´Ð°Ð½Ð½Ñ Ð³Ð»Ð¾Ð±Ð°Ð»ÑŒÐ½Ð¸Ñ… функцій міток <i>labTime()</i>, <i>labTimeSel()</i>.</li></ul></li> <li> ТранÑпорти: TTransportOut доповнено функцією <i>isFromInput()</i>.</li></ul> <p><b><u>СиÑтема</u></b><br /> </p> <ul><li> СкладаннÑ: <ul><li> configure.ac: ПіднÑÑ‚Ñ‚Ñ Ð²ÐµÑ€ÑÑ–Ñ— бібліотеки Ñдра до 3:15:0 Ñ– верÑÑ–Ñ— програми до 0.9.8. ПіднÑÑ‚Ñ‚Ñ Ð²ÐµÑ€ÑÑ–Ñ— модулів підÑиÑтеми "ТранÑпорти" до 21.</li> <li> acinclude.m4: ÐœÐ°ÐºÑ€Ð¾Ñ <b>autoconf</b> AX_LIB_MYSQL додано викориÑтаннÑм PKG_CONFIG за наÑвноÑÑ‚Ñ– конфігураційного файлу, Ð´Ð»Ñ ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ñ–Ð· MySQL у оточеннÑÑ… кроÑ-компілÑції з бінарним <b>mysql_config</b> або <b>mariadb_config</b>. Ð’Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð·Ð°Ð¹Ð²Ð¸Ñ… макроÑів: AX_LIB_SQLITE3, BNV_HAVE_QT. ДеÑке Ð¿Ð¾ÐºÑ€Ð°Ñ‰ÐµÐ½Ð½Ñ Ð¼Ð°ÐºÑ€Ð¾Ñу AX_LIB_POSTGRESQL.</li> <li> data/{debian,debian_mod}: Ð”Ð¾Ð´Ð°Ð½Ð½Ñ "openscada-server.service" Ñ– "openscada-plc.service", також закоментованим запиÑом "dh_installsystemd" у "rules", Ñ– що переключено до викориÑÑ‚Ð°Ð½Ð½Ñ Ñƒ Debian 12,11,10 Ñ– Ubuntu 24.04,22.04,20.04. Ð”Ð¾Ð´Ð°Ð½Ð½Ñ MySQL типову залежніÑÑ‚ÑŒ "default-libmysqlclient-dev".</li></ul></li> <li> FIX:Security,ModSchedul,DAQ.{Function,Templates,BFN,JavaLikeCalc,OPC_UA,Siemens},Archive.{.,FSArch},Protocol.{ModBus,OPC_UA,HTTP,UserProtocol},UI.VCAEngine: Ð”Ð¾Ð´Ð°Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑтей до полів Ñтовпчика-переліку елементів контролю Таблиці від ІнтерфейÑу ÐšÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸ не лише від root-root.</li> <li> FIX:LibsDB.OscadaLibs.tmplib_base.fileServerHTTP,UI.WebVision: Уніфіковано обробку передачі даних у поÑлідовноÑÑ‚Ñ–: діапазони медіа у заголовку, великі дані шматками, проÑтий одинокий пакет Ð´Ð»Ñ Ð¼Ð°Ð»Ð¸Ñ… даних.</li> <li> Archive.{MessArchive,MessArchiver,ValArchive},DAQ: ÐŸÐµÑ€ÐµÐ²ÐµÐ´ÐµÐ½Ð½Ñ Ñƒ полі розміру-глибини ІнтерфейÑу ÐšÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ð° редагований ÐºÐ¾Ð¼Ð±Ð¾Ð±Ð¾ÐºÑ Ñ–Ð· чиÑельним номером Ñ– множником людÑьким текÑтом, заÑновано на новій функції КориÑтувацького API <i>time2str()</i> Ñ– <i>str2time()</i>.</li> <li> .,DAQ.{BlockCalc,JavaLikeCalc},Protocol.{ModBus,OPC_UA,UserProtocol},UI.{VCAEngine,WebUser}: Доповнено параметром Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ "limObjDscr_SZ" Ð´Ð»Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ð¹Ð½Ð¸Ñ… полів опиÑу (DESCR) із типовим значеннÑм 1000 Ñ– діапазоном [300...1000000].</li> <li> DAQ.{LogicLev,ModBus,OPC_UA,Siemens},UI.{QTCfg,WebCfgD}: Ð ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð·Ð°Ð¼Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ‡Ð°Ñу Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ð¹Ð½Ð¾Ð³Ð¾ інтерфейÑу обчиÑлювальних об'єктів, Ð·Ð°Ð´Ð»Ñ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ–ÑÐ»Ñ Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¾Ð±'єкту.</li> <li> FIX:Transports,Protocols: Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ñ–Ñ— помилок у викликах <i>messProtIO()</i> Ñ– його варіанті КориÑтувацького API <i>messIO(XMLNodeObj req, string prt)</i> згідно документації, тобто обов'Ñзково із кодом помилки.</li> <li> Параметри командного Ñ€Ñдка доповнено отриманнÑм типового Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ñ– змінної Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ "OSCADA_{cmd}", що Ñаме вмикаєтьÑÑ Ð·Ð¼Ñ–Ð½Ð½Ð¾ÑŽ Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ "OSCADA_CMD_EN".</li></ul> <p><b><u>Бази Даних</u></b><br /> </p> <ul><li> FIX:SQLite: Код помилки SQLITE_CORRUPT додано до Ð¿ÐµÑ€ÐµÐ¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ БД, оÑкільки Ñ†Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° може виникати зі зміною Ñтруктури файлу БД із зовнішнього джерела.</li></ul> <p><b><u>Збір Даних</u></b><br /> </p> <ul><li> FIX: Виправлено виÑÐ²Ð»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ð´Ð°Ð»ÐµÐ½Ð¸Ñ… архівів Ð´Ð»Ñ Ñ‚Ð¸Ð¼Ñ‡Ð°Ñово порожніх, тобто Ñкі не мають джерела.</li> <li> JavaLikeCalc: Ð ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð¾Ð¿ÐµÑ€Ð°Ñ‚Ð¾Ñ€Ñƒ "var" щодо обробки правильної облаÑÑ‚Ñ– видимоÑÑ‚Ñ–, тобто Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ… змінних у функціÑÑ… із оператором Ñ– викориÑÑ‚Ð°Ð½Ð½Ñ Ð³Ð»Ð¾Ð±Ð°Ð»ÑŒÐ½Ð¸Ñ… без нього.</li> <li> DAQGate: ВдоÑÐºÐ¾Ð½Ð°Ð»ÐµÐ½Ð½Ñ Ð°Ð»Ð³Ð¾Ñ€Ð¸Ñ‚Ð¼Ñƒ виÑÐ²Ð»ÐµÐ½Ð½Ñ Ð°Ñ€Ñ…Ñ–Ð²Ñ–Ð² із наданнÑм інформаційного Ð¿Ð¾Ð»Ñ Ð· переліком архівованих атрибутів.</li> <li> FIX:ModBus: Виправлено повним опрацюваннÑм Ñ€Ñдків із кодуваннÑм, тобто реєÑÑ‚Ñ€Ð°Ñ†Ñ–Ñ ÑƒÑÑ–Ñ… регіÑтрів. Запит даних вдоÑконалено Ð´Ð»Ñ TCP варіанту щодо Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ñ…Ð²Ð¾Ñту до першого пакету будь Ñкого розміру, тобто не лише MBAP заголовку розміром у 7 байтів.</li></ul> <p><b><u>Ðрхіви-ІÑторіÑ</u></b><br /> </p> <ul><li> Ðрхіви значень доповнено виÑвленнÑм подвійних поÑилань Ñ– видаленнÑм Ñ—Ñ… уÑÑ–Ñ….</li> <li> FSArch: Функцію Ñ€Ð¾Ð·Ð¿Ð°ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ñ€Ñ…Ñ–Ð²Ñ–Ð² доповнено уніфікацією повідомлень про помилку Ñ– можливіÑÑ‚ÑŽ Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¾Ð²Ð¸Ñ… архівів, наразі лише при перевірці архівних файлів значень.</li></ul> <p><b><u>ТранÑпорти</u></b><br /> </p> <ul><li> Елементи Логу Ð’Ð’ доповнено розміром повного пакету (або агрегацією) Ñ– типовий Ñ‡Ð°Ñ Ð°Ð³Ñ€ÐµÐ³Ð°Ñ†Ñ–Ñ— вÑтановлено у 1 Ñекунду. ВикориÑÑ‚Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½ "ReqTm", "ReqMode", "ToTmOut", "InBufSz", "ReqAnsw" переміщено у влаÑний проÑÑ‚Ñ–Ñ€ об'єкту транÑпорту.</li> <li> <span id="Upd8SSLSockAddrResolv" title="#Upd8SSLSockAddrResolv">Sockets,SSL</span>: <i>TTransSock::getAddr()</i> перейменовано у <i>TTransSock::addrGet()</i> Ñ– Ð²Ð¸Ñ€Ñ–ÑˆÐµÐ½Ð½Ñ Ð°Ð´Ñ€ÐµÑ Ð¿ÐµÑ€ÐµÐ¼Ñ–Ñ‰ÐµÐ½Ð¾ до нової функції <i>TTransSock::addrResolve()</i> із прÑмим вирішеннÑм Ñтатичних Ð°Ð´Ñ€ÐµÑ Ñ– динамічним вирішеннÑм за допомогою <i>gethostbyname()</i>, оÑкільки <i>getaddrinfo()</i> має проблеми із повторним входженнÑм (на Ñтарих ÑиÑтемах), та глобальне Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¸Ð·Ð²Ð¾Ð´Ð¸Ñ‚ÑŒ до тривалих завиÑань на уÑÑ–Ñ… адреÑах за проблем із DNS. Також доповнено параметром "--getaddrinfo" Ð´Ð»Ñ ÑƒÐ²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¹Ð¾Ð³Ð¾ Ñобі. <ul><li> FIX: Ð’Ð¸Ñ€Ñ–ÑˆÐµÐ½Ð½Ñ Ð²Ð°Ð¶ÐºÐ¾-вловимої проблеми підÑтавки помилкової адреÑи протÑгом Ð²Ð¸Ñ€Ñ–ÑˆÐµÐ½Ð½Ñ Ð°Ð´Ñ€ÐµÑ Ñƒ <i>getservbyname_r()</i> від іншого потоку, тобто від GLibC 2.24 примушено викориÑÑ‚Ð°Ð½Ð½Ñ <i>getaddrinfo()</i>, Ñк більш коректного, або <i>inet_pton()</i> + блокований <i>getservbyname_r()</i> на Ñтарих ÑиÑтемах.</li></ul></li> <li> FIX:SSL: Виправлено Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ð¿Ð¾Ð²Ñ–Ð´ÐµÐ¹ вихідних транÑпортів Ð´Ð»Ñ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ñ‚Ð¸Ð²Ð½Ð¸Ñ… підключень, оÑобливо Ð´Ð»Ñ Ð²Ñ–Ð´ÑутноÑÑ‚Ñ– відповіді. <ul><li> Доповнено реалізацією <i>TTransportIn::writeTo()</i> із переведеннÑм на карту у триманні Ñтруктури SSockIn.</li> <li> Вхідну чаÑтину транÑпортів переключено на викориÑÑ‚Ð°Ð½Ð½Ñ ÑƒÐ½Ñ–Ñ„Ñ–ÐºÐ¾Ð²Ð°Ð½Ð¾Ð³Ð¾ <i>TTransSock::addrResolve()</i> Ð´Ð»Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð½ÑŒÐ¾Ð³Ð¾ Ð²Ð¸Ñ€Ñ–ÑˆÐµÐ½Ð½Ñ ÑƒÑÑ–Ñ… динамічних Ð°Ð´Ñ€ÐµÑ Ñ– передачі готових Ñтатичних до <i>BIO_new_accept()</i>.</li></ul></li></ul> <p><b><u>ТранÑпортні Протоколи</u></b><br /> </p> <ul><li> <span id="Upd8OPC_UA" title="#Upd8OPC_UA">OPC_UA</span>: Ð ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð¿Ñ€Ð°Ð²Ð¸Ð»ÑŒÐ½Ð¾Ñ— автентифікації із перевіркою доÑтупу до DAQ-Вузлів Ð´Ð»Ñ ÐºÐ¾Ñ€Ð¸Ñтувача: <ul><li> libOPC_UA: Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð°Ð²Ñ‚ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ— через <i>UA::Server::EP::sessActivate()</i> Ñ– влаÑтивіÑÑ‚ÑŒ "identTkn", із Ñкої беретьÑÑ ÐºÐ¾Ñ€Ð¸Ñтувач у атрибуті "userAuthenticated" Ñ– він запиÑуєтьÑÑ Ð´Ð¾ "UA::Server::Sess::{user,idPolicyId}";</li> <li> libOPC_UA: уÑÑ– запити даних за <i>reqData()</i> доповнено у "req" атрибутом "sesTokId" із ідентифікатором ÑеанÑу Ñ– Ð´Ð»Ñ Ð´Ð¾Ñтупу до кориÑтувача тут;</li> <li> Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ð¹Ð½Ð¸Ð¼ полем "Ðнонімний кориÑтувач" Ð´Ð»Ñ Ð¿Ñ€ÐµÐ´ÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð°Ð½Ð¾Ð½Ñ–Ð¼Ð½Ð¾Ñ— автентифікації.</li></ul></li> <li> HTTP: Доповнено загальною функцією Ð¿ÐµÑ€ÐµÐ´Ð°Ð²Ð°Ð½Ð½Ñ Ð±ÑƒÐ´ÑŒ Ñкого методу до WEB-модулів — <i>HTTP()</i>.</li></ul> <p><b><u>Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐšÐ¾Ñ€Ð¸Ñтувача</u></b><br /> </p> <ul><li> FIX:Vision,WebVision: Ð ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð¾ÐºÑ€ÑƒÐ³Ð»ÐµÐ½Ð½Ñ Ð²ÐµÐ»Ð¸ÐºÐ¸Ñ… інтервалів точок Кривими Кубічної Безіє. Ð’Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð¾Ð±Ñ‡Ð¸ÑÐ»ÐµÐ½Ð½Ñ Ð½Ð¸Ð¶Ð½ÑŒÐ¾Ñ— межі вертикальної шкали.</li> <li> VCAEngine,Vision,WebVision: Тип Ð—Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¸Ð¼Ñ–Ñ‚Ð¸Ð²Ñƒ Медіа доповнено атрибутом "Зберігати ÑÐ¿Ñ–Ð²Ð²Ñ–Ð´Ð½Ð¾ÑˆÐµÐ½Ð½Ñ Ð·Ð° впиÑÑƒÐ²Ð°Ð½Ð½Ñ (keepAspect)".</li> <li> FIX:VCAEngine,Vision: Ð”Ð¾Ð´Ð°Ð½Ð½Ñ Ð¾Ð¿Ñ†Ñ–Ñ— у вкладці "Стилі" проєкту із контролем запиÑу до Ñтилів у контекÑÑ‚Ñ– виконаннÑ. І Ð·Ð°Ð¿Ð¸Ñ Ð´Ð¾ Ñтилів вимкнено на боці проєкту.</li> <li> FIX:WebVision: Запит даних реÑурÑів додано підтримкою шматків Ð´Ð»Ñ Ð²ÐµÐ»Ð¸ÐºÐ¸Ñ… даних Ñ– Ð¿ÐµÑ€ÐµÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð»Ð¸ÑˆÐµ Ð´Ð»Ñ Ð¼Ð°Ð»Ð¸Ñ… зображень. Тип Ð—Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ ÐºÐ½Ð¾Ð¿Ð¾Ðº доповнено підтримкою діапазонів медіа зі збереженнÑм даних у контекÑÑ‚Ñ– WebVision Ð´Ð»Ñ Ð¿Ð¾Ð²Ñ‚Ð¾Ñ€Ð½Ð¸Ñ… Ñпроб.</li> <li> <span id="Upd8WebUserExt" title="#Upd8WebUserExt">WebUser</span>: Переключено на загальну функію <i>HTTP()</i> перенеÑÐµÐ½Ð½Ñ Ñ–Ð· Protocol.HTTP. Доповнено опціональним атрибутом "ТранÑпорт (tr)" процедур обробки Ñ– шаблонів, отриманий із об'єкту протоколу. Ðтрибут "Результат (rez)" дозволено у порожньому значені Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð½Ð°Ð´ÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð±ÑƒÐ´ÑŒ Ñкої відповіді, що передбачає прÑмий Ð·Ð°Ð¿Ð¸Ñ Ñ–Ð· <i>TTransportIn::writeTo()</i>.</li> <li> QTCfg: Кнопки Ðазад Ñ– Вперед розширено меню прÑмого доÑтупу елементів.</li> <li> FIX:Vision: Ð—Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ð¼Ð¾Ð²Ñ– повноекранного режиму за деÑких умов XOrg, коли Qt-прапорець повного екрану випадково очищаєтьÑÑ, тобто прапорець було продубльовано вÑередині. ЧаÑто відтворюєтьÑÑ Ñ–Ð· Qt6 на Debian 12.</li> <li> VCAEngine: Ð”Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð½Ð°Ð´ÑиланнÑм неопрацьованих повідомлень до Ñторінки, Ñка відкрила вихідну Ñторінку.</li> <li> WebCfgD: Розширено виклик <i>pageRefresh()</i> інтеграцією чаÑу затримки.</li></ul> <h3><span class="mw-headline" id=".5B01.01.7532.2F01.03.2024.5D_.D0.A1.D0.AC.D0.9E.D0.9C.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="mw-headline-number">7.2</span> [01.01.7532/01.03.2024] СЬОМЕ оновленнÑ</span></h3> <p>Це Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ <a href="Release_0.9.html" title="Special:MyLanguage/Documents/Release 0.9">релізу 0.9 LTS</a> виправлÑÑ” Ð±Ñ–Ð»Ñ 60 помилок та додає ДУЖЕ БÐГÐТО удоÑконалень із декількома значними-концептуальними, з Ñкими цілком можна ознайомитиÑÑ Ñƒ <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2967" rel="nofollow noreferrer noopener" target="_blank">протоколі змін оновленнÑ</a>. </p><p><a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> <b><u>Важливі дії кориÑтувача за оновленнÑм</u></b><br /> </p> <ul><li> DAQ.System: ІД автоматично генерованих параметрів DA змінено у: CPU - "CPU[{N}]", fs - "FS{MP}", hddstat - "DiskSt_{dev}", MEM - "MEM", netstat - "Net_{IF}", sensors - "Sensors", hddsmart - "DiskSMART", ups - "UPS", uptime - "UpTm_{U}".</li></ul> <dl><dd> <b><span style="color: red">=</span></b>> вручну переприв'Ñзти уÑÑ– автоматично Ñтворені джерела, що змінилиÑÑ, Ñкщо викориÑтано Ðвтоматичний режим ÑтвореннÑ</dd></dl> <ul><li> FIX:UI.VCAEngine: Виключено Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñƒ "focus" будь Ñкого вкладеного віджету до Ð’Ð’ обчиÑÐ»ÐµÐ½Ð½Ñ Ñ– доповнено обробкою виключень доÑтупу до таких Ð’Ð’ Ð´Ð»Ñ Ð²Ñ–Ð´Ñутніх вкладених віджетів.</li></ul> <dl><dd> <b><span style="color: red">=</span></b>> вручну замінити уÑÑ– Ñтатичні викориÑÑ‚Ð°Ð½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñƒ "focus", на кшталт <span style="border: solid gray 1px; padding: 1px; font-family: monospace; font-size: 1.2em; white-space: nowrap;">if(alarms_focus) alUnSel = 10;</span> у <a href="Libs_Main_graphical_elements.html#alarmsSt" title="Special:MyLanguage/Libs/Main graphical elements">LibsDB.vcaBase.wlb_Main.alarmsSt</a>, на код <span style="border: solid gray 1px; padding: 1px; font-family: monospace; font-size: 1.2em; white-space: nowrap;">if(this.alarms.attr("focus")) alUnSel = 10;</span></dd></dl> <p><b><u><a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Automation_Linux_distributive" title="Special:MyLanguage/Sub-projects/Automation Linux distributive">Linux ДиÑтрибутив Ðвтоматизації проєкту OpenSCADA</a></u></b><br /> </p> <ul><li> Ð´Ð¾Ð´Ð°Ð½Ð½Ñ Debian 12 у ÑкоÑÑ‚Ñ– бази диÑтрибутиву;</li> <li> Ð¿ÐµÑ€ÐµÐ²ÐµÐ´ÐµÐ½Ð½Ñ ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ð±Ð°Ð·Ð¸ Debian 11,10,9 у Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ Debian 12;</li> <li> Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ TDE до 14.1.1 Ñ– потім 14.1.2 із Ñтабілізацію до Ñ€Ñ–Ð²Ð½Ñ 14.0.13;</li> <li> опціональне Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ ÑиÑтемного лотку щодо Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ñ–ÐºÑ‚Ð¾Ð³Ñ€Ð°Ð¼ програм із відмінним WMID але однаковою назвою на кшталт BlueMan;</li> <li> Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð·Ð½Ð°Ñ‡Ð½Ð¾Ð¼Ñƒ наповненню "~/.xsession-errors" зневаджувальними повідомленнÑми на кшталт "[FIXME] UNCLASSIFIED DEVICE name: ...";</li> <li> Ð²Ñ–Ð´Ñ–Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð°Ð½Ð½Ñ ÐšÐ°Ñ€Ñ‚ Безпеки Ð´Ð»Ñ Ð°Ð²Ñ‚ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ— у діалозі Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ kdesktop, оÑкільки ним Ñтало неможливо кориÑтуватиÑÑ;</li> <li> HWLib: викориÑÑ‚Ð°Ð½Ð½Ñ ÐŸÑ€Ð¾Ñ”ÐºÑ‚Ð½Ð¾Ñ— Ðапруги у розрахунку ÐмперГодин із ВатГодин заміÑÑ‚ÑŒ Поточної Ðапруги, Ð´Ð»Ñ Ð²Ñ–Ð´Ð¿Ð¾Ð²Ñ–Ð´Ð½Ð¾ÑÑ‚Ñ– із інформацією про ємніÑÑ‚ÑŒ, Ñку вказано на батареї; попереджено замерзанню у Менеджері ПриÑтроїв;</li> <li> KRDC, KRFB: Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð½Ð¾Ñ€Ð¼Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ Ñ„ÑƒÐ½ÐºÑ†Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ñ–Ð· 14.0.13;</li> <li> KXKB-KLayouts: Ð’Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ€ÐµÐ³Ñ€ÐµÑій у втраті-очищені ÑиÑтемних розкладок клавіатури;</li> <li> TDESVN: Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿Ð°Ð´Ñ–Ð½Ð½Ñм при доÑтупі до БД із KPart;</li> <li> Krusader: Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð¿Ð°ÐºÑƒÐ²Ð°Ð½Ð½Ñ *.tar.xz Ñ– *.txz, чим Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ— підтримки XZ;</li> <li> KMix: Ð°Ð´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ динаміки мікшерів;</li> <li> KMilo: Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ ÑÑкравіÑÑ‚ÑŽ піÑÐ»Ñ Ð¹Ð¾Ð³Ð¾ зламу;</li> <li> QuickLauncher: наразі проÑто ігнорує порожні елементи, тож Ñ—Ñ… буде видалено піÑÐ»Ñ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ—;</li> <li> TDM: Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð°Ð²Ñ‚ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ— за Карткою Безпеки Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð·Ð°Ð²Ð¸ÑаннÑм при виході;</li> <li> KOrganizer: вдоÑÐºÐ¾Ð½Ð°Ð»ÐµÐ½Ð½Ñ Ð´Ñ–Ð°Ð»Ð¾Ð³Ñƒ долучень щодо Ð²ÐºÐ°Ð·Ð°Ð½Ð½Ñ Ð»Ð¸ÑˆÐµ файлу із найменуваннÑм цього Ð´Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð½Ñ Ð· назви файлу та із включеннÑм по замовченню; вдоÑÐºÐ¾Ð½Ð°Ð»ÐµÐ½Ð½Ñ Ð´Ñ–Ð°Ð»Ð¾Ð³Ñƒ Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ ÐºÐ°Ñ‚ÐµÐ³Ð¾Ñ€Ñ–Ð¹ щодо ÑÐ¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´Ð»ÐµÐ³Ð»Ð¾Ð³Ð¾ діалогу Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾ зміну категорій;</li> <li> TDEPowerSave: Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ñкиданню відображених значень віджетів значень батарей, оÑкільки вони починають відображати порожню дошку Ñ– -1; закоментовано SLOT slotHelpContents() через його відÑутніÑÑ‚ÑŒ; Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿Ð¾Ñві помилкового діалогу неактивноÑÑ‚Ñ– Ð´Ð»Ñ Ð¿Ñ€Ð¸ÑиплÑÐ½Ð½Ñ Ð¾Ð´Ñ€Ð°Ð·Ñƒ піÑÐ»Ñ Ð¿Ñ€Ð¾ÐºÐ¸Ð´Ð°Ð½Ð½Ñ, Ñкий оÑобливо чаÑто з'ÑвлÑєтьÑÑ Ð¿Ñ€Ð¸ викориÑтанні ноутбуку від батареї;</li> <li> KPackage: Ð¾Ð¿Ñ‚Ð¸Ð¼Ñ–Ð·Ð°Ñ†Ñ–Ñ ÑÐ¿Ð¾Ð¶Ð¸Ð²Ð°Ð½Ð½Ñ Ð¿Ð°Ð¼'ÑÑ‚Ñ– шлÑхом Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ€ÐµÐ·ÑƒÐ»ÑŒÑ‚Ð°Ñ‚Ñƒ "apt-cache dumpavail" через тимчаÑовий файл а не через пам'ÑÑ‚ÑŒ, відтак ÑÐ¿Ð¾Ð¶Ð¸Ð²Ð°Ð½Ð½Ñ Ð¿Ð°Ð¼'ÑÑ‚Ñ– на Debian 12 зменшено із ~900MB до ~450MB;</li> <li> TDEPrint: Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ назв груп влаÑтивоÑтей друку;</li> <li> переклад УкраїнÑькою длÑ: knmap, knutclient, konversation, tdenetworkmanager.</li></ul> <p><b><u>ОÑновні WWW-реÑурÑи, Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ Ð¿Ñ€Ð¾Ñ”ÐºÑ‚Ñƒ Ñ– підпроєктів</u></b><br /> </p> <ul><li> поÑібник "<a href="Quick_start.html" title="Special:MyLanguage/Documents/Quick start">Швидкий Ñтарт</a>" цілковито відревізовано та актуалізовано щодо оÑтанніх змін у LTS;</li> <li> Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ <a href="Libs_Devices.html" title="Special:MyLanguage/Libs/Devices">Ñторінки бібліотеки промиÑлових приÑтроїв</a> опиÑом <a href="#tmplib_DevLibExt">нових шаблонів</a>;</li> <li> Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ <a href="Libs_LowLevelDevices.html" title="Special:MyLanguage/Libs/LowLevelDevices">Ñторінки бібліотеки низькорівневих ÑенÑорів та чипів</a> опиÑом <a href="#tmplib_DevLibExt">нових шаблонів</a>;</li> <li> Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ <a href="Libs_Main.html" title="Special:MyLanguage/Libs/Main">Ñторінки оÑновної бібліотеки</a> опиÑом <a href="#tmplib_baseExt">нових шаблонів</a>;</li> <li> Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ <a href="Libs_Main_graphical_elements.html" title="Special:MyLanguage/Libs/Main graphical elements">Ñторінки бібліотеки оÑновних елементів інтерфейÑу кориÑтувача</a> опиÑом <a href="#wlb_MainExt">нових віджетів</a>;</li> <li> цілковита Ñ€ÐµÐ²Ñ–Ð·Ñ–Ñ Ñ– Ð°ÐºÑ‚ÑƒÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ñ‰Ð¾Ð´Ð¾ оÑтанніх змін у LTS Ð´Ð»Ñ Ñторінок модулів: <a href="Modules/System.html" title="Special:MyLanguage/Modules/System">DAQ.System</a>, <a href="Modules/SSL.html" title="Special:MyLanguage/Modules/SSL">Transport.SSL</a>;</li> <li> початок нового підпроєкту <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Using/NetGear_R6220" title="Special:MyLanguage/Using/NetGear R6220">NETGEAR R6220</a> зі ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ñ– адаптації OpenSCADA до MIPS.</li></ul> <p><b><u>Ðові та значно оновлені чаÑтини</u></b><br /> </p> <ul><li> Ядро OpenSCADA: 3:13:0 => <b>3:14:0</b></li></ul> <dl><dd> (<a href="#BuildD12Qt6SSL3">Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ñ–Ð· адаптацією ...</a>, <a href="#TransportAddPrm">ПереглÑд Ñ– ÑƒÐ½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð¿Ñ–Ð´ÑиÑтеми ТранÑпортів ...</a>, <a href="#BigMemConsum">Контроль великого ÑпоживаннÑм пам'ÑÑ‚Ñ–</a>, <a href="#MessTrFix7">Переклад Повідомлень — Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ†ÐµÐ¿Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ð¸Ñ… змін попередніх оновлень</a>)</dd></dl> <ul><li> ПідÑиÑтеми "ТранÑпорти" OpenSCADA: 19 => <b>20</b></li></ul> <dl><dd> (<a href="#TransportAddPrm">ПереглÑд Ñ– ÑƒÐ½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð¿Ñ–Ð´ÑиÑтеми ТранÑпортів ...</a>)</dd></dl> <ul><li> ПідÑиÑтеми "Збір Даних" OpenSCADA: 14 => <b>15</b></li></ul> <dl><dd> (<a href="#DAQPrmTypes">Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ ÐºÐ¾Ð½Ñ†ÐµÐ¿Ñ†Ñ–Ñ— типів параметрів</a>)</dd></dl> <ul><li> DAQ.System: 2.4 => <b style="color: red">3.3</b></li></ul> <dl><dd> (<a href="#SystemExt">Цілковитий переглÑд Ñ– Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ ...</a>)</dd></dl> <ul><li> DAQ.LogicLev: 2.7 => <b>2.9</b></li> <li> DAQ.DAQGate: 2.11 => <b>2.13</b></li> <li> DAQ.ModBus: 3.6 => <b>3.8</b></li> <li> DAQ.OPC_UA: 2.6 => <b>2.8</b></li> <li> DAQ.JavaLikeCalc: 5.5 => <b>5.6</b></li> <li> DAQ.Siemens: 4.4 => <b>4.5</b></li> <li> DAQ.AMRDevs: 0.7 => <b>0.8</b></li> <li> Transport.SSL: 3.4 => <b style="color: red">4.5</b></li></ul> <dl><dd> (<a href="#SSLExt">Ð Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´Ñ‚Ñ€Ð¸Ð¼ÐºÐ¾ÑŽ ініціативних підключень, Ð°Ð´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ OpenSSL 1.1 Ñ– більше</a>)</dd></dl> <ul><li> Transport.Sockets: 4.5 => <b>4.8</b></li> <li> Transport.Serial: 2.6 => <b>2.7</b></li> <li> Protocol.SelfSystem: 1.10 => <b style="color: red">2.0</b></li></ul> <dl><dd> (<a href="#SelfSystemExt">Значне Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ñ– Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñƒ реалізації зовнішніх підключень та більше</a>)</dd></dl> <ul><li> UI.QTCfg: 5.12 => <b style="color: red">6.0</b></li></ul> <dl><dd> (<a href="#BuildD12Qt6SSL3">Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ñ–Ð· адаптацією до Qt6, QtWebEngine, QtMultimediaEngine, ...</a>)</dd></dl> <ul><li> UI.QTStarter: 5.14 => <b style="color: red">6.0</b></li></ul> <dl><dd> (<a href="#BuildD12Qt6SSL3">Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ñ–Ð· адаптацією до Qt6, QtWebEngine, QtMultimediaEngine, ...</a>)</dd></dl> <ul><li> UI.VCAEngine: 7.11 => <b>7.13</b></li> <li> UI.Vision: 8.6 => <b style="color: red">9.2</b></li></ul> <dl><dd> (<a href="#BuildD12Qt6SSL3">Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ñ–Ð· адаптацією до Qt6, QtWebEngine, QtMultimediaEngine, ...</a>)</dd></dl> <ul><li> UI.WebCfgD: 2.4 => <b>2.5</b></li> <li> UI.WebVision: 6.8 => <b>6.10</b></li> <li> LibsDB.OscadaLibs.base: 2.0 => <b>2.2</b></li></ul> <dl><dd><ul><li> fileServerHTTP: <b style="color: red">1.0</b></li> <li> weather: <b style="color: red">1.0</b></li></ul></dd></dl> <ul><li> LibsDB.OscadaLibs.DevLib: 2.6 => <b style="color: red">3.0</b></li></ul> <dl><dd><ul><li> Incubator: <b style="color: red">1.0</b></li> <li> VSE002: <b style="color: red">1.1</b></li> <li> FF_LE: <b style="color: red">0.9</b></li> <li> ergomera625: <b style="color: red">0.1</b></li> <li> Goboy1M: <b style="color: red">1.0</b></li> <li> AutoPILOT: <b style="color: red">1.0</b></li> <li> AutoPILOT_old: <b style="color: red">1.0</b></li> <li> CorBK: <b style="color: red">1.0</b></li> <li> TDS: <b style="color: red">1.0</b></li> <li> UltraMag: <b style="color: red">1.0</b></li> <li> enronDaniel: <b style="color: red">1.0</b></li> <li> FlowGAS: <b style="color: red">1.0</b></li></ul></dd></dl> <ul><li> LibsDB.OscadaLibs.LowDevLib: 1.4 => <b>1.5</b></li></ul> <dl><dd><ul><li> UC96: <b style="color: red">1.0</b></li></ul></dd></dl> <ul><li> LibsDB.vcaBase.Main: 2.0 => <b>2.1</b></li></ul> <dl><dd><ul><li> weather: <b style="color: red">1.0</b></li> <li> storeHouse: 1.3 => <b>1.4</b></li> <li> grpGraph, grpGraph10: 1.5 => <b>1.6</b></li> <li> ElViewGraph: 1.4 => <b>1.5</b></li></ul></dd></dl> <p><b><u><span id="BuildD12Qt6SSL3" title="#BuildD12Qt6SSL3">КОÐЦЕПТУÐЛЬÐЕ > Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ñ–Ð· адаптацією до Debian 12, Qt6, QtWebEngine, QtMultimediaEngine, OpenSSL3, MIPS</span> </u></b><br /> </p> <ul><li> FIX: Завершено правильне ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ñ–Ð· бібліотекою Ñдра лише Ñтатично: <ul><li> configure.ac: конфігураційний параметр <span style="border: solid gray 1px; padding: 1px; font-family: monospace; font-size: 1.2em; white-space: nowrap;">--enable-CoreLibStatic</span> розширено визначеннÑм AM_CONDITIONAL(CoreLibStatic) Ñ– змінною Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ LIB_MOD;</li> <li> moduls/*/*/Makefile.am: доповнено параметром <span style="border: solid gray 1px; padding: 1px; font-family: monospace; font-size: 1.2em; white-space: nowrap;">--tag=disable-shared</span> Ñ– розширено викориÑтаннÑм змінної Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ LIB_MOD;</li> <li> src_call/Makefile.am: розширено Ñпецифічною обробкою AM_CONDITIONAL(CoreLibStatic) Ð´Ð»Ñ Ñтатичного зв'ÑÐ·ÑƒÐ²Ð°Ð½Ð½Ñ Ð±Ñ–Ð±Ð»Ñ–Ð¾Ñ‚ÐµÐºÐ¸ Ñдра із уÑіма включеними модулÑми.</li></ul></li> <li> configure.ac,acinclude.m4: Очищено від заÑтарілих макроÑів у AutoConf 2.70: <ul><li> AC_HELP_STRING перейменовано у AS_HELP_STRING;</li> <li> AM_CONFIG_HEADER перейменовано у AC_CONFIG_HEADER;</li> <li> AC_LIBTOOL_DLOPEN замінено на LT_INIT([dlopen]);</li> <li> AX_PTHREAD замінено на AC_SEARCH_LIBS(pthread, [pthread_create])</li> <li> закоментовано AC_PROG_LIBTOOL, AM_PROG_LIBTOOL, AC_HEADER_STDC, AC_HEADER_TIME, AC_TYPE_SIGNAL, AC_ISC_POSIX.</li></ul></li> <li> acinclude.m4,DAQ.OPC_UA.libOPC_UA,Transport.SSL,Special.FLibSYS: Очищено від заÑтарілих функцій у OpenSSL 1.1 (API 3.0): <ul><li> acinclude.m4: функції теÑÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¼Ð°ÐºÑ€Ð¾Ñу AX_LIB_OpenSSL() Ñ– AX_LIB_OpenSSL_opt() на libcrypto замінено із MD5_Init() у BIO_new(); функції теÑÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¼Ð°ÐºÑ€Ð¾Ñу AX_LIB_OpenSSL() на libssl замінено із SSL_free() у SSL_new();</li> <li> OPC_UA.libOPC_UA: UA::symmetricEncrypt() Ñ– UA::symmetricDecrypt() поєднано у UA::symmetricCrypt() Ñ– переключено на викориÑÑ‚Ð°Ð½Ð½Ñ EVP_CipherInit() Ñ– EVP_CipherUpdate() заміÑÑ‚ÑŒ AES_cbc_encrypt() Ð´Ð»Ñ Ð½Ð¾Ð²Ð¸Ñ… верÑій; <ul><li> викориÑÑ‚Ð°Ð½Ð½Ñ RSA_public_encrypt() переведено на EVP_PKEY_encrypt() Ñ– RSA_private_decrypt() переведено на EVP_PKEY_decrypt() Ð´Ð»Ñ Ð½Ð¾Ð²Ð¸Ñ… верÑій.</li></ul></li> <li> Transport.SSL,Special.FLibSYS: викориÑÑ‚Ð°Ð½Ð½Ñ MD5() переведено на EVP_DigestInit_ex(), EVP_DigestUpdate(), EVP_DigestFinal_ex() Ð´Ð»Ñ Ð½Ð¾Ð²Ð¸Ñ… верÑій.</li></ul></li> <li> configure.ac: При додані Qt6 його доповнено щодо Qt6Sensors, Qt6WebEngineWidgets, Qt6MultimediaWidgets. <ul><li> Доповнено перевіркою Qt5WebEngineWidgets Ñ– Qt5MultimediaWidgets Ð´Ð»Ñ Ð¿Ñ–Ð´Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ у UI.Vision.</li> <li> Доповнено перевіркою декларацій-функцій clock_nanosleep, pthread_rwlock_timedwrlock, newlocale Ð´Ð»Ñ Ð´ÑƒÐ¶Ðµ проÑтих оточень MIPS із UCLibC.</li> <li> Параметри <span style="border: solid gray 1px; padding: 1px; font-family: monospace; font-size: 1.2em; white-space: nowrap;">--disable-WebKit</span> Ñ– <span style="border: solid gray 1px; padding: 1px; font-family: monospace; font-size: 1.2em; white-space: nowrap;">--disable-Phonon</span> перейменовано у <span style="border: solid gray 1px; padding: 1px; font-family: monospace; font-size: 1.2em; white-space: nowrap;">--disable-QtWebEngine</span> Ñ– <span style="border: solid gray 1px; padding: 1px; font-family: monospace; font-size: 1.2em; white-space: nowrap;">--disable-QtMultimediaEngine</span> відповідно.</li> <li> Загальні зміни QtWebKit_{CFLAGS,LIBS} Ñ– phonon_{CFLAGS,LIBS} перейменовано у QtWebEngine_{CFLAGS,LIBS} Ñ– QtMultimediaEngine_{CFLAGS,LIBS} відповідно.</li> <li> Покращено більшіÑÑ‚ÑŒ відповідних повідомлень.</li> <li> Доповнено перевіркою заголовку pthread.h.</li></ul></li> <li> acinclude.m4: AutoConf Ð¼Ð°ÐºÑ€Ð¾Ñ AX_LIB_Qt розширено підтримкою Qt6 та вдоÑконалено виÑÐ²Ð»ÐµÐ½Ð½Ñ MOC Ñ– RCC Ð´Ð»Ñ Qt5. <ul><li> Покращено деÑкі повідомленнÑ.</li></ul></li> <li> data/{debian,debian_mod}/compat: Рівень збільшено до 7 Ð´Ð»Ñ ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ð½Ð° ÑучаÑний диÑтрибутивах Debian по замовченню.</li> <li> data/{debian,debian_mod}/control: Доповнено варіантами залежноÑтей qt6-base-dev, qt6-webengine-dev, qt6-multimedia-dev Ñ– qtwebengine5-dev, qtmultimedia5-dev. Доповнено варіантом залежноÑÑ‚Ñ– libsensors-dev до libsensors4-dev.</li> <li> ResRW::{resRequestW,resRequestR}(): Доповнено викориÑтаннÑм верÑÑ–Ñ— за чаÑом із визначеннÑм HAVE_DECL_PTHREAD_RWLOCK_TIMEDWRLOCK.</li> <li> TSYS::atime2str(),SYS.strftime(): Доповнено викориÑтаннÑм локалізованої дати із визначеннÑм HAVE_DECL_NEWLOCALE.</li> <li> TSYS::{sysSleep,taskSleep}(): Доповнено викориÑтаннÑм Ñну за годинником при визначені HAVE_DECL_CLOCK_NANOSLEEP.</li> <li> Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐšÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŽ оÑновної Ñторінки доповнено прихованнÑм вкладки "Переклади" Ñ– полів мови за відÑутноÑÑ‚Ñ– багатонаціональноÑÑ‚Ñ– взагалі.</li> <li> TMess,TModule: Перевірку HAVE_LIBINTL_H замінено на "#if HAVE_LIBINTL_H", тобто перевіркою на 1.</li> <li> Transports.SSL: Ðдаптовано до нових функцій OpenSSL 1.1 (API 3.0) з поводженнÑм із заÑтарілими.</li> <li> UI.{QTStarter,QTCfg,Vision}: ÐÐ´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ñ–Ð· Qt6, включно із адаптацією до Qt6WebEngine Ñ– Qt6Multimedia: <ul><li> QLayout::{setMargin,margin}() замінено на QLayout::{setContentsMargins,getContentsMargins}();</li> <li> QVariant(char*) замінено на QVariant(QString);</li> <li> конÑтруктор QMouseEvent замінено відповідною із глобальною позицією;</li> <li> QRegExp замінено на TRegExp варіантом OpenSCADA Ð´Ð»Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ð¹ заміни Ñ– теÑÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ прÑмої перевірки;</li> <li> QComboBox Ñигнал activated(const QString&), currentIndexChanged(const QString&) замінено на activated(int), currentIndexChanged(int) відповідно;</li> <li> QSignalMapper Ñигнал mapped(QWidget*) замінено на mappedObject(QObject*);</li> <li> QPalette::Background замінено на QPalette::Window та Qt::MidButton на Qt::MiddleButton;</li> <li> QFileDialog::setReadOnly() замінено на setOption();</li> <li> QApplication::desktop() замінено на QScreen;</li> <li> QAction::parentWidget() замінено на parent();</li> <li> QVariant::type() перейменовано у typeId(), QMouseEvent::{pos,globalPos}() перейменовано у {position,globalPosition}(), QDateTime::{setTime_t,fromTime_t,toTime_t}() перейменовано у {setSecsSinceEpoch,fromSecsSinceEpoch,toSecsSinceEpoch}();</li> <li> доповнено перейменуваннÑм функцій Ð´Ð»Ñ Ñ€Ñ–Ð·Ð½Ð¸Ñ… верÑій Qt за допомогою макро-визначень у різних файлах щодо: typeId() у type(), position() у pos(), globalPosition() у globalPos(), setSecsSinceEpoch() у setTime_t(), fromSecsSinceEpoch() у fromTime_t(), toSecsSinceEpoch() у toTime_t(), mappedObject() у mapped(), setSource() у setMedia(), setVolume() у audioOutput()->setVolume(), setMedia() у setSource(), state() у playbackState();</li> <li> доповнено підтримкою QRegularExpression заміÑÑ‚ÑŒ QRegExp у Qt6;</li> <li> QMouseEvent влаÑтивіÑÑ‚ÑŒ mouseBtHold розділено на дві QPointF: mouseBtHoldPos, mouseBtHoldPosG;</li> <li> розділювач комбінацій клавіш "+" замінено "|", тобто "Qt::SHIFT|Qt::Key_F1";</li> <li> Ð¿Ð¾Ð´Ñ–Ñ QEvent::KeyRelease у заÑтоÑуванні LineEdit замінено на QEvent::KeyPress;</li> <li> QTStarter: загальну бібліотеку lib_qtgen доповнено функцією winFit() загального Ð¿Ñ–Ð´Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñпецифічних вікон мобільних ÑиÑтем; доповнено атрибутом Qt::AA_ShareOpenGLContexts перед об'єктом додатку Qt Ð´Ð»Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ QtWebEngine на Qt6;</li> <li> Vision: Ð°Ð´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ Qt WebEngineWidgets заміÑÑ‚ÑŒ WebKit та до Qt MultimediaWidgets заміÑÑ‚ÑŒ Phonon, Ñ– примітив Документ розділено Ð·Ð°Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð¼ÑƒÑового викориÑÑ‚Ð°Ð½Ð½Ñ QTextBrowser у режимі розробки. Відновлено поÑву нових елементів дій віджетів бібліотек шлÑхом Ñ€Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ… дій у Меню перед Панеллю ІнÑтрументів.</li></ul></li></ul> <p><b><u><span id="TransportAddPrm" title="#TransportAddPrm">КОÐЦЕПТУÐЛЬÐЕ > ПереглÑд Ñ– ÑƒÐ½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð¿Ñ–Ð´ÑиÑтеми ТранÑпортів у керуванні додатковими параметрами та Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð°Ð½Ð½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ñ–Ð² чаÑу Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ реєÑтрації конфігураційних параметрів зовнішніх джерел</span> </u></b><br /> </p> <ul><li> конфігураційне поле "A_PRMS" контейнеру додаткових параметрів переміщено із модулів до бібліотеки Ñдра;</li> <li> доповнено функціÑми TTransportS::{prm,cntrCmdPrm}(), {TTransportIn,TTransportOut}::prm() із загальною реалізацією додаткових параметрів;</li> <li> conPrm() розширено підтримкою конфігураційних параметрів зовнішніх джерел на кшталт протоколів Ñ– його розповÑюджено на вхідну чаÑтину, так Ñамо Ð´Ð»Ñ ÐšÐ¾Ñ€Ð¸Ñтувацького API;</li> <li> conPrm() доповнено аргументом типового значеннÑ, Ñке викориÑтано у вÑÑ–Ñ… транÑпортних модулÑÑ…;</li> <li> clearConPrm() розширено очищеннÑм одного параметру Ñ– лише із зовнішніх джерел;</li> <li> setConPrm() видалено піÑÐ»Ñ Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ— такої влаÑтивоÑÑ‚Ñ– у conPrm() та деÑкі модулі оновлено щодо цього: DAQ.AMRDevs, Protocol.SelfSystem;</li> <li> Protocol.SelfSystem Ñ” першим, Ñкий викориÑтовує наразі конфігураційні параметри у транÑпорті;</li> <li> вихідні транÑпорти доповнено поÑиланнÑм на вхідний, Ñкий Ñтворив вихідний, Ñ– його викориÑтано Ð´Ð»Ñ Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ‚ÑƒÑ‚ конфігураційних параметрів зовнішніх джерел;</li> <li> вÑÑŽ конфігурацію аÑоційованих вихідних транÑпортів вÑтановлено прихованою;</li> <li> контроль додаткових параметрів переÑунуто до влаÑної вкладки "Додаткове (aprm)" із функцією ÑÐºÐ¸Ð´Ð°Ð½Ð½Ñ Ñ—Ñ… значень;</li> <li> Ð¿Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð¸ вхідних Ñ– вихідних транÑпортів вÑтановлено лише за реальної зміни конфігураційних полів.</li></ul> <p><b><u><span id="BigMemConsum" title="#BigMemConsum">КОÐЦЕПТУÐЛЬÐЕ > Контроль великого ÑÐ¿Ð¾Ð¶Ð¸Ð²Ð°Ð½Ð½Ñ Ð¿Ð°Ð¼'ÑÑ‚Ñ–</span> </u></b><br /> </p> <ul><li> СиÑтема: TCntrNode::cntrCmd() у обробці первинних команд Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐšÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð¾ Ñ—Ñ… глобальним журналюваннÑм Ð·Ð°Ð´Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŽ дій, що призвели до великого ÑÐ¿Ð¾Ð¶Ð¸Ð²Ð°Ð½Ð½Ñ Ð¿Ð°Ð¼'ÑÑ‚Ñ–.</li> <li> FIX:Збір Даних: JavaLikeCalc: Операцію Ð¿Ð¾Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ñ€Ñдків доповнено перевіркою Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ñƒ limUserFile_SZ(10M). <ul><li> System: Доповнено DA(Збором Даних) ÐŸÑ€Ð¾Ñ†ÐµÑ Ñƒ ÑкоÑÑ‚Ñ– інтерфейÑу до Linux процеÑів у контролі викориÑÑ‚Ð°Ð½Ð½Ñ Ð½Ð¸Ð¼Ð¸ пам'ÑÑ‚Ñ–.</li></ul></li> <li> FIX:Ðрхіви-ІÑторіÑ: Запити TVArchEl::getVals() Ñ– "TValue:get:/serv/attr" доповнено обмеженнÑм запитаної глибини у limUserIts_N (1e6) елементів Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð²ÐµÐ»Ð¸ÐºÐ¾Ð¼Ñƒ Ñпоживанню пам'ÑÑ‚Ñ–. <ul><li> FIX: Запит ІнтерфейÑу ÐšÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ "TValue:get:/serv/attr" виправлено у обмежені обчиÑÐ»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— getVals().</li> <li> FIX:.,FSArch: ÐÑ€Ñ…Ñ–Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½ÑŒ доповнено обмеженнÑм операцій запиÑу у limUserIts_N (1e6) елементів Ð´Ð»Ñ Ð²Ñ–Ð´ÑÑ‚ÐµÐ¶ÐµÐ½Ð½Ñ ÑÐ¿Ð¾Ð¶Ð¸Ð²Ð°Ð½Ð½Ñ ÑƒÑієї пам'ÑÑ‚Ñ– у певних випадках.</li></ul></li></ul> <p><b><u><span id="MessTrFix7" title="#MessTrFix7">КОÐЦЕПТУÐЛЬÐЕ > Переклад Повідомлень (Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ <a href="Release_0.9.html#MessTrFix" title="Special:MyLanguage/Documents/Release 0.9">концептуальних змін попередніх оновлень</a>) </span> </u></b><br /> </p> <ul><li> FIX:SYS,DB: TMess::translGet() виправлено у виÑвлені передзбережених ÑиÑтемних повідомлень при вÑтановлені порожніх повідомлень Ñ– функцію TMess::translGetU() виправлено у очищені ÑервіÑних нульових Ñимволів у нединамічних режимах перекладу. <ul><li> Бази Даних: TTable::fieldSQLSet() адаптовано до Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð±Ð°Ð·Ð¾Ð²Ð¾Ð³Ð¾ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ– вÑÑ–Ñ… перекладів при обнулені перекладу, Ð´Ð»Ñ Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ñ€ÐµÐ´Ð°Ð³Ð¾Ð²Ð°Ð½Ð¾Ð³Ð¾ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñƒ динамічному режимі перекладу Ñ– не від базової мови.</li></ul></li> <li> SYS,DB.{SQLite,MySQL,PostgreSQL,FireBird},Protocol.HTTP: Переважно адаптовано переклад повідомлень до кодів мов більше за 2 (два) Ñимволи.</li> <li> Protocol.HTTP,UI.{WebUser,WebVision}: Завершено адаптацію до динамічного перекладу ім'Ñ Ñтанції із уніфікацією функції КориÑтувацького API pgCreator() щодо викориÑÑ‚Ð°Ð½Ð½Ñ Ð¼Ð¾Ð²Ð¸ із objFuncCall(). <ul><li> Protocol.HTTP: ШлÑÑ… із TSYS::ico() викориÑтано Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´ÐµÐ½Ð¸Ñ… піктограм.</li></ul></li> <li> SYS,UI.{Vision,WebVision}: Функцію TSYS::atime2str() доповнено перекладом дати Ñ– вона викориÑтана у побудові шкали чаÑу примітиву СВУ Діаграма.</li> <li> FIX:Бази Даних: Дозволено правильний Ð·Ð°Ð¿Ð¸Ñ Ð·Ð¼Ñ–Ð½ кориÑтувача у Динамічному Режимі Перекладу на Ðебазовій Мові, шлÑхом ранньої перевірки щодо динамічних даних.</li> <li> FIX:Збір Даних: Завершено адаптацію DAQ-Шаблонів до перекладу значень Ñтрокового типу при Ñ—Ñ… редагуванні Ñ– викориÑтанні у вкладці Конфігурації Шаблону та виправлено-адаптовано до динамічного перекладу у викориÑÑ‚Ð°Ð½Ð½Ñ Ð½Ð°Ð·Ð² Ð’Ð’. <ul><li> FIX:DAQGate: Виправлено надÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½ÑŒ перекладуваних полів не у внутрішній Ñтруктурі перекладу.</li></ul></li> <li> ТранÑпортні Протоколи: HTTP: Ðдаптовано до динамічного перекладу назви Ñтанції Ñ– Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ ÐºÐ¾Ð´Ð¾Ð²Ð°Ð½Ð¸Ñ… назв файлів зображень. <ul><li> UserProtocol: Виправлено-адаптовано до динамічного перекладу назв Ð’Ð’.</li></ul></li> <li> FIX:UI.VCAEngine: Шаблони виправлено-адаптовано до динамічного перекладу у викориÑтанні конфігураційного шаблону атрибутів.</li> <li> FIX:UI.WebUser: Виправлено переклад назви Ñторінки у індекÑÑ–.</li> <li> FIX:UI.WebVision: Виправлено динамічний переклад ім'Ñ ÐºÐ¾Ñ€Ð¸Ñтувача на Ñторінці індекÑу.</li></ul> <p><b><u>OpenSCADA бібліотеки Ñ– проєкти</u></b><br /> </p> <ul><li> data/{oscada_plc.xml,oscada_server.xml,oscada_start.xml,ModelsDB/{AGLKS/oscada_AGLKS.xml,Boiler/oscada_Boiler.xml}}: Очищено Ð¾Ð¿Ð¸Ñ Ð²Ñ…Ñ–Ð´Ð½Ð¸Ñ… транÑпортів та транÑпорти доповнено групами портів: 10002,10003,10004 Ð´Ð»Ñ WEB Ñ– 10005,10006,10007 Ð´Ð»Ñ CNTR.</li> <li> LibsDB.{OscadaLibs.flb_Controller.test,vcaBase.prj_archBrowser.IDW},ModelsDB.AGLKS.St.{OPC_UA.test,Archive.{MemInfo_use,CPULoad_load}},ModelsDB.Boiler.St.Archive.{MemInfo_use,CPULoad_load}: Ðдаптовано до Ð¿ÐµÑ€ÐµÐ¹Ð¼ÐµÐ½ÑƒÐ²Ð°Ð½Ð½Ñ DAQ.System.AutoDA.CPULoad Ñ– DAQ.System.AutoDA.MemInfo у DAQ.System.AutoDA.CPU Ñ– DAQ.System.AutoDA.MEM.</li> <li> FIX:ModelsDB.AGLKS.St: Вхідні SSL транÑпорти вÑтановлено групами портів 10042,10043,10044 Ð´Ð»Ñ WEB Ñ– 10045,10046,10047 Ð´Ð»Ñ CNTR. <ul><li> FIX:WebUser.test: відновлено текÑÑ‚ у Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð¾ уніфікації перекладу.</li> <li> DAQGate.test: Оновлено кеш параметрів.</li> <li> LogLevPrm.gen: УÑÑ– об'єкти параметрів вÑтановлено у 1 Ð´Ð»Ñ "alDelay", Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñм порушень при виході.</li> <li> Sockets.{testRelease,testRelease1,testRelease2}: вимкнено по замовченню.</li></ul></li> <li> LibsDB.OscadaLibs: <ul><li> <span id="tmplib_DevLibExt" title="#tmplib_DevLibExt">tmplib_DevLib</span>: Бібліотеку доповнено шаблонами із документуваннÑм: <ul><li> від ВПФ: Incubator, VSE002, "FF LE-03MB CT (FF_LE)", "Ergomera 625(ergomera625)";</li> <li> від Blue Star Group: "Goboy 1M (Goboy1M)", "AutoPILOT PRO Flow Computers (AutoPILOT)", "AutoPILOT OLD Flow Computers (AutoPILOT_old)", "Corrector BK (CorBK)", "Tancy Data (TDS)", "UltraMag", "Enron, Daniel (enronDaniel)", FlowGAS.</li></ul></li> <li> <span id="tmplib_baseExt" title="#tmplib_baseExt">tmplib_base</span>: Доповнено новим шаблоном Ð´Ð»Ñ WebUser — "HTTP Файловий Сервер (fileServerHTTP)", із реалізацією HTTP Файлового Серверу у OpenSCADA, наразі лише Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ€ÐµÑурÑів із підтримкою чаÑтковоÑÑ‚Ñ–; Ñ– нові шаблони "Погода (weather)", "ДиÑковий SMART (DiskSMART)". <ul><li> digAlarm,manInUnif,anUnif,pidUnifImp,anUnifSt,pidUnif,codeState,SNMP,UPS: Ð’Ð’ NAME вÑтановлено у тип "Ð Ñдок (переклад)" Ñ– Ð’Ð’ DESCR у тип "ТекÑÑ‚ (переклад)".</li></ul></li> <li> tmplib_LowDevLib: Доповнено шаблоном "BT: ATORCH UC96". <ul><li> RDTech: Ðедублюючі команди вÑтановлено до надÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð´Ð²Ñ–Ñ‡Ñ– Ð·Ð°Ð´Ð»Ñ Ñтабільного заÑтоÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¸Ñтроєм, піÑлÑкомандну затримку вÑтановлено у 0.2 Ñ– переміщено на загал.</li></ul></li> <li> tmplib_base.ntf: Розширено можливіÑÑ‚ÑŽ Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ Ð´Ð»Ñ Ð²Ð¸ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð·Ñ– ÑповіщеннÑ.</li></ul></li> <li> LibsDB.vcaBase: <ul><li> <span id="wlb_MainExt" title="#wlb_MainExt">wlb_Main</span>: Бібліотеку доповнено віджетом "Погода (weather)" із документуваннÑм. <ul><li> storeHouse: Розширено ÑтвореннÑм форми Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚Ñƒ у головному кадрі піÑÐ»Ñ Ð¿Ñ€Ð¸Ñ…Ð¾Ð²Ð°Ð½Ð½Ñ Ð¾Ñновної таблиці та решти. <ul><li> FIX: Попереджено <EVAL> Ð´Ð»Ñ <NULL> клітинок у звіті елементу.</li> <li> FIX: Гарантовано Ð·Ð°Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð´Ñ–Ð°Ð»Ð¾Ð³Ñ–Ð² звітів генерацією подій Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñ–Ð· процедури.</li> <li> FIX: Виправлено раннє вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð²ÐµÑ€Ñ‚Ð¸ÐºÐ°Ð»ÑŒÐ½Ð¾Ñ— позиції таблиці даних при зміні кориÑтувача.</li> <li> ТекÑтові Ð¿Ð¾Ð»Ñ Ð·Ð²Ñ–Ñ‚Ñƒ одного елементу очищено від лівого відÑтупу Ð´Ð»Ñ Ñ‚ÐµÐºÑтів.</li> <li> Звіти доповнено опрацюваннÑм поÑилань, Ñк зовнішні виклики.</li> <li> Розширено опрацюваннÑм ІД (індекÑу) таким чином, Ñк решта Ñтандартних полів "NAME", "DSCR" — Ð´Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŽ видиміÑÑ‚ÑŽ полÑ.</li> <li> Додано ÑÐºÐ¸Ð´Ð°Ð½Ð½Ñ Ñ„Ñ–Ð»ÑŒÑ‚Ñ€Ñ–Ð² при перезапуÑку Ñторінки або зміні кориÑтувача.</li> <li> Звіт із повної таблиці доповнено обмеженнÑм текÑту клітинок у 30 Ñимволів, тобто Ñк у таблиці редагуваннÑ.</li> <li> Звіт із елементу доповнено прихованнÑм порожніх полів.</li> <li> Доповнено оновленнÑм контекÑту Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚Ñ–Ð² форми при зміні Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ†ÑŒÐ¾Ð³Ð¾ елементу.</li></ul></li> <li> grpGraph: ПерепиÑано процедуру Ð´Ð»Ñ ÑƒÐ½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ— роботи із різними елементами, тож Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð°Ð½Ð½Ñ Ñƒ вÑÑ–Ñ… похідних кадрах на кшталт "grpGraph10".</li> <li> grpGraph10: Переключено на ÑÐ¿Ð°Ð´ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ñ–Ð´ grpGraph.</li> <li> FIX:alarmsSt: Виправлено доÑтуп до змінної alarms_focus піÑÐ»Ñ Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¸Ð¼ÑƒÑовоÑÑ‚Ñ– атрибуту "focus", що замінено на this.alarms.attr("focus").</li> <li> tmplSO: Дещо очищено щодо елементів Ñторінки РезультуючіГрафіки.</li> <li> ResultGraph: Ðтрибут "grpName" вÑтановлено у тип "Ð Ñдок (переклад)".</li> <li> ElViewGraph: Доповнено читаннÑм типових-Ñтатичних влаÑтивоÑтей Ð´Ð»Ñ Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð´Ð¾ них.</li></ul></li> <li> wlb_doc: <ul><li> FIX:docRepInstVals: Відновлено переклад значень заголовку та одиниці виміру Ñ– назви параметру.</li> <li> FIX:docUsersSet: Доповнено також кодуваннÑм полів значень, оÑкільки зараз тут можуть бути не лише цифри.</li></ul></li></ul></li> <li> LibsDB.vcaTest: Завершено із перейменуваннÑм CPULoad у CPU Ñ– MemInfo у MEM.</li></ul> <p><b><u>API</u></b><br /> <i>!!!!:Зміни</i>: </p> <ul><li> СиÑтема: ico() доповнено аргументом Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ ÑˆÐ»Ñху файлу. <ul><li> strLabEnum() доповнено аргументом "onlyDec" Ð´Ð»Ñ Ð½ÑƒÐ¼ÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð¾Ð´Ð½Ñ–Ñ”ÑŽ цифрою.</li> <li> Видалено sysClk(), clkCalc(), shrtCnt(), HZ().</li> <li> TError: Видалено DB_TrRemoved.</li> <li> TMess: labStorRemGenStor() перейменовано у labStorRem(), labStor() очищено від аргументів.</li> <li> TElem: fldList() вÑтановлено у поÑтійну.</li> <li> TFld: TFld(): Тип аргументів vals, nSel змінено із "const char *" у "const string&". Видалено selValS(), selValI(), selValR(), selValB(), selNm(), selVl2Nm(), selNm2VlS(), selNm2VlI(), selNm2VlR(), selNm2VlB().</li> <li> TCfg,TVal: Видалено getSEL() Ñ– setSEL().</li> <li> TCntrNode: isModify() вÑтановлено у поÑтійну, save() доповнено аргументом макÑимального Ñ€Ñ–Ð²Ð½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¸.</li></ul></li> <li> Збір Даних: TController::id() вÑтановлено у поÑтійну.</li> <li> ТранÑпорти: <ul><li> TTransportIn,TTransportOut: ПеренеÑено до захищеної Ñекції logLen(), setLogLen(), pushLogMess(). Видалено logItLim(), setLogItLim().</li> <li> TTransportOut: conPrm() Ñ– setConPrm() поєднано у conPrm(), також Ð´Ð»Ñ Ð½Ð¸Ñ… у КориÑтувацькомуAPI. clearConPrm() розширено аргументом Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ–Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ‚Ð¾Ñ€Ñƒ або групи очищувальних параметрів.</li> <li> TTransportIn::associateTrO(): розширено підтримкою різних Ñтадій ATrStg_Create, ATrStg_Proc.</li></ul></li></ul> <p><i>ДоповненнÑ</i>: </p> <ul><li> СиÑтема: Ðове Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ DB_GEN "<gen>". <ul><li> Додано sysClk(), setSysClk() Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ‡Ð°Ñтоти ЦП із DAQ.System.</li> <li> Функцію sysTm() доповнено аргументами виÑÐ²Ð»ÐµÐ½Ð½Ñ Ñтрибків чаÑу піÑÐ»Ñ Ð·Ð°ÑинаннÑ.</li> <li> TMess: Ðова Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ labStorFromCode() імен Ñпецифічних Ñховищ.</li> <li> TElem: Доповнено функцією contN() Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð»Ñ–Ñ‡Ð¸Ð»ÑŒÐ½Ð¸ÐºÑƒ підключених контейнерів.</li></ul></li> <li> Збір Даних: TVal: Доповнено функцією setTime() Ñ– новим прапорцем AttrFlg::NoSave Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¼Ð¾Ð´Ð¸Ñ„Ñ–ÐºÐ¾Ð²Ð°Ð½Ð¸Ð¼ при зміні атрибуту. <ul><li> TController: Доповнено tbl() Ð´Ð»Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†ÑŒ типів параметрів.</li></ul></li> <li> Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐšÐ¾Ñ€Ð¸Ñтувача: КориÑтувацьке API доповнено SYS.UI.mimeGet() Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ‚Ð¸Ð¿Ñƒ MIME із назви файлу.</li> <li> ТранÑпорти: Ðове Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ STR_A_PRM "prms", STR_A_PRM_CFGP "CFG:". <ul><li> TTransportS: Ðові функції prm(), cntrCmdPrm() загального Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ñ–Ð² транÑпортів.</li> <li> TTransportIn: Доповнено функцією prm(), conPrm(), clearConPrm(). Доповнено функцією КориÑтувацькогоAPI conPrm() Ñ– setConPrm() (Ð´Ð»Ñ ÑуміÑноÑÑ‚Ñ–) Ñ– відповідно до таких у TTransportOut.</li></ul></li></ul> <p><b><u>СиÑтема</u></b><br /> </p> <ul><li> СкладаннÑ: <ul><li> configure.ac: ПіднÑÑ‚Ñ‚Ñ Ð²ÐµÑ€ÑÑ–Ñ— бібліотеки Ñдра до 3:14:0 Ñ– верÑÑ–Ñ— програми до 0.9.7. ПіднÑÑ‚Ñ‚Ñ Ð²ÐµÑ€ÑÑ–Ñ— модулів підÑиÑтеми "Збір Даних" до 15, "ТранÑпорти" до 20.</li> <li> Доповнено ÑкладаннÑм Ð´Ð»Ñ Debian 12 Ñ– Ubuntu 24.04 LTS.</li></ul></li> <li> FIX:DB,Transports,DAQ.BFN,UI.VCAEngine: Ðдаптовано до перевірки вдалого результату TBDS::dataDel() Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð·Ð°Ð²Ð¸Ñань на Ñховищах лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ–Ð· виправленнÑм функції TTable::fieldSQLDel() щодо коректної перевірки уÑпішноÑÑ‚Ñ– функції.</li> <li> .,DAQ.{DAQGate,DCON,DiamondBoards,ICP_DAS,LogicLev,ModBus,OPC_UA,Siemens,SoundCard,System},Protocol.{ModBus,OPC_UA},UI.VCAEngine: Значно Ñпрощено у підтримці типів обраннÑ, вÑтановивши опціональним Ñ– з підтримкою динамічного перекладу. Дозволено також Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð»Ð¸ÑˆÐµ переліку значень.</li> <li> .,Archive.DBArch,DAQ.{BFN,JavaLikeCalc,ModBus,OPC_UA},Protocol.UserProtocol,UI.{VCAEngine,Vision,WebUser}: Загальне Ñховище перейменовано із "*.*" у "<gen>": <ul><li> із отриманнÑм назв Ñпецифічних Ñховищ "Загальне Сховище" Ñ– "Конфігураційний Файл" вÑюди з нової функції TMess::labStorFromCode();</li> <li> доповнено визначеннÑм DB_GEN "<gen>", Ñке завжди викориÑтовуєтьÑÑ Ð·Ð°Ð¼Ñ–ÑÑ‚ÑŒ "*.*";</li> <li> уÑÑ– загальні Ð¿Ð¾Ð»Ñ Ð½Ð° кшталт "БД Ðрхіватору" перейменовано у "Сховище";</li> <li> TMess::labStorRemGenStor() перейменовано у TMess::labStorRem() Ñ– доповнено інформацією про вÑÑ– Ñховища об'єкту.</li></ul></li> <li> .,DAQ.{BlockCalc,Comedi,DiamondBoards,FT3,Fastwel,ICP_DAS,SNMP},Protocol.{ModBus,UserProtocol},UI.{VCAEngine,Vision,WebCfg,WebCfgD,WebUser}: std::string::substr() замінено на std::string::find() у міÑцÑÑ… зі Ñтатичним отриманнÑм даних Ð´Ð»Ñ Ð¿Ð¾Ñ€Ñ–Ð²Ð½ÑннÑ, що прозоріше, безпечніше Ñ– переважно швидше Ð´Ð»Ñ ÐºÐ¾Ñ€Ð¾Ñ‚ÐºÐ¸Ñ… Ñ€Ñдків.</li> <li> .,UI.{VCAEngine,Vision}: Покращено ÑÐ¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½ÑŒ при збережені.</li> <li> TCntrNode::cntrCmd() у обробці первинних команд Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐšÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð¾ Ñ—Ñ… глобальним журналюваннÑм.</li> <li> FIX:TCfg::setS() у варіанті із RqFlg доповнено блокуваннÑм критичної Ñекції при доÑтупі до контейнеру TVariant Ñ– доповнено ÑповіщеннÑм, лише на Ñтадії даних та без поверненнÑ.</li></ul> <p><b><u>Збір Даних</u></b><br /> </p> <ul><li> .,*: Переведено у джерелах Збору Даних на фікÑовані назви таблиць різних типів параметрів Ñ– адаптовано до <span id="DAQPrmTypes" title="#DAQPrmTypes">уніфікованої концепції типів параметрів</span>, тобто конфігураційні Ð¿Ð¾Ð»Ñ Ð½Ð°Ñ€Ð°Ð·Ñ– приховуютьÑÑ ÐºÐ¾Ð»Ð¸ вони Ñтандартні Ñ– Ñ—Ñ… заплановано до цілковитого Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñƒ v1.0.</li> <li> FIX: TValFunc::get{S,I,R,B}() доповнено кодом Ð¿Ñ€Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð¾Ð±'єкту TVarObj із перетвореннÑм EVAL/null.</li> <li> <span id="SystemExt" title="#SystemExt">System</span>: Цілковито переглÑнуто Ñ– розширено щодо: <ul><li> Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð¦ÐŸ (CPU) DA інформацією ЦП Ñ– чаÑтотою із різних джерел, включаючи CPUFreq із контролем;</li> <li> Ð´Ð¾Ð´Ð°Ð½Ð½Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ DA Ð–Ð¸Ð²Ð»ÐµÐ½Ð½Ñ (Power) у ÑкоÑÑ‚Ñ– інтерфейÑу до ПотужніÑÑ‚ÑŒ Linux Ñ– DA ÐŸÑ€Ð¾Ñ†ÐµÑ (Process) у ÑкоÑÑ‚Ñ– інтерфейÑу до Linux процеÑів;</li> <li> СенÑори>DA доповнено підтримкою прÑмо доÑтупних ÑенÑорів "/sys/devices/virtual/thermal/*/temp" Ñ– /sys/devices/virtual/hwmon/*/temp*;</li> <li> ÑƒÐ½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð²Ð¸ÐºÐ»Ð¸ÐºÑ–Ð² DA інтерфейÑу DA::init(), DA::deInit(), DA::makeActiveDA() із переведеннÑм більшоÑÑ‚Ñ– DA модулів на виклик уніфікованого коду Ñ– реалізацію Ð´Ð»Ñ Ð½Ð¸Ñ… лише уніфікованої функції dList();</li> <li> інтерфейÑний ÐºÐ»Ð°Ñ DA доповнено новими ознаками: isDynamic(), hasSubTypes();</li> <li> Ð´Ð¾Ð´Ð°Ð½Ð½Ñ Ñ€ÐµÐ¶Ð¸Ð¼Ñƒ загального Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… із СервіÑного Циклу Ñ– Ð—Ð°Ð²Ð´Ð°Ð½Ð½Ñ DA Контролеру, новою функцією updGen();</li> <li> ІД автоматично генерованих параметрів DA змінено у: CPU - "CPU[{N}]", fs - "FS{MP}", hddstat - "DiskSt_{dev}", MEM - "MEM", netstat - "Net_{IF}", sensors - "Sensors", hddsmart - "DiskSMART", ups - "UPS", uptime - "UpTm_{U}";</li> <li> переключено у м'Ñкий режим автоматичного ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ñ–Ð², тобто ви можете Ñтворити джерельні параметри автоматично, примуÑово зберегти необхідні, а потім перемкнути у ручний режим, чим запобігти продовженню ÑкануваннÑ.</li></ul></li> <li> FIX:DAQGate: Ð§Ð°Ñ Ð·Ð°Ð¿Ð¸Ñ‚Ñƒ архіву збільшуєтьÑÑ Ð½Ð° 1 (одну) мікроÑекунду Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð·Ð°Ð¿Ð¸Ñ‚Ñƒ зайвих значень Ñ– Ñ—Ñ… прÑмому перезапиÑу у архівах. <ul><li> Покращено роботу із віддаленим хоÑтом без Ñинхронізації чаÑу: <ul><li> Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¼Ð¾Ð¶ÑƒÑ‚ÑŒ бути у майбутньому до години;</li> <li> мітку чаÑу віддаленого хоÑту вÑюди викориÑтано за приÑутноÑÑ‚Ñ– архіву, навіть у тегу "<vl>";</li> <li> доповнено виÑвленнÑм чаÑу віддаленого хоÑту Ð´Ð»Ñ Ð¹Ð¾Ð³Ð¾ викориÑÑ‚Ð°Ð½Ð½Ñ Ñƒ ÑкоÑÑ‚Ñ– мітки чаÑу змінених значень.</li></ul></li></ul></li> <li> FIX:LogicLev: Значним чином покращено режим Ð’Ñ–Ð´Ð´Ð·ÐµÑ€ÐºÐ°Ð»ÐµÐ½Ð½Ñ ÐŸÐ°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ñƒ щодо: <ul><li> динамічного ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ– Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñ–Ð²;</li> <li> Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð·Ð° помилкового ÑƒÐ²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð½Ð° відÑутньому параметрі джерела із видаленнÑм уÑÑ–Ñ… атрибутів;</li> <li> Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½ÐµÐ½Ðµ на нередаговане;</li> <li> Ð²Ð¸Ð¼Ñ–Ñ€ÑŽÐ²Ð°Ð½Ð½Ñ Ñ‡Ð°Ñу опрацюваннÑ.</li></ul></li> <li> OPC_UA: Доповнено підтримкою аÑинхронного запиÑу на кшталт DAQ.ModBus.</li> <li> AMRDevs: Ðдаптовано у чаÑтині Kontar до нової концепції аÑоційованих вихідних транÑпортів до вхідних.</li></ul> <p><b><u>Ðрхіви-ІÑторіÑ</u></b><br /> </p> <ul><li> FIX: Ðрхіватори повідомлень попереджено від ÑÐºÐ¸Ð´Ð°Ð½Ð½Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ñ— буферу оÑтаннього прочитаного Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¾Ñкільки ми отримаємо дубльовані Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ–Ð· кожним оновленнÑм підÑиÑтеми, що Ñ” чаÑтим за Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½ÑŒ архівів значень, Ñ– оÑобливо за відÑутноÑÑ‚Ñ– Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÑурÑу.</li> <li> FIX: Запит ІнтерфейÑу ÐšÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ "TValue:get:/serv/attr" виправлено у поширені на еквівалентні архіватори.</li></ul> <p><b><u>ТранÑпорти</u></b><br /> </p> <ul><li> Sockets,SSL: Доповнено підтримкою групи портів у вхідних транÑпортах, тобто Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ першого вільного. Вхідні транÑпорти доповнено конфігураційним полем влаÑтивоÑтей ініціативного Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ– аÑоційованих вихідних транÑпортів.</li> <li> <span id="SSLExt" title="#SSLExt">SSL</span>: <ul><li> Розширено підтримкою ініціативних підключень: <ul><li> SSL код Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ TSocketOut::{start,stop}() перенеÑено до Ñтатичних функцій TSocketOut::{connectSSL,disconnectSSL}() Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð°Ð½Ð½Ñ Ñƒ вхідному транÑпорті;</li> <li> SSL код Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ TSocketIn::Task() перенеÑено до TSocketIn::{start,stop}();</li> <li> видалено підтримку Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñƒ режимі SSL щодо алгоритмів Ñ– верÑій через Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ†ÑŒÐ¾Ð³Ð¾ у бібліотеці OpenSSL Ñ– воно переважно не викориÑтовувалоÑÑ, тож викориÑтано лише TLS_{client,server}_method() Ð´Ð»Ñ Ð½Ð¾Ð²Ð¸Ñ… бібліотек (> 1.1) Ñ– SSLv23_{client,server}_method() Ð´Ð»Ñ Ñтарих.</li></ul></li> <li> FIX: TSocketOut::messIO() попереджено щодо завиÑань при неÑкінченому читанні BIO_read() піÑÐ»Ñ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñокету, шлÑхом перевірки errno на EAGAIN.</li> <li> SSL-контекÑÑ‚ перенеÑено до загального об'єкту Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð¾ÐºÑ€ÐµÐ¼Ð¾ Ð´Ð»Ñ Ð²Ñ…Ñ–Ð´Ð½Ð¾Ñ— (ctxIn) Ñ– вихідної (ctxOut) чаÑтин Ñ– додана Ñ–Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ñ–Ñ Ð¿Ð¾ шифрах длÑ: <ul><li> загального об'єкту Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð·Ð° SSL_CTX_get_ciphers();</li> <li> ÑтатуÑу вхідного-Ñерверного транÑпорту за SSL_get_shared_ciphers(), SSL_get_client_ciphers() Ñ– SSL_get1_supported_ciphers() або SSL_get_ciphers();</li> <li> ÑтатуÑу вихідного-клієнтÑького за SSL_get1_supported_ciphers() або SSL_get_ciphers().</li></ul></li> <li> Вхідний Ñ– вихідний транÑпорти доповнено контролем MSS та вхідні транÑпорти доповнено контролем ÑиÑтемного вхідного буферу, обидва взÑто із Transport.Sockets.</li></ul></li></ul> <p><b><u>ТранÑпортні Протоколи</u></b><br /> </p> <ul><li> FIX:<span id="SelfSystemExt" title="#SelfSystemExt">SelfSystem</span>: Значним чином переглÑнуто Ñ– виправлено під Ñ‡Ð°Ñ Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ— зовнішніх підключень, доповнено перевіркою розміру заголовку. Виправлено подвійне Ð¿Ð°ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð¿Ð¸Ñ‚Ñƒ вихідних транÑпортів за других Ñпроб Ð¿ÐµÑ€ÐµÐ¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð°Ð±Ð¾ повторної автентифікації. </li></ul> <p><b><u>Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐšÐ¾Ñ€Ð¸Ñтувача</u></b><br /> </p> <ul><li> VCAEngine,Vision,WebVision: Доповнено підтримкою Ð²Ð±ÑƒÐ´ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… до атрибутів, позначених реÑурÑом, первинно Ð´Ð»Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñƒ джерела примітиву Медіа.</li> <li> FIX:Vision: Ðдаптовано до Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ–Ð¼ÐµÐ½Ð¾Ð²Ð°Ð½Ð¾Ð³Ð¾ переліку Ñховищ.</li> <li> FIX:VCAEngine: Виключено Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñƒ "focus" будь Ñкого вкладеного віджету до Ð’Ð’ обчиÑÐ»ÐµÐ½Ð½Ñ Ñ– доповнено обробкою виключень доÑтупу до таких Ð’Ð’ Ð´Ð»Ñ Ð²Ñ–Ð´Ñутніх вкладених віджетів. FIX: Attr::setS() вдоÑконалено Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ ÐºÑ€Ð¸Ñ‚Ð¸Ñ‡Ð½Ð¾Ñ— Ñекції.</li> <li> FIX:WebVision: Доповнено реалізацією кориÑтувацьких полів у Ñ€Ñдку ÑтатуÑу.</li></ul> <h4><span class="mw-headline" id=".D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.BD.D1.96_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="mw-headline-number">7.2.1</span> СервіÑні оновленнÑ</span></h4> <ul><li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=3007" rel="nofollow noreferrer noopener" target="_blank">п'Ñте (5) від 01.02.2025</a>.</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2997" rel="nofollow noreferrer noopener" target="_blank">четверте (4) від 13.11.2024</a>.</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2984" rel="nofollow noreferrer noopener" target="_blank">третє (3) від 12.08.2024</a>;</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2975" rel="nofollow noreferrer noopener" target="_blank">друге (2) від 26.06.2024</a>;</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2969" rel="nofollow noreferrer noopener" target="_blank">перше (1) від 02.06.2024</a>.</li></ul> <h3><span class="mw-headline" id=".5B01.01.7531.2F01.03.2023.5D_.D0.A8.D0.9E.D0.A1.D0.A2.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="mw-headline-number">7.3</span> [01.01.7531/01.03.2023] ШОСТЕ оновленнÑ</span></h3> <p>Це Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ <a href="Release_0.9.html" title="Special:MyLanguage/Documents/Release 0.9">релізу 0.9 LTS</a> виправлÑÑ” Ð±Ñ–Ð»Ñ 70 помилок та додає БÐГÐТО удоÑконалень із декількома значними-концептуальними, з Ñкими цілком можна ознайомитиÑÑ Ñƒ <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2892" rel="nofollow noreferrer noopener" target="_blank">протоколі змін оновленнÑ</a>. </p><p><b><u><a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Automation_Linux_distributive" title="Special:MyLanguage/Sub-projects/Automation Linux distributive">Linux ДиÑтрибутив Ðвтоматизації проєкту OpenSCADA</a></u></b><br /> </p> <ul><li> Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ TDE до 14.0.13 Ñ– 14.1.0 — Ð°Ð´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ ÑƒÑÑ–Ñ… латок-виправлень та лише Ð´Ð»Ñ Debian 11;</li> <li> ініціююче Ð´Ð¾Ð´Ð°Ð½Ð½Ñ ÐšÐ°Ð»ÐµÐ½Ð´Ð°Ñ€Ð½Ð¾Ñ— СиÑтеми від <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Automation_Linux_distributive#WorldCS" title="Special:MyLanguage/Sub-projects/Automation Linux distributive">Ð¡Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¡Ð²Ñ–Ñ‚Ñƒ</a> за Ñкою рік 2023 Ñ” 7531;</li> <li> Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ KDesktop, Ðпаратного Менеджеру TDE, noatun, TDESVN, basket, KGpg, KPDF, Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¼Ñ–Ð½Ñ–Ð°Ñ‚ÑŽÑ€ до відео, відтак Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ ÐºÐ¾Ð»ÐµÐºÑ†Ñ–Ñ— диÑтрибутиву новими латаними пакетами "tdelibs-trinity", "tdebase-trinity", "tdegraphics-trinity", "tdesvn-trinity" та "basket-trinity";</li> <li> деÑке вдоÑÐºÐ¾Ð½Ð°Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ KCalc, holiday_ua, korganizer;</li> <li> Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ УкраїнÑькою Ð´Ð»Ñ KDiff3 та showfoto;</li> <li> ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ð¿Ð°ÐºÐµÑ‚Ñ–Ð² із влаÑними латками Ð´Ð»Ñ Debian 11,10,9,8,7 перед адаптацією випуÑку TDE 14.1.0;</li> <li> Ð¿ÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Debian 9 бази на архівний репозиторій, піÑÐ»Ñ Ð¹Ð¾Ð³Ð¾ офіційного архівуваннÑ;</li> <li> Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð´Ð¸Ñтрибутивів Debian 11,10,9 пакетами RHVoice — Синтезатор мови із багатьма голоÑами Ð´Ð»Ñ Ð´ÐµÑÑтку мов;</li> <li> переклад <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Automation_Linux_distributive" title="Special:MyLanguage/Sub-projects/Automation Linux distributive">Ñторінки підпроєкту</a> УкраїнÑькою.</li></ul> <p><b><u>ОÑновні WWW-реÑурÑи, Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ Ð¿Ñ€Ð¾Ñ”ÐºÑ‚Ñƒ та підпроєктів</u></b><br /> </p> <ul><li> цілковито переглÑнуто та перекладено УкраїнÑькою документ "<a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Server" title="Special:MyLanguage/Sub-projects/Server">Серверна та хоÑтингова інфраÑтруктура проєкту OpenSCADA</a>";</li> <li> Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸ <a class="external text" href="http://oscada.org/" rel="nofollow noreferrer noopener" target="_blank">Сайту</a> у Web-оглÑдачах Ñтарих вбудованих приÑтроїв на кшталт Nokia N900, N9;</li> <li> Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Using/Nokia_Linux" title="Special:MyLanguage/Using/Nokia Linux">Maemo 5 (Nokia N900)</a> із перенеÑеннÑм на Ланцюг-втулок CSSU-Thumb, заÑнований на GCC 4.7.2 від Linaro; та Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñторінки проєкту;</li> <li> цілковитий переглÑд документу "API" у <a href="API.html#CntrNode" title="Special:MyLanguage/Documents/API">Ñекції "Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð£Ð¿Ñ€Ð°Ð²Ð»Ñ–Ð½Ð½Ñ Ñ‚Ð° динамічне дерево об'єктів програми"</a> та Ñекцію "СервіÑні команди-функції" перенеÑено туди Ñк підÑекцію, <a href="API.html#ServFunc" title="Special:MyLanguage/Documents/API">підÑекцію "СервіÑні команди-функції"</a> цілком перепиÑано Ñ– доповнено, та вÑе це перекладено УкраїнÑькою;</li> <li> розпочато новий підпроєкт <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Using/PinePhone" title="Special:MyLanguage/Using/PinePhone">Відкритий Телефон — PinePhone</a>;</li> <li> цілковитий переглÑд та Ð°ÐºÑ‚ÑƒÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ "<a href="How_to_Create_module.html" title="Special:MyLanguage/Documents/How to/Create module">Як здійÑнити Ð¡Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¼Ð¾Ð´ÑƒÐ»ÑŽ OpenSCADA</a>";</li> <li> розпочато новий підпроєкт <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Graphical_PLC_Programming" title="Special:MyLanguage/Sub-projects/Graphical PLC Programming">Графічне Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ ÐŸÐ›Ðš в OpenSCADA</a>;</li> <li> Ñкрипти ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ñ”ÐºÑ‚Ñƒ <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Automatic_Builder_of_OpenSCADA" title="Special:MyLanguage/Sub-projects/Automatic Builder of OpenSCADA">Ðвтоматичний Складальник OpenSCADA</a> цілком переглÑнуто Ñ– уніфіковано із оновленнÑм документації підпроєкту та Ñ—Ñ— перекладом УкраїнÑькою.</li></ul> <p><b><u>Ðові та значно оновлені чаÑтини</u></b><br /> </p> <ul><li> Ядро OpenSCADA: 3:12:0 => <b>3:13:0</b></li></ul> <dl><dd> (<a href="#VCAProd">ÐžÐ¿Ñ‚Ð¸Ð¼Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð¿Ñ€Ð¾Ð´ÑƒÐºÑ‚Ð¸Ð²Ð½Ð¾ÑÑ‚Ñ– інтерфейÑу СВУ</a>, <a href="#AssocOutTrToIn">Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð°Ñоційованих вихідних транÑпортів із вхідним ТРзагального Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ транÑпорту</a>, <a href="#MessTrFix">Переклад Повідомлень — Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ†ÐµÐ¿Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ð¸Ñ… змін попереднього оновленнÑ</a>)</dd></dl> <ul><li> ПідÑиÑтеми "ТранÑпорти" OpenSCADA: 18 => <b>19</b></li></ul> <dl><dd> (<a href="#AssocOutTrToIn">Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð°Ñоційованих вихідних транÑпортів із вхідним ТРзагального Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ транÑпорту</a>)</dd></dl> <ul><li> DAQ.DAQGate: 2.9 => <b>2.12</b></li> <li> DAQ.JavaLikeCalc: 5.4 => <b>5.6</b></li> <li> DAQ.LogicLev: 2.6 => <b>2.7</b></li> <li> {DAQ,Protocol}.ModBus: 3.4 => <b>3.7</b>, 2.9 => <b>2.10</b></li> <li> Archive.FSArch: 3.7 => <b>3.8</b></li> <li> Transport.Sockets: 4.3 => <b>4.5</b></li></ul> <dl><dd> (<a href="#AssocOutTrToIn">Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð°Ñоційованих вихідних транÑпортів із вхідним ТРзагального Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ транÑпорту</a>)</dd></dl> <ul><li> Protocol.SelfSystem: 1.9 => <b>1.10</b></li> <li> Protocol.UserProtocol: 1.5 => <b>1.6</b></li> <li> BD.PostgreSQL: 3.0 => <b>3.1</b></li> <li> UI.QTStarter: 5.12 => <b>5.14</b></li> <li> UI.QTCfg: 5.9 => <b>5.13</b></li> <li> UI.VCAEngine: 7.8 => <b>7.11</b></li></ul> <dl><dd> (<a href="#VCAProd">ÐžÐ¿Ñ‚Ð¸Ð¼Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð¿Ñ€Ð¾Ð´ÑƒÐºÑ‚Ð¸Ð²Ð½Ð¾ÑÑ‚Ñ– інтерфейÑу СВУ</a>)</dd></dl> <ul><li> UI.Vision: 8.0 => <b>8.6</b></li> <li> UI.WebCfgD: 2.3 => <b>2.5</b></li> <li> UI.WebVision: 6.6 => <b>6.8</b></li> <li> LibsDB.OscadaLibs.LowDevLib: 1.4 => <b>1.5</b> <ul><li> mbBase: 1.0 => <b>1.2</b></li></ul></li> <li> LibsDB.OscadaLibs.base.initConAssociateTrs: 1.1 => <b>1.2</b></li> <li> LibsDB.vcaBase.Main <ul><li> RootPgSo: 2.5 => <b>2.6</b></li> <li> storeHouse: 1.1 => <b>1.3</b></li> <li> {grpGraph,grpGraph10}: 1.4 => <b>1.5</b></li> <li> grpCadr: 1.2 => <b>1.3</b></li> <li> ElCadr: 1.2 => <b>1.4</b></li> <li> ElViewGraph: 1.3 => <b>1.4</b></li> <li> ResultGraphEl: 1.1 => <b>1.2</b></li> <li> anShow: 1.2 => <b>1.3</b></li> <li> anShow1: 1.3 => <b>1.4</b></li> <li> TextLab: 1.1 => <b>1.2</b></li> <li> ImgLab: 1.1 => <b>1.2</b></li></ul></li> <li> LibsDB.vcaBase.mnEls <ul><li> El_Kran_Sh: 1.1 => <b>1.2</b></li> <li> Compressor: 1.1 => <b>1.2</b></li> <li> El_Kran_polozh: 1.0 => <b>1.1</b></li></ul></li> <li> LibsDB.vcaBase.doc <ul><li> docAlarmsRep: 1.6 => <b>1.7</b></li> <li> docRepDay: 3.1 => <b>3.2</b></li> <li> docRepMonth: 3.1 => <b>3.2</b></li> <li> docRepYear: 1.2 => <b>1.3</b></li> <li> docUsersSet: 1.7 => <b>1.8</b></li> <li> docDin: 1.2 => <b>1.3</b></li></ul></li></ul> <p><b><u><span id="VCAProd" title="#VCAProd">КОÐЦЕПТУÐЛЬÐЕ > ÐžÐ¿Ñ‚Ð¸Ð¼Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð¿Ñ€Ð¾Ð´ÑƒÐºÑ‚Ð¸Ð²Ð½Ð¾ÑÑ‚Ñ– інтерфейÑу СВУ</span> </u></b><br /> </p> <ul><li> FXI:UI.VCAEngine: <ul><li> Ðдаптовано до Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ñƒ дуже великих періодичноÑÑ‚ÑÑ… та цілковитого Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¿ÐµÑ€Ñ–Ð¾Ð´Ð¸Ñ‡Ð½Ð¾Ð³Ð¾ опрацюваннÑ: <ul><li> виправлено Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿ÐµÑ€Ñ–Ð¾Ð´Ñƒ із влаÑника віджету ÑеанÑу;</li> <li> доповнено вÑтановленнÑм періоду на Ñтороні ÑеанÑу, функцією КориÑтувацького API calcPer() віджету ÑеанÑу, розширено визначеннÑм Ñпеціальних значень періоду: PerVal_Sess(0), PerVal_Parent(-1), PerVal_UserMin(PerVal_Dis(-2)), PerVal_SessDef(-3);</li> <li> "Період обчиÑленнÑ" перейменовано у "Періодичне опрацюваннÑ" та його визначено Ñк загальний параметр, тобто перенеÑено до вкладки загальної конфігурації та додано до віджетів Ñторінок проєкту та дочірніх віджетів бібліотечного віджету;</li> <li> об'єкт ÑеанÑу доповнено функцією КориÑтувацького API period(), що повертає період ÑеанÑу;</li> <li> період ÑеанÑу очищено у ÑтатуÑÑ– віджету ÑеанÑу.</li></ul></li> <li> Зміна атрибуту "alarmSt" доповнена новою Ñупровідною подією "ws_alarmChange".</li></ul></li> <li> UI.Vision: Ðдаптовано до Ð¿ÐµÑ€ÐµÐ¹Ð¼ÐµÐ½ÑƒÐ²Ð°Ð½Ð½Ñ "Період обчиÑленнÑ" у "Періодичне опрацюваннÑ" та перенеÑÐµÐ½Ð½Ñ Ð´Ð¾ вкладки головної конфігурації. Попереднє поле у вкладці "ОпрацюваннÑ" вÑтановлено приховуваним за відÑутноÑÑ‚Ñ– у моделі СВУ.</li> <li> LibsDB.vcaBase,ModelsDB.{AGLKS.vca,Boiler.St}: Проєкти СВУ вÑтановлено у період обчиÑÐ»ÐµÐ½Ð½Ñ 250 мÑ. ОбчиÑÐ»ÐµÐ½Ð½Ñ Ð³Ñ€ÑƒÐ¿Ð¸ контролю СВУ проєктів вÑтановлено у 1000 мÑ.</li> <li> LibsDB.vcaBase: <ul><li> wlb_Main.RootPgSo: Ðдаптовано до Ñ„ÑƒÐ½ÐºÑ†Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ñƒ дуже великій періодичноÑÑ‚Ñ– та Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¿ÐµÑ€Ñ–Ð¾Ð´Ð¸Ñ‡Ð½Ð¾Ð³Ð¾ Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ð·Ð°Ð³Ð°Ð»Ñ–: <ul><li> доповнено продовженнÑм негайних циклів до Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñторінки контейнеру при запуÑку та піÑÐ»Ñ Ð½Ð°Ð²Ñ–Ð³Ð°Ñ†Ñ–Ñ—, викориÑтовуючи нову подію "usr_calc";</li> <li> доповнено перемиканнÑм на швидкий цикл за Ð¼Ð¸Ð³Ð¾Ñ‚Ñ–Ð½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ, викориÑтовуючи нову функцію calcPer();</li> <li> переключено на період Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ 1000 мÑ.</li></ul></li> <li> wlb_Main.ElCadr: Ðдаптовано до Ñ„ÑƒÐ½ÐºÑ†Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ñƒ дуже великій періодичноÑÑ‚Ñ– та Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¿ÐµÑ€Ñ–Ð¾Ð´Ð¸Ñ‡Ð½Ð¾Ð³Ð¾ Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ð·Ð°Ð³Ð°Ð»Ñ–: <ul><li> доповнено продовженнÑм негайних циклів викориÑтовуючи нову подію "usr_calc";</li> <li> доповнено перемиканнÑм на швидкий цикл за Ð¼Ð¸Ð³Ð¾Ñ‚Ñ–Ð½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ, викориÑтовуючи нову функцію calcPer();</li> <li> переключено на період Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ -1 (предок).</li></ul></li> <li> wlb_Main.{grpGraph,grpGraph10}: Ðдаптовано до Ñ„ÑƒÐ½ÐºÑ†Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ñƒ дуже великій періодичноÑÑ‚Ñ– та Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¿ÐµÑ€Ñ–Ð¾Ð´Ð¸Ñ‡Ð½Ð¾Ð³Ð¾ Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ð·Ð°Ð³Ð°Ð»Ñ–: <ul><li> доповнено продовженнÑм негайних циклів викориÑтовуючи нову подію "usr_calc";</li> <li> переключено на період Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ -1 (предок);</li> <li> період ÑÑ‚ÐµÐ¶ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¸Ð¼Ñ–Ñ‚Ð¸Ð²Ñƒ Діаграма також прив'Ñзано до періоду Віджету.</li></ul></li> <li> wlb_Main.ElViewCadr: Ðдаптовано до Ñ„ÑƒÐ½ÐºÑ†Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ñƒ дуже великій періодичноÑÑ‚Ñ– та Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¿ÐµÑ€Ñ–Ð¾Ð´Ð¸Ñ‡Ð½Ð¾Ð³Ð¾ Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ð·Ð°Ð³Ð°Ð»Ñ–: <ul><li> доповнено перемиканнÑм на швидкий цикл за Ð¼Ð¸Ð³Ð¾Ñ‚Ñ–Ð½Ð½Ñ ÐºÑƒÑ€Ñору, викориÑтовуючи нову функцію calcPer();</li> <li> переключено на період Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ -1 (предок);</li> <li> tracing period of the Diagram primitive linked also to the Widget period.</li></ul></li> <li> wlb_Main.storeHouse: Ðдаптовано до Ñ„ÑƒÐ½ÐºÑ†Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ñƒ дуже великій періодичноÑÑ‚Ñ– та Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¿ÐµÑ€Ñ–Ð¾Ð´Ð¸Ñ‡Ð½Ð¾Ð³Ð¾ Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ð·Ð°Ð³Ð°Ð»Ñ–: <ul><li> переключено на період Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ -2 (disabled);</li> <li> доповнено продовженнÑм негайних циклів викориÑтовуючи нову подію "usr_calc".</li></ul></li> <li> wlb_Main.ElViewGraph: Ðдаптовано до Ñ„ÑƒÐ½ÐºÑ†Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ñƒ дуже великій періодичноÑÑ‚Ñ–: <ul><li> доповнено продовженнÑм негайних циклів під Ñ‡Ð°Ñ Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñви значень, викориÑтовуючи нову подію "usr_calc";</li> <li> доповнено перемиканнÑм на швидкий цикл за Ð¼Ð¸Ð³Ð¾Ñ‚Ñ–Ð½Ð½Ñ ÐºÑƒÑ€Ñору, викориÑтовуючи нову функцію calcPer();</li> <li> обчиÑÐ»ÐµÐ½Ð½Ñ Ð²Ñтановлено у 2000 Ð¼Ñ Ñ‡ÐµÑ€ÐµÐ· необхідніÑÑ‚ÑŒ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ†ÑŒÐ¾Ð³Ð¾ за зміни курÑору тренду.</li></ul></li> <li> wlb_Main.grph_panel: Доповнено збереженнÑм періоду ÑÑ‚ÐµÐ¶ÐµÐ½Ð½Ñ Ð¿Ð¾Ð²'Ñзаного примітиву Діаграма. Переключено на період Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ -1 (предок).</li> <li> wlb_Main.{grpCadr,ResultGraphEl}: Ðдаптовано до Ñ„ÑƒÐ½ÐºÑ†Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ñƒ дуже великій періодичноÑÑ‚Ñ– та Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¿ÐµÑ€Ñ–Ð¾Ð´Ð¸Ñ‡Ð½Ð¾Ð³Ð¾ Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ð·Ð°Ð³Ð°Ð»Ñ–: <ul><li> переключено на період Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ -1 (предок);</li> <li> період ÑÑ‚ÐµÐ¶ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¸Ð¼Ñ–Ñ‚Ð¸Ð²Ñƒ Діаграма також прив'Ñзано до періоду Віджету.</li></ul></li> <li> wlb_Main.{TextLab,ImgLab},wlb_mnEls.{El_Kran_polozh,El_Kran_Sh,Compressor}: Ðдаптовано до Ñ„ÑƒÐ½ÐºÑ†Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ñƒ дуже великій періодичноÑÑ‚Ñ– та Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¿ÐµÑ€Ñ–Ð¾Ð´Ð¸Ñ‡Ð½Ð¾Ð³Ð¾ Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ð·Ð°Ð³Ð°Ð»Ñ–: <ul><li> доповнено перемиканнÑм на швидкий цикл за Ð¼Ð¸Ð³Ð¾Ñ‚Ñ–Ð½Ð½Ñ ÐºÑƒÑ€Ñору, викориÑтовуючи нову функцію calcPer();</li> <li> переключено на період Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ -1 (предок).</li></ul></li> <li> wlb_Main.{anShow,anShow1}: переключено на період Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ -1 (предок) та доповнено Ð¿ÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð½Ð° швидкий цикл (500 мÑ) за фокуÑом та миготіннÑм порушеннÑ.</li> <li> wlb_doc.{docRepDay,docRepMonth}, wlb_Main.{graphSelPrm,doc_panel,accept,treeSelect,cntrPaspExt}, wlb_Main.{ViewCadr,ResultGraph}: Переключено на період Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ -1 (предок).</li> <li> wlb_doc.{docDin,docAlarmsRep}: Переключено на період Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ -2 (вимкнено).</li> <li> wlb_doc.docRepMonth: Виключено Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¸ зупинці.</li> <li> wlb_doc.docRepYear: Доповнено одним негайним циклом піÑÐ»Ñ f_start, викориÑтовуючи нову подію "usr_calc". Вимкнено періодичне опрацюваннÑ.</li> <li> wlb_Main.userManager: Вимкнено періодичне опрацюваннÑ.</li></ul></li></ul> <p><b><u><span id="AssocOutTrToIn" title="#AssocOutTrToIn">КОÐЦЕПТУÐЛЬÐЕ > Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð°Ñоційованих вихідних транÑпортів із вхідним ТРзагального Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ транÑпорту</span> </u></b><br /> </p> <ul><li> FIX: Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð°Ñоційованих вихідних транÑпортів вхідного транÑпорту Sockets щодо: <ul><li> Transport: <ul><li> Ð¿ÐµÑ€ÐµÐ¹Ð¼ÐµÐ½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— TTransportIn::assTrO() у TTransportIn::associateTrO() та Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ ÑтвореннÑм нових транÑпортів на початку Ñ– подальшим видаленнÑм зупинених, та щойно Ñтворені транÑпорти доповнено читаннÑм ІД ініціювального Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ–Ð· реєÑтрацією у параметрі Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ "initConID";</li> <li> нової функції TTransportIn::associateTr() та Ñ—Ñ— варіанту КориÑтувацького API SYS.Transport["Modul"]["in_Transp"].associateTr() із Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¾Ð±'єкту вихідного транÑпорту за його ІД ПідключеннÑ;</li> <li> Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð°Ñоційованих вихідних транÑпортів із вхідного видаленнÑм за неактивноÑÑ‚Ñ– від TTransportIn::keepAliveTm();</li> <li> нової функції КориÑтувацького API SYS.Transport["Modul"]["in_Transp"].associateTrsList() Ñк коректного варіанту назви до assTrsList();</li> <li> Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¾Ð±'єкту вихідного транÑпорту функціÑми КориÑтувацького API conPrm() та setConPrm() із доÑтупу до параметрів підключеннÑ;</li> <li> зміни шаблону назви у "inA_ID_N" Ð´Ð»Ñ Ð°Ñоційованих вихідних транÑпортів до вхідного;</li> <li> FIX:Sockets: Вхідні транÑпорти виключено від зайвого Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñокетів у ініціативному режимі. Перевірка Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ… ініціативних підключень переміщено до ділÑнки загальної перевірки обмежень.</li></ul></li> <li> LibsDB.OscadaLibs: tmplib_base.initConsAssignTrs: Перейменовано у initConAssociateTrs та адаптовано до викориÑÑ‚Ð°Ð½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— conPrm("initConID") Ñ– associateTrsList().</li></ul></li> <li> Загальне Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ транÑпорту: <ul><li> Transport: <ul><li> нової функції TTransportS::outAt() та Ñ—Ñ— варіанту КориÑтувацького API SYS.Transport.outAt() із загального Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ транÑпорту з уніфікованої адреÑи;</li> <li> Ð¿ÐµÑ€ÐµÐ²ÐµÐ´ÐµÐ½Ð½Ñ TTransportS::extHost() на викориÑÑ‚Ð°Ð½Ð½Ñ TTransportS::outAt();</li></ul></li> <li> Transport,UI.{QTCfg,WebCfgD}: Поле "ТранÑпорт" таблиці зовнішніх хоÑтів розширено визначеннÑм адреÑи транÑпорту в уніфікованій-загальній формі та розширено Ñпецифічним до елементу вибором із підтримкою такої поведінки у загальних конфігураторах.</li> <li> DAQ.ModBus: Перший, кого переведено на викориÑÑ‚Ð°Ð½Ð½Ñ ÑƒÐ½Ñ–Ñ„Ñ–ÐºÐ¾Ð²Ð°Ð½Ð¾Ð³Ð¾ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ вихідного транÑпорту.</li> <li> LibsDB.OscadaLibs: tmplib_DevLib.mbBase: Переключено на викориÑÑ‚Ð°Ð½Ð½Ñ TTransportS::outAt().</li></ul></li></ul> <p><b><u><span id="MessTrFix" title="#MessTrFix">КОÐЦЕПТУÐЛЬÐЕ > Переклад Повідомлень (Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ <a href="Release_0.9.html#MessTr" title="Special:MyLanguage/Documents/Release 0.9">концептуальних змін попереднього оновленнÑ</a>) </span> </u></b><br /> </p> <ul><li> FIX:SYS: <ul><li> FIX: Попереджено розповÑюдженню ÑÑ‚Ð¾Ð²Ð¿Ñ†Ñ Ð±Ð°Ð·Ð¾Ð²Ð¾Ñ— мови таблиці перекладів "Tr" у режимі перекладу ОДИÐИЧÐИЙ та базовій мові.</li> <li> FIX: EVal Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ€Ñдка "<EVAL>" додано до неперекладуваних Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¹Ð¾Ð³Ð¾ перекладу у VCAEngine Ð´Ð»Ñ NULL значень БД.</li> <li> FIX: Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ Ñтатичних повідомлень вдоÑконалена у пропуÑку порожніх повідомлень Ð´Ð»Ñ Ð±Ñ–Ð½Ð°Ñ€Ð½Ð¸Ñ… Ñ€Ñдків лише із нульовими Ñимволами.</li> <li> TFunction::operator=() завершено адаптацію до перекладу назв Ð’Ð’.</li> <li> Ð—Ð°Ð¿Ð¸Ñ Ð´Ð¾ конфігурації у XML попереджено щодо Ð´ÑƒÐ±Ð»ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ð»Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ Ð´Ð»Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ð¹Ð½Ð¸Ñ… контекÑтів.</li></ul></li> <li> FIX:БД: <ul><li> FIX: Попереджено розповÑюдженню ÑÑ‚Ð¾Ð²Ð¿Ñ†Ñ Ð±Ð°Ð·Ð¾Ð²Ð¾Ñ— мови у режимі перекладу ОДИÐИЧÐИЙ Ð´Ð»Ñ Ð²Ð¶Ðµ перекладуваних БД, шлÑхом Ð´Ð¾Ð´Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ð¼Ñ–Ð½Ð½Ð¾Ð³Ð¾ виÑÐ²Ð»ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´ÑƒÐ²Ð°Ð½Ð¸Ñ… загалом БД та наÑвноÑÑ‚Ñ– ÑÑ‚Ð¾Ð²Ð¿Ñ†Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ.</li> <li> FIX: Виправлено помилку ÑинтакÑиÑу БД при очищені полів перекладу рівних базі.</li> <li> FIX: Виправлено Ð·Ð°Ð¿Ð¸Ñ Ð½ÐµÐ¿ÐµÑ€ÐµÐºÐ»Ð°Ð´ÑƒÐ²Ð°Ð½Ð¸Ñ… Ñ€Ñдків, очищеннÑм вÑÑ–Ñ… перекладів та запиÑу у базу.</li> <li> FIX: ÐŸÐ¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÑ€Ð¸Ð²Ð°Ð½Ð½ÑŽ ÑервіÑу БД за наÑвноÑÑ‚Ñ– помилкової БД, закриттÑм транзакції.</li> <li> FIX: Ð’ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ попереджено щодо вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð´ÑƒÐ±Ð»ÑŽÐ²Ð°Ð»ÑŒÐ½Ð¸Ñ… повідомлень до базових повідомлень; що завершує Ð½ÐµÐ¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ "<EVAL>".</li> <li> FIX: ВідÑутніÑÑ‚ÑŒ Ð¿Ñ€Ð°Ð¿Ð¾Ñ€Ñ†Ñ TFld::TransltText визначаєтьÑÑ Ñк цілковита відÑутніÑÑ‚ÑŒ перекладу цього полÑ.</li></ul></li> <li> FIX: Менеджер Перекладу: <ul><li> FIX: попереджено взагалі щодо зміни маркованої бази у читабельну форму, оÑкільки воно викориÑтовуєтьÑÑ Ñк ключ;</li> <li> ÑÐ¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ виправлень переведено на передачу Ñ—Ñ… кориÑтувачу через розширені Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñу УправліннÑ;</li> <li> прапорець "chkAndFix" поділено на "chkAndFix" Ñ– "chkAndFixMB";</li> <li> конфігураційні Ð¿Ð¾Ð»Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ TrPassN, TrChkAndFix, TrChkAndFixMB переміщено до динамічних змінних оÑкільки відÑÑƒÑ‚Ð½Ñ Ð½ÐµÐ¾Ð±Ñ…Ñ–Ð´Ð½Ñ–ÑÑ‚ÑŒ Ñ—Ñ… зберігати;</li> <li> позначку перекладу "<<<Ðезбіг джерел!!!>>>" перейменовано у "<<<КІЛЬКРВÐРІÐÐТІВ>>>".</li></ul></li> <li> FIX:DAQ::ParamTmpl: <ul><li> FIX: Виправлено щодо Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ð°Ð·Ð²Ð¸ Ð’Ð’ у небазовому режимі динамічного перекладу.</li> <li> FIX: Виправлено Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð°Ð¿Ð¾Ñ€Ñ†Ñ IO::TransltText Ð´Ð»Ñ Ñ€Ñдків.</li> <li> FIX: СервіÑний запит "list:/DAQ/{MOD}/{CNTR}/prm_{PRM}[/prm_{PRM}]/%2fserv%2fattr" виправлено у перекладі назви атрибуту.</li></ul></li> <li> FIX:ТранÑпорти,UI.{QTCfg,Vision,WebCfgD}: Функцію TTransportS::extHostList() доповнено аргументом "lang" Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´ÐµÐ½Ð¸Ð¼Ð¸ назв віддалених хоÑтів.</li> <li> FIX:Protocol.ModBus: Виправлено-адаптовано у динамічному перекладі назв Ð’Ð’.</li> <li> FIX:КориÑтувацький ІнтерфейÑ: <ul><li> FIX:VCAEngine: Виправлено динамічний переклад tr() щодо втрати перекладу піÑÐ»Ñ Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ ÐºÐµÑˆÑƒ перекладу та Ñ€Ð¾Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð·Ð°Ð¹Ð²Ð¸Ñ… повідомлень до таблиці проєкту "Trs".</li> <li> FIX:WebUser: Виправлено-адаптовано динамічного перекладу назв Ð’Ð’.</li></ul></li></ul> <p><b><u>OpenSCADA бібліотеки та проєкти</u></b><br /> </p> <ul><li> FIX:LibsDB.OscadaLibs: <ul><li> Бібліотеку tmplib_LowDevLib доповнено шаблоном "BT: RDTech UM24C, UM25C та UM34C (RDTech)".</li> <li> Бібліотеку tmplib_DevLib доповнено шаблоном "Прилади ТОВ СЛОТ (SLOT)".</li></ul></li> <li> FIX:LibsDB.vcaBase: <ul><li> wlb_Main.storeHouse: Значним чином розширено: реалізацією підтримки процедур Ð´Ð»Ñ Ð»Ð¾Ð³Ñ–Ñ‡Ð½Ð¸Ñ… Ñтовпчиків; реалізацією звітноÑÑ‚Ñ– вÑієї видимої таблиці та обраного запиÑу.</li> <li> wlb_Main.RootPgSo: Метод "СповіщеннÑ: тип 2 (МовленнÑТекÑту) (notify2)" розширено підтримкою RHVoice Ñ– доповнено вбудованим підÑвітленнÑм ÑинтакÑиÑу Ð´Ð»Ñ BASH. Метод "СповіщеннÑ: тип 1 (Гудок) (notify1)" перепиÑано щодо Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð²Ð°Ð½Ð½Ñ Ñ‚Ñ€Ð¸Ð²Ð°Ð»Ð¸Ñ… зразків у фоні, тобто із контролем зупинки Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð²Ð°Ð½Ð½Ñ Ñемплу Ñ– перезапуÑку лише у цьому випадку. Також доповнено підÑвітленнÑм ÑинтакÑиÑу.</li> <li> FIX:wlb_doc.docRepDay: Дещо вдоÑконалено та доповнено щодо: Ð³Ñ€ÑƒÐ¿ÑƒÐ²Ð°Ð½Ð½Ñ Ñтовпців у заголовку, прÑмого Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½ÑŒ Ñ€Ñдків, Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ ÐºÐ¾Ð»ÑŒÐ¾Ñ€Ñ–Ð² у таблиці за EVAL шкали.</li> <li> wlb_doc.docUsersSet: Додано конфігурацію "Категорії повідомлень (messCat)".</li></ul></li></ul> <p><b><u>API</u></b><br /> <i>!!!!:Зміни</i>: </p> <ul><li> SYS,UI.{QTCfg,WebCfgD}: Код Запитів Ð£Ð¿Ñ€Ð°Ð²Ð»Ñ–Ð½Ð½Ñ TError::Core_CntrWarning розширено передаваннÑм попереджувальних повідомлень у атрибуті "mtxt" зі збереженнÑм оÑновних даних.</li> <li> SYS: <ul><li> Функції TSYS::id(), TSYS::name() Ñ– TSYS::user() вÑтановлено поÑтійними.</li> <li> Ð’Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ SEC_XT, SEC_WR, SEC_RD перенеÑено із файлу tsecurity.h до tcntrnode.h та також там викориÑтано.</li> <li> ctrChkNode() очищено щодо аргументу "warn" через заÑтаріліÑÑ‚ÑŒ атрибуту "force".</li> <li> Запит ІнтерфейÑу Ð£Ð¿Ñ€Ð°Ð²Ð»Ñ–Ð½Ð½Ñ "chlds:/{nPath}/%2fobj" доповнено не ÑтвореннÑм порожніх тегів піктограм "ico".</li> <li> NSTR_BUF_LEN(50) виокремлено у CFG_A_LEN (100) Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð°Ð½Ð½Ñ Ñƒ ÑкоÑÑ‚Ñ– макÑимуму розміру атрибуту конфігураційної клітинки у XML.</li> <li> Ðргумент "init" видалено із setIcoDir(), setDocDir(), setLang() із перенеÑеннÑм під загальний механізм очищеннÑ.</li> <li> Ð”Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐ»Ñ–Ñ‡ÐµÐ½Ð½Ñ MdfSYSFlds полÑми: MDF_Name, MDF_MESS, MDF_TR, MDF_DBG, MDF_RD.</li> <li> ÐšÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ TSYS::ShieldSimb функції TSYS::strEncode() перейменовано у TSYS::ShieldSymb, перенеÑено до функції TSYS::strDecode() Ñ– у TSYS::strEncode() доповнено загальним. Та функцію КориÑтувацького API SYS.strDecode() доповнено методом Ð´ÐµÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ "ShieldSymb".</li></ul></li> <li> БД: Запит ІнтерфейÑу Ð£Ð¿Ñ€Ð°Ð²Ð»Ñ–Ð½Ð½Ñ "call:/BD/{MOD}/{DB}/%2fserv%2fSQL" доповнено опрацюваннÑм атрибуту "intoTrans" Ñк EVAL за відÑутноÑÑ‚Ñ– та очищеннÑм текÑту запиту у відповіді.</li> <li> DAQ::Value: СервіÑний запит "get:/serv/attr" ІнтерфейÑу Ð£Ð¿Ñ€Ð°Ð²Ð»Ñ–Ð½Ð½Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð¾ від Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´Ñ‚ÐµÐ³Ñ–Ð² "el" за відÑутноÑÑ‚Ñ– репрезентативного атрибуту, Ñ—Ñ… Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²ÑтановлюєтьÑÑ Ñƒ EVAL Ð´Ð»Ñ ÐºÐ¾Ñ€ÐµÐºÑ‚Ð½Ð¾Ð³Ð¾ Ð¿Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¾Ð¿Ñ€Ð°Ñ†ÑŒÐ¾Ð²Ð°Ð½Ð¸Ð¼Ð¸ у DAQ.DAQGate та не продовжувати Ñ—Ñ… запит у кожному циклі.</li> <li> Ðрхіви-ІÑторіÑ: Тип зв'Ñзку архіву значень "ПаÑивний атрибут параметру (TVArchive::PassiveAttr)" перейменовано у "DAQ атрибут (TVArchive::DAQAttr)". Тип зв'Ñзку архіву значень "Ðктивний атрибут параметру" перейменовано у "Ðктивний DAQ атрибут" із позначкою ЗÐСТÐРІЛЕ.</li> <li> ТранÑпорти: Функцію TTransportIn::assTrO() перейменовано у TTransportIn::associateTrO(). Віртуальну функцію ознаки The TTransportOut::isNetwork() перенеÑено до об'єкту TTypeTransport зі зв'ÑзуваннÑм Ñтарої на нову, Ð´Ð»Ñ Ð¿Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ÑƒÑього Ð¼Ð¾Ð´ÑƒÐ»Ñ Ñк мережа.</li> <li> UI.VCAEngine: Запит ІнтерфейÑу Ð£Ð¿Ñ€Ð°Ð²Ð»Ñ–Ð½Ð½Ñ "get:/UI/VCAEngine/%2fserv%2fwlbBr" доповнено не ÑтвореннÑм тегів порожніх піктограм "ico". Запит "connect:/serv/sess" доповнено атрибутом "onlyMy" Ð´Ð»Ñ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð»Ð¸ÑˆÐµ до влаÑних ÑеанÑів, а запит "get:/ses/ses" доповнено таким Ñамим атрибутом Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ»Ñ–ÐºÑƒ лише влаÑних.</li></ul> <p><i>ДоповненнÑ</i>: </p> <ul><li> SYS: <ul><li> Ðова Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ TSYS::ico() Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ñ–ÐºÑ‚Ð¾Ð³Ñ€Ð°Ð¼Ð¸.</li> <li> Ðазви Ñтандартних дозволів доповнено _W_W_W(0222).</li> <li> TError: розширено новими конÑтрукторами із аргументами типу "const string &" Ð´Ð»Ñ Ð½ÐµÐ¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð¸Ñ… Ñ€Ñдків Ñ– зручноÑÑ‚Ñ–.</li> <li> TRegExp: <ul><li> Доповнено новим параметром 'U' (нежадібне) із Ð¿ÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ñ€ÐµÐ¶Ð¸Ð¼Ñƒ жадібноÑÑ‚Ñ–, разом із методом КориÑтувацького API "ungreedy".</li> <li> Доповнено функцією mode(), аргументом "mode" у setPattern() Ñ– переліченнÑм "Mode" із елементами: MD_8, MD_16, MD_32, MD_WCHAR, MD_SAVE.</li> <li> Функцію search() об'єкту доповнено аргументом "length" із Ð¿Ð¾Ð²ÐµÑ€Ð½ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ñƒ вимірÑного блоку.</li></ul></li> <li> XMLNode: Прапорці Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð¾ елементом відÑутноÑÑ‚Ñ– Ð¿Ñ€Ð°Ð¿Ð¾Ñ€Ñ†Ñ LD_NO.</li> <li> TMess: Доповнено загальною міткою labStdOutTrs() до формату адреÑи функції уніфікованого вихідного транÑпорту.</li></ul></li> <li> DAQ: <ul><li> Функцію зв'ÑÐ·ÑƒÐ²Ð°Ð½Ð½Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚Ñ–Ð² DAQ розширено визначеннÑм базового вузла у атрибуті "ndBase", щодо: ctrListPrmAttr(), daqAt(), prmAt(), attrAt().</li> <li> Об'єкт TPrmTempl::Impl доповнено новою функцією archAttrs() із оновленнÑ-Ð°Ñ€Ñ…Ñ–Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñ–Ð² ЛогічногоРівнÑ.</li></ul></li> <li> Ðрхіви-ІÑторіÑ: Об'єкт архіву значень TVArchive доповнено декларацією Ð¿ÐµÑ€ÐµÐ»Ñ–Ñ‡ÐµÐ½Ð½Ñ ServReqDtMode Ð´Ð»Ñ Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñу Ð£Ð¿Ñ€Ð°Ð²Ð»Ñ–Ð½Ð½Ñ "get:/Archive/va_{ARCH}/%2fserv%2fval".</li> <li> ТранÑпорти: <ul><li> Ðова Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ TTransportIn::associateTr() та Ñ—Ñ— варіант КориÑтувацького API SYS.Transport["Modul"]["in_Transp"].associateTr().</li> <li> Ðова Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ TTransportS::outAt() та Ñ—Ñ— варіант КориÑтувацького API SYS.Transport.outAt().</li> <li> Ðова Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ ÐšÐ¾Ñ€Ð¸Ñтувацького API SYS.Transport["Modul"]["in_Transp"].associateTrsList() Ñк варіант коректної назви до assTrsList().</li> <li> Об'єкт вихідного транÑпорту доповнено функціÑми КориÑтувацького API conPrm() Ñ– setConPrm() доÑтупу параметрів підключеннÑ.</li> <li> Функцію TTransportS::extHostList() доповнено аргументом "lang" Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´ÐµÐ½Ð¸Ð¼Ð¸ назв віддалених хоÑтів.</li> <li> ПрефікÑи "in_" Ñ– "out_" винеÑено у Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ STR_IN_PREF Ñ– STR_OUT_PREF відповідно.</li> <li> Об'єкт TTransportS object доповнено переліченнÑм LogType із елементами: LTP_BinaryText, LTP_Binary, LTP_Text.</li></ul></li> <li> UI.VCAEngine: <ul><li> Доповнено вÑтановленнÑм періоду на Ñтороні ÑеанÑу, функцією КориÑтувацького API calcPer() віджету ÑеанÑу, розширено визначеннÑм Ñпеціальних значень періоду: PerVal_Sess(0), PerVal_Parent(-1), PerVal_UserMin(PerVal_Dis(-2)), PerVal_SessDef(-3);</li> <li> Об'єкт ÑеанÑу доповнено функцією КориÑтувацького API period(), що повертає період ÑеанÑу.</li> <li> Зміна атрибуту "alarmSt" доповнена новою Ñупровідною подією "ws_alarmChange".</li></ul></li></ul> <p><b><u>СиÑтема</u></b><br /> </p> <ul><li> FIX:СкладаннÑ: <ul><li> FIX:configure.ac: ВерÑÑ–ÑŽ бібліотеки Ñдра збільшено до 3:13:0 та верÑÑ–ÑŽ програми збільшено до 0.9.6. Модульну верÑÑ–ÑŽ підÑиÑтеми "ТранÑпорти" збільшено до 19.</li> <li> FIX:Debian: ÐŸÐ¾ÐºÑ€Ð°Ñ‰ÐµÐ½Ð½Ñ Ñ‚Ð° Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´Ð¿Ð¸Ñу DEB-пакетів уÑÑ–Ñ… репозиторіїв.</li></ul></li> <li> *: БільшіÑÑ‚ÑŒ close(), iconv_close(), dlclose(), pclose() функцій доповнено перевіркою результату та попередженнÑм про проблеми.</li> <li> *: УÑÑ– ÑиÑтемні (SYS) конфігураційні параметри адаптовано Ð´Ð»Ñ ÐºÐ¾Ñ€ÐµÐºÑ‚Ð½Ð¾Ð³Ð¾ ÑƒÑ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ‚Ð¸Ð¿Ð¾Ð²Ð¸Ñ… значень.</li> <li> .,DAQ.JavaLikeCalc: Додано Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¸ від другого Ñ€Ñдка у ІнтерфейÑÑ– Ð£Ð¿Ñ€Ð°Ð²Ð»Ñ–Ð½Ð½Ñ Ð´Ð»Ñ: опиÑу полів елементів (TFld) із DAQ-значеннÑми; назв Ð’Ð’ функцій (TFunction) із побудовувачем зв'Ñзків та атрибутів Логічного Ð Ñ–Ð²Ð½Ñ DAQ.</li> <li> FIX: ПерепиÑано функцію TCntrNode::nodeAt() Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð²Ð¸ÐºÐ»Ð¸ÐºÑƒ віртуальної chldAt() під блокуваннÑм mChM, чим попереджаючи деÑким мертвим Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ віртуальних визначеннÑÑ… chldAt().</li> <li> ПереглÑнуто уÑÑ– шаблони у теках =Tmpl=.</li> <li> FIX: Вкладку "СтанціÑ", головної Ñторінки ІнтерфейÑу Ð£Ð¿Ñ€Ð°Ð²Ð»Ñ–Ð½Ð½Ñ OpenSCADA, доповнено інформацією ÑиÑтемного чаÑу та загалом реÑтруктуровано.</li> <li> FIX:data/openscada-proj.in: <ul><li> Розширено новою змінною Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ OSCD_TAR_Args із Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð¾Ð´Ð°Ñ‚ÐºÐ¾Ð²Ð¸Ñ… аргументів <b>tar</b> на кшталт --exclude та Ñ—Ñ— типово вÑтановлено у Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ "--exclude=lock --exclude=ARCHIVES".</li> <li> FIX: Виправлено Ð¾Ð¿Ð¸Ñ Ñ‚Ð° викориÑÑ‚Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð½Ð¸Ñ… оточень OSCD_TAR_ComprPrg Ñ– OSCD_BackLim.</li></ul></li> <li> У процеÑÑ– уніфікації Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ñ— піктограми проєкту за назвою та ІД здійÑнено: <ul><li> Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ñ–ÐºÑ‚Ð¾Ð³Ñ€Ð°Ð¼Ð¸ також викориÑтано Ðазву Базовою Мовою, тож наразі перевірÑєтьÑÑ: Перекладена Ðазва, Ðазва Базовою Мовою, ІД;</li> <li> механізм Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ñ–ÐºÑ‚Ð¾Ð³Ñ€Ð°Ð¼Ð¸ переведено на нову окрему функцію TSYS::ico().</li></ul></li> <li> TRegExp: Доповнено підтримкою режимів 16 Ñ– 32 від бібліотек pcre16 Ñ– pcre32 відповідно та наразі лише Ð´Ð»Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— search().</li></ul> <p><b><u>Бази Даних</u></b><br /> </p> <ul><li> FIX:.,PostgreSQL: Дещо пом'Ñкшено Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ€Ð¾Ð¶Ð½ÐµÑ‡Ñ– таблиці протÑгом проблем у DB.PostgreSQL щодо цього, тобто Ð²Ð¸ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð½Ð°Ñ€Ð°Ð·Ñ– не генеруютьÑÑ. <ul><li> FIX:PostgreSQL: Перемкнено на Ñтандартний ÑпоÑіб виÑÐ²Ð»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ñутніх таблиць із Ñ—Ñ… ÑтвореннÑм за "toCreate" та генерації Ð²Ð¸ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ–Ð½Ð°ÐºÑˆÐµ, чим попереджаючи повідомленню "Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð¿Ð¾Ñ€Ð¾Ð¶Ð½Ñ.".</li></ul></li></ul> <p><b><u>Збір Даних</u></b><br /> </p> <ul><li> Зв'ÑÐ·ÑƒÐ²Ð°Ð½Ð½Ñ Ð›Ð¾Ð³Ñ–Ñ‡Ð½Ð¾Ð³Ð¾ Ð Ñ–Ð²Ð½Ñ Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð¾ формою предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð°Ð´Ñ€ÐµÑи через шлÑÑ… із префікÑом "prm:/node/node", тож підтримкою відноÑної адреÑації за "." Ñ– "..": <ul><li> функції зв'ÑÐ·ÑƒÐ²Ð°Ð½Ð½Ñ DAQ елементу розширено визначеннÑм базового вузла у атрибуті "ndBase", длÑ: ctrListPrmAttr(), daqAt(), prmAt(), attrAt();</li> <li> об'єкт TPrmTempl::Impl із реалізації DAQ-шаблону Логічного Ð Ñ–Ð²Ð½Ñ Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð¾ підтримкою нового зв'ÑзуваннÑ.</li></ul></li> <li> FIX: Ð’ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð²'Ñзків Логічного Ð Ñ–Ð²Ð½Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð¾ щодо Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ ÑƒÑього Ñ€Ñдка піÑÐ»Ñ Ð¿Ñ€Ð¾Ð±Ñ–Ð»Ñƒ, за поÑтійних зв'Ñзком "val:".</li> <li> ModBus: Доповнено параметром "e" Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð¿Ð¾ÑлідовноÑÑ‚Ñ– байтів регіÑтру у LE (молодший перший) загалом та BE (Ñтарший перший) Ð´Ð»Ñ Ñ€Ñдків. Ð Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ñ€Ñдка регіÑтрів доповнено кодуваннÑм Ð´Ð»Ñ Ð²Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ перекодуваннÑ. Доповнено параметром "ПропуÑк циклів Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð½Ð°Ð·Ð°Ð´ запиÑаного" Ð´Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŽ такої влаÑтивоÑÑ‚Ñ– окремого від аÑинхронного запиÑу.</li> <li> FIX:DAQGate: <ul><li> FIX: Категорії повідомлень у catsPat(), із Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ джерела даних Об'єкту Контролера, переключено на генерацію влаÑних деталізованих правил регулÑрних виразів із визначених віддалених контролерів — Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½ÑŽ надлишкових повідомлень.</li> <li> FIX: ВдоÑконалено-виправлено Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ ÑтатуÑу ÐŸÐ¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ ÐšÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÐµÑ€Ñƒ Ð´Ð»Ñ Ð´ÐµÐºÑ–Ð»ÑŒÐºÐ¾Ñ… Ñтанцій, коли ПОРУШЕÐÐЯ це за відÑутноÑÑ‚Ñ– Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð· уÑіма ÑтанціÑми.</li> <li> Функцію sync() об'єкту контролера цілком перепиÑано у Ñекції "Ð’Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ñутніх віддалено параметрів" щодо: <ul><li> Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ñтанцій Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ñ–Ð²: цілковите Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ñутніх Ñтанцій та параметрів без Ñтанцій;</li> <li> Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð¸Ñ… параметрів та логічних контейнерів за прапорцем "ДозволÑти автоматичне Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ñ–Ð² та атрибутів".</li></ul></li> <li> Функцію TMdContr::messSet() з вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ пов'Ñзаних зі Збором Даних адаптовано до підтримки атрибутів у адреÑÑ– параметрів Ð´Ð»Ñ Ð·Ð½Ð°Ñ‡ÑƒÑ‰Ð¸Ñ… атрибутів загальних-контейнерних параметрів, що необхідно Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ´Ð°Ð²Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ із верхніх Ñтанцій до нижніх.</li></ul></li> <li> JavaLikeCalc: РозширеннÑ-Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ— циклів об'єктів "<b>for({var} in {obj}) {тіло циклу}</b>" можливіÑÑ‚ÑŽ Ð²ÐºÐ°Ð·Ð°Ð½Ð½Ñ ÐžÐ±'єкту <obj> Ñк включеного через влаÑтивоÑÑ‚Ñ– або із результату. ПоÑтійні Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð¾ "null", Ñк Ñинонім до EVAL (EVAL_REAL).</li> <li> OPC_UA: Завершено підтримку запиÑу через Ñпецифічні прапорці режиму Стандартний Ñ– Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ‚Ð¸Ð¿Ñƒ із Ð’Ð’ Ð´Ð»Ñ Ð›Ð¾Ð³Ñ–Ñ‡Ð½Ð¾Ð³Ð¾ режиму.</li></ul> <p><b><u>Ðрхіви-ІÑторіÑ</u></b><br /> </p> <ul><li> .,DAQ.{LogicLev,ModBus,OPC_UA}: Завершено уніфікацію Ð°Ñ€Ñ…Ñ–Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¶ÐµÑ€ÐµÐ» Логічного Ð Ñ–Ð²Ð½Ñ Ñ–Ð· викориÑтаннÑм лише прÑмого-паÑивного архівуваннÑ: <ul><li> об'єкт TPrmTempl::Impl доповнено новою функцією archAttrs() із оновленнÑ-Ð°Ñ€Ñ…Ñ–Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñ–Ð² ЛогічногоРівнÑ;</li> <li> тип зв'Ñзку архіву значень "ПаÑивний атрибут параметру (TVArchive::PassiveAttr)" перейменовано у "DAQ атрибут (TVArchive::DAQAttr)";</li> <li> тип зв'Ñзку архіву значень "Ðктивний атрибут параметру" перейменовано у "Ðктивний DAQ атрибут" із позначкою ЗÐСТÐРІЛЕ.</li></ul></li> <li> Вкладку "ПовідомленнÑ" доповнено функцією автоматичного Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ– Ðктивних Порушень від Ñтарих Порушень на визначену глибину днів.</li> <li> FIX:FSArch: <ul><li> FIX: Попереджено доÑтуп до files[iA] у ModVArchEl::setValsProc() поза блокуваннÑ, викориÑтовуючи Ð¿ÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð½Ð° читаннÑ.</li> <li> FIX: Попереджено доÑтуп до "files" у ModMArch::checkArchivator() поза блокуваннÑ.</li> <li> FIX: Ð‘Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¾Ñтупу до файлів цілковито переглÑнуто, включаючи пакуваннÑ/розпакуваннÑ, ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ… файлів, Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñтарих у проÑторі блокуваннÑм на Ð—Ð°Ð¿Ð¸Ñ Ð²ÐºÐ»ÑŽÑ‡Ð½Ð¾ із перевіркою умов. Також видалено Ð¿ÐµÑ€ÐµÐ±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ циклах та індекÑах.</li></ul></li></ul> <p><b><u>ТранÑпорти</u></b><br /> </p> <ul><li> FIX: Вихідні транÑпорти доповнено примуÑовою зупинкою за вимкненнÑ-Ð²Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ ÑиÑтемного об'єкту, не у деÑтрукторі, що вже пізно та тут можуть втрачатиÑÑ Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‡Ñ– Ñокетів.</li> <li> Лог Ð’Ð’ транÑпортів доповнено режимами "Бінарний Ñ– ТекÑÑ‚", "Бінарний", "ТекÑÑ‚", та його запиÑом до файлу за вказаннÑм розміру протоколу -1 Ð´Ð»Ñ Ð´ÑƒÐ¶Ðµ великих.</li> <li> FIX:Sockets: Виправлено Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð½ÐµÑ†Ñ–Ð»ÐºÐ¾Ð²Ð¸Ñ‚Ð¾Ð³Ð¾ запиÑу у Вхідній чаÑтині, коли Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¾Ð±Ñ€Ñ–Ð·Ð°Ñ”Ñ‚ÑŒÑÑ Ð¿Ð¾ розміру буферу передавача TCP. Розмір вхідного буферу Вхідної чаÑтини прив'Ñзано до контролю розміру буферу апаратного приймача, а внутрішній проÑто заморожено на розмірі буферу від Ñтандартного Ñ€Ñдка оÑкільки воно не критичне та не вимагає контролю.</li></ul> <p><b><u>ТранÑпортні Протоколи</u></b><br /> </p> <ul><li> FIX:SelfSystem: Значним чином переглÑнуто та виправлено реалізацію зовнішніх-вихідних підключень, доповнено перевіркою Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ñƒ заголовка.</li> <li> ModBus: Доповнено параметром "e" Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð¿Ð¾ÑлідовноÑÑ‚Ñ– байтів регіÑтру у LE (молодший перший) загалом та BE (Ñтарший перший) Ð´Ð»Ñ Ñ€Ñдків.</li> <li> HTTP: Доповнено HTTP Ðтрибутами Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ ÐºÐµÑˆÑƒ WEB-Браузеру взагалі: "Cache-Control: no-cache, no-store, must-revalidate", "Pragma: no-cache", "Expires: 0".</li> <li> UserProtocol: Вхідну чаÑтину розширено можливіÑÑ‚ÑŽ Ð¿Ð»Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸ÐºÐ»Ð¸ÐºÑƒ кориÑтувацьких процедур у ÑервіÑному циклі, Ð´Ð»Ñ Ñ„Ð¾Ð½Ð¾Ð²Ð¾Ð³Ð¾ Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð´ÐµÑких даних; також тут додано атрибут Об'єкту "Цей (this)".</li></ul> <p><b><u>Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐšÐ¾Ñ€Ð¸Ñтувача</u></b><br /> </p> <ul><li> QTStarter,QTCfg,Vision: Загальне підÑÐ²Ñ–Ñ‡ÑƒÐ²Ð°Ð½Ð½Ñ ÑинтакÑиÑу у SnthHgl::rule() переключено на оÑновне викориÑÑ‚Ð°Ð½Ð½Ñ PCRE у TRegExp, оÑкільки він ВП'ЯТЕРО ШВИДШИЙ Ñ– значно багатший порівнÑно із QRegExp; та QRegExp залишено Ð´Ð»Ñ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡Ð½Ð¾Ð³Ð¾ ÑƒÐ²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð·Ð° відÑутноÑÑ‚Ñ– бібліотек PCRE 32/16. Загальну бібліотеку Qt (lib_qtgen) доповнено Ñтатичними-зовнішніми функціÑми getFont() Ñ– getColor() із UI.Vision та об'єктом SnthHgl із UI.Vision Ñ– UI.QTCfg.</li> <li> QTCfg,WebCfgD: Уніфіковано у Ñповіщені помилок ІнтерфейÑу Ð£Ð¿Ñ€Ð°Ð²Ð»Ñ–Ð½Ð½Ñ Ð¿Ñ€Ð¾Ñ‚Ñгом вдоÑÐºÐ¾Ð½Ð°Ð»ÐµÐ½Ð½Ñ ÐºÐ¾Ð´Ñƒ TError::Core_CntrWarning Ñ– QMessageBox доповнено детальним текÑтом за повідомлень довше за 255.</li> <li> QTStarter: Доповнено контролем ÑеанÑів диÑплею, тобто відновленнÑм ÑеанÑів.</li> <li> QTCfg: Доповнено реалізацією Улюблених Ñторінок. Елемент Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð¾ функцією цілковитого Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ.</li> <li> FIX:Vision: <ul><li> FIX: УÑÑ– контрольні "<info>" запити доповнено перевіркою наÑвноÑÑ‚Ñ– дочірніх вузлів Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿Ð°Ð´Ñ–Ð½Ð½Ñм у деÑких випадках.</li> <li> Доповнено можливіÑÑ‚ÑŽ виклику інтерфейÑів віддалених Ñтанцій шлÑхом Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ð´Ð°Ð»ÐµÐ½Ð¾Ñ— Ñтанції у діалозі, щодо чого розширено діалог Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ ÐºÐ¾Ñ€Ð¸Ñтувача.</li> <li> ТекÑтові облаÑÑ‚Ñ– із підÑвіченнÑм ÑинтакÑиÑу доповнено вбудованим варіантом.</li> <li> Елементи зображень (піктограми) діалогів елементів доповнено кнопкою меню із функціÑми: Зберегти, Завантажити, ОчиÑтити.</li> <li> Таблицю Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ðтрибутів Віджету доповнено багаторÑдковим редагуваннÑм ÑÑ‚Ð¾Ð²Ð¿Ñ†Ñ "Ðазва" та завантаженнÑм контекÑтної допомоги Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾.</li> <li> Вигулькне меню проєкту, Ñторінок проєкту, бібліотек віджету та віджетів бібліотеки щодо Ð´Ð¾Ð´Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ð¶ÐµÑ‚Ñ–Ð² із бібліотек позбавлено Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ñƒ 20 елементів через перенеÑÐµÐ½Ð½Ñ ÑƒÑÑ–Ñ… Ñ—Ñ… до нового окремого пункту меню "... із Бібліотеки".</li></ul></li> <li> FIX:VCAEngine: <ul><li> Піктограми проєктів та бібліотек віджетів переключено на Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ñ— піктограми проєкту за відÑутноÑÑ‚Ñ– локальної.</li> <li> Бібліотеки віджетів адаптовано до міжхоÑтового копіюваннÑ.</li> <li> FIX: Генерацію примітиву Документ доповнено обмеженнÑм розміру повторних блоків у limUserFile_SZ (10MB).</li> <li> FIX: Відкориговано Ð¿Ð¾Ð²Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ Ð·Ñ– Ñторінками проєктів та віджетами бібліотек із початково помилковою адреÑою предка, щодо не Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð´Ð¾Ñ‡Ñ–Ñ€Ð½Ñ–Ñ… віджетів та зміни Ñ—Ñ… предка із вказаннÑм коректної адреÑи.</li></ul></li> <li> FIX:WebVision: <ul><li> Доповнено реалізацією екÑпорту "Документ - HTML,CSV" Ñ– "Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ CSV".</li> <li> Доповнено реалізацією друку "Документ" Ñ– "ОÑновна Сторінка".</li> <li> Тип Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð¿Ñ€Ð¸Ð¼Ñ–Ñ‚Ð¸Ð²Ñƒ FormEl додано відриваннÑм заголовку таблиці за Ð³Ð¾Ñ€Ñ‚Ð°Ð½Ð½Ñ Ð²ÐµÐ»Ð¸ÐºÐ¸Ñ… таблиць додолу.</li> <li> FIX: Тип Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð¿Ñ€Ð¸Ð¼Ñ–Ñ‚Ð¸Ð²Ñƒ FormEl вдоÑконалено та виправлено щодо: <ul><li> вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ CSS влаÑтивоÑÑ‚Ñ– "white-space" у "pre-wrap";</li> <li> вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½ кольору під обраними клітинками;</li> <li> Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð²Ñ‚Ñ€Ð°Ñ‚Ñ– фокуÑу одразу піÑÐ»Ñ Ð²Ñ…Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ Ñƒ Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ ÐºÐ»Ñ–Ñ‚Ð¸Ð½ÐºÐ¸;</li> <li> Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð²ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð»Ð¾Ð³Ñ–Ñ‡Ð½Ð¾Ð³Ð¾ за Ð²Ñ…Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ Ñƒ Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ ÐºÐ»Ñ–Ñ‚Ð¸Ð½ÐºÐ¸;</li> <li> Ð¿ÐµÑ€ÐµÐ»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– за зроÑÑ‚Ð°Ð½Ð½Ñ Ð´Ð¾Ð²Ð¶Ð¸Ð½Ð¸ таблиці.</li></ul></li> <li> Ð’ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ… Ñторінок піÑÐ»Ñ Ð´ÐµÐºÑ–Ð»ÑŒÐºÐ¾Ñ… поÑв Ñ€Ñдка (4) — Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚ÑŽ вÑÑ–Ñ… Ñторінок за швидкої навігації;</li> <li> ВдоÑконалено Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½ÑŒ звичайних кориÑтувачів до влаÑних ÑеанÑів СВУ.</li></ul></li> <li> WebUser: Розширено щодо можливоÑÑ‚Ñ– планувати виклику кориÑтувацьких процедур у ÑервіÑному циклі, Ð´Ð»Ñ Ñ„Ð¾Ð½Ð¾Ð²Ð¾Ñ— обробки деÑких даних.</li></ul> <h4><span class="mw-headline" id=".D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.BD.D1.96_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_2"><span class="mw-headline-number">7.3.1</span> СервіÑні оновленнÑ</span></h4> <ul><li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2942" rel="nofollow noreferrer noopener" target="_blank">четверте (4) від 20.12.2023</a>.</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2921" rel="nofollow noreferrer noopener" target="_blank">третє (3) від 13.09.2023</a>.</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2912" rel="nofollow noreferrer noopener" target="_blank">друге (2) від 12.08.2023</a>.</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2899" rel="nofollow noreferrer noopener" target="_blank">перше (1) від 25.06.2023</a>.</li></ul> <h3><span class="mw-headline" id=".5B22.12.7529.2F22.02.2022.5D_.D0.9F.27.D0.AF.D0.A2.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="mw-headline-number">7.4</span> [22.12.7529/22.02.2022] П'ЯТЕ оновленнÑ</span></h3> <p>Це Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ <a href="Release_0.9.html" title="Special:MyLanguage/Documents/Release 0.9">релізу 0.9 LTS</a> виправлÑÑ” Ð±Ñ–Ð»Ñ 50 помилок та додає БÐГÐТО удоÑконалень із декількома значними-концептуальними, з Ñкими цілком можна ознайомитиÑÑ Ñƒ <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2831" rel="nofollow noreferrer noopener" target="_blank">протоколі змін оновленнÑ</a>. </p><p><a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> <b><u>Важливі дії розробника модулів OpenSCADA за оновленнÑм</u></b><br /> </p> <ul><li> FIX:SYS.TMess: Тип labStor(), labSecCRON(), labSecCRONsel(), labTaskPrior(), labMessCat() змінено у "string".</li></ul> <dl><dd> <b><span style="color: red">=</span></b>> обов'Ñзково переглÑнути викориÑÑ‚Ð°Ð½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ð¹ міток, оÑкільки компілÑтор може не повідомлÑти про помилки у функціÑÑ… на кшталт printf(), TSYS::strMess(), але цей модуль буде аварійно завершуватиÑÑ.</dd></dl> <p><b><u><a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Automation_Linux_distributive" title="Special:MyLanguage/Sub-projects/Automation Linux distributive">Linux ДиÑтрибутив Ðвтоматизації проєкту OpenSCADA</a></u></b><br /> </p> <ul><li> Ð´Ð¾Ð´Ð°Ð½Ð½Ñ Debian 11 у ÑкоÑÑ‚Ñ– бази диÑтрибутиву;</li> <li> перенеÑÐµÐ½Ð½Ñ ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Debian 10,9 оÑнови у Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ Debian 11, відтак Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð²Ð°Ñ€Ñ–Ð°Ð½Ñ‚Ñ–Ð² вÑтановлювача;</li> <li> Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ TDE до 14.0.11 та наÑтупного 14.0.12;</li> <li> Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð±Ð»ÐµÐ¼ із plymouth, відтак вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð½Ð°Ñ€Ð°Ð·Ñ– безпечні та "/var/boot.log" не зроÑтає;</li> <li> Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Digikam, TDEPim, KArm та kdiff3, відтак Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ ÐºÐ¾Ð»ÐµÐºÑ†Ñ–Ñ— диÑтрибутиву новими латаними пакетами "tdepim-trinity", "digikam-trinity" та kdiff3-trinity.</li></ul> <p><b><u>ОÑновні WWW-реÑурÑи проєкту — <a class="external text" href="http://oscada.org" rel="nofollow noreferrer noopener" target="_blank">Сайт</a></u></b><br /> </p> <ul><li> значні зміни у загальному інтерфейÑÑ– Сайту: <ul><li> виклик Wiki-Ñторінок у IFRAME доповнено екраном Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° анімованим зображеннÑм репрезентації Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ; вертикальний розмір відкриваних Ñторінок було також точно підлаштовано у три Ñпроби;</li> <li> горизонтальний розмір вікна вміÑту обмежено 1000 пікÑелÑми;</li> <li> переміщено вертикальне підменю оÑновного меню зі Ñтатичної позиції ліворуч до виклику кнопкою опцій ліворуч від головного меню;</li> <li> Ð¿ÐµÑ€ÐµÐ¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð½Ð°Ð³Ð¾Ñ€Ñƒ праворуч щодо ÑервіÑної панелі із кнопками Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ð¼Ð¾Ð²Ð¸, виклику варіанту Ð´Ð»Ñ Ð´Ñ€ÑƒÐºÑƒ та Ð¿Ð¾Ð»Ñ Ð¿Ð°Ð½ÐµÐ»Ñ– пошуку Google;</li> <li> Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð»Ð¾Ð³Ð¾Ñ‚Ð¸Ð¿Ñƒ нагорі поділено навпіл;</li> <li> поле пошуку Google: розширено у ширини, переміщено нагору та приховано за іконкою пошуку.</li></ul></li> <li> <a class="external text" href="http://oscada.org/ua/novini/odinochna-storinka/article/changing-the-registration-conditions-and-rules-on-the-openscada-site/" rel="nofollow noreferrer noopener" target="_blank">зміна умов реєÑтрації та правил Ñайту OpenSCADA</a>;</li> <li> модуль реєÑтрації завершено у перекладі УкраїнÑькою та увімкнено Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ð°Ð´Ð¼Ñ–Ð½Ñ–Ñтратором Ñайту щодо реєÑтрації нових кориÑтувачів.</li></ul> <p><b><u>Ðові та значно оновлені чаÑтини</u></b><br /> </p> <ul><li> Ядро OpenSCADA: 3:11:0 => <b>3:12:0</b></li></ul> <dl><dd> (<a href="#DataStorage">Загальна ÐšÐ¾Ð½Ñ†ÐµÐ¿Ñ†Ñ–Ñ Ð—Ð±ÐµÑ€Ñ–Ð³Ð°Ð½Ð½Ñ Ð”Ð°Ð½Ð¸Ñ…</a>, <a href="#MessTr">Переклад Повідомлень</a>, <a href="#MessSubLev">Підрівні Повідомлень {Main}[0...9] та Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ ÐŸÐµÑ€ÐµÐ´Ð°Ñ‡Ñ– Повідомлень КориÑтувача</a>)</dd></dl> <ul><li> ПідÑиÑтеми "БД", "Збір Даних" OpenSCADA: 14 => <b>15</b>, 13 => <b>14</b></li></ul> <dl><dd> (<a href="#CommonSQL">Значна Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð—Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ SQL-коду у Ядрі OpenSCADA</a>)</dd></dl> <ul><li> DAQ.DAQGate: 2.5 => <b>2.9</b></li></ul> <dl><dd> (<a href="#MessRedundTr">Ñ€ÐµÐ·ÐµÑ€Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° транÑÐ¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ</a>, <a href="#DAQGate">Ñ–Ð¼Ð¿Ð»ÐµÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ Ð°Ñинхронного режиму запиÑу</a>)</dd></dl> <ul><li> DAQ.JavaLikeCalc: 5.1 => <b>5.4</b></li> <li> DAQ.Siemens: 4.2 => <b>4.4</b></li> <li> {DAQ,Protocol}.ModBus: 3.3 => <b>3.4</b>, 2.8 => <b>2.9</b></li> <li> {DAQ,Protocol}.OPC_UA: 2.5 => <b>2.6</b>, 2.1 => <b>2.2</b></li> <li> Archive.FSArch: 3.6 => <b>3.7</b></li> <li> Archive.DBArch: 3.0 => <b>3.1</b></li> <li> Transport.SSL: 3.3 => <b>3.4</b></li></ul> <dl><dd> (<a href="#SSL">Ð²ÐºÐ°Ð·Ð°Ð½Ð½Ñ Ñертифікатів та ключа безпоÑередньо із зовнішнього файлу із перезапуÑком вхідних транÑпортів за його зміни</a>)</dd></dl> <ul><li> Protocol.HTTP: 3.6 => <b>3.8</b></li> <li> Protocol.UserProtocol: 1.4 => <b>1.5</b></li> <li> BD.DBGate: 1.0 => <b>1.1</b></li> <li> BD.SQLite: 3.0 => <b>4.0</b></li> <li> BD.MySQL: 3.5 => <b>4.0</b></li> <li> BD.PostgreSQL: 2.5 => <b>3.0</b></li> <li> BD.FireBird: 2.5 => <b>3.0</b></li> <li> UI.QTStarter: 5.10 => <b>5.12</b></li> <li> UI.QTCfg: 5.6 => <b>5.9</b></li> <li> UI.WebCfg: 1.8 => <b>2.0</b></li> <li> UI.WebCfgD: 2.1 => <b>2.3</b></li> <li> UI.VCAEngine: 7.1 => <b>7.8</b></li></ul> <dl><dd> (<a href="#VCAEngine">Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ— Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½ у режимі Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð·Ð° циклами тактуваннÑ</a>)</dd></dl> <ul><li> UI.Vision: 7.14 => <b>8.0</b></li></ul> <dl><dd> (<a href="#Vision">раннє Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ… та визначених Ñторінок у процедурі ініціалізації</a>)</dd></dl> <ul><li> UI.WebUser: 1.4 => <b>1.5</b></li> <li> UI.WebVision: 6.2 => <b>6.6</b></li> <li> LibsDB.OscadaLibs.base.anUnif: 2.1 => <b>2.4</b></li> <li> LibsDB.OscadaLibs.base.anUnifSt: 1.2 => <b>1.3</b></li> <li> LibsDB.OscadaLibs.base.digAlarm: 1.2 => <b>1.3</b></li> <li> LibsDB.OscadaLibs.base.codeState: 1.3 => <b>1.4</b></li> <li> LibsDB.OscadaLibs.servProc.docOffLine: 1.2 => <b>1.3</b></li> <li> LibsDB.OscadaLibs.Controller.test: 1.1 => <b>1.2</b></li> <li> LibsDB.vcaBase.Main <ul><li> alarmsAct: 1.1 => <b>1.3</b></li> <li> alarmsSt: 1.2 => <b>1.4</b></li> <li> RootPgSo: 2.4 => <b>2.5</b></li> <li> ElCadr: 1.1 => <b>1.2</b></li> <li> TextLab,ImgLab: 1.0 => <b>1.1</b></li> <li> graphSelPrm: 1.4 => <b>1.5</b></li> <li> objProps: 1.1 => <b>1.2</b></li> <li> cntrRegul: 1.1 => <b>1.2</b></li> <li> storeHouse: 1.0 => <b>1.1</b></li></ul></li> <li> LibsDB.vcaBase.mnEls.El_Kran_Sh,Compressor: 1.0 => <b>1.1</b></li> <li> LibsDB.vcaBase.doc <ul><li> docAlarmsRep: 1.5 => <b>1.6</b></li> <li> docUsersSet: 1.5 => <b>1.7</b></li></ul></li></ul> <p><b><u><span id="DataStorage" title="#DataStorage">КОÐЦЕПТУÐЛЬÐЕ > Загальна ÐšÐ¾Ð½Ñ†ÐµÐ¿Ñ†Ñ–Ñ Ð—Ð±ÐµÑ€Ñ–Ð³Ð°Ð½Ð½Ñ Ð”Ð°Ð½Ð¸Ñ…</span> </u></b><br /> </p> <ul><li> Концепцію загалом уніфіковано Ñпецифікацією прÑмого Ñховку та визначеннÑм Загального Сховку "*.*", Ñк ÐºÐ¾Ð¼Ð±Ñ–Ð½Ð°Ñ†Ñ–Ñ ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ð¹Ð½Ð¾Ð³Ð¾ Файлу та робочої Бази Даних, коли Конфігураційний Файл Ñ” пріоритетним у доÑтупі до наÑвних даних, а База Даних Ð´Ð»Ñ Ð½Ð¾Ð²Ð¸Ñ… даних;</li> <li> TBDS::{dataSeek,dataGet,dataSet,dataDel,genDBGet,genDBSet}() переведено на бітові прапорці TBDS::ReqGenFlg;</li> <li> the TBDS::dbList() переведено на бітові прапорці TBDS::DBLsFlg;</li> <li> TCntrNode доповнено функціÑми storage() та setStorage() Ð´Ð»Ñ Ð²Ñ–Ð´ÑÑ‚ÐµÐ¶ÐµÐ½Ð½Ñ Ð½Ð°ÑвноÑÑ‚Ñ– даних вузла у різних Ñховках Ñ– Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ñ‡ÐµÑ€Ð³Ð¸ Ñховків Ð´Ð»Ñ Ð¼ÐµÑ…Ð°Ð½Ñ–Ð·Ð¼Ñƒ поÑлідовного Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð´ÑƒÐ±Ð»Ñ–ÐºÐ°Ñ‚Ñ–Ð², а також Ñ—Ñ… викориÑÑ‚Ð°Ð½Ð½Ñ Ñƒ функціÑÑ… об'єкту DB(), fullDB(), setDB();</li> <li> об'єкти адаптовано до відÑÑ‚ÐµÐ¶ÐµÐ½Ð½Ñ Ð±Ð°Ð³Ð°Ñ‚ÑŒÐ¾Ñ… Ñховків та доповнено поÑлідовним видаленнÑм дублікатів: Security.{User,Group}, Transport.{Input,Output}, DAQ.{Controller,TemplateLib}, Archives.{VArchive,VArchiver,MArchiver}, DAQ.JavaLikeCalc.Lib, Protocol.{ModBus,OPC_UA,UserProtocol}.*, UI.WebUser.Page, UI.{VCAEngine,Vision}.{WdgLib,Proj};</li> <li> функції доÑтупу до загальних параметрів TBDS::genDBGet() та TBDS::genPrmSet() переведено під нову концепцію Ñховків через викориÑÑ‚Ð°Ð½Ð½Ñ TBDS::dataGet() та TBDS::dataSet() відповідно, та перейменовано вÑюди у genPrmGet() та genPrmSet();</li> <li> на викориÑÑ‚Ð°Ð½Ð½Ñ Ð½Ð¾Ð²Ð¾Ñ— функції dataDelTbl() переведено об'єкти: DAQ.{TController,TPrmTmplLib,JavaLikeCalc,LogicLev,BlockCalc,ModBus,Siemens,OPC_UA}, Archive.DBArch, UI.{VCAEngine,Vision}.{WdgLib,Proj};</li> <li> переведено на Ñтатичні та вÑюди викориÑтано функції: TBDS::{dbList,dataSeek,dataGet,dataSet,dataDel,dataDelTbl}();</li> <li> надлишкові адреÑи Ñховків із таблицÑми Ñкорочено до Ñтандартних Ð°Ð´Ñ€ÐµÑ Ñховку із уніфікацією назви таблиці, де попередні неÑтандартні назви залишено Ð´Ð»Ñ Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¾ релізу 1.0, Ð´Ð»Ñ Ð¾Ð±'єктів: SYS, DAQ.{TemplateLib,JavaLikeCalc.Lib}, UI.{VCAEngine,Vision}.{WdgLib,Proj};</li> <li> перемкнуто до Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ð»Ð¸ÑˆÐµ БД: Archive.DBArch, Protocol.HTTP;</li> <li> кореневий об'єкт підÑиÑтеми БД TTypeBD доповнено оÑновою пріоритету БД [0...9] у загальному переліку Ñховків та об'єкт Бази Даних TBD доповнено конфігураційним полем "Пріоритет у переліку" Ð´Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŽ порÑдку баз даних із TBDS::dbList(), чим контролюючи порÑдок завантаженнÑ;</li> <li> зміну конфігураційного Ð¿Ð¾Ð»Ñ "Робоча БД" вимкнено щодо Ð¿Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²ÑÑ–Ñ… вузлів до модифікації;</li></ul> <p>КОÐФІГУРÐЦІЙÐИЙ ФÐЙЛ </p> <ul><li> Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ð¹Ð½Ð¸Ñ… параметрів та таблиць у загальному контекÑÑ‚Ñ– функцій TBDS::data{Seek,Get,Set}();</li></ul> <p>ПЕРЕРОБЛЕÐÐЯ ПРÐПОРЦІВ TCntrNode </p> <ul><li> TCntrNode::{chldDel,nodeDis}() переведено на прÑме викориÑÑ‚Ð°Ð½Ð½Ñ TCntrNode::EnDisFlag;</li> <li> прапорці TCntrNode::{NodeRemove,NodeRemoveOnlyStor} вÑюди викориÑтано Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸ у функції postDisable() та виклику chldDel().</li></ul> <p><b><u><span id="CommonSQL" title="#CommonSQL">КОÐЦЕПТУÐЛЬÐЕ > Значна Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð—Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ SQL-коду у Ядрі OpenSCADA</span> </u></b><br /> </p> <ul><li> ÑƒÐ½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŽ Ñтруктури таблиці елементом об'єкту Ñтруктури TTable::TStrIt;</li> <li> переробленнÑ, початково у SQLite, Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ»Ñ–ÐºÑ–Ð² запиту окремими змінними переліку;</li> <li> Ð¿ÐµÑ€ÐµÐ¼Ñ–Ñ‰ÐµÐ½Ð½Ñ SQL-коду до функцій: fieldSQLSeek(), fieldSQLGet(), fieldSQLSet(), fieldSQLDel();</li> <li> Ð´ÐµÐºÐ»Ð°Ñ€Ð°Ñ†Ñ–Ñ Ñƒ Ñдрі щодо ÑервіÑних визначень, методів та функцій до загального SQL-коду: SEEK_PRELOAD_LIM, tblStrct, seekSess, connRes, fieldFix(), getSQLVal(), setSQLVal();</li> <li> fieldFix() доповнено аргументом "langLs" Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ð¾Ñ‚Ñ€Ñ–Ð±Ð½Ð¸Ñ… мов заміÑÑ‚ÑŒ аргументу "trPresent";</li> <li> розповÑÑŽÐ´Ð¶ÐµÐ½Ð½Ñ Ñ‚Ð°ÐºÐ¸Ð¼ чином оÑтаннього коду підтримки БÐГÐТОМОВÐОСТІ у DB.SQLite.</li></ul> <p><b><u><span id="MessTr" title="#MessTr">КОÐЦЕПТУÐЛЬÐЕ > Переклад Повідомлень</span> </u></b><br /> Об'єкт TFunction::IO доповнено прапорцем IO::TransltText прÑмого Ð¼Ð°Ñ€ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´ÑƒÐ²Ð°Ð½Ð¾Ð³Ð¾ Ð’Ð’ Ð Ñдку: </p> <ul><li> типи "Ð Ñдок (переклад)" та "ТекÑÑ‚ (переклад)" додано у: об'єкті шаблону DAQ-Параметру, об'єкті TFunction DAQ.JavaLikeCalc, UI-Ðтрибутів UI.VCAEngine;</li> <li> прапорець TFld::TransltText викориÑтано у: отриманні Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ TValue of DAQ-Ðтрибутів, перекладі DAQ-Ðтрибутів DAQ.{LogicLev,ModBus,OPC_UA,Siemens}, перекладі UI-Ðтрибутів UI.VCAEngine;</li> <li> вÑтановлено типу "Ð Ñдок (переклад)" длÑ: Ð¿Ð¾Ð»Ñ "colDscrCustNames" wlb_Main.{alarmsAct,alarmsSt}.</li></ul> <p>Ð Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð¼Ð¾Ð²Ð¾ÑŽ Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÐºÐ¾Ñ€Ð¸Ñтувацьких функцій об'єкту OpenSCADA, Ð´Ð»Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ð¹ на кшталт strftime(): </p> <ul><li> об'єкт TCntrNodeObj, Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ TCntrNode::objFuncCall() та TConfig::objFunc() розширено перейменуваннÑм аргументу "user" у "user_lang" із вказаннÑм мови у другому Ñ€Ñдку;</li> <li> DAQ.JavaLikeCalc: Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ TCntrNodeObj доповнено мовою;</li> <li> SYS.strftime() доповнено виконаннÑм від вказаної мови-локалі.</li></ul> <p>TUIS,UI.{QTCfg,Vision}: docGet() розширено мовою у другому Ñ€Ñдку.<br /> FIX: Ð Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð²ÐºÐ»Ð°Ð´ÐºÐ¸ "Переклади" та Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ‰Ð¾Ð´Ð¾: </p> <ul><li> опцію "перевірка на невідповідніÑÑ‚ÑŒ (TrChkUnMatch)" перейменовано у "перевірка/Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ (TrChkAndFix)" та розширено функціÑми Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ щодо: розповÑÑŽÐ´Ð¶ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñ–Ð² на порожні джерела, Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñ–Ð²-дублікатів до бази, Ð¿Ð¾Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð±Ð°Ð·Ð¾Ð²Ð¸Ñ… повідомлень до перекладів;</li> <li> інформацію невідповідноÑÑ‚Ñ– доповнено другим текÑтом повідомленнÑ;</li> <li> менеджер перекладу доповнено кориÑтувацькими функціÑми "Розділити" та "Видалити із Trs";</li> <li> ÑÑ‚Ð°Ñ‚ÑƒÑ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ доповнено короткими мітками "ОДÐОМОВÐИЙ", "БÐГÐТОМОВÐИЙ", "БÐГÐТОМОВÐИЙ-ДИÐÐМІЧÐИЙ"; індекÑом повідомлень; розміром кешу та контекÑту;</li> <li> поле конфігурації базової мови режимів БÐГÐТОМОВÐОСТІ розширено переліком локалей проєкту, поділених ";".</li></ul> <p>FIX: Ð Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ ÐŸÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ Повідомлень Даних у трьох режимах: ОДÐОМОВÐИЙ, БÐГÐТОМОВÐИЙ та БÐГÐТОМОВÐИЙ-ДИÐÐМІЧÐИЙ: </p> <ul><li> Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¼Ð¾Ð²Ð¸ кориÑтувача уніфіковано у функції lang2Code(), розширеній аргументами "user" та "onlyUser";</li> <li> функцію lang2CodeBase() поділено на загальну langBase() та доповнено функцією langToLocale(), Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ð½Ð¾Ñ— локалі за мовою із langBase();</li> <li> поле мови об'єктів TSYS, TUser доповнено переліком Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ñ–Ð· langBase();</li> <li> FIX: замок TMess::mRes перейменовано у TMess::trMessIdxRes та обмежено у викориÑтанні лише Ð´Ð»Ñ TMess::trMessIdx;</li> <li> значне Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ñ‚Ð° ÑƒÐ½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ ÐºÐµÑˆÑƒ перекладів: <ul><li> новими функціÑми об'єкту TMess — translCacheGet(), translCacheSet(), translCacheLimits() та влаÑним замком trMessCacheRes;</li> <li> розширено категорію повідомлень щодо ÐºÐµÑˆÑƒÐ²Ð°Ð½Ð½Ñ ÑиÑтемних перекладів та кориÑтувачів;</li> <li> Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ ÐºÐµÑˆÑƒ також доповнено змінною Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ð·Ð° чаÑом "limCacheIts_TM" щодо чого він перевірÑєтьÑÑ Ñƒ ÑервіÑному завданні.</li></ul></li> <li> доповнено контекÑтом перекладу за новою функцією TMess::trCtx() та об'єктом TrCtxAlloc Ð´Ð»Ñ ÑƒÑ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ€ÐµÑ”Ñтрації контекÑту Ñк прив'Ñзка кориÑтувача та мови до потоку виклику: <ul><li> TCntrNode::cntrCmd(), Protocol.HTTP, UI.{Vision,WebVision,WebUser,WebCfg,WebCfgD} підключено до викориÑÑ‚Ð°Ð½Ð½Ñ ÐºÐ¾Ð½Ñ‚ÐµÐºÑту перекладу.</li></ul></li> <li> Ñинхронізовано ÑиÑтемні передзбережені Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ динамічних-даних;</li> <li> об'єкти типу-Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð‘Ð” доповнено Ñпецифічним інформаційним полем "ВлаÑтивоÑÑ‚Ñ–" Ð´Ð»Ñ Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ð»Ð°ÑтивоÑтей підтримуваних БД;</li> <li> FIX: цілковите Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ та реєÑтрації у індекÑÑ– повідомлень під Ñ‡Ð°Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¸Ñ… TConfig вузлів із текÑтом JavaLikeCalc процедури Ñ– заÑтарілим прапорцем ÑƒÐ²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ процедури в цілому;</li> <li> UI.QTCfg: Ð´Ð»Ñ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÐºÐ¾Ñ€ÐµÐ½ÐµÐ²Ð¾Ñ— Ñторінки увімкнено Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð´ÐµÑ€ÐµÐ²Ð° через Ð¿ÐµÑ€ÐµÐ¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ‚Ð° Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð´ÐµÑ€ÐµÐ²Ð° за зміни кориÑтувача; увімкнено викориÑÑ‚Ð°Ð½Ð½Ñ ÑиÑтемної мови у ОДÐОМОВÐОМУ режимі перекладу Ð´Ð»Ñ Ð²Ñ–Ð´Ð´Ð°Ð»ÐµÐ½Ð¸Ñ… підключень;</li> <li> FIX:UI.VCAEngine: Ñтилі проєкту перенеÑено до нової таблиці Ð·Ð±ÐµÑ€Ñ–Ð³Ð°Ð½Ð½Ñ "{DB_TBL}_stls" та Ñтруктурою із перекладом;</li> <li> UI.{WebCfg,WebCfgD}: Загалом адаптовано до динамічного перекладу у режимі БÐГÐТОМОВÐИЙ-ДИÐÐМІЧÐИЙ, викориÑтовуючи HTTP-змінну "lang", мову кориÑтувача та мову оглÑдача;</li> <li> Ñтворено документ <a href="Create_multi_language_project.html" title="Special:MyLanguage/Documents/How to/Create multi language project">Як "Створити багатомовний проєкт"</a>.</li></ul> <dl><dd> ПЕРВИÐÐІ ОБ'ЄКТИ ПРОЄКТУ</dd></dl> <ul><li> Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð¼Ð°Ñ€ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð±Ð°Ð·Ð¾Ð²Ð¾Ð³Ð¾ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° його перекладів Ñк неточне - "<!>" у кінці текÑту за зміною, та Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ;</li> <li> доÑтуп до динамічного перекладу перенеÑено під функції trD()->TMess::translGet() та trDSet()->TMess::translSet(): TArchives,TDAQ,TTypeDAQ,TController,TParamContr,TFunction,TPrmTmpl,TTransports,DAQ.{BlockCalc,JavaLikeCalc};</li> <li> додано до динамічного перекладу: <ul><li> піÑлÑпереклад назви-опиÑу DAQ-атрибутів піÑÐ»Ñ ÑиÑтемного перекладу та переклад у контекÑтній допомозі;</li> <li> переклад DAQ-атрибутів у функціÑÑ… КориÑтувацького API: get(), set(), descr();</li> <li> DAQ.JavaLikeCalc: чаÑтину вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð½Ð°Ð·Ð² форми Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ½ÐµÑено Ñобі;</li> <li> Protocol;{ModBus,OPC_UA,UserProtocol},UI.{VCAEngine,WebUser}.</li></ul></li> <li> адаптовано загалом до нової концепції зміни у режимі БÐГÐТОМОВÐИЙ-ДИÐÐМІЧÐИЙ через "{base}\000{lang}\000{mess}";</li> <li> доповнено та викориÑтано нову функцією translIdxCacheUpd() щодо Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ–Ð½Ð´ÐµÐºÑу та кешу оперативних перекладів повідомлень у режимі БÐГÐТОМОВÐИЙ-ДИÐÐМІЧÐИЙ Ð´Ð»Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸ SET;</li> <li> доповнено копіюваннÑм перекладу у команді SQL INSERT та Ð´Ð»Ñ Ñ€ÐµÐ¶Ð¸Ð¼Ñƒ БÐГÐТОМОВÐИЙ-ДИÐÐМІЧÐИЙ;</li> <li> конфігураційний файл доповнено підтримкою режиму БÐГÐТОМОВÐИЙ-ДИÐÐМІЧÐИЙ.</li></ul> <dl><dd> ОКРЕМІ ПОВІДОМЛЕÐÐЯ - "Trs"</dd></dl> <ul><li> UI.VCAEngine: доповнено зміною Ñховку одразу піÑÐ»Ñ ÐºÐ¾Ð¼Ð¿Ñ–Ð»Ñції процедури віджету Ð´Ð»Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð´Ð¸Ð½Ð°Ð¼Ñ–Ñ‡Ð½Ð¾Ð³Ð¾ перекладу повідомлень у Ñховку проєкту;</li> <li> транзитивний динамічний переклад попереджено щодо Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– "Trs" повідомленнÑми наÑвними у інших джерелах, тож попередньою перевіркою індекÑу повідомлень;</li> <li> доповнено фільтруваннÑм повідомлень щодо можливоÑÑ‚Ñ– Ñ—Ñ… перекладу перед реєÑтрацією.</li> <li> LibsDB.vcaBase: <ul><li> wlb_Main.ElViewGraph: увімкнено до транзитивного динамічного перекладу опиÑу параметру у підказці;</li> <li> wlb_Main.objProps: увімкнено до транзитивного динамічного перекладу;</li> <li> wlb_Main.storeHouse: значним чином розширено щодо Ñпецифічних полів, впорÑÐ´ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ñтовпців, Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿Ñ€Ð°Ð²Ð¸Ð»Ð°Ð¼Ð¸ підÑÐ²Ñ–Ñ‚Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½ÑŒ Ñтовпців із фільтром індекÑу або переліку, та виправлено загальну роботу.</li></ul></li></ul> <dl><dd> СИСТЕМÐІ ПОВІДОМЛЕÐÐЯ</dd></dl> <ul><li> імплементовано функцію перекладу ÑиÑтемних повідомлень trS() через попереднє збереженнÑ, де базове Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ñто повертаєтьÑÑ Ñ–Ð· інформацією про каталог, Ñк то "{base}\000{cat}" та що реально перекладаєтьÑÑ Ð²Ð¸ÐºÐ»Ð¸ÐºÐ¾Ð¼ _() — у фоні викориÑтано Mess->I18N(), але Ð´Ð»Ñ Ñпецифічного коду мови mess_PreSave="<PSV>";</li> <li> функцію ÑиÑтемного перекладу TMess::I18N() підключено до кешу повідомлень;</li> <li> об'єкти TFld та IO розширено роботою із попередньо збереженими ÑиÑтемними повідомленнÑми;</li> <li> інформаційні Ð¿Ð¾Ð»Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð°Ð´Ð°Ð¿Ñ‚Ð¾Ð²Ð°Ð½Ð¾ до режиму БÐГÐТОМОВÐИЙ-ДИÐÐМІЧÐИЙ;</li> <li> Ð°Ð´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ піÑлÑперекладу Ð´Ð»Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— КориÑтувацького API TConfig::cfg() у перекладуваних Ñ€Ñдках;</li> <li> UI.{QTCfg,Vision}: адаптовано до Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚Ñ–Ð² контролю у мові кориÑтувача та Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¼Ð¾Ð²Ð¸ інтерфейÑу головного вікна за його зміни; <ul><li> UI.Vision: доповнено оновленнÑм панелей інÑтрументів за зміни кориÑтувача, що також адаптовано до динамічного перекладу; вÑÑ– діалоги розробки адаптовано до динамічного перекладу.</li></ul></li> <li> UI.{QTStarter,QTCfg,Vision}: доповнено перекладом ÑиÑтемних Qt-повідомлень відповідно до мови обраного кориÑтувача, через загальну влаÑтивіÑÑ‚ÑŒ додатку "lang" Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¾Ñ— функції Qt-перекладу QTranslator::translate(), тож мова загалом перемикаєтьÑÑ Ð¾Ñтаннім інтерфейÑом та Ð´Ð»Ñ Ð²ÑÑ–Ñ… відкритих; Меню ПуÑкачу вÑтановлено у динамічний переклад та оновленнÑ.</li></ul> <p><b><u><span id="MessSubLev" title="#MessSubLev">КОÐЦЕПТУÐЛЬÐЕ > Підрівні Повідомлень {Main}[0...9] та Ð£Ð½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ ÐŸÐµÑ€ÐµÐ´Ð°Ñ‡Ñ– Повідомлень КориÑтувача</span> </u></b><br /> </p> <ul><li> загальна Ð°Ð´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ підрівнів {Main}[0...9] оÑновних рівнів повідомлень [0...7];</li> <li> DAQ,DAQ.DAQGate: додано функцію TController::messSet() транÑÐ¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ із гори до низу, тож опуÑÐºÐ°Ð½Ð½Ñ Ñ—Ñ…, роблÑчи функцію віртуальною та перевизначаючи Ñ—Ñ— у DAQGate, та також додано Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ ÑервіÑного запиту контролю OpenSCADA "set:/serv/mess" до об'єкту TController;</li> <li> DAQ: визначено <a href="Program_manual.html#ArchMess" title="Special:MyLanguage/Documents/Program manual">Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ DAQ-транÑпортуваннÑ</a> із категорією у формі "{TP}{ModId}:{CntrId}[.{prm}][:{spec}]", доповнено функцію TController::messSet() Ð´Ð»Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ‚Ð°ÐºÐ¸Ñ… повідомлень, а також функції КориÑтувацького API SYS.DAQ["Modul"]["Controller"].messSet(), SYS.DAQ["Modul"]["Controller"]["Parameter"].messSet();</li> <li> LibsDB.vcaBase: <ul><li> wlb_Main.{ElCadr,TextLab,ImgLab,cntrRegul},mnEls.{El_Kran_Sh,Compressor}: доповнено щодо повідомлень дій кориÑтувача, Ñкі формуютьÑÑ Ð½Ð¾Ð²Ð¾ÑŽ DAQ-функцією messSet() із уніфікованою Ñтруктурою категорії Ð´Ð»Ñ Ñ‚Ñ€Ð°Ð½ÑÐ¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¼Ñ–Ð¶ OpenSCADA ÑтанціÑми різного рівнÑ;</li> <li> wlb_Main.{alarmsAct,alarmsSt}: адаптовано Ð´Ð»Ñ Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´Ñ€Ñ–Ð²Ð½Ñ–Ð² оÑновних рівнів із підÑвітленнÑм вÑÑ–Ñ… рівнів; розширено новим кориÑтувацьким полем "Тип", Ñк назва Ñ€Ñ–Ð²Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ñ–Ð· нового конфігураційного атрибуту "types";</li> <li> wlb_doc.{docUsersSet,docAlarmsRep}: доповнено цілковитим ÑкануваннÑм DAQGate джерела щодо повної ієрархії транÑпортуваннÑ;</li> <li> wlb_Main.alarmsSt,wlb_doc.{docMessRep,docAlarmsRep}: адаптовано до транÑÐ¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ у DAQGate;</li> <li> wlb_Main.{alarmsSt,alarmsAct},wlb_doc.docMessRep: покращено щодо цілковитого ÑкануваннÑм DAQGate джерела до повної ієрархії транÑпортуваннÑ, також до дій кориÑтувача (OP);</li> <li> wlb_Main.TextLab: увімкнено опціонально щодо транзитивного перекладу текÑту ÑтатуÑу, Ñкий чаÑто приходить із ÑкогоÑÑŒ DAQ-джерела.</li></ul></li></ul> <p><b><u>OpenSCADA бібліотеки та проєкти</u></b><br /> </p> <ul><li> FIX:LibsDB.{OscadaLibs,vcaBase,vcaTest},{AGLKS,Boiler}.*: Доповнено, очищено та виправлено щодо багатомовних повідомлень через заÑтоÑÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ… механізмів Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ.</li> <li> LibsDB.vcaBase,AGLKS.vca,Boiler.St: Ð’ÑÑ– Ñтилі проєкту перенеÑено до нової таблиці Ð·Ð±ÐµÑ€Ñ–Ð³Ð°Ð½Ð½Ñ Ñ‚Ð° Ñ—Ñ— Ñтруктури із перекладом.</li> <li> FIX:LibsDB.vcaBase: <ul><li> FIX:wlb_Main.{alarmsAct,alarmsSt}: Типове ÑÐ¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° полем чаÑу Ñигналу повернуте у "1", Ñк нетиповий низхідний порÑдок. wlb_Main.alarmsAct: Доповнено полем "messCat" Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ÐºÐ°Ñ‚ÐµÐ³Ð¾Ñ€Ñ–Ð¹ порушень.</li> <li> wlb_Main.{ElViewGraph,graphSelPrm}: Ðдаптовано до ÑÐºÐ¸Ð´Ð°Ð½Ð½Ñ ÐºÐ¾Ð»ÑŒÐ¾Ñ€Ñƒ елементу тренду до типового Ñтильового, вÑтановленнÑм його у порожнє; доповнено опрацюваннÑм порожніх кольорів Ñк типове також отримане зі Ñтилю.</li> <li> FIX:wlb_Main.RootPgSo: Доповнено повним оновленнÑм за зміни кориÑтувача, оÑкільки мова також може змінитиÑÑ, та мови.</li></ul></li> <li> LibsDB.OscadaLibs: ВміÑÑ‚ Ð¿Ð¾Ð»Ñ "DB" та базовий ІД таблиці UserFuncLibs.{techApp,servProc,Controller} перейменовано у Ñтандартний "flb_techApp", "flb_servProc", "flb_Controller" відповідно. <ul><li> tmplib_base.{anUnif,anUnifSt,digAlarm,codeState}: Ðдаптовано до Ð²Ð±ÑƒÐ´ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´ÑÐ²Ñ–Ñ‚Ð»ÐµÐ½Ð½Ñ ÑинтакÑиÑу у процедуру Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ñ…Ð¾Ð´Ñƒ.</li> <li> tmplib_base.digAlarm: Розширено загальним викориÑтаннÑм атрибуту DESCR Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñпецифічних параметрів у нових полÑÑ… "CustomFlds".</li> <li> tmplib_base.anUnif: Розширено загальним викориÑтаннÑм атрибуту DESCR Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñпецифічних параметрів у нових полÑÑ… "CustomFlds" та "CustomAlarms". Доповнено опцією процедури кориÑтувача "toSave" Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð¼ÑƒÑового Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ð¾Ð±'єкту при виході.</li></ul></li> <li> flb_servProc.docOffLine: Розширено доÑтупом до індекÑної Ñторінки із будь Ñкої іншої.</li></ul> <p><b><u>API</u></b><br /> <i>!!!!:Зміни</i>: </p> <ul><li> SYS: TCntrNode::{chldDel,nodeDis}() переведено на прÑме викориÑÑ‚Ð°Ð½Ð½Ñ TCntrNode::EnDisFlag: NodeNoFlg, NodeRemove, NodeRemoveOnlyStor; та проміжок піÑÐ»Ñ > 0x100(TCntrNode::NodeSpecific) зарезервовано Ð´Ð»Ñ Ñпецифічних вузлів, де TParamContr::EnDisFlag вÑтановлено лише у NodeRemove_NoArch та Widget::EnDisFlag вÑтановлено лише у Widget::{NodeRemove_NoDelMark,NoContainer}. Елементи TCntrNode::Flag перейменовано щодо SelfModify->Modified, SelfModifyS->ModifiedS, SelfSaveForceOnChild->SaveForceOnChild. <ul><li> Функції Ñховку об'єкту DB(), fullDB() та setDB() розширено аргументом "qTop".</li> <li> Ðазву підÑиÑтеми перенеÑено до виклику функції subName() та Ñку вÑтановлено у "virtual" та "constant", так Ñамо Ñк subVer() Ñ– subId().</li> <li> Тип Ð¿Ð¾Ð»Ñ Ð¾Ð¿Ð¸Ñу об'єкту TFld та Ð¿Ð¾Ð»Ñ Ð½Ð°Ð·Ð²Ð¸ об'єкту IO змінено у "string".</li> <li> Результат TCntrNode::nodeNameSYSM() змінено у "string".</li> <li> TMess: Функцію lang2CodeBase() поділено на загальну langBase() та доповнено функцією langToLocale(), Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ð½Ð¾Ñ— локалі за мовою із langBase(). <ul><li> Функцію lang2Code() розширено аргументами "user" та "onlyUser".</li> <li> I18N() змінено у аргументах щодо "const string &mess" перший та mLang перенеÑено до другого, результат змінено у "string", також Ð´Ð»Ñ TModule::I18N(), та оновлено вÑÑ– Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ _().</li> <li> Функції перекладу даних (короткі визначеннÑ) перейменовано у trD_L(), trD_U(), trD_LU(), trDSet_L(), trDSet_U(), trDSet_LU().</li> <li> Видалено I18Ns().</li> <li> labStorGen() поєднано із labStor() та тип міток labStor(), labSecCRON(), labSecCRONsel(), labTaskPrior(), labMessCat() змінено у "string"; доповнено міткою labStorGen().</li> <li> lang2Code() та lang2CodeBase() перейменовано у langCode() та langCodeBase() відповідно Ð´Ð»Ñ Ð¿Ð¾Ñ‡Ð°Ñ‚ÐºÑƒ адаптації коду мови більш за 2 Ñимволи.</li></ul></li> <li> Безпека: Статичний метод "pHashMagic" перенеÑено до Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ SEC_HASH_MAGIC.</li></ul></li> <li> БД: Функції TBDS::{open,close}() перейменовано у TBDS::{tblOpen,tblClose}() та вÑтановлено Ñтатичними. <ul><li> TBDS::{dataSeek,dataGet,dataSet,dataDel,genDBGet,genDBSet}() переведено на бітові прапорці TBDS::ReqGenFlg (перейменовано із TBDS::ReqGen): NoFlg, NoException, OnlyCfg, UseTranslation (перейменовано із ReqGen::UseTranslation), UseCache, UseAllKeys.</li> <li> TBDS::dbList() переведено на бітові прапорці TBDS::DBLsFlg: LsNoFlg, LsCheckSel, LsInclGenFirst.</li> <li> Функції переведено у Ñтатичні: TBDS::{dbList,dataSeek,dataGet,dataSet,dataDel,dataDelTbl}(), TBDS::{fullDBSYS,fullDB}().</li> <li> Функції доÑтупу до загальних параметрів TBDS::genDBGet() та TBDS::genPrmSet() вÑюди перейменовано у genPrmGet() та genPrmSet().</li></ul></li> <li> DAQ: TTypeDAQ::compileFuncSynthHighl() перейменовано у TTypeDAQ::compileFuncSnthHgl() в процеÑÑ– уніфікації назви.</li> <li> Ðрхіви-ІÑторіÑ: Ð’Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð°Ñ€Ñ…Ñ–Ð²Ð¾-Ñпецифічних назв перейменовано Ð´Ð»Ñ BUF_ARCH_NM, ALRM_ARCH_NM, ALRM_ARCH_CH_NM у ARCH_BUF, ARCH_ALRM, ARCH_ALRM_CH; та доповнено щодо ARCH_NOALRM ("<noalarms>").</li></ul> <p><i>ДоповненнÑ</i>: </p> <ul><li> SYS: Глобальні короткі функції доповнено s2l() та s2u(). <ul><li> Доповнено новою функцією strParseEnd() розбору Ñ€Ñдків за роздільником із кінцÑ.</li> <li> Функцію pathLev() доповнено новим аргументом Ð¿Ð¾Ð·Ð¸Ñ†Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð½Ð° початок наÑтупного елементу та що також доповнено у функції кориÑтувацького API parsePath() від DAQ.JavaLikeCalc.</li> <li> TCntrNode доповнено функціÑми storage() та setStorage() Ð´Ð»Ñ Ð²Ñ–Ð´ÑÑ‚ÐµÐ¶ÐµÐ½Ð½Ñ Ð½Ð°ÑвноÑÑ‚Ñ– даних вузла. TCntrNode::Flag доповнено елементом LoadForcibly. TCntrNode::modif() та TCntrNode::modifG() доповнено новим аргументом "forceLoad".</li> <li> Додано змінну Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ð·Ð° чаÑом "limCacheIts_TM" Ð´Ð»Ñ Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ ÐºÐµÑˆÑƒ повідомлень.</li> <li> Загальну функцію ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ strEncode() та відповідник API кориÑтувача доповнено варіантом "ShieldBin" захиÑту-ÐµÐºÑ€Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð±Ñ–Ð½Ð°Ñ€Ð½Ð¸Ñ… Ñимволів [\x0-\x8\xB-\xC\x0E-\x1F].</li> <li> TMess: Доповнено функцією перевірки повідомлень щодо Ñ—Ñ… перекладуваноÑÑ‚Ñ– — isMessTranslable(). <ul><li> Доповнено функціÑми контролю кешу перекладу: translCacheGet(), translCacheSet(), translCacheLimits() та влаÑним замком trMessCacheRes. Доповнено функцією translIdxCacheUpd() Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ–Ð½Ð´ÐµÐºÑу та кешу оперативних перекладів повідомлень, Ñ– функціÑми translItSplit(), translItRemTrs() Ñ€Ð¾Ð·Ð´Ñ–Ð»ÐµÐ½Ð½Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚Ñ–Ð² та Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ–Ð· Trs.</li> <li> Доповнено щодо контекÑту перекладу новою функцією trCtx() та об'єктом TrCtxAlloc Ð´Ð»Ñ ÑƒÑ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ.</li> <li> Доповнено Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ даних trD()->translGet() та trDSet()->translSet().</li> <li> Доповнено перекладом ÑиÑтемних повідомлень через Ð¿ÐµÑ€ÐµÐ´Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ trS(), Ñк ще одне поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° I18N().</li> <li> Доповнено функцією messLevelTest().</li> <li> Структуру TMess::Type доповнено елементом "MaxLev" Ð´Ð»Ñ Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¼Ð°ÐºÑимуму типів/рівнів повідомлень.</li> <li> Ð’Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ TMess доповнено mess_PreSave="<PSV>" та mess_TrModifMark="<!>".</li></ul></li> <li> XMLNode: Доповнено новою опцією Ð·Ð±ÐµÑ€Ñ–Ð³Ð°Ð½Ð½Ñ BinShield(0x400) Ð´Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŒÐ¾Ð²Ð°Ð½Ð¾Ð³Ð¾ захиÑту-ÐµÐºÑ€Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð±Ñ–Ð½Ð°Ñ€Ð½Ð¸Ñ… Ñимволів [\x0-\x8\xB-\xC\x0E-\x1F].</li> <li> TConfig,TCfg: Розширено новими параметрами TConfig::{trcSet,setTrcSet}(), TCfg::{isSet,setIsSet}() виÑÐ²Ð»ÐµÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð¸ конфігураційних полів та викориÑÑ‚Ð°Ð½Ð½Ñ Ñƒ чаÑтковому завантажені БД заміÑÑ‚ÑŒ toDefault(); та TConfig::{noTransl,setNoTransl}() Ð´Ð»Ñ Ð³Ð»Ð¾Ð±Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚Ð¸Ð¿Ð¾Ð²Ð¾Ð³Ð¾ перекладу Ñтруктури. Функцію TCfg::setExtVal() доповнено аргументом "toOne".</li> <li> TError: Коди доповнено: DB_TrRemoved (22) Ð´Ð»Ñ Ð¼Ð°Ñ€ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ у БД, DB_ReadOnly (23) впроваджено у SQLite в процеÑÑ– уніфікації, Core_NoNode (5) відÑутноÑÑ‚Ñ– TCntrNode, Tr_ErrTransport (12) Ð´Ð»Ñ Ð¼Ð°Ñ€ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ð¼Ð¸Ð»Ð¾Ðº транÑпорту, Tr_ErrResponse (13) та Tr_ErrDevice (14) Ð´Ð»Ñ Ð·Ð±Ñ–Ð»ÑŒÑˆÐµÐ½Ð½Ñ Ñпецифічних до транÑпорту помилок.</li></ul></li> <li> БД: TBDS::realDBName() доповнено аргументом зворотного перетвореннÑ. <ul><li> Статичні методи TBDS доповнено новою функцією dbPart() Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ‡Ð°Ñтин адреÑи Ñховища та доповнено новою функцією dataDelTbl() загального Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†ÑŒ, також у Конфігураційному Файлі.</li> <li> Доповнено об'єктом елементу Ñтруктури TTable::TStrIt.</li> <li> Загальний SQL-код перенеÑено до нових функцій: TTable::fieldSQLSeek(), TTable::fieldSQLGet(), TTable::fieldSQLSet(), TTable::fieldSQLDel(); із прапорцÑми TTable::SQLReqFlag: SQLNoFlg, SQLOrderForSeek, SQLFirstSkipForSeek.</li> <li> Ð”ÐµÐºÐ»Ð°Ñ€Ð°Ñ†Ñ–Ñ Ñƒ Ñдрі щодо ÑервіÑних визначень, методів та функцій до загального SQL-коду: SEEK_PRELOAD_LIM, tblStrct, seekSess, connRes, fieldFix(), getSQLVal(), setSQLVal().</li> <li> Доповнено функцією Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ñ€Ñ–Ð¾Ñ€Ð¸Ñ‚ÐµÑ‚Ñƒ у переліку TBD::lsPr(), TBD::setLsPr() та віртуальною TTypeBD::lsPr().</li> <li> Доповнено віртуальною функцією Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ <a href="Program_manual.html#DBFeat" title="Special:MyLanguage/Documents/Program manual">влаÑтивоÑтей БД</a> — TTypeBD::features().</li></ul></li> <li> DAQ: Структуру IO::IOFlgs об'єкту TFunction::IO доповнено прапорцем IO::TransltText прÑмого Ð¼Ð°Ñ€ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð’Ð’ Ð Ñдку до перекладу. <ul><li> Функцію {TController,TParameter}::messSet() доповнено транÑпортуваннÑм повідомлень з гори до низу, а також функції КориÑтувацького API SYS.DAQ["Modul"]["Controller"].messSet(), SYS.DAQ["Modul"]["Controller"]["Parameter"].messSet().</li> <li> TCntrNodeObj доповнено функцією lang(), отриманою із другого Ñ€Ñдка загального методу mUserLang.</li> <li> Функції API КориÑтувача доповнено funcSnthHgl() у об'єкті Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð—Ð±Ð¾Ñ€Ñƒ Даних Ñ– Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ñ€Ð°Ð²Ð¸Ð» підÑÐ²Ñ–Ñ‚Ð»ÐµÐ½Ð½Ñ ÑинтакÑиÑу Ð¼Ð¾Ð´ÑƒÐ»Ñ Ñ‚Ð° мови.</li></ul></li> <li> Ðрхіви-ІÑторіÑ: Доповнено варіантом функції "void TArchives::messPut( const TMess::SRec &rec, const string &arch = "" )".</li> <li> ТранÑпорти: Доповнено новою функцією extHostSeek().</li> <li> UI: Доповнено параметром Конфігураційного Файлу "FontSnthHglCode" та відповідними функціÑми TUIS::fontSnthHglCode() Ñ– TUIS::setFontSnthHglCode(). <ul><li> VCAEngine: <ul><li> Функції КориÑтувацького API mime() та mimeSet() доповнено коректними еквівалентами resource() та resourceSet().</li> <li> Об'єкт Проєкту доповнено ÑервіÑним запитом ІнтерфейÑу Контролю "read:/serv/access" щодо перевірки доÑтупу читаннÑ.</li> <li> СервіÑний запит ІнтерфейÑу Контролю "get:/prm/cfg/prj" доповнено параметром "noName" Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð·Ð°Ð¿Ð¸Ñ‚Ñƒ назви проєкту.</li></ul></li></ul></li></ul> <p><b><u>СиÑтема</u></b><br /> </p> <ul><li> FIX:СкладаннÑ: configure.ac: ВерÑÑ–ÑŽ бібліотеки Ñдра збільшено до 3:12:0 та верÑÑ–ÑŽ програми збільшено до 0.9.5. <ul><li> Модульну верÑÑ–ÑŽ підÑиÑтеми "БД" збільшено до 15, підÑиÑтеми "Збір Даних" збільшено до 14.</li> <li> Додано кореневі файлові ÑиÑтеми Debian 11 (chroots) Ð´Ð»Ñ ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ OpenSCADA; додано до ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ubuntu 22.04 LTS та Debian 11 ARM64; та Maemo 5 (Nokia N900) видалено через аварійне Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ ÐºÐ¾Ð¼Ð¿Ñ–Ð»Ñтору у декількох міÑцÑÑ….</li> <li> data/*.xml: Видалено Загальний Параметр TBDS — "SYSStPref".</li> <li> SYS,data/ModelsDB/{AGLKS/oscada_AGLKS.xml,Boiler/oscada_Boiler.xml}: Конфігураційний параметр "Lang2CodeBase" перейменовано у "LangBase" із підтримкою "Lang2CodeBase" до релізу 1.0.</li></ul></li> <li> ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ текÑту та Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸: <ul><li> ПоÑібник "<a href="Quick_start.html" title="Special:MyLanguage/Documents/Quick start">Швидкий Ñтарт</a>" цілковито відревізовано та актуалізовано щодо оÑтанніх змін у LTS, а також доповнено новою Ñекцією "Ð’Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð³Ð¾Ñ‚Ð¾Ð²Ð¾Ð³Ð¾ проєкту OpenSCADA у проÑторі ÑервіÑу-фоні" до влаÑної Ñекції "<a href="Quick_start.html#Demon" title="Special:MyLanguage/Documents/Quick start">Фонове та віддалене Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ â€” Ñервер, Ñередовище Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÐŸÐ›Ðš та віддалена розробка</a>".</li> <li> Документ "<a href="Program_manual.html" title="Special:MyLanguage/Documents/Program manual">ПоÑібник по програмі</a>" доповнено новою Ñекцією "<a href="Program_manual.html#Service" title="Special:MyLanguage/Documents/Program manual">Ð’Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð³Ð¾Ñ‚Ð¾Ð²Ð¾Ð³Ð¾ проєкту OpenSCADA у проÑторі ÑервіÑу-фоні</a>" та відревізовано Ñекцію "<a href="Program_manual.html#Startup" title="Special:MyLanguage/Documents/Program manual">ЗапуÑк та виконаннÑ</a>".</li> <li> Ðовий документ Як "<a href="Create_multi_language_project.html" title="Special:MyLanguage/Documents/How to/Create multi language project">Створити багатомовний проєкт</a>" додано до Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ð¾Ð·Ð°Ð¼ÐµÑ€ÐµÐ¶ÐµÐ²Ð¾.</li> <li> Відревізовано уÑÑ– мітки вихідного коду на кшталт ????, !!!!, ?!?! та Ñ—Ñ… коментарі.</li> <li> Мову Russian,РоÑійÑька,РоÑÑийÑкий перейменовано у Ñ—Ñ— правильну назву mRussian.</li> <li> UI.{VCAEngine,Vision}: "Mime дані" перейменовано у "РеÑурÑи" та "Mime тип" у "MIME".</li></ul></li> <li> <span id="MessRedundTr" title="#MessRedundTr">.,DAQ.DAQGate</span>: Ð ÐµÐ·ÐµÑ€Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ та Ñ—Ñ… транÑÐ¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ DAQ.DAQGate обмежено у глибині запиту повідомлень на Ñ‡Ð°Ñ Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð°Ð±Ð¾ одну годину. <ul><li> Ð ÐµÐ·ÐµÑ€Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ñ€Ñ…Ñ–Ð²Ð°Ñ‚Ð¾Ñ€Ñ–Ð² та DAQ.DAQGate переключено у запиті ініціюючих повідомлень: <ul><li> запит активних порушень;</li> <li> запит архіву у глиб та по Ñ‡Ð°Ñ Ð·Ð°Ð¿Ð¸Ñ‚Ñƒ порушень, без активації порушень;</li> <li> ординарний-періодичний запит оÑтанніх повідомлень, без активації порушень.</li></ul></li></ul></li> <li> Protocol.HTTP,UI.{WebCfg,WebCfgD,WebUser,WebVision}: Доповнено виÑвленнÑм попереднього кориÑтувача Ð´Ð»Ñ Ð¿Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ†Ð¸Ñ… дій до HTTP-модулів із перенеÑеннÑм Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð½ÑŒÐ¾Ð³Ð¾ ÑеанÑу автентифікації кориÑтувача на піÑÐ»Ñ Ð²Ð´Ð°Ð»Ñƒ нову. <ul><li> Ð’ÑÑ– HTTP-модулі адаптовано до Ð¿Ð¾Ð»Ñ ÐºÐ¾Ñ€Ð¸Ñтувача у HTTP-функціÑÑ… із попереднім кориÑтувачем у другому Ñ€Ñдку.</li> <li> FIX:WebVision: Попереднього кориÑтувача наразі викориÑтано у виÑвлені зміни кориÑтувача між звичайними кориÑтувачами та Ð´Ð»Ñ Ð¾Ð´Ð½Ð¾Ð³Ð¾ ÑеанÑу, чим попереджаючи ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ… ÑеанÑів.</li></ul></li> <li> Ð Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð·Ð°Ñ…Ð¸Ñту-ÐµÐºÑ€Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð±Ñ–Ð½Ð°Ñ€Ð½Ð¸Ñ… Ñимволів [\x0-\x8\xB-\xC\x0E-\x1F]: <ul><li> XMLNode: Додано нову опцію Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ BinShield(0x400) Ð´Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŒÐ¾Ð²Ð°Ð½Ð¾Ð³Ð¾ захиÑту-ÐµÐºÑ€Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð±Ñ–Ð½Ð°Ñ€Ð½Ð¸Ñ… Ñимволів [\x0-\x8\xB-\xC\x0E-\x1F], що Ñ” значним Ð´Ð»Ñ WebОглÑдачів.</li> <li> UI.{WebCfgD,WebVision}: Доповнено кодуваннÑм XML трафіку щодо захиÑту-ÐµÐºÑ€Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð±Ñ–Ð½Ð°Ñ€Ð½Ð¸Ñ… Ñимволів через викориÑÑ‚Ð°Ð½Ð½Ñ Ð½Ð¾Ð²Ð¾Ñ— опції "BinShield".</li></ul></li> <li> FIX: strParse() перепиÑано та перевірено у опрацюванні Ð¿Ð¾Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð³Ñ€ÑƒÐ¿Ð¸ Ñимволів при Ñкануванні; та strParse(), strLine(), pathLev() у позиціюванні Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð½Ð° початку наÑтупного елементу та обмеженні по низу в 0; та pathLevEnd() у позиціюванні Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð½Ð° кінці наÑтупного елементу та обмеженні по верху в розмір. TModSchedul::chkAllowMod(),UI.QTCfg,Protocol.HTTP: переключено на викориÑÑ‚Ð°Ð½Ð½Ñ TSYS::pathLevEnd() та TSYS::pathLev() у новій поведінці.</li> <li> ПримуÑове Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð¾ придушеннÑм помилок Ð´Ð»Ñ Ð²ÑƒÐ·Ð»Ñ–Ð², Ñкі немодифіковані перед цією операцією.</li> <li> .,DB,DAQ: Механізм глобального ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ð¹Ð½Ð¾Ð³Ð¾ контекÑту (між ÑтанціÑми) доповнено маркуваннÑм поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° об'єкт оÑтанньої операції вÑтановленнÑ, Ð´Ð»Ñ ÑÐ¿Ñ€Ð¾Ñ‰ÐµÐ½Ð½Ñ Ð¿Ñ–ÑлÑ-маркованого вÑтановленнÑ. <ul><li> DAQ: Як піÑлÑ-Ð¼Ð°Ñ€ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð¾Ð³Ð¾ об'єкту DAQ-параметру додано атрибут "prmTp" із типом параметру, Ñкий надалі викориÑтовуєтьÑÑ Ñƒ коректному виÑвлені зміни типу параметру при подальшому завантажені.</li></ul></li> <li> .,UI.{QTCfg,WebCfgD}: Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐšÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŽ OpenSCADA розширено кориÑтувацькими командами до Таблиць.</li></ul> <p><b><u>БД</u></b><br /> </p> <ul><li> FIX: Об'єкт TBD доповнено внутрішнім прапорцем "mIsFirst" контролю першого ÑƒÐ²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¾Ð±'єкту та що викориÑтано Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ñ€ÐµÑ”Ñтрації таблиці "Trs" за кожного увімкненнÑ-підключеннÑ-перепідключеннÑ.</li> <li> FIX: TBDS::dataDel() виправлено-доповнено видаленнÑм багатьох елементів та доповнено видаленнÑм порожніх вузлів таблиць Конфігураційного Файлу.</li></ul> <p><b><u>Збір Даних</u></b><br /> </p> <ul><li> FIX: Ручний запуÑк об'єктів контролерів визначено щодо деÑких Ñпецифічних гарÑчих дій ÑƒÐ²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¾Ð±'єкту, коли Ñ†Ñ Ð´Ñ–Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ñ‚ÑŒÑÑ Ð²Ñ–Ð´ подвійного здійÑÐ½ÐµÐ½Ð½Ñ Ð·Ð° нормального запуÑку: <ul><li> DAQGate: повторна ÑÐ¸Ð½Ñ…Ñ€Ð¾Ð½Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð²Ñ–Ð´Ð´Ð°Ð»ÐµÐ½Ð¸Ñ… даних джерела за періоду Ñинхронізації >= 0;</li> <li> ModBus: примуÑове Ð¿ÐµÑ€ÐµÑ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð±Ð»Ð¾ÐºÑ–Ð² опитуваннÑ;</li> <li> OPC_UA: примуÑове Ð¿ÐµÑ€ÐµÑ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ»Ñ–ÐºÑƒ елементів моніторингу;</li> <li> Siemens: примуÑове Ð¿ÐµÑ€ÐµÑ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð±Ð»Ð¾ÐºÑ–Ð² опитуваннÑ.</li></ul></li> <li> Тип Ð’Ð’ "ПоверненнÑ" об'єкту TFunction вÑтановлено в Ð›Ð¸ÑˆÐµÐ§Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñƒ вкладці ручного виконаннÑ.</li> <li> FIX:<span id="DAQGate" title="#DAQGate">DAQGate</span>: Доповнено імплементацією аÑинхронного режиму запиÑу. Конфігураційне поле Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ð´Ð°Ð»ÐµÐ½Ð¾Ñ— Ñтанції переведено на проÑтий комбобокÑ. Ð¡Ñ‚Ð°Ñ‚ÑƒÑ Ð¾Ð±'єкту контролеру доповнено лічильником читаннÑ/архівних/запиÑу значень, Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ та ÑтатуÑу буферу запиÑу. <ul><li> FIX: Виправлено у повторному викориÑтанні параметрів із порожніми адреÑами Ð´Ð»Ñ Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ… та доповнено очищеннÑм Ð°Ð´Ñ€ÐµÑ Ð¿Ñ€Ð¸ копіюванні параметрів.</li> <li> FIX: Уніфіковано загалом у Ñинхронізації та виправлено Ñинхронізацію атрибутів, із запобіганнÑм поÑтійній Ñинхронізації відÑутніх параметрів на віддаленому хоÑÑ‚Ñ–.</li></ul></li> <li> FIX:JavaLikeCalc: Попереджено блокуванню деÑких реÑурÑів бібліотечної функції при зміні програми, коли здійÑнювалоÑÑ ÐºÐ¾Ð¼Ð¿Ñ–Ð»Ñцію програми Ð´Ð»Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð¾Ñ— функції.</li> <li> Siemens: Доповнено новою опцією "МакÑимальний розмір блоку запиту, байти" із визначеннÑм макÑимуму запитаного блоку.</li></ul> <p><b><u>ТранÑпорти</u></b><br /> </p> <ul><li> Станції "Ñ€Ñ–Ð²Ð½Ñ Ð¿Ñ–Ð´Ð½ÑÑ‚Ñ‚Ñ Ð½Ð° гору (UpRiseLev)" розщеплено щодо транÑпорту запиту за першим хоÑтом адреÑи "reforwardHost", чим попереджено підвиÑÐ°Ð½Ð½Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð½Ð° довгих підключеннÑÑ… до відÑутніх дуже далеких ÑтанціÑÑ… переÑпрÑмуваннÑ.</li> <li> <span id="SSL" title="#SSL">SSL</span>: Вхідну та вихідну чаÑтину доповнено можливіÑÑ‚ÑŽ Ð²ÐºÐ°Ð·Ð°Ð½Ð½Ñ Ñертифікатів та ключа безпоÑередньо із зовнішнього файлу. Доповнено перевантаженнÑм файлу Ñертифікатів вхідного транÑпорту за його зміни, шлÑхом Ð¿ÐµÑ€ÐµÐ¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ‚Ñ€Ð°Ð½Ñпорту.</li></ul> <p><b><u>ТранÑпортні Протоколи</u></b><br /> </p> <ul><li> FIX:HTTP: Виправлено у читанні HTTP-змінної "accept-language" лише Ñк двоÑимвольний код мови, тож загальний Ñ–Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ð°Ñ”Ñ‚ÑŒÑÑ Ñ‚ÐµÐ¿ÐµÑ€ на FireFox, Ñкий надÑилає тут також код країни.</li> <li> FIX:SelfSystem: У вхідній чаÑтині переключено на Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ ÑƒÑього вхідного Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð´Ð¾ перевірки автентифікації, чим запобігаючи дивному повідомленню про помилку "Помилка формату команди." до хвоÑту повідомлень.</li></ul> <p><b><u>Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐšÐ¾Ñ€Ð¸Ñтувача</u></b><br /> </p> <ul><li> VCAEngine,Vision,WebVision: Запит контролю "openlist:/serv/pg" доповнено атрибутом "pgGrp" (група) відкритої Ñторінки Ð´Ð»Ñ Ð²Ð¸ÑÐ²Ð»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð´ÐµÐºÑ–Ð»ÑŒÐºÐ¾Ñ… Ñторінок у одному контейнері, відтак відкривати оÑтанню та закривати попередні, переважно попереджаючи закриттю вÑÑ–Ñ… вкладених Ñторінок та дозволÑючи вказати-перевизначити Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð¿Ð¾Ñ‚Ñ€Ñ–Ð±Ð½Ð¸Ñ… Ñторінок. <ul><li> <span id="Vision" title="#Vision">Vision</span>: Переопрацьовано також щодо раннього Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ… та визначених Ñторінок у процедурі ініціалізації.</li></ul></li> <li> QTStarter,WebVision,WebCfgD: Qt чаÑтина, у загальній Qt Бібліотеці, та Web доповнено прийнÑÑ‚Ñ‚Ñм Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐºÑту таблиці за Enter та нового Ñ€Ñдка за Ctrl+Enter.</li> <li> FIX:QTCfg,Vision: Попереджено завиÑаннÑм при зупинці за Ñигналом перериваннÑ, переважно із конÑолі, через Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð¾Ñновного потоку Qt у modStop() без qApp->processEvents().</li> <li> QTCfg: ТекÑтові Ð¿Ð¾Ð»Ñ Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð¾ перевіркою та активацією вбудованих правил підÑÐ²Ñ–Ñ‚Ð»ÐµÐ½Ð½Ñ ÑинтакÑиÑу із XML-тегу "SnthHgl". Таблиці доповнено пошуком вказаного Ñ€Ñдка.</li> <li> <span id="VCAEngine" title="#VCAEngine">VCAEngine</span>: <ul><li> Завершено реалізацію Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½ у режимі Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð·Ð° циклами тактуваннÑ, піÑÐ»Ñ ÑпоÑÑ‚ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ð³Ð¾Ð½ÐºÐ¸ за Ñтаном на змінах атрибутів, що призводить до Ð½ÐµÐ²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ñ–Ð·ÑƒÐ°Ð»Ñ–Ð·Ð°Ñ‚Ð¾Ñ€Ð°Ð¼Ð¸: <ul><li> перепиÑано механізму контролю модифікацій;</li> <li> Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ†Ð¸ÐºÐ»Ñ–Ð² Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° фікÑації;</li> <li> Ð·Ð¼ÐµÐ½ÑˆÐµÐ½Ð½Ñ Ð¾Ñновного лічильника обрахунку до uint16;</li> <li> поділ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð»Ñ–Ñ‡Ð¸Ð»ÑŒÐ½Ð¸ÐºÐ° зміни атрибутів та віджету загалом на Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ (uint16) та фікÑації (uint16) = uint32;</li> <li> Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð»Ñ–Ñ‡Ð¸Ð»ÑŒÐ½Ð¸ÐºÐ° зміни при модифікації та читанні-перевірці;</li> <li> підтримка Ð¿ÐµÑ€ÐµÐ²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¾Ñновного лічильника обчиÑÐ»ÐµÐ½Ð½Ñ Ñ‚Ð° Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ñтарих значень лічильника зміни;</li> <li> Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ€Ð¾Ð¶Ð½Ñ–Ð¼ циклам при загальному запиті віджетів;</li> <li> видалено коду попереднього ковзного механізму Ð¼Ð°Ñ€ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ‚Ð¾Ñ‡Ð½Ð¾Ð³Ð¾ щодо виÑÐ²Ð»ÐµÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð¸ атрибутів із дублюваннÑм.</li></ul></li> <li> Операцію ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ð’Ñ–Ð´Ð¶ÐµÑ‚Ñƒ доповнено копіюваннÑм викориÑтаних віджетом реÑурÑів (наразі лише типу ЗображеннÑ).</li> <li> FIX: Ð’ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ð·Ð½Ð°Ñ‡ÐºÐ¸ "<deleted>" до видалених уÑпадкованих включених віджетів перенеÑено до функції Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ‚ÐµÐ¹Ð½ÐµÑ€Ð½Ð¾Ð³Ð¾ віджету, оÑкільки він втрачаєтьÑÑ Ð¿Ñ€Ð¸ операціÑÑ… ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° зараз ви можете проÑто відкатити/накатити Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ‚Ð°ÐºÐ¸Ñ… віджетів.</li> <li> FIX: Виправлено ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ mime даних при копіюванні бібліотек віджетів та проєктів, переміщеннÑм цього ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ð´Ð¾ Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ ÐºÐ¾Ð¿Ñ–Ñ—, із розширеннÑм mime операцій роботою з цілком визначеними БазамиДаних.</li> <li> FIX: Ð—Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ñпадкуванню значень атрибутів Ð´Ð»Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¸Ñ… зв'Ñзків, тож не запиÑувати до Збору Даних вочевидь помилкових значень при гарÑчому редагуванні виконуваних проєктів та Ñ—Ñ… елементів.</li></ul></li> <li> FIX:Vision: Виправлено, або завершено імплементацію, щодо ВІДКÐТУ/ÐÐКÐТУ операцій Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ ÑƒÑпадкованих Віджетів Сторінок Проєктів. <ul><li> Підлаштовано у політиці фокуÑÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ ÑпоÑіб UI.WebVision та доповнено примуÑовим очищеннÑм фокуÑу при втраті, щоб запобігти поверненню фокуÑу при активації вікна, тож ви можете наразі викориÑтовувати подію "ws_FocusIn" Ð´Ð»Ñ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð·Ð¾Ð²Ð½Ñ–ÑˆÐ½Ñ–Ñ… підвікон.</li> <li> Уніфіковано концепцію Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ð´Ð¾Ñ‡Ñ–Ñ€Ð½Ñ–Ñ… віджетів за візуального Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÐ¶Ð¸Ð¼Ñƒ розробки та зафікÑовано це у новому розділі "Візуальне редагуваннÑ" <a href="Modules/Vision.html" title="Special:MyLanguage/Modules/Vision">документації Ð¼Ð¾Ð´ÑƒÐ»Ñ UI.Vision</a>.</li> <li> Запит значень атрибутів розроблюваного віджету перенеÑено до одного великого запиту, чим віддалена розробка Ñтала значно швидшою.</li></ul></li> <li> FIX:WebVision: Методи ÑеанÑу mUser та mUserOrig перенеÑено під mutex замок даних, оÑкільки тут може бути аварійне Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð·Ð° активної маніпулÑції кориÑтувачами. <ul><li> FIX: ВиглÑд "Комбо" типу "Ð Ñдок" та типи "Перелік" Ñ– "Комбо" доповнено ÑтвореннÑм елементів Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ñутніх у переліку обраннÑ.</li> <li> FIX: Вигулькні вікна ÐºÐ°Ð»ÐµÐ½Ð´Ð°Ñ€Ñ Ñ‚Ð° редагованого комбо доповнено перевіркою геометрії чим запобігаючи переповненню головного вікна; та Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð²Ð¸Ð³ÑƒÐ»ÑŒÐºÐ½Ð¸Ñ… вікон переведено цілком на натиÑк мишею поза вікна, разом із рештою вигулькних вікон.</li> <li> FIX: Покращено та виправлено щодо кориÑÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ð³Ð»Ñдом Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð¿Ñ€Ð¸Ð¼Ñ–Ñ‚Ð¸Ð²Ñƒ FormEl та переважно у редагуванні текÑту: правильне Ð¿Ñ–Ð´Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ ÑˆÐ¸Ñ€Ð¸Ð½Ð¸ та мінімальну виÑоту вÑтановлено у 40 пікÑелів, FIX: виправлено у визначені Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ÑÐ¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñтовпчика "0" Ñк виÑхідне-типове та "1" Ñк низхідне із гори, Ñк поведінка у UI.Vision та ÑортуваннÑ-порівнÑÐ½Ð½Ñ Ð½Ð¾Ð¼ÐµÑ€Ñ–Ð² (ціле,реальне) імплементовано окремо.</li> <li> Доповнено відображеннÑм ÑтатуÑу ПередньогоПлану у полі ÑтатуÑу ÑеанÑу із його запитом-плануваннÑм при відображені полÑ.</li></ul></li></ul> <h4><span class="mw-headline" id=".D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.BD.D1.96_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_3"><span class="mw-headline-number">7.4.1</span> СервіÑні оновленнÑ</span></h4> <ul><li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2862" rel="nofollow noreferrer noopener" target="_blank">п'Ñте (5) від 03.12.2022</a>.</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2855" rel="nofollow noreferrer noopener" target="_blank">четверте (4) від 23.10.2022</a>.</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2849" rel="nofollow noreferrer noopener" target="_blank">трете (3) від 03.09.2022</a>.</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2843" rel="nofollow noreferrer noopener" target="_blank">друге (2) від 08.08.2022</a>;</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2839" rel="nofollow noreferrer noopener" target="_blank">перше (1) від 24.07.2022</a>.</li></ul> <h3><span class="mw-headline" id=".5B14.04.7529.2F14.06.2021.5D_.D0.A7.D0.95.D0.A2.D0.92.D0.95.D0.A0.D0.A2.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="mw-headline-number">7.5</span> [14.04.7529/14.06.2021] ЧЕТВЕРТЕ оновленнÑ</span></h3> <p>Це Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ <a href="Release_0.9.html" title="Special:MyLanguage/Documents/Release 0.9">релізу 0.9 LTS</a> виправлÑÑ” Ð±Ñ–Ð»Ñ 45 помилок та додає деÑкі удоÑконаленнÑ, Ñкі цілком ви можете почитати у <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2758" rel="nofollow noreferrer noopener" target="_blank">протоколі змін оновленнÑ</a>. </p><p><a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> <b><u>Важливі дії кориÑтувача за оновленнÑм</u></b><br /> </p> <ul><li> FIX:SYS: Загальне конфігураційне поле "WorkDir" попереджено від Ð¼Ð°Ñ€ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ñк модифіковане при перемиканні проекту, чим Ñ– від Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ñƒ конфігураційному файлі, але відÑутній механізм автоматичного Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ†ÑŒÐ¾Ð³Ð¾ Ð¿Ð¾Ð»Ñ Ñ–Ð· конфігураційного файлу Ñтарих проектів.</li></ul> <dl><dd> <b><span style="color: red">=</span></b>> видаліть вручну загальне конфігураційне поле "WorkDir" Ñкщо воно з'ÑвилоÑÑ Ñ‚Ð°Ð¼ помилково та ви маєте проблеми викориÑÑ‚Ð°Ð½Ð½Ñ Ñ‚ÐµÐº чужих проектів цим проектом.</dd></dl> <p><b><u>Ðові та значно оновлені чаÑтини</u></b><br /> </p> <ul><li> Ядро OpenSCADA: 3:9:0 => <b>3:10:0</b></li></ul> <dl><dd> (<a href="#Translations">Ñ€ÐµÐ²Ñ–Ð·Ñ–Ñ Ð¼ÐµÑ…Ð°Ð½Ñ–Ð·Ð¼Ñƒ перекладів</a>)</dd></dl> <ul><li> ПідÑиÑтема "ТранÑпорти" OpenSCADA: 17 => <b>18</b></li> <li> {DAQ,Protocol}.OPC_UA,libOPC_UA: 1.7 => <b>2.1</b>, 1.10 => <b>2.1</b>, 1.2 => <b>2.1</b></li></ul> <dl><dd> (<a href="#OPC_UA">доповнено реалізацією ÑервіÑу Publish, підтримкою шматків (CHUNKS) на клієнтÑькій чаÑтині Збору Даних та загальним переглÑдом коду у цьому процеÑÑ–</a>)</dd></dl> <ul><li> DAQ.ModBus: 2.12 => <b>3.1</b></li> <li> DAQ.DAQGate: 2.2 => <b>2.3</b></li> <li> DAQ.Siemens: 3.5 => <b>3.6</b></li> <li> Transport.Sockets: 4.2 => <b>4.3</b></li> <li> Transport.Serial: 2.5 => <b>2.6</b></li> <li> Transport.SSL: 3.2 => <b>3.3</b></li> <li> UI.WebCfgD: 1.5 => <b>2.0</b></li> <li> UI.VCAEngine: 6.9 => <b>7.1</b></li> <li> UI.QTStarter: 5.8 => <b>5.9</b></li> <li> UI.QTCfg: 5.1 => <b>5.4</b></li></ul> <dl><dd> (<a href="#Table">загальний переглÑд та переробка таблиць</a>)</dd></dl> <ul><li> UI.Vision: 7.7 => <b>7.13</b></li></ul> <dl><dd> (<a href="#Table">загальний переглÑд та переробка таблиць в Qt загалом та виглÑду Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð¿Ñ€Ð¸Ð¼Ñ–Ñ‚Ð¸Ð²Ñƒ FormEl СВУ</a>)</dd></dl> <ul><li> UI.WebVision: 5.8 => <b>6.2</b></li></ul> <dl><dd> (<a href="#Table">загальний переглÑд та переробка таблиць виглÑду Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð¿Ñ€Ð¸Ð¼Ñ–Ñ‚Ð¸Ð²Ñƒ FormEl СВУ</a>)</dd></dl> <ul><li> LibsDB.OscadaLibs.DevLib.IEC62056: 1.0 => <b>1.1</b></li> <li> LibsDB.vcaBase.Main: 2.0 => <b>2.1</b> <ul><li> storeHouse: <b>1.0</b></li> <li> RootPgSo: 2.3 => <b>2.4</b></li></ul></li></ul> <p><b><u>OpenSCADA бібліотеки та проекти</u></b><br /> </p> <ul><li> LibsDB.vcaBase,AGLKS.vca: Main.RootPgSo: Доповнено щодо: <ul><li> віджету "alarms" на оÑнові примітиву "Протокол" із можливіÑÑ‚ÑŽ ввімкнути/вимкнути;</li> <li> Ð´Ð¾Ð´Ð°Ð½Ð½Ñ Ð¾Ð¿Ñ†Ñ–Ð¾Ð½Ð°Ð»ÑŒÐ½Ð¾Ñ— функції Ð¿Ð¾Ð²ÐµÑ€Ð½ÐµÐ½Ð½Ñ Ð´Ð¾ типового кориÑтувача піÑÐ»Ñ Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¾Ð³Ð¾ чаÑу неактивноÑÑ‚Ñ– у атрибуті "defUser";</li> <li> перемкнено до невідноÑного алгоритму обчиÑÐ»ÐµÐ½Ð½Ñ Ð²ÐµÑ€Ñ‚Ð¸ÐºÐ°Ð»ÑŒÐ½Ð¾Ñ— позиції та виÑоти головної мнемоÑхеми.</li></ul></li> <li> LibsDB.OscadaLibs: DevLib.IEC62056: ПерепиÑано у Ñинхронний режим (запит-відповідь) Ð´Ð»Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸ декількох приÑтроїв на одній поÑлідовній шині.</li> <li> LibsDB.vcaBase: <ul><li> Бібліотеку "ОÑновна" доповнено новою Ñторінкою реалізації "Складу (storeHouse)".</li> <li> Main.RootPgSo: ПеріодичніÑÑ‚ÑŒ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÐºÐ°Ð´Ñ€Ñƒ піднÑто до 1000 міліÑекунд піÑÐ»Ñ Ð´Ð¾Ð´Ð°Ð½Ð½Ñ Ñ€Ð°Ð½Ð½ÑŒÐ¾Ð³Ð¾ Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ð´Ñ–Ð¹. Значним чином перемкнено із клавіатурних поÑлідовноÑтей "Ctrl+?" на "CtrlAlt+?".</li></ul></li> <li> AGLKS.vca: Сторінку проекту /prj_AGLKS/pg_so/pg_4/pg_mn/pg_1 перейменовано у /prj_AGLKS/pg_so/pg_4/pg_mn/pg_CM101 на кшталт із рештою.</li></ul> <p><b><u>API</u></b><br /> <i>!!!!:Зміни</i>: </p> <ul><li> SYS: Функцію TSYS::curTime() доповнено аргументом Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð¶ÐµÑ€ÐµÐ»Ð° годинника із викориÑтаннÑм функції clock_gettime(). Ð’Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ EVAL_RFlt доповнено ÑуфікÑом "f".</li> <li> Mess: Функцію перекладу TMess::translSet() доповнено аргументом "srcFltr" фільтрації за джерелами.</li> <li> ТранÑпорти: Функцію протоколу Ð’Ð’ pushLogMess() доповнено аргументами "data" та "dataDir".</li></ul> <p><i>ДоповненнÑ</i>: </p> <ul><li> Mess: Ð‘Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… відокремлено від Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð²ÑÑ–Ñ… повідомлень у dtRes.</li> <li> SYS: Функції API кориÑтувача доповнено функцією lang() швидкого Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ ÑиÑтемної мови. <ul><li> Доповнено функцією TSYS::curTimeN().</li> <li> .,DAQ.{LogicLev,ModBus,Siemens}: Доповнено та викориÑтано глобальну поÑтійну DAQ_APER_FRQ предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ‡Ð°Ñтоти аперіодичних викликів, на кшталт f_start, періодичних процеÑів.</li></ul></li> <li> Безпека: Об'єкт кориÑтувача доповнено функцією КориÑтувацького API auth() Ð´Ð»Ñ Ð°Ð²Ñ‚ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ— за паролем.</li> <li> ТранÑпорти: Вхідні та вихідні об'єкти транÑпортів доповнено атрибутами протоколу Ð’Ð’: "mLogLstDt", "mLogLstDtTm".</li> <li> DAQ: Об'єкт DAQ-параметру доповнено інформаційним полем мітки чаÑу зміни із його макÑимальним значеннÑм на об'єкті контролеру, за допомогою нового конфігураційного Ð¿Ð¾Ð»Ñ Ð‘Ð” "TIMESTAMP" об'єкту параметру.</li></ul> <p><b><u>СиÑтема</u></b><br /> </p> <ul><li> FIX:СкладаннÑ:configure.ac: ВерÑÑ–ÑŽ бібліотеки Ñдра збільшено до 3:10:0 та верÑÑ–ÑŽ програми збільшено до 0.9.4.</li> <li> ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ текÑту та Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸: <ul><li> rom_as@oscada.org замінено на roman@oscada.org вÑюди у вихідних.</li> <li> Документ "Modules/OPC_UA" цілковито відревізовано Ð´Ð»Ñ Ð²ÐµÑ€ÑÑ–Ñ— модулів 2.1 та перекладу.</li></ul></li> <li> <span id="Translations" title="#Translations">Вкладку "Переклади"</span> дещо відревізовано, доповнено актуальним ÑтатуÑом, доповнено контекÑтною допомогою та менеджер перекладів доповнено щодо:</li></ul> <dl><dd><dl><dd><ul><li> Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ñ‡Ð°Ñу Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– за prmInterf_TM (7 Ñекунд);</li> <li> конфігураційного Ð¿Ð¾Ð»Ñ Ð¿Ñ€Ð¾Ð¿ÑƒÑку кількоÑÑ‚Ñ– верхніх повідомлень;</li> <li> вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ лише до фільтрованих джерел;</li> <li> перевірка вміÑту на збіг лише Ð´Ð»Ñ Ñ„Ñ–Ð»ÑŒÑ‚Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ… джерел;</li> <li> пропуÑк помилок відÑутноÑÑ‚Ñ– джерел.</li></ul></dd></dl> <ul><li> Функцію перекладу TMess::translSet() попереджено від розповÑÑŽÐ´Ð¶ÐµÐ½Ð½Ñ Ð³Ñ€ÑƒÐ¿Ð¾Ð²Ð¸Ñ… повідомлень, змінених не із менеджеру перекладу.</li></ul></dd></dl> <ul><li> FIX:.,BD.LDAP,Archive.{DBArch,FSArch},DAQ.{ModBus,MMS},{DAQ,Protocol}.OPC_UA,UI.Vision: Дещо очищено від попереджень ÑкладаннÑ.</li> <li> FIX: Ð’Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ EVAL_RFlt доповнено ÑуфікÑом "f" Ð´Ð»Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¾Ð²Ð¾Ð³Ð¾ порівнÑÐ½Ð½Ñ double EVAL_RFlt зі збереженим float значеннÑм, виправлÑÑ” роботу архіватору Archive.FSArch із типами значень float у виÑвлені EVAL.</li> <li> FIX:Mess: Ð‘Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… відокремлено від Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð²ÑÑ–Ñ… повідомлень у dtRes Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ ÐºÐ¾Ð½ÐºÑƒÑ€ÐµÐ½Ñ‚Ð½Ð¸Ð¼ блокуваннÑм при активній роботі із перекладами. Ðтрибути mLang2CodeBase, mLang2Code перемкнено на це нове блокуваннÑ.</li> <li> data/openscada-proj.in: Перемкнено у поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð²Ð¼Ñ–Ñту КориÑтувацької LibsDB на ÑиÑтемні бібліотеки, зі зміÑтом лише на читаннÑ, заміÑÑ‚ÑŒ копіюваннÑ.</li></ul> <p><b><u>Збір Даних</u></b><br /> </p> <ul><li> ModBus,Siemens: Перемкнено, у формуванні Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ "f_frq", на викориÑÑ‚Ð°Ð½Ð½Ñ Ñ–Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ñ–Ñ— реального Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð·Ð°Ð²Ð´Ð°Ð½Ð½Ñ.</li> <li> <span id="OPC_UA" title="#OPC_UA">{DAQ,Protocol}.OPC_UA.{.,libOPC_UA} </span>: Доповнено реалізацією ÑервіÑу Publish, підтримкою шматків (CHUNKS) на клієнтÑькій чаÑтині Збору Даних та загальним переглÑдом коду в процеÑÑ– цього:</li></ul> <dl><dd><dl><dd> <i>КЛІЄÐТ</i>:</dd></dl> <ul><li> Ð´Ð¾Ð´Ð°Ð½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñ–Ð² (елементів моніторингу) переÑунено із attrPrc() безпоÑередньо до enable() та Ñка запуÑкаєтьÑÑ Ð¿Ñ€Ð¸ запуÑку об'єкту контролеру</li> <li> ... та Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚Ñ–Ð² покращено оновленнÑм опиÑу, прапорців та зв'ÑзуваннÑ;</li> <li> збір даних уніфіковано опрацюваннÑм у функції параметру upVal()</li> <li> ... та запиту значень функцією об'єкту контролеру getValMIt() із підтримкою МаÑивів</li> <li> ... чим впритул приготовано до Ð²Ð±ÑƒÐ´ÑƒÐ²Ð°Ð½Ð½Ñ Ð»Ð¾Ð³Ñ–Ñ‡Ð½Ð¾Ð³Ð¾ типу параметрів;</li> <li> об'єкти параметрів Збору Даних активовано Ð´Ð»Ñ Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ–Ð½ÑˆÐ¸Ñ… параметрів;</li> <li> вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ EVAL до вÑÑ–Ñ… атрибутів перевірено у вÑÑ–Ñ… режимах;</li> <li> Ñтруктурні змінні, у оглÑдачі Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ DAQ-параметру, дозволені до Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ñ—Ñ… елементів окремо;</li> <li> розбір переліку змінних DAQ-параметрів вÑтановлено у цілковитий розбір із пропуÑком порожніх Ñ€Ñдків;</li> <li> об'єкт DAQ-контролеру доповнено закриттÑм ÑеанÑу та безпечного каналу при його зупинці;</li> <li> загальний ÑÑ‚Ð°Ñ‚ÑƒÑ Ð¾Ð±'єкту контролеру доповнено деталізованою інформацією щодо викориÑтаного каналу безпеки, ÑеанÑу, підпиÑки та опрацьованими елементами моніторингу;</li> <li> Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð¿Ð¸Ñ‚Ñƒ перейменовано у resOPC.</li></ul> <dl><dd> <i>СЕРВЕР</i>:</dd></dl> <ul><li> об'єкт OPC-UA Серверу доповнено вкладкою загального ÑтатуÑу Ñерверу із інформацією щодо активноÑÑ‚Ñ– каналів безпеки;</li> <li> об'єкт Вузла EndPoint доповнено загальним ÑтатуÑом із інформацією щодо активноÑÑ‚Ñ– ÑеанÑів та підпиÑок, а також періодичніÑÑ‚ÑŽ Ñ– чаÑом Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð·Ð°Ð²Ð´Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´Ð¿Ð¸Ñок.</li></ul> <dl><dd> <i>БІБЛІОТЕКÐ</i>:</dd></dl> <ul><li> уніфіковано у визначені типового Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ‡Ð°Ñу Ð¶Ð¸Ñ‚Ñ‚Ñ ÐºÐ°Ð½Ð°Ð»Ñƒ безпеки, Ñкий вÑтановлено у 300000 мÑ;</li> <li> типовий LifeTimeCounter підпиÑок вÑтановлено у 2400;</li> <li> об'єкт NodeId доповнено функцією прÑмого порівнÑÐ½Ð½Ñ operator==();</li> <li> функцію XML_N::childClear() доповнено результатом Ð¿Ð¾Ð²ÐµÑ€Ð½ÐµÐ½Ð½Ñ Ñ‚Ð¾Ð³Ð¾ Ñамого об'єкту XML_N Ð´Ð»Ñ Ð¿Ð¾Ñ”Ð´Ð½Ð°Ð½Ð½Ñ;</li> <li> функцію curTime() доповнено аргументом Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð¶ÐµÑ€ÐµÐ»Ð° годинника із викориÑтаннÑм функції clock_gettime();</li> <li> короткі функції доповнено str2int() та str2uint();</li> <li> деÑкі Ð¿Ð¾Ð»Ñ Ð¿ÐµÑ€ÐµÐ¹Ð¼ÐµÐ½Ð¾Ð²Ð°Ð½Ð¾: publInterv у publInterval, cntrLifeTime у lifetimeCnt, cntrKeepAlive у maxKeepAliveCnt, maxNotPerPubl у maxNtfPerPubl, en у publEn;</li> <li> Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñлова "POOL" на "POLL".</li></ul> <dl><dd> <i>БІБЛІОТЕКÐ_КЛІЄÐТ</i>:</dd></dl> <ul><li> Client::reqService() доповнено мета-командою "CloseALL" Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð¿Ð¾Ñ‚Ð¾Ñ‡Ð½Ð¾Ð³Ð¾ ÑеанÑу та каналу безпеки;</li> <li> функцію Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ ÐºÐ»Ñ–Ñ”Ð½Ñ‚Ñьких ÑервіÑів protIO() адаптовано до роботи у аÑинхронному режимі (не запит);</li></ul> <dl><dd><ul><li> функцію Client::messIO() розширено аргументом таймауту із визначеннÑм також режиму запиту;</li> <li> Ð·Ð°Ð¿Ð¸Ñ Ð´Ð¾ каналу та Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ–Ð· нього відокремлено у обробці MSG пакетів;</li> <li> Ð°Ð´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ безпеки до роботи зі змішаним вхідним буфером;</li> <li> Ð¿ÐµÑ€ÐµÐ¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð¾Ñновного ÑервіÑного запиту "OPN" під Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ через надÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½ÑŒ вÑередині Publish активноÑÑ‚Ñ–.</li></ul></dd></dl> <ul><li> реалізовано ÑÐµÑ€Ð²Ñ–Ñ Publish на боці клієнту:</li></ul> <dl><dd><ul><li> об'єкт "Client" доповнено реалізацією підоб'єкту "Subscr" (але зберігаєтьÑÑ Ñƒ Client::SClntSess) із функціÑми: activate(), monitoredItemAdd() та monitoredItemDel();</li> <li> об'єкт "Client" доповнено функцією poll() із:</li></ul> <dl><dd><ul><li> уніфікацією Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½ÑŒ у обох режимах Read та Publish;</li> <li> перевіркою втрати вÑÑ–Ñ… Publish запитів протÑгом OpcUa_ClntPublishResentCntr(2) Ñпроб-чаÑу Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ð¶Ð¸Ð²Ð¸Ð¼;</li> <li> Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿ÑƒÐ»Ñƒ Publish.</li></ul></dd></dl> <ul><li> об'єкт Client::Subscr::MonitItem додано Ñк предÑтавник елементів моніторингу із доÑтупом з під загального Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ ÐºÐ»Ñ–Ñ”Ð½Ñ‚Ñьких реÑурÑів;</li></ul> <dl><dd><ul><li> ÑервіÑні запити доповнено реалізацією, включно із опрацюваннÑм відповідей: CreateSubscription, DeleteSubscriptions, CreateMonitoredItems, Publish, Poll;</li> <li> реалізовано та перевірено у підтримці безпечних політик за Publish;</li> <li> цільовий пул Publish запитів на підпиÑку вÑтановлено у віртуальній функції publishReqsPool() із типовим значеннÑм 2.</li></ul></dd></dl> <ul><li> доповнено реалізацією шматків (CHUNKS) Ñк у запитах, так Ñ– відповідÑÑ…;</li> <li> цілковито відревізовано та очищено загальну функцію запиту reqService() від дублікатів аргументів та параметрів:</li></ul> <dl><dd><ul><li> доповнено відновленнÑм ÑеанÑів при перепідключенні каналу безпеки;</li> <li> уніфіковано Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð¿Ð¾Ñ‚Ð¾Ñ‡Ð½Ð¾Ð³Ð¾ ÑеанÑу та каналу безпеки.</li></ul></dd></dl> <ul><li> об'єкт клієнту доповнено загальним блокуваннÑм реÑурÑів mtxData;</li> <li> влаÑтивіÑÑ‚ÑŒ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ "timeoutHint" вÑтановлено у 0 Ð´Ð»Ñ Ð²ÑÑ–Ñ… повідомлень;</li> <li> запит Read повернуто до "плаÑкого" запиту із обмеженнÑм лише у CHUNKS;</li> <li> помилку OpcUa_BadSecureChannelIdInvalid додано до Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ ÐºÐ°Ð½Ð°Ð»Ñƒ безпеки;</li> <li> Client::SClntSess::{sessOpen,lstMessReq} перейменовано у {secChnlOpenTm,secLstMessReqTm}</li> <li> ... та попереджено від Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ñ– Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÑеанÑу та каналу безпеки;</li> <li> доповнено налагоджувальними повідомленнÑми помилок запитів.</li></ul></dd> <dd> <i>БІБЛІОТЕКÐ_СЕРВЕР</i>:</dd></dl> <ul><li> Ñерверну чаÑтину адаптовано до роботи із UAExpert 1.5 щодо: вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñƒ AId_Descr DAQ-Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñƒ тип OpcUa_LocalizedText, Ð´Ð¾Ð´Ð°Ð½Ð½Ñ Ð´ÐµÐºÐ»Ð°Ñ€Ð°Ñ†Ñ–Ñ— цілочиÑельного типу OpcUa_IntAuto та OpcUa_UIntAuto;</li> <li> Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´Ð¿Ð¸Ñок повернуто до Ñ—Ñ… Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ñƒ окремому Ð·Ð°Ð²Ð´Ð°Ð½Ð½Ñ Ñ‚Ð° функції subScrCycle() щодо:</li></ul> <dl><dd><ul><li> правильного Ñ€Ð°Ñ…ÑƒÐ²Ð°Ð½Ð½Ñ Ð²ÑÑ–Ñ… таймаутів Ð´Ð»Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ;</li> <li> Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿ÐµÑ€Ñ–Ð¾Ð´Ð¸Ñ‡Ð½Ð¾ÑÑ‚Ñ– підпиÑки та публікації;</li> <li> перевірки Ñтану пов'Ñзаних ÑеанÑів та каналів безпеки щодо Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð¿Ñ–Ð´Ð¿Ð¸Ñок.</li></ul></dd></dl> <ul><li> але публікацію залишено на Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ñƒ активноÑÑ‚Ñ– вхідного каналу та функції Server::EP::publishCall() із попередженнÑм Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Publish Ð´Ð»Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¾Ð²Ð¸Ñ… та чужих ПідпиÑок, через перевірку inPrtId, sesTokId та isSecCnlAct;</li> <li> ÑƒÐ½Ñ–Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð¡ÐµÐ°Ð½Ñу щодо: пов'ÑÐ·Ð°Ð½Ð½Ñ ÑеанÑів із каналами безпеки переключено на один заміÑÑ‚ÑŒ маÑиву, перевірку ÑеанÑу вÑÑ–Ñ… повідомлень доповнено попередженнÑм викориÑÑ‚Ð°Ð½Ð½Ñ Ñ‡ÑƒÐ¶Ð¸Ñ… підключень;</li> <li> не оÑтанні шматки пакету переключено на відправку прÑмо, щоб не додавати до одного TCP-пакету;</li> <li> EP::mtxData Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»ÑŽÑ‡ÐµÐ½Ð¾ у PTHREAD_MUTEX_RECURSIVE;</li> <li> канали безпеки обмежено кількіÑÑ‚ÑŽ OpcUa_SecCnlLimit(10) та чергу публікацій кількіÑÑ‚ÑŽ OpcUa_ServerMaxPublishQueue(10);</li> <li> EP::secSize() перейменовано у EP::secN() та додано EP::sessN(), EP::subscrN() Ñ– chnlList();</li> <li> Server.SecCnl.{TokenId,TokenIdPrev} перейменовано у Server.SecCnl.{tokenId,tokenIdPrev}.</li></ul></dd></dl> <ul><li> ModBus: Вихідна чаÑтина RTU варіанту протоколу доповнена раннім перериваннÑм Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð°ÐºÐµÑ‚Ñ–Ð² Ñтандартних функцій [ERR,1...6,15,16], що збільшує загальну пропуÑкну ÑпроможніÑÑ‚ÑŒ удвічі. <ul><li> Ð’Ð’ параметрів Логічного Ð Ñ–Ð²Ð½Ñ ÑƒÐ²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð¾ до перекладу, Ð´Ð»Ñ Ð½Ðµ пов'Ñзаних Ñ€Ñдків та на кшталт до DAQ.LogicLev.</li> <li> Розбір атрибутів Збору Даних перемкнуто на викориÑÑ‚Ð°Ð½Ð½Ñ TSYS::strLine() та TSYS::strParse(), чим дозволено Ñимвол ':' у назві та порожні Ñ€Ñдки у текÑÑ‚Ñ–.</li></ul></li> <li> DAQGate: Режими Ñинхронізації доповнено режимом Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ñинхронізації загалом Ð´Ð»Ñ Ð¾Ð±'єктів збережених у кеші, шлÑхом дозволу Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ <b>-1</b> конфігураційного Ð¿Ð¾Ð»Ñ "Період Ñинхронізації з віддаленою Ñтанцією, Ñекунд".</li></ul> <p><b><u>Ðрхіви-ІÑторіÑ</u></b><br /> </p> <ul><li> FIX:FSArch: Критично виправлено Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² архіву значень, при Ñпробі запиÑу Ñ—Ñ… ІД до нульового Ñ€Ñдку.</li> <li> DBArch: Ðрхіватори повідомлень доповнено конфігураційним полем "Унікальні та недублюючі Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð»Ð¸ÑˆÐµ за чаÑом та категорією". <ul><li> FIX: Виправлено Ð¿Ð°Ð´Ñ–Ð½Ð½Ñ Ð¿Ñ€Ð¸ опрацюванні груп архіватору значень через Ð½ÐµÐ¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð·Ð²'ÑÐ·ÑƒÐ²Ð°Ð½Ð½Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ— полів таблиці (TConfig) під блокуваннÑм та Ð½ÐµÐ±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— ModVArch::grpLimits() у reqRes.</li></ul></li></ul> <p><b><u>ТранÑпорти</u></b><br /> </p> <ul><li> Протокол Ð’Ð’, у вхідній та вихідній чаÑтинах, розширено та доповнено: <ul><li> комбінуваннÑм даних пакетів з однаковим напрÑмком та адреÑою даних протÑгом prmWait_TM (5 Ñекунд);</li> <li> мікроÑекундну чаÑтину чаÑу зафікÑовано у 6(шіÑтьох) Ñимволах;</li> <li> Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… доповнено Ñимволом ÑпрÑмуваннÑ;</li> <li> обмеженнÑм розміру одного блоку Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð½Ð¾Ð²Ð¸Ð¼ конфігураційним полем;</li> <li> значним підвищеннÑм продуктивноÑÑ‚Ñ–, через викориÑÑ‚Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ´Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¾Ð³Ð¾ буферу.</li></ul></li> <li> FIX:Serial: Вихідний транÑпорт виправлено у очікуванні між запитами щодо Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ reqRetrMult*wCharTm Ñк міліÑекунди.</li> <li> FIX:Sockets: ВиÑвлено помилку "Обрив каналу (32)" при запиÑу, піÑÐ»Ñ Ð²Ñ–Ð´'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ñерверу, тож Ñпроби Ð¿ÐµÑ€ÐµÐ¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð²Ñтановлено у 2 за (kz <= 0).</li></ul> <p><b><u>Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐšÐ¾Ñ€Ð¸Ñтувача</u></b><br /> </p> <ul><li> FIX:<span id="Table" title="#Table">Загальний переглÑд та переробка таблиць в Qt Ñ– Web загалом та виглÑду Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð¿Ñ€Ð¸Ð¼Ñ–Ñ‚Ð¸Ð²Ñƒ FormEl СВУ</span>:</li></ul> <dl><dd><ul><li> QTStarter,QTCfg,Vision: Загальний бібліотечний ÐºÐ»Ð°Ñ TableDelegate значним чином покращено у роботі на QTCfg та Vision:</li></ul> <dl><dd><ul><li> доповнено влаÑними кориÑтувацькими ролÑми SelectRole, TextLimRole та OneLineString;</li> <li> Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ ÐºÐ»Ñ–Ñ‚Ð¸Ð½Ð¾Ðº доповнено фоновим кольором через читаннÑм-заÑтоÑÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¸Ñ… ролей;</li> <li> чиÑельні типи (ціле та реальне) доповнено примуÑовим центруваннÑм;</li> <li> Ñтрокові типи доповнено опціÑми Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° завертаннÑм Ñлів із ролі Qt::TextAlignmentRole;</li> <li> доповнено підтримкою візуального Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ð´Ð¾Ð²Ð³Ð¸Ñ… текÑтів влаÑною роллю TextLimRole та типове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ñтановлено у 300 Ñимволів через додаткове Ð¿ÐµÑ€ÐµÐ²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ sizeHint().</li></ul></dd></dl> <ul><li> FIX: ВиглÑд "ТаблицÑ" примітиву "FormEl":</li></ul></dd></dl> <dl><dd><dl><dd><ul><li> VCAEngine,QTStarter,Vision,WebVision: Доповнено новим типом клітинки 't'-текÑÑ‚, переважно Ð´Ð»Ñ Ð¼Ð¾Ð¶Ð»Ð¸Ð²Ð¾ÑÑ‚Ñ– Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð¸Ð¿Ñƒ 's'-Ñ€Ñдок натиÑканнÑм Enter.</li> <li> VCAEngine,Vision,WebVision: Доповнено опцією "prec" проÑтору Ñтовпчика, Ñ€Ñдка та клітинки Ð´Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŽ точноÑÑ‚Ñ– реальних значень; та реалізацією атрибуту "align" Ñтовпчика та клітинки.</li> <li> WebVision,Vision: Доповнено перемиканнÑм таблиць у Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿Ð¾Ð´Ð²Ñ–Ð¹Ð½Ð¾Ð¼Ñƒ зберіганню вихідного вміÑту за його розміру більш ніж 10000.</li> <li> FIX:Vision: ВикориÑÑ‚Ð°Ð½Ð½Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ делегату таблиці із можливіÑÑ‚ÑŽ багаторÑдкового редагуваннÑ.</li></ul> <dl><dd><ul><li> ВдоÑконалено Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñтовпців, Ñ€Ñдків та клітинок при оновлені та загалом:</li></ul> <dl><dd><ul><li> обмеженнÑм візуального розміру вміÑту клітинки 300 Ñимволами та виÑоти Ñ€Ñдків у 70% від загального розміру таблиці;</li> <li> більш точним вирівнюваннÑм ширини Ñтовпців;</li> <li> підлаштуваннÑм у режимі розробки, а також при видимоÑÑ‚Ñ– вертикального заголовку;</li> <li> щільним заповненнÑм таблиці через Ð²Ñ€Ð°Ñ…ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ñƒ видимої Ñмуги вертикального гортаннÑ;</li> <li> підлаштуваннÑм лише піÑÐ»Ñ Ñ†Ñ–Ð»ÐºÐ¾Ð²Ð¸Ñ‚Ð¾Ñ— зміни розміру таблиці, чим також дозволивши ручну зміну Ñтовпців та Ð´Ð»Ñ Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ñ‚Ð°ÐºÐ¾Ð³Ð¾-правильного Ð¿Ñ–Ð´Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð²Ð¶Ð´Ð¸.</li></ul></dd></dl> <ul><li> Реалізовано "легке" Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð¸ ширини та оновленнÑ:</li></ul> <dl><dd><ul><li> "легке" Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ð±ÐµÐ· Ð¿ÐµÑ€ÐµÐ¿Ñ–Ð´Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñтовпців за кожного оновленнÑ, лише за: поÑви першого Ñ€Ñдка, зміни кількоÑÑ‚Ñ– Ñтовпців та зміни заголовку ÑтовпцÑ, зміни шрифту та зміни розміру;</li> <li> заÑтоÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ñ–ÐºÑованої ширини ÑÑ‚Ð¾Ð²Ð¿Ñ†Ñ Ñ‚Ð° Ð²Ð¸Ñ€Ð°Ñ…ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ñоти Ñ€Ñдків із обмеженнÑми незалежно від Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ атрибуту "colsWdthFit";</li> <li> вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ, Ñ€Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð° розміру та Ð¿Ñ–Ð´Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ–, перенеÑено у проÑÑ‚Ñ–Ñ€ наÑвноÑÑ‚Ñ– вміÑту таблиці та піÑÐ»Ñ ÑортуваннÑ.</li></ul></dd></dl> <ul><li> Функцію екÑпорту під Ñ‡Ð°Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð¾ екÑпортом виду Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð¿Ñ€Ð¸Ð¼Ñ–Ñ‚Ð¸Ð²Ñƒ "FormEl" у CSV.</li></ul></dd></dl> <ul><li> WebVision:</li></ul> <dl><dd><ul><li> ВдоÑконалено Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñтовпців, Ñ€Ñдків та клітинок при оновлені та загалом:</li></ul> <dl><dd><ul><li> реалізацією режиму не Ð¿Ñ–Ð´Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ (відÑутніÑÑ‚ÑŒ атрибуту "colsWdthFit"), з викориÑтаннÑм режиму автоматичного Ñ€Ð¾Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– Ð´Ð»Ñ Ð¾Ð±Ñ‡Ð¸ÑÐ»ÐµÐ½Ð½Ñ Ñ„Ñ–ÐºÑованої ширини та наÑтупного Ð¿ÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ñƒ фікÑований режим Ñ€Ð¾Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ–;</li> <li> багаторÑдковим редагуваннÑм текÑту клітинок у повну ширину та виÑоту клітинки, із заÑтоÑуваннÑм Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° Ctrl+Enter;</li> <li> виглÑд Ñтрокових клітинок обмежено 300 Ñимволами;</li> <li> Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð»Ð¾Ð³Ñ–Ñ‡Ð½Ð¸Ñ… клітинок зображеннÑм Ñтану TRUE;</li> <li> клітинки таблиці, у режимі редагуваннÑ, дозволено до виклику контекÑтного меню ÑиÑтеми-браузеру.</li></ul></dd></dl> <ul><li> Реалізовано "легке" Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð¸ ширини та оновленнÑ:</li></ul> <dl><dd><ul><li> виÑвлÑÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½ таблиці та Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐ¼ÐºÐ½ÑƒÑ‚Ð¾ у режим не Ð·Ð±ÐµÑ€Ñ–Ð³Ð°Ð½Ð½Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ вміÑту двічі;</li> <li> попереджено від цілковитого Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð° модифікації атрибуту "value".</li></ul></dd></dl> <ul><li> Доповнено підтримкою ÑÐ¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° ÑтовпцÑми. Ð’ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñƒ ÑÐ¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° першим видимим Ñтовпчиком при ввімкнені ÑортуваннÑ.</li></ul></dd></dl></dd></dl></dd></dl> <dl><dd><ul><li> WebCfgD: Ð Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– щодо:</li></ul> <dl><dd><ul><li> великий видимий вміÑÑ‚ текÑту обмежено 300 Ñимволами;</li> <li> Ñтроковий тип дозволено до багаторÑдкового Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸Ñтовуючи TEXTAREA;</li> <li> тип даних "bool" відображено зображеннÑм, не "On" або "Off";</li> <li> Ñ†ÐµÐ½Ñ‚Ñ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¼Ñ–Ñту логічного, чиÑел, чаÑу та обраннÑ;</li> <li> ÑÐ¿Ñ€Ð¾Ñ‰ÐµÐ½Ð½Ñ Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¼Ñ–Ñту таблиці Ð´Ð»Ñ Ñ‚Ð¸Ð¿Ñ–Ð² чаÑ, чиÑло та Ñ€Ñдок, через Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ ÐºÐ½Ð¾Ð¿Ð¾Ðº заÑтоÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° прокручуваннÑ.</li></ul></dd></dl></dd></dl> <ul><li> QTStarter,QTCfg,Vision: Розпочато перенеÑÐµÐ½Ð½Ñ Ñпільного Qt-коду Qt-модулів OpenSCADA до файлів нової бібліотеки lib_qtgen.*, Ñку розташовано у теці Ð¼Ð¾Ð´ÑƒÐ»Ñ QTStarter та прив'Ñзано у вÑÑ–Ñ… Qt-модулÑÑ…, та це здійÑнено длÑ: зовнішній icoSize(), colorAdjToBack() та TableDelegate.</li> <li> VCAEngine:</li></ul> <dl><dd><ul><li> Доповнено, та увімкнено Ñк Ð¾Ð¿Ñ†Ñ–Ñ ÑкладаннÑ, щодо механізму Ð¼Ð°Ñ€ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½ атрибутів без дублювань, через запит попередніх-завершених циклів, чим також запобігаючи необхідноÑÑ‚Ñ– виÑÐ²Ð»ÐµÐ½Ð½Ñ Ð´ÑƒÐ±Ð»Ñ–ÐºÐ°Ñ‚Ñ–Ð² у візуалізаторах та Ð·Ð±ÐµÑ€Ñ–Ð³Ð°Ð½Ð½Ñ Ð²ÐµÐ»Ð¸ÐºÐ¾Ð³Ð¾ початкового вміÑту.</li> <li> Ð’Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ñ–Ð² покращено при зміні батька опрацьовуваних Ñторінок на льоту.</li> <li> Ð’Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð·Ð°Ð²Ð´Ð°Ð½ÑŒ ÑеанÑів доповнено раннім виконаннÑм, за наÑвноÑÑ‚Ñ– подій.</li> <li> FIX: СВУ-Ñтилі виправлено при доÑтупі до порожніх полів, Ñкі не завантажуютьÑÑ.</li> <li> Сторінку "ДіагноÑтика" СВУ-проектів адаптовано до Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ Ñ€Ñ–Ð²Ð½Ñ Ð½Ð°Ð»Ð°Ð³Ð¾Ð´Ð¶ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¸ ввімкнені налагодженнÑ.</li> <li> Інформацію Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÑеанÑу проекту доповнено реальною періодичніÑÑ‚ÑŽ, отриманою від завданнÑ, Ñку також викориÑтано при формуванні Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñƒ "f_frq" процедури.</li></ul></dd></dl> <ul><li> Vision: Діалоги влаÑтивоÑтей "Віджети" та "Проекти / Бібліотеки віджетів" доповнено влаÑним Ñ€Ñдком ÑтатуÑу та кнопкою виклику контекÑтної документації. Віджети TextEdit перемкнуто на влаÑний Ñ€Ñдок ÑтатуÑу діалогів влаÑтивоÑтей, щодо позиції курÑору та що вимкнено у Вигулькній Підказці. Віджет Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐºÑту коду діалогу влаÑтивоÑтей "Віджети" доповнено відновленнÑм позиції курÑору піÑÐ»Ñ Ð·Ð°ÑтоÑÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ ÑкаÑуваннÑ.</li> <li> FIX:WebVision: Доповнено виÑвленнÑм Ð·Ð½Ð¸ÐºÐ½ÐµÐ½Ð½Ñ ÑеанÑу Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ñƒ та поверненнÑм помилки, у загальному запиті "pgOpenList", та ÑÐºÐ¸Ð´Ð°Ð½Ð½Ñ Ð»Ñ–Ñ‡Ð¸Ð»ÑŒÐ½Ð¸ÐºÑƒ обчиÑлень "tmCnt".</li></ul> <dl><dd><ul><li> Клавіатурний Ñ„Ð¾ÐºÑƒÑ Ñ‚Ð° події значним чином покращено щодо Ð³Ð°Ñ€Ð°Ð½Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸ цього загалом через:</li></ul> <dl><dd><ul><li> вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñƒ "tabindex" Ð´Ð»Ñ Ð²ÑÑ–Ñ… активних віджетів та Ñпецифічно Ð´Ð»Ñ FormEl — безпоÑередньо у елементи форми;</li> <li> Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¾Ð±Ñ‡Ð¸ÑленнÑм чиÑла "tabindex" Ñк унікальний Ð´Ð»Ñ Ñ†Ñ–Ð»Ð¾Ð³Ð¾ інтерфейÑу, чим запобігаючи Ñтрибкам фокуÑу;</li> <li> Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ð´Ñ–Ñ— onfocus щодо вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ð»Ð°Ñного фокуÑу у setFocus();</li> <li> виглÑд Кнопка примітиву FormEl доповнено опрацюваннÑм клавіатурних подій натиÑÐºÐ°Ð½Ð½Ñ Ñ‚Ð° відпуÑÐºÐ°Ð½Ð½Ñ Ð·Ð° клавішами Space та Enter;</li> <li> примітив Діаграма Ñпрощено через Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð·Ð°Ð¹Ð²Ð¾Ð³Ð¾ елементу тегу A;</li> <li> FIX: Виправлено Ð¿ÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ñ„Ð¾ÐºÑƒÑу при клацанні на кнопках із зображеннÑми.</li></ul></dd></dl> <ul><li> FIX: Виправлено перевірку видалених віджетів Ð´Ð»Ñ Ð²ÑÑ–Ñ… та головної Ñторінки.</li> <li> FIX: Виправлено нарешті Ð¼Ð½Ð¾Ð¶ÐµÐ½Ð½Ñ Ð·Ð°Ð¹Ð²Ð¸Ñ… DIV елементів при зміні Ñторінки у контейнері Ñторінок.</li> <li> FIX: Ð—Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð·Ð°Ñ†Ð¸ÐºÐ»ÑŽÐ²Ð°Ð½Ð½ÑŽ за наÑвноÑÑ‚Ñ– Web-ÑеанÑу, але відÑутноÑÑ‚Ñ– відповідного СВУ-ÑеанÑу.</li></ul></dd></dl> <ul><li> FIX:WebCfgD: Цілковито відревізовано та розширено щодо:</li></ul> <dl><dd><ul><li> перенеÑÐµÐ½Ð½Ñ Ð²ÑÑ–Ñ… дій внутрішніх інÑтрументів до реалізації кнопками та розмір панелі інÑтрументів вÑтановлено із 25 в 30 пікÑелів;</li> <li> Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ„Ñ–Ð»ÑŒÑ‚Ñ€Ð°Ñ†Ñ–Ñ—-зміни розміру зображень кнопок інÑтрументів на боці Ñерверу;</li> <li> вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ñтані між іконкою Ñторінки та заголовком у 10 пікÑелів;</li> <li> цілковитого Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŒÐ¾Ð²Ð°Ð½Ð¾Ñ— Ñторінки піÑÐ»Ñ Ð·Ð¼Ñ–Ð½Ð¸ розміру вікна;</li> <li> Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð¿Ð¾Ð»Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐºÑту TEXTAREA заÑтоÑуваннÑм та ÑкаÑуваннÑм із клавіатури;</li> <li> пов'ÑÐ·Ð°Ð½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ…Ð¾Ñтів до подвійного ÐºÐ»Ð°Ñ†Ð°Ð½Ð½Ñ Ð¼Ð¸ÑˆÐµÑŽ на загальному проÑторі облаÑÑ‚Ñ– дерева;</li> <li> FIX: Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ…Ð¾Ñтів щодо виÑÐ²Ð»ÐµÐ½Ð½Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚Ñ–Ð² дубльованих хоÑтів;</li> <li> FIX: примуÑового Ð¿Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð°ÐºÑ‚ÑƒÐ°Ð»ÑŒÐ½Ð¸Ñ…-обраних елементів у дереві контролю піÑÐ»Ñ Ð¹Ð¾Ð³Ð¾ розгортаннÑ;</li> <li> Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ nodeText() та setNodeText() через безпоÑереднє викориÑÑ‚Ð°Ð½Ð½Ñ "innerText" та "textContent".</li></ul></dd></dl> <h4><span class="mw-headline" id=".D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.BD.D1.96_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_4"><span class="mw-headline-number">7.5.1</span> СервіÑні оновленнÑ</span></h4> <ul><li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2768" rel="nofollow noreferrer noopener" target="_blank">перше (1) від 29.08.2021</a>.</li></ul> <h3><span class="mw-headline" id=".5B20.10.7528.2F20.12.2020.5D_.D0.A2.D0.A0.D0.95.D0.A2.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="mw-headline-number">7.6</span> [20.10.7528/20.12.2020] ТРЕТЕ оновленнÑ</span></h3> <p>Це Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ <a href="Release_0.9.html" title="Special:MyLanguage/Documents/Release 0.9">релізу 0.9 LTS</a> виправлÑÑ” Ð±Ñ–Ð»Ñ 40 помилок та додає деÑкі удоÑконаленнÑ, Ñкі цілком ви можете почитати у <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2726" rel="nofollow noreferrer noopener" target="_blank">протоколі змін оновленнÑ</a>. </p><p><b><u><a class="external text" href="http://oscada.org/ua/novini/odinochna-storinka/article/trinity-desktop-environment-tde-release-1409/" rel="nofollow noreferrer noopener" target="_blank">Linux ДиÑтрибутив Ðвтоматизації проєкту OpenSCADA</a></u></b><br /> </p> <ul><li> пакети "tdelibs" та "tdebase" було видалено через заÑтоÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ†Ð¸Ñ… виправлень до головної та Ñтабільної гілки TDE;</li> <li> виправлені пакети "tdemultimedia-trinity", "tdenetwork-trinity" та "tdeutils-trinity" було переÑкладено;</li> <li> Ñкладено новий виправлений пакет "tde-i18n-uk-trinity";</li> <li> перед ÑкладаннÑм пакетів було змінено Ñхему Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð²ÐµÑ€Ñій пакетів цього диÑтрибутиву із "{+1}:14.0.9-0" на "4:14.0.9-{+1}" з метою Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð·Ð°Ð¼Ð¾Ñ€Ð¾Ð¶ÑƒÐ²Ð°Ð½Ð½ÑŽ цих пакетів на наÑтупних верÑÑ–ÑÑ… TDE; та головний репозиторій пакетів TDE <a href="How_to_Live_disk.html" title="Special:MyLanguage/Documents/How to/Live disk">Живих ДиÑків</a> переключено на гілку "r14.0.x" заміÑÑ‚ÑŒ попередньої Ñтабільної, Ñка також наÑвна, але закоментована;</li> <li> перед цим релізом, у <a class="external text" href="https://mirror.git.trinitydesktop.org/weblate/" rel="nofollow noreferrer noopener" target="_blank">TDE Weblate</a> завершено переклад УкраїнÑькою чаÑтин-пакетів TDE: tdelibs, tdebase, tdegraphics, tdenetwork, tdemultimedia, tdepim, tdeadmin, tdeaccessibility, tdeutils, krusader, yakuake, basket; та Ñтворено виправлений пакет "tde-i18n-uk-trinity" Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ відмінноÑтей гілки "r14.0.x" від головної;</li> <li> латку до "tdeutils" доповнено комбінацією клавіш із утриманнÑм Ctrl Ð´Ð»Ñ Ð¿Ð¾Ð²Ñ–Ð»ÑŒÐ½Ð¾Ñ— зміни ÑÑкравоÑÑ‚Ñ– диÑплею до KMilo.</li></ul> <p><b><u>OpenSCADA бібліотеки та проєкти</u></b><br /> </p> <ul><li> FIX:LibsDB.OscadaLibs: Бібліотеку DevLib доповнено шаблонами "MTP 4D (MTP4D)" та "ModBus база (mbBase)".</li> <li> FIX:LibsDB.vcaBase: Шаблонний проєкт (tmplSO) очищено від зайвих мнемоÑхем ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÑ†ÐµÐ¿Ñ‚Ð°Ð¼Ð¸ та головну Ñторінку доповнено таблицею актуальних Ñигналів-порушень. Кадр Main.RootPgSo уніфіковано Ñповіщувачами лише у загальних атрибутах Ð´Ð»Ñ Ð¡Ð’Ð£-Ñерверу та Ñповіщувачів Vision, WebVision: notify0, notify1 та notify2.</li></ul> <p><b><u>API</u></b><br /> <i>!!!!:Зміни</i>: </p> <ul><li> Ðрхіви-ІÑторіÑ: {TMArchivator,TVArchivator,TVArchive}::DB() вÑтановлено у кваліфікатор поÑтійної.</li> <li> ТранÑпорти.{.,*}: Функцію вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚Ð°Ð¹Ð¼Ð°ÑƒÑ‚Ñ–Ð² setTimings() вихідних транÑпортів розширено розрізненнÑм типових таймаутів Ð´Ð»Ñ Ñ€Ñ–Ð·Ð½Ð¸Ñ… протоколів, за допомогою аргументу "isDef".</li></ul> <p><i>ДоповненнÑ</i>: </p> <ul><li> SYS.,*: <ul><li> ÐžÐ±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ñ‚Ð° параметри проÑтору ÑиÑтеми перенеÑено до проÑтору конфігурації кориÑтувача (конфігураційний файл) Ð´Ð»Ñ Ð´ÐµÑкого дозволеного діапазону. STD_WAIT_DELAY перенеÑено до prmWait_DL та змінено у 0.1 Ñекунд. Попередні Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½ÑŒ та параметрів проÑтору ÑиÑтеми залишено Ð´Ð»Ñ ÑуміÑноÑÑ‚Ñ– зовнішніх модулів!</li> <li> TSYS доповнено функцією taskSendSIGALRM() надÑÐ¸Ð»Ð°Ð½Ð½Ñ Ñигналу Ð¿ÐµÑ€ÐµÑ€Ð¸Ð²Ð°Ð½Ð½Ñ "ALARM" до завдань OpenSCADA.</li> <li> TValFunc: Доповнено Ñтаном Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— через функцію isCalc().</li></ul></li> <li> ТранÑпорти: Вихідні транÑпорти розширено позначеннÑм Мережевих транÑпортів, функцією isNetwork(), також у кориÑтувацькому API.</li></ul> <p><b><u>СиÑтема</u></b><br /> </p> <ul><li> FIX:СкладаннÑ:configure.ac: ВерÑÑ–ÑŽ бібліотеки Ñдра збільшено до 3:9:0 та верÑÑ–ÑŽ програми збільшено до 0.9.3.</li> <li> {DAQ,Протокол}.ModBus: <ul><li> підтип "_b" — бітовий тип, доповнено переміщеннÑм номеру біту до Ð¿Ð¾Ð»Ñ Ð½Ð¾Ð¼ÐµÑ€Ñƒ регіÑтру на кшталт "R_b:123.12";</li> <li> доповнено прапорцем "~" Ð´Ð»Ñ Ñ–Ð½Ð²ÐµÑ€ÑÑ–Ñ— порÑдку регіÑтрів комплекÑних підтипів у декількох регіÑтрах, Ñк то "_f";</li> <li> прапорець "rw" виокремлено у "r" та "w".</li></ul></li> <li> Модульну верÑÑ–ÑŽ підÑиÑтеми "ТранÑпорти" збільшено до 17.</li> <li> FIX: Попереджено від автентифікації у інтерфейÑÑ– кориÑтувача готовим хешем паролю.</li></ul> <p><b><u>Збір Даних</u></b><br /> </p> <ul><li> LogicLev,ModBus,Siemens: Доповнено перериваннÑм тривалого Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ñ–Ð² при вимкнені параметру, з викориÑтаннÑм нових функцій TValFunc::isCalc() та TSYS::taskSendSIGALRM().</li> <li> FIX:LogicLev: Видалено Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ "calcRes", Ñке викориÑтано лише у блокуванні запиÑу до параметру протÑгом обчиÑÐ»ÐµÐ½Ð½Ñ Ñ‚Ð° що може бути тривалим.</li></ul> <p><b><u>Ðрхіви-ІÑторіÑ</u></b><br /> </p> <ul><li> FIX: Отримані поточні значеннÑ, у активному режимі архівуваннÑ, примуÑово вÑтановлено у поточний чаÑ, що важливо Ð´Ð»Ñ Ð°Ñ€Ñ…Ñ–Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¸Ð½Ð°Ð¼Ñ–Ñ‡Ð½Ð¸Ñ… атрибутів.</li> <li> Конфігураційне поле архіву значень "Режим Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ ID атрибуту автоматично Ñтворюваних архівів" розширено елементом Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ "Ð’ÑÑ– ID контролеру, параметру та атрибуту", у процеÑÑ– Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ð½Ð° розмір ІД архіву значень до 50 Ñимволів.</li> <li> FIX:DBArch: Виправлено лише прÑме Ð°Ñ€Ñ…Ñ–Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½ÑŒ у груповому режимі та коли тип значень може ÑкидатиÑÑ Ñƒ Цілий тип, Ñк типовий. ÐÑ€Ñ…Ñ–Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½ÑŒ у груповому режимі доповнено видаленнÑм відповідного Ñтовпчика таблиці при видалені архіву, Ð´Ð»Ñ Ð³Ð°Ñ€Ñчого Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñтовпчиків одразу піÑÐ»Ñ Ð´Ð¾Ð´Ð°Ð½Ð½Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ архіву, чим запобігаючи ранньому розроÑтанню таблиці до обмежень БД.</li> <li> FIX:FSArch: ÐÐ´Ð°Ð¿Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ розміру ІД архіву значень більш за 20 Ñимволів, коли додаткові 14 Ñимволів зберігаютьÑÑ Ñƒ резервній чаÑтині (перейменованій у "archive_add") заголовку та решта у назві фалу.</li></ul> <p><b><u>ТранÑпорти</u></b><br /> </p> <ul><li> FIX: Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ TTransportIn::assTrO() Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ñ…Ñ–Ð´Ð½Ð¸Ñ… ініціативних підключень цілковито відревізовано Ð·Ð°Ð´Ð»Ñ Ð·Ð°Ð±ÐµÐ·Ð¿ÐµÑ‡Ð¸Ñ‚Ð¸ обов'Ñзковим ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ… підключень у виглÑді нового вихідного транÑпорту, відтак запобігаючи правильному завершенню наÑвних закритих але не звільнених вихідних транÑпортів.</li> <li> Команди транÑпортів перейменовано із "ВиконаннÑ" у "ПідключеннÑ" та ÑтатуÑи перейменовано із "Запущено. " у "ÐžÑ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…. " та "Підключено. ", із "Зупинено. " у "Відключено. ".</li> <li> FIX:{Sockets,SSL}: Типові таймаути повернено у "10:1".</li></ul> <p><b><u>ТранÑпортні Протоколи</u></b><br /> </p> <ul><li> HTTP: <ul><li> Доповнено динамічною назвою печива (cookies) та КориÑтувацьким проÑтором ІД, де назва печива "oscd_UID" Ñ– викориÑтано КориÑтувацький проÑÑ‚Ñ–Ñ€ ІД при роботі із загальною таблицею ÑеанÑів автентифікації, та назва печива "oscd_UID_{PrjNm}" при роботі без цього.</li> <li> FIX: POST вихідної функції outMess() з багатьох чаÑтин попереджено від Ñ€Ð¾Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ ÐºÑ–Ð½Ñ†ÐµÐ²Ð¾Ð³Ð¾ розмежувача та покращено у формуванні "Content-Disposition".</li> <li> Покращено генерацію ІД кориÑтувача генерацією різних ІД Ð´Ð»Ñ Ñ€Ñ–Ð·Ð½Ð¸Ñ… процеÑів, обмежене у 1e6, та доповнено випадковим та конфігурованим КориÑтувацьким проÑтором ІД [0...99] * 1e6, викориÑтаним у роботі із таблицею загальних ÑеанÑів автентифікації.</li></ul></li> <li> SelfSystem: Специфічні таймаути вихідного транÑпорту вÑтановлено у "20:2".</li> <li> ModBus: Специфічні таймаути вихідного транÑпорту вÑтановлено у "5:0.1" Ð´Ð»Ñ ÐœÐµÑ€ÐµÐ¶ÐµÐ²Ð¸Ñ… транÑпортів — isNetwork() та варіанту протоколу "RTU".</li></ul> <p><b><u>Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐšÐ¾Ñ€Ð¸Ñтувача</u></b><br /> </p> <ul><li> FIX: TUIS::docKeyGet() виправлено щодо витоку кориÑтувацьких об'єктів маÑивів.</li> <li> VCAEngine,WebVision,Vision: Примітив "Media" доповнений типом "Audio" та тип "Повне відео" перейменовано у "Відео", Ñкий також імплементовано у WebVision та Vision.</li> <li> QTCfg,Vision: Доповнено функцією Ð¿Ñ–Ð´Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ ÐºÐ¾Ð»ÑŒÐ¾Ñ€Ñ–Ð² текÑту до фонового кольору — colorAdjToBack(), Ñку викориÑтано у корекції кольорів підÑÐ²Ñ–Ñ‚Ð»ÐµÐ½Ð½Ñ ÑинтакÑиÑу, та інших динамічних кольорів, до зміни палітри.</li> <li> VCAEngine,Vision: Розширено реалізацію Ñповіщень у процеÑÑ– Ñ—Ñ… Ð²Ð¿Ñ€Ð¾Ð²Ð°Ð´Ð¶ÐµÐ½Ð½Ñ Ñƒ WebVision, щодо: <ul><li> викориÑÑ‚Ð°Ð½Ð½Ñ Ñтандартного шлÑху Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñповіщень через активацію відповідних атрибутів;</li> <li> Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ ntfReg() викориÑтаннÑм негативного типу Ð´Ð»Ñ Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²ÑÑ–Ñ… типів, переважно очищеннÑ, та деÑкої уніфікації коду;</li> <li> Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñм типу реÑурÑу;</li> <li> Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ñповіщувачів прапорцем "notifyServ" Ð²Ð²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð½Ñ ÑÐ¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð½Ð° боці СВУ-Ñерверу;</li> <li> доповнено, на боці СВУ-Ñерверу, полем "resStatic" прÑмого Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ€ÐµÑурÑу (не динамічне);</li> <li> Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ‚ÐµÐºÑту процедури ÑÐ¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð´Ð²Ð¾Ð¼Ð° змінними "resTp" та "prcID".</li></ul></li> <li> FIX:UI.QTStarter: Доповнено періодичним оновленнÑм діалогу запуÑку у переліку проєктів.</li> <li> FIX:VCAEngine: Виправлено Ð¿Ð°Ð´Ñ–Ð½Ð½Ñ Ð¿Ñ€Ð¸ вÑтановленні поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ð¶ÐµÑ‚Ñƒ у "prm". Ð¡ÐµÑ€Ð²Ñ–Ñ Ð·Ð°Ð¿Ð¸Ñ‚Ñƒ реÑурÑу "get:/wdg/res", Widget::resourceGet() та {WidgetLib,Project}::mimeDataGet() доповнено запитом чаÑтин реÑурÑу, переважно Ð´Ð»Ñ Ð²ÐµÐ»Ð¸ÐºÐ¸Ñ… медіа файлів.</li> <li> FIX:Vision: Доповнено програваннÑм Ñповіщень внутрішнім програвачем на Phonon та не у окремому завдані Ñповіщувача. Виклик saveState() переміщено із деÑтруктору вікна розробки до події закриттÑ, оÑкільки було помічено проблему Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€Ð¾Ð¶Ð½ÑŒÐ¾Ð³Ð¾ контекÑту піÑÐ»Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð²Ð°Ð½Ð½Ñ Ð´ÐµÑкого медіа.</li> <li> FIX:WebVision: <ul><li> Ð†Ð¼Ð¿Ð»ÐµÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ Ð¿Ñ–Ð´Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ Ñповіщень.</li> <li> Ð†Ð¼Ð¿Ð»ÐµÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ‡Ð°Ñтин реÑурÑів, Ð´Ð»Ñ Ð²ÐµÐ»Ð¸ÐºÐ¸Ñ… медіа, HTTP параметром "Range: bytes=".</li> <li> FIX: Виправлено зайве Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ ÐºÐµÑˆÑƒ Ñторінки щодо віджетів із Ñторінок із Ñпільною назвою до Ñторінки що видалÑєтьÑÑ.</li></ul></li> <li> WebUser: Ðдаптовано до роботи із POST та вміÑтом у тілі.</li></ul> <h4><span class="mw-headline" id=".D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.BD.D1.96_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_5"><span class="mw-headline-number">7.6.1</span> СервіÑні оновленнÑ</span></h4> <ul><li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2741" rel="nofollow noreferrer noopener" target="_blank">трете (3) від 23.03.2021</a>.</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2737" rel="nofollow noreferrer noopener" target="_blank">друге (2) від 01.03.2021</a>.</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2731" rel="nofollow noreferrer noopener" target="_blank">перше (1) від 01.02.2021</a>.</li></ul> <h3><span class="mw-headline" id=".5B17.06.7528.2F17.08.2020.5D_.D0.94.D0.A0.D0.A3.D0.93.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="mw-headline-number">7.7</span> [17.06.7528/17.08.2020] ДРУГЕ оновленнÑ</span></h3> <p>Це Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ <a href="Release_0.9.html" title="Special:MyLanguage/Documents/Release 0.9">релізу 0.9 LTS</a> виправлÑÑ” Ð±Ñ–Ð»Ñ 60 помилок та додає деÑкі удоÑконаленнÑ, Ñкі цілком ви можете почитати у <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2706" rel="nofollow noreferrer noopener" target="_blank">протоколі змін оновленнÑ</a>. </p><p><b><u><a class="external" href="http://oscada.org/wiki/Sub-projects/Automation_Linux_distributive" title="Sub-projects/Automation Linux distributive">Linux ДиÑтрибутив Ðвтоматизації проекту OpenSCADA</a></u></b><br /> </p> <ul><li> Завершено вдоÑÐºÐ¾Ð½Ð°Ð»ÐµÐ½Ð½Ñ KMix щодо роботи із PulseAudio, шлÑхом його динамізації патчем "<a class="external text" href="https://bugs.pearsoncomputing.net/show_bug.cgi?id=2782" rel="nofollow noreferrer noopener" target="_blank">kmix-UpdMixersForChangeAndChMaster.patch</a>".</li> <li> KRfb (VNC-Ñервер) було виправлено ÑтоÑовно аварійного Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ‚Ð° завершено реалізацію набору додаткових клавіш до оÑновної клавіатурної розкладки, переважно Кирилиці, але також Ñ– додаткових UTF Ñимволів.</li> <li> Завершене Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ <a class="external text" href="http://www.trinitydesktop.org/" rel="nofollow noreferrer noopener" target="_blank">проекту ÐžÑ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ Ð¡Ñ‚Ñ–Ð»ÑŒÐ½Ð¸Ñ†Ñ– Trinity</a> УкраїнÑькою Ð´Ð»Ñ Ñ‡Ð°Ñтин: tdelibs, tdebase, tdenetwork, tdemultimedia, tdepim (переважно), krusader, yakuake.</li></ul> <p><b><u>OpenSCADA бібліотеки та проекти</u></b><br /> </p> <ul><li> LibsDB.OscadaLibs: Бібліотеку ПриÑтроїв доповнено реалізацією протоколу IEC-62056 (DevLib.IEC62056). Позамережеву документацію доповнено документом "УГОДРПРО ТЕХÐІЧÐУ ПІДТРИМКУ ПРОГРÐÐœÐОГО ЗÐБЕЗПЕЧЕÐÐЯ "OpenSCADA" верÑÑ–Ñ— 2 та нового Ð¼Ð¾Ð´ÑƒÐ»Ñ DB.DBGate.</li> <li> FIX:LibsDB.vcaBase.Main.alarmsSt: Дещо виправлено щодо оригінальних повідомлень та "quietation" цілковито замінено на "confirmation". Відновлено Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ Ð´ÑƒÐ±Ð»ÑŒÐ¾Ð²Ð°Ð½Ð¸Ñ… запиÑів нових порушень у тій Ñамій категорії.</li></ul> <p><b><u>API</u></b><br /> <i>!!!!:Зміни</i>: </p> <ul><li> SYS: Уніфіковано ÑтатуÑи Ñтанції у функціÑÑ… isRunning(), isFinalKill() та stopSignal(). TCfg::setReqKey() доповнено новим аргументом "treatDep".</li> <li> DB: dataSeek(),dataGet(),dataSet(): Розширено аргументом локального конфігураційного контекÑту "localCfgCtx";</li> <li> *,DB: TBDS::dataSeek() та TTable::fieldSeek() переключено до реалізації кешу ÑÐºÐ°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ відповідних модулÑÑ….</li></ul> <p><i>ДоповненнÑ</i>: </p> <ul><li> TMess,DB,DB.{SQLite,MySQL,PostgreSQL,FireBird}: TMess доповнено функцією виÑÐ²Ð»ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ конфігурації translCfg(), Ñку викориÑтано у вÑÑ–Ñ… модулÑÑ… БД та у dataSet().</li> <li> SYS: Доповнено функціÑми доÑтупу до глобального конфігураційного контекÑту cfgCtx() та setCfgCtx(). <ul><li> Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ‚Ð° Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ— доповнено влаÑним блокуваннÑм TSYS->cfgLoadSaveM().</li> <li> Доповнено функцією pathLevEnd() Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ ÑˆÐ»Ñхів із кінцÑ.</li> <li> TRegExp: Доповнено функцією getPattern().</li> <li> TFld: Доповнено комбінованим Ñтроковим варіантом Ð¿Ð¾Ð»Ñ Ð´Ð¾Ð²Ð¶Ð¸Ð½Ð¸ - lenS().</li></ul></li></ul> <p><b><u>SYS</u></b><br /> </p> <ul><li> FIX: Building: <ul><li> FIX:configure.ac: Core library version risen to 3:8:0 and the program version risen to 0.9.2.</li> <li> Modules version of the subsystem "BD" risen to 14, of the subsystem "Transport" risen to 16.</li> <li> data/ModelsDB/{AGLKS/oscada_AGLKS.xml,Boiler/oscada_Boiler.xml}: The input Sockets' transports unified in the names "WEB" and "CNTR".</li> <li> data/ModelsDB/AGLKS/St.sql: The input SSL transports unified in the names "WEB" and "CNTR" and updated for the KeepAlive timeout setting in 60 and for the SSL-certificate.</li> <li> data/{oscada_start,oscada_server,oscada_plc}.xml: <ul><li> The input WWW-transports are unified, where "WEB_1" renamed to "WEB" and "WEB_2" removed.</li> <li> Appended for the disabled DB-entries of the standard OpenSCADA libraries.</li> <li> /oscada_start.xml: Appended for the disabled input transports "WEB" and "CNTR". Appended for the value archivers FSArch.{SYS,alarms,actions} and message archivers FSArch.{1s,1m,1h}.</li></ul></li></ul></li> <li> FIX:data/openscada-proj.in,UI.QTStarter: Implementation the builtin backuping. <ul><li> FIX:data/openscada-proj.in: Appended for the commands "backup", "backupRestore", "backupList" to implement the project backups.</li> <li> UI.QTStarter: Appended for the backup commands call from the project manager - list of the projects.</li></ul></li> <li> .,DB,DAQ.{LogicLev,ModBus,Siemens},UI.{QTCfg,WebCfgD}: Implementation the interstation copying mechanism of the control interface nodes.</li> <li> .,UI.QTStarter: OpenSCADA starting with a module as the GUI in the main thread significantly refactored for: <ul><li> early registration the GUI module in the main thread directly by that module itself and in postEnable() function;</li> <li> adaption the function perSYSCall() to use for update the GUI module in the main thread, its splash mostly, during the program starting and stopping (from the service task) and at the configuration loading (for switch to the starting splash);</li> <li> enabling the messages dynamic display for the main thread execution mode;</li> <li> unification of the splash display for the both modes.</li></ul></li> <li> .,Protocol.SelfSystem,DAQ.AMRDevs: Client accessing of the OpenSCADA control interface expanded by the multiple authentication, what prevents of using direct requests of the OpenSCADA control interface with the authentication in each the request, often for UI.Vision.</li> <li> FIX:TRegExp: The patterns processing fixed appending the end symbol treating, so preventing TController::alarmSet() collisions in the objects strict detection.</li> <li> FIX:LibsDB.OscadaLibs.doc.diagram,UI.{Vision,WebVision}: Prevented from the value scale double adjustment for the percent scale and appended for the value range expanding.</li> <li> FIX: The function TCntrNode::isModify() processing for the children allowed only for nodes in the state "Enabled".</li></ul> <p><b><u>БД</u></b><br /> </p> <ul><li> Створено новий модуль "DBGate".</li> <li> FIX: TBDS::dataSet() розширено вÑтановленнÑм лише ключів та видимих елементів, на кшталт інших БД. Доповнено зміною-збереженнÑм визначених елементів у конфігураційному файлі заміÑÑ‚ÑŒ цілковитого Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ð²ÑÑ–Ñ… Ñ—Ñ… у типовій БД.</li> <li> FIX: Виправлено перший помилковий запуÑк об'єктів БД ÑтоÑовно наÑтупних Ñпроб запуÑку.</li> <li> FIX: Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð‘Ð” попереджено від подвійного Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ–Ð· конфігураційного файлу та БД, ÑтоÑовно однакових запиÑів.</li> <li> Об'єкт TBD доповнено підтримкою ÑервіÑних контрольних запитів "call": "/serv/SQL", "/serv/fieldStruct", "/serv/fieldSeek", "/serv/fieldGet", "/serv/fieldSet", "/serv/fieldDel".</li> <li> FIX:SQLite: ВиÑвлено та виправлено втрату даних за конкурентного доÑтупу, коли генеруєтьÑÑ Ð½ÐµÐ¿Ñ€Ð¸Ð½Ñ†Ð¸Ð¿Ð¾Ð²Ð° помилка неактивованоÑÑ‚Ñ– транзакції "cannot commit - no transaction is active (1)", Ñка, однак, перериває Ð·Ð°Ð¿Ð¸Ñ Ð´Ð°Ð½Ð¸Ñ….</li></ul> <p><b><u>Збір Даних</u></b><br /> </p> <ul><li> FIX: JavaLikeCalc: Ð’Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ–Ñ… функцій доповнено збереженнÑм контекÑту Ñпільних-влаÑних регіÑтрів, у двох варіантах, первинно Ð´Ð»Ñ Ð¿Ñ–Ð´Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ рекурÑÑ–Ñ—.</li></ul> <p><b><u>ТранÑпорти</u></b><br /> </p> <ul><li> Вихідні транÑпорти уніфіковано ÑтвореннÑм параметрів підключеннÑ, за допомогою conPrm(), заміÑÑ‚ÑŒ прÑмих prm1() та prm2().</li> <li> Видалено конфігураційний параметр "START" вихідних транÑпортів, Ñк зайвий та Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ñ‚Ñ€Ð¸Ð²Ð°Ð»Ð¾Ð¼Ñƒ запуÑку.</li> <li> FIX:Sockets,SSL: Ð”Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð±Ð°Ð³Ð°Ñ‚Ð¾Ñ€Ð°Ð·Ð¾Ð²Ð¾Ð¼Ñƒ виконанню запитів виÑокого Ð½Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ‚Ð° тривалого контролю, вихідні транÑпорти перемкнуто на: <ul><li> типову конфігурацію Ð´Ð»Ñ Ð¡Ð¿Ñ€Ð¾Ð±=1, Таймаути="30:2";</li> <li> Ð´Ð»Ñ Ð²Ñ‚Ñ€Ð°Ñ‚ підключень кількіÑÑ‚ÑŒ Ñпроб вÑтановлено у 2;</li> <li> Ð´Ð»Ñ Ð¿Ð¾Ð¼Ð¸Ð»Ð¾Ðº "Вичерпано чаÑ" Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ‚Ð°ÐºÐ¾Ð¶ пере-підключаєтьÑÑ, окрім типу SOCK_FORCE.</li></ul></li></ul> <p><b><u>ТранÑпортні Протоколи</u></b><br /> </p> <ul><li> FIX:ModBus: Вихідні запити TCP-варіанту доповнено перевіркою Ідентифікатору Транзакції пакетів відповіді.</li> <li> FIX:SelfSystem: Вихідну чаÑтину розширено перевіркою відповідноÑÑ‚Ñ– відповідей до запиту, за назвою тегу запиту. Доповнено кодуваннÑм Ñпеціальних Ñимволів кориÑтувача Ñ– паролÑ, та порожній пароль кодуєтьÑÑ Ñк "<EMPTY>".</li></ul> <p><b><u>Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐšÐ¾Ñ€Ð¸Ñтувача</u></b><br /> </p> <ul><li> Vision,WebVision: ВлаÑтивіÑÑ‚ÑŒ Ñпецифічну до візуалізатору "userSetVis" доповнено реалізацією Ð¿Ð°Ñ€Ð¾Ð»Ñ Ð¿Ñ–ÑÐ»Ñ Ð¿Ñ€Ñмо визначеного кориÑтувача та Ð´Ð»Ñ Ð·Ð°ÑтоÑÑƒÐ²Ð°Ð½Ð½Ñ Ð· уÑіма кориÑтувачами.</li> <li> FIX:QTStarter: Стандартну-ÑиÑтемну заÑтавку запуÑку/зупинки оновлено та доповнено інформацією про програму (також кориÑтувацькі заÑтавки) та проекту OpenSCADA, включно із іконкою проекту. КонтекÑтне меню переліку проектів доповнено пунктом Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð½ÐµÐ²Ð¸ÐºÐ¾Ð½ÑƒÐ²Ð°Ð½Ð¸Ñ… проектів.</li> <li> FIX:QTCfg: Доповнено ÑтеженнÑм за зміною Ñторінки із індикацією у дереві навігації та з гортаннÑм до поточного елементу.</li> <li> FIX:VCAEngine: Попереджено аварійне Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð½Ð° великих конфігураціÑÑ… із тривалим закриттÑм ÑеанÑів Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´ Ñ‡Ð°Ñ Ð´Ð¾Ñтупу до Ñпадкоємців віджету (mHerit), доданнÑм ResRW Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ "mHeritRes". ВлаÑтивіÑÑ‚ÑŒ "Переклад" процедур віджетів цілковито переÑунуто до прÑмого доÑтупу та видиміÑÑ‚ÑŒ вÑтановлено лише за наÑвноÑÑ‚Ñ– процедури, так Ñамо Ñк видиміÑÑ‚ÑŒ проÑтору текÑту процедури та періодичноÑÑ‚Ñ– обчиÑÐ»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ð¼Ð¾Ð²Ð¸.</li> <li> FIX:Vision: Суттєво уніфіковано процедуру автентифікації та зміни кориÑтувача у UserStBar::userSel() та об'єкт діалогу "DlgUser".</li> <li> FIX:WebVision: Уніфіковано імплементацію примітиву "Кнопка": перенеÑеннÑм Ñпецифічних кнопок під <button></button> та доданнÑм відповідних CSS-Ñтилів Ð´Ð»Ñ Ñ‚Ð¸Ð¿Ð¾Ð²Ð¾Ð³Ð¾ та натиÑненого Ñтану із відмінною границею та напівпрозорим зображеннÑм. Виправлено нарешті проблему Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð²ÑÑ–Ñ… Ñторінок контейнеру оÑновних Ñторінок із заморожуваннÑм оÑтанньої втраченої Ñторінки за швидкого перемиканнÑ. Доповнено кориÑтувацькими CSS правилами інтерфейÑу.</li></ul> <h4><span class="mw-headline" id=".D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.BD.D1.96_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_6"><span class="mw-headline-number">7.7.1</span> СервіÑні оновленнÑ</span></h4> <ul><li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2719" rel="nofollow noreferrer noopener" target="_blank">трете (3) від 15.11.2020</a>.</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2714" rel="nofollow noreferrer noopener" target="_blank">друге (2) від 20.10.2020</a>.</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2709" rel="nofollow noreferrer noopener" target="_blank">перше (1) від 21.09.2020</a>.</li></ul> <h3><span class="mw-headline" id=".5B08.02.7528.2F08.04.2020.5D_.D0.9F.D0.95.D0.A0.D0.A8.D0.95_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F"><span class="mw-headline-number">7.8</span> [08.02.7528/08.04.2020] ПЕРШЕ оновленнÑ</span></h3> <p>ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð´Ñ–Ð¹Ñнено за 1.5 роки від <a href="Release_0.9.html" title="Special:MyLanguage/Documents/Release 0.9">релізу 0.9 LTS</a>, відтак воно варте 10 оновлень, оÑкільки ним виправлено близько 250 помилок та додано багато вдоÑконалень, Ñкі цілком ви можете почитати у <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2677" rel="nofollow noreferrer noopener" target="_blank">протоколі змін оновленнÑ</a>. </p><p>Ключовими влаÑтивоÑÑ‚Ñми Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ”: </p> <ul><li> значне Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ñ‚Ð° ÑÑ‚Ð°Ð±Ñ–Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Web-інтерфейÑу протÑгом практичної екÑплуатації у великому розподіленому рішенні, побудованого на оÑнові Ð¼Ð¾Ð´ÑƒÐ»Ñ <a href="#WebVision">UI.WebVision</a>; також Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ñ‚Ð° ÑÑ‚Ð°Ð±Ñ–Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð³Ð°Ñ€Ñчої розробки протÑгом множинного Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ñ€Ð¾Ð·Ñ€Ð¾Ð±Ð»ÑŽÐ²Ð°Ð½Ð¾Ð³Ð¾ проекту;</li> <li> теÑтуваннÑ, Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ñ€ÐµÐ·ÐµÑ€Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ чаÑтині повідомлень, також завдÑки практичній екÑплуатації у великому розподіленому та ще й резервованому рішенні, у <a href="#Redundancy">чаÑтині загально-ÑиÑтемного коду</a> та Ð¼Ð¾Ð´ÑƒÐ»Ñ <a href="#ModBus">DAQ.ModBus</a>;</li> <li> цілковита реÑтруктуризаціÑ, вдоÑÐºÐ¾Ð½Ð°Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ <a href="#ProjLibs">бібліотек OpenSCADA</a> у SQLite файлах;</li> <li> загальне Ð¿Ð¾ÐºÑ€Ð°Ñ‰ÐµÐ½Ð½Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ—, Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ”ÑŽ <a href="#ProjLibs">вÑÑ–Ñ… бібліотек</a> та Ñ€ÐµÐ²Ñ–Ð·Ñ–Ñ Ð±Ñ–Ð»ÑŒÑˆÐ¾ÑÑ‚Ñ– документації модулів.</li></ul> <h4><span class="mw-headline" id="OpenSCADA_.D0.B1.D1.96.D0.B1.D0.BB.D1.96.D0.BE.D1.82.D0.B5.D0.BA.D0.B8_.D1.82.D0.B0_.D0.BF.D1.80.D0.BE.D0.B5.D0.BA.D1.82.D0.B8"><span class="mw-headline-number">7.8.1</span> <span id="ProjLibs" title="#ProjLibs">OpenSCADA бібліотеки та проекти</span></span></h4> <ul><li> FIX:DB.LibsDB.{OscadaLibs,vcaBase}: ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ. <ul><li> FIX:JavaLikeCalc.doc,doc: Бібліотеку кориÑтувацького інтерфейÑу "Документи" та JavaLikeCalc "Бібліотека звітів та документів" відревізовано, покращено, доповнено, документовано та документацію додано до offline. <ul><li> FIX:doc: {docUsersSet,docAlarmsRep,docMessRep}: Поле "Параметр" перейменовано у "Джерело", у процеÑÑ– глобальної уніфікації Ñтруктури повідомлень порушень функції alarmSet(). <ul><li> Доповнено реалізацією "Річний звіт міÑÑчних значень (docRepYear)" із функцією Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½ÑŒ у ручному режимі, підтримкою Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ñ€ÑƒÑ‡Ð½Ð¸Ñ… значень у архіві повідомлень, Ñ—Ñ… Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñƒ таблиці та діаграмі.</li> <li> {doc,docDin,docRep2WorkSh(перейменований docRepSm2),docAlarmsRep,docRepInstVals(перейменований docGasNodeMgn),docMessRep,docUsersSet, docRepDay(перейменований docGasNodeDayA),docRepMonth(перейменований docGasNodeMonthA),docRepYear(перейменований docResourcesYear)}: виконано JavaLikeCalc переклад у tr().</li> <li> {docRepInstVals,docRep2WorkSh,docRepDay,docRepMonth}: Значним чином перепиÑано, покращено та зроблено повторно-викориÑтовуваним, дозволивши Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ DAQ-параметрів.</li> <li> docMessRep: Доповнено опрацюваннÑм віддалених Ñтанцій лише Ñк додаткове джерело та завжди.</li></ul></li> <li> JavaLikeCalc.doc: Доповнено реалізацією побудови "Діаграми (diagram)" у SVG.</li></ul></li> <li> PrescrTempl,prescr: Бібліотеку інтерфейÑу кориÑтувача та шаблонну бібліотеку "Рецепти" відревізовано, покращено, доповнено, документовано та документацію додано до offline. <ul><li> PrescrTempl: Доповнено шаблоном "Менеджер", перенеÑеного із бібліотеки контролерів.</li> <li> prescr: Елементи бібліотеки розширено лінкуваннÑм БД та автоматичним ÑтвореннÑм таблиць команд та програм.</li></ul></li></ul></li> <li> DB.LibsDB.vcaElectroEls: Бібліотеку інтерфейÑу кориÑтувача "Елементи електрики" відревізовано, покращено, доповнено, документовано та документацію додано до offline. <ul><li> Доповнено чотирма уніфікованими елементами: "Ключ, уніфікований (keyUnif)", "Перемикач, уніфікований (swUnif)", "Загальний Ñтан, уніфікований (stGenUnif)", "Стан облаÑÑ‚Ñ–, уніфікований (stAreaUnif)".</li></ul></li> <li> FIX:DB.LibsDB.OscadaLibs: <ul><li> Оновлено щодо деÑких повідомлень.</li> <li> FIX:base: Бібліотеку шаблонів "ОÑновна бібліотека" відревізовано, покращено, доповнено, документовано та документацію додано до offline. <ul><li> {anUnif,anUnifSt,manInUnif,digAlarm,codeState,pidUnif,pidUnifImp,SNMP,UPS}: Переведено на уніфікований механізм Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° контролю порушень.</li> <li> Доповнено шаблоном "initConsAssignTrs" Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¸Ñ… транÑпортів ініціативних підключень Сокетів Ð´Ð»Ñ Ð±ÑƒÐ´ÑŒ-Ñких типів джерельних об'єктів, Ñк то DAQ-модулі та контролері Ñ– параметри логічного рівнÑ.</li> <li> Доповнено шаблоном "codeState" Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ñтану за кодом.</li> <li> Доповнено реалізацією Ñкладного Ñповіщувача у шаблоні "ntf", окрема JavaLikeCalc Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ Ñ‚Ð° об'єкти кориÑтувацьких протоколів "SMS" та "SMTP" позначено заÑтарілими.</li> <li> Доповнено шаблоном "UPS", перенеÑено із бібліотеки "ПромиÑлові приÑтрої".</li></ul></li> <li> FIX:DevLib: Шаблонна бібліотека Ñ” відокремленою чаÑтиною оригінальної бібліотеки "ПриÑтрої" під назвою "ПромиÑлові приÑтрої", Ñку відревізовано, покращено, доповнено, документовано та документацію додано до offline. <ul><li> FIX:IEC60870: Доповнено окремим чаÑом "tmPoolAll" періодичноÑÑ‚Ñ– повного опитуваннÑ. <ul><li> Доповнено підтримкою пакетів M_ME_TF_1, M_ME_NC_1, розширено підтримкою SQ-режиму, перевірено M_ME_TF_1 та M_ME_NC_1, M_ME_NB_1 у SQ-режимі, AI вÑтановлено у "реальний" тип.</li> <li> Доповнено опцією "syncTimePLC" контролю Ñинхронізації ПЛК.</li></ul></li> <li> Доповнено правильною реалізацією DCON у шаблонах DCON_Prt, DCON_Prt_DI, DCON_Prt_AO, DCON_Prt_DO, об'єкт кориÑтувацького протоколу "DCON" видалено.</li> <li> Доповнено повнофункціональною реалізацією протоколу OWEN у чаÑтині збору даних.</li> <li> Доповнено реалізацією DNP3 та Ñ—Ñ— випробувано з outstation-demo із opendnp3.</li> <li> Доповнено реалізацією модулів лічильників Pulsar-M (pulsarM).</li> <li> Доповнено реалізацією Ñканеру ModBus, Ñк шаблон "ModBusScan".</li></ul></li> <li> LowDevLib: Шаблонна бібліотека Ñ” відокремленою чаÑтиною оригінальної бібліотеки "ПриÑтрої" під назвою "Ðизькорівневі приÑтрої", Ñку відревізовано, покращено, доповнено, документовано та документацію додано до offline. <ul><li> FIX:{1W_DS9097,1W_DS9097U}: Виправлено Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ€Ð¾Ð´Ð¸Ð½Ð¸ приÑтрою Ñк шаблон 0x7F, виÑвлено на оÑтанніх DS2413 із першим байтом 0xBA.</li> <li> Доповнено реалізацією шаблону "MAX6675", низькорівневого SPI Конвертору K-Термопар-у-Цифру КомпенÑації-Холодних-Спаїв.</li> <li> Доповнено реалізацією шаблону "SHT3x", низькорівневого ÑенÑору вологоÑÑ‚Ñ–.</li> <li> Доповнено реалізацією шаблону ADS111x(ADS101x) та MCP4725, низькорівневих I2C-чипів.</li></ul></li> <li> FIX:JavaLikeCalc.techApp: JavaLikeCalc бібліотеку "Технологічні апарати" документовано та документацію додано до offline. Ð’ÑÑ– Кирилічні Ñимволи видалено із ідентифікаторів моделей та вÑÑ– текÑти відкориговано.</li> <li> tests: Бібліотеку шаблонів "ТеÑти" перейменовано із бібліотеки "S7".</li> <li> JavaLikeCalc.servProc: JavaLikeCalc бібліотеку "СервіÑні процедури" відревізовано, дещо покращено, доповнено, документовано та документацію додано до offline. <ul><li> docOffLine: Значно розширено деталізацією повідомлень про помилки та розташуваннÑм незавершених Ñторінок у аргументі "pagesCur" Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð¾Ð²Ð¶ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÑ€Ð¸Ð²Ð°Ð½ÑŒ.</li></ul></li> <li> JavaLikeCalc.regEl: JavaLikeCalc бібліотеку "Елементи регулюваннÑ" документовано та документацію додано до offline.</li></ul></li> <li> FIX:DB.LibsDB.vcaBase: <ul><li> FIX: Цілковите Ñ– значне Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ Кирилічних Ñимволів та вдоÑÐºÐ¾Ð½Ð°Ð»ÐµÐ½Ð½Ñ Ð¾Ñ€Ð¸Ð³Ñ–Ð½Ð°Ð»ÑŒÐ½Ð¸Ñ… ідентифікаторів Ñ– повідомлень, із перейменуваннÑм Ñ—Ñ… ÐнглійÑькою.</li> <li> БільшіÑÑ‚ÑŒ Ñтандартних кадрів та віджетів адаптовано до Ñтилів та Ñтворено Ñтиль "Світлий" Ð´Ð»Ñ Ð²ÑÑ–Ñ… проектів.</li> <li> FIX:Main: Бібліотеку інтерфейÑів кориÑтувача "ОÑновні елементи" відревізовано, покращено, доповнено, документовано та документацію додано до offline. <ul><li> FIX:{alarmsAct,alarmsSt}: <ul><li> Розширено підтримкою квітації-підтвердженнÑ, коментарÑми та кориÑтувацькими полÑми.</li> <li> Поле "Параметр (prm)" перейменовано у "Джерело" де розташовано вÑÑ– віддалені та локальні джерела.</li></ul></li> <li> RootPgSo: ВдоÑконалено динамічним ÑтвореннÑм об'єктів Ñигналізації, кількіÑÑ‚ÑŒ Ñких обмежена лише загальною довжиною назв об'єктів Ñигналізації та Ñ—Ñ… двома Ñ€Ñдами. ПідтримуєтьÑÑ Ñ‚Ð°ÐºÐ¾Ð¶ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ñ–Ñ ÐºÐ½Ð¾Ð¿Ð¾Ðº об'єктів Ñигналізації праворуч від логотипу. Типи Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ‚Ð°ÐºÐ¾Ð¶ уніфіковано ідентифікаторами "view[1..6]", коли кориÑтувач може Ñ—Ñ… призначити у влаÑний ÑпоÑіб. СуміÑніÑÑ‚ÑŒ із оригінальними назвами видів збережено Ð´Ð»Ñ Ð½Ð°Ñвних проектів!</li> <li> Доповнено: <ul><li> панеллю-вікном контролю "ОбчиÑÐ»ÐµÐ½Ð½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ñƒ графіку (graphCalc)";</li> <li> об'єктним віджетом "ВлаÑтивоÑÑ‚Ñ– об'єкту (objProps)";</li> <li> кадром порушень "ÐŸÐ¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ â€” звіт (alarmsStReport)";</li> <li> віджетом "Мітка зображеннÑм (ImgLab)";</li> <li> кадром "Менеджер кориÑтувачів (userManager)".</li></ul></li> <li> grph_panel: Доповнено незалежною кнопкою Ð¿ÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð½Ð° Ñ‡Ð°Ñ ÐºÑƒÑ€Ñору заміÑÑ‚ÑŒ непрÑмого Ð¿ÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð¿Ñ€Ð¸ зменшені глибини.</li> <li> ElViewGraph: Розмір шрифту назви зменшено із 15 до 11 та колір тренду відображуваних елементів по замовченню вÑтановлено у "gray".</li> <li> Кадри рецептів "prescrEdit", "prescrRun" та "prescrRunSimple" винеÑено до нової бібліотеки "Рецепти (prescr)".</li> <li> cntrRegul: Товщину трендів збільшено до 2 пікÑелів.</li></ul></li> <li> FIX:mnEls: Бібліотеку елементів інтерфейÑу кориÑтувача "Елементи мнемоÑхеми" документовано та документацію додано до offline.</li></ul></li> <li> FIX:Model.{AGLKS,Boiler}: Значно оновлено відповідно до загальних змін у бібліотеках. <ul><li> FIX: Значно очищено та вÑÑ– оригінальні ідентифікатори перейменовано ÐнглійÑькою, у процеÑÑ– ревізії документації.</li> <li> FIX: AGLKS.vca,Boiler.St: Ðдаптовано до нових змін оÑновної Ñторінки. <ul><li> Створено Ñтиль "Світлий" Ð´Ð»Ñ Ð²ÑÑ–Ñ… проектів. Стилі переведено на Ñхему прÑмого Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ñтилів за Ñ—Ñ… наÑвноÑÑ‚Ñ– заміÑÑ‚ÑŒ "Ðемає Ñтилю" та додано Ñтиль "Типовий". </li></ul></li> <li> FIX:Model.AGLKS: <ul><li> FIX:St: <ul><li> FSArch.1m: Видалено дивні Ñ– тимчаÑові архіватори: FSArch.{NetRequsts,test,StatErrors}, DBArch.test та додано актуальні: FSArch.{alarms,actions,SYS}, DBArch.SYS.</li></ul></li> <li> FIX:vca: Переприв'Ñзано аналогові параметри та графіки.</li></ul></li></ul></li></ul> <h4><span class="mw-headline" id="API"><span class="mw-headline-number">7.8.2</span> API</span></h4> <p><i>!!!!:Зміни</i>: </p> <ul><li> SYS: Типовий конÑтруктор ResMtx вÑтановлено у true Ð´Ð»Ñ "isRecurs", оÑкільки це загальна ÑитуаціÑ. <ul><li> БільшіÑÑ‚ÑŒ функцій Ð´Ð¾Ð´Ð°Ð½Ð½Ñ Ð´Ð¾ контейнеру вузлів розширено поверненнÑм результуючого ідентифікатора/ім'Ñ Ñтвореного вузла длÑ: chldAdd(), TSecurity::{usrAdd(),grpAdd()}, TTypeBD::open(), TTypeTransport::{inAdd(),outAdd()}, TValue.chldAdd(), DAQ.{TController::add(),TParameter::add(),BlockCalc.blkAdd()}, TTypeArchivator::{messAdd(),valAdd()}, TArchiveS::valAdd(), UI.VCAEngine::{wlbAdd(),prjAdd(),WLib.add(),Project.add(),Project.Page.pageAdd()}, UI.WebUser.uPgAdd().</li> <li> TFld::Selected вÑюди перейменовано у TFld::Selectable.</li> <li> Варіант Ñпеціальної функції strMess() із обмеженнÑм розміру результуючого Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð¾ та замінено функцією strEncode() із типом TSYS::Limit.</li> <li> chldList() та chldPresent() зроблено віртуальними.</li></ul></li> <li> DAQ,Special: Ðтрибут "run_st" у TPrmTmplLib та TSpecial перейменовано у runSt.</li> <li> Archives: TArchiveS::messPut() очищено від аргументу "force".</li> <li> Protocols.HTTP: Функції кориÑтувацького API pgAccess(), pgCreator() перенеÑено із TProtocol до TProtocolIn.</li> <li> Transports.In: Функцію protocol() перейменовано у protocols() та видалено protocolFull().</li></ul> <p><i>ДоповненнÑ</i>: </p> <ul><li> SYS: Додано загальний механізм замків через контейнер замків, Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ commonLock(). <ul><li> TConfig,*: Функції API кориÑтувача Ð´Ð»Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ— TConfig::cfg() та TConfig::cfgSet() розширено контролем прав.</li> <li> Доповнено функціÑми TCfg::toDefault() та TConfig::cfgToDefault() ÑÐºÐ¸Ð´Ð°Ð½Ð½Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ð¹Ð½Ð¾Ð³Ð¾ контекÑту до типового.</li> <li> Об'єкт TFunction доповнено ознакою зміненоÑÑ‚Ñ– процедури isChangedProg(), та прапорець TFld::Selectable Ñ– Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ ioAdd() доповнена результатом позиції доданого Ð’Ð’.</li> <li> Запит ІнтерфейÑу ÐšÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ "load" розширено визначеннÑм обраної БД у атрибуті "force", Ð´Ð»Ñ Ð·Ð´Ñ–Ð¹ÑÐ½ÐµÐ½Ð½Ñ Ñ‚Ð°ÐºÐ¾Ñ— операції щодо конкретного вузла.</li> <li> XMLNode: Функцію Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñ–Ð² attr() розширено опціональним аргументом Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¸ÑутноÑÑ‚Ñ–.</li> <li> "МаÑив (Array)" проÑтору кориÑтувача розширено функціÑми indexOf() та lastIndexOf().</li> <li> Функцію API кориÑтувача SYS.fileRead() розширено аргументами Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñ‚Ð° розміру блоку читаннÑ.</li> <li> Функцію API кориÑтувача strEncode() доповнено підтримкою варіантів "ToLower" та "Limit".</li> <li> API кориÑтувача доповнено функцією strFromCharUTF() Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€Ñдку із UTF-8, UTF-16, UTF-16LE, UTF-16BE, UTF-32, UTF-32LE, UTF-32BE.</li> <li> Доповнено визначеннÑм періодичноÑÑ‚Ñ– ÑервіÑного Ð·Ð°Ð²Ð´Ð°Ð½Ð½Ñ SERV_TASK_PER=10.</li> <li> API кориÑтувача доповнено функцією SYS.fileSize().</li> <li> Додано функцію str2atime() Ð´Ð»Ñ ÐºÐ¾Ð½Ð²ÐµÑ€Ñ‚Ð°Ñ†Ñ–Ñ— чаÑу у Ñ€Ñдку у Ñ‡Ð°Ñ Ð²Ñ–Ð´ епохи UNIX з підтримкою GMT.</li> <li> TError доповнено назвами кодів помилок у перелічені "Codes", Ñкі вÑюди викориÑтано.</li> <li> Спеціальні назви архівів доповнено назвою ALRM_ARCH_CH_NM ("<alarmsChange>"), Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñтої зміни наÑвних порушень.</li> <li> ÐžÐ±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð¾ USER_ITS_LIMIT (1000000) Ð´Ð»Ñ Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ ÐºÑ–Ð»ÑŒÐºÐ¾ÑÑ‚Ñ– елементів на кшталт кориÑтувацьких маÑивів із DAQ.JavaLikeCalc.</li></ul></li> <li> DB: Додано контроль Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñ‚Ñ€Ð°Ð½Ð·Ð°ÐºÑ†Ñ–Ð¹ у Ñдрі OpenSCADA функціÑми trTm_ClsOnOpen(), trTm_ClsOnReq() та trPr_ClsTask(). <ul><li> Додано контроль процеÑу пере-ÑƒÐ²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¾Ð±'єктів БД функцією disabledByUser().</li> <li> Доповнено конфігурацією "Ð§Ð°Ñ Ð¶Ð¸Ñ‚Ñ‚Ñ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸Ñ… таблиць", Ð´Ð»Ñ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñм неактивних таблиць функцією tblLifeTime().</li> <li> Ðтрибут TBD::mEn перенеÑено до захиÑного проÑтору.</li></ul></li> <li> ТранÑпорти: <ul><li> In: Доповнено віртуальними функціÑми keepAliveReqs(), keepAliveTm() Ð´Ð»Ñ Ð¿Ñ€Ð°Ð²Ð¸Ð»ÑŒÐ½Ð¾Ð³Ð¾ KeepAlive на Web.</li> <li> Out: Доповнено ÑервіÑом Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¸Ñ… транÑпортів за чаÑом Ð¶Ð¸Ñ‚Ñ‚Ñ (неактивноÑÑ‚Ñ–), ÑервіÑною функцією outLifeTime(). <ul><li> Розширено полем загального контролю Ñпроб у функції attempts().</li> <li> Уніфіковано контролем чаÑу оÑтаннього запиту у функції lstReqTm().</li> <li> Додано функцію outAddrHelp() Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ñ— допомоги за адреÑою модулів вихідних транÑпортів.</li></ul></li></ul></li> <li> Protocol.HTTP: Розширено функцією кориÑтувацького API setUser() Ð´Ð»Ñ Ð·Ð¼Ñ–Ð½Ð¸ автентифікованого кориÑтувача.</li> <li> DAQ: TController::alarmSet() розширено аргументом "force" Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð¼ÑƒÑового вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ на об'єктах контролерів у резервуванні. <ul><li> DAQ-параметри доповнено функцією кориÑтувацького API alarmSet() та функцією vlSetRednt() уніфікованого запиÑу значень у резервуванні.</li> <li> TDAQS::rdRestDtTm() розширено поверненнÑм double заміÑÑ‚ÑŒ float.</li> <li> Доповнено функцією кориÑтувацького API daqAt().</li> <li> Функцію кориÑтувацького API funcCall() розширено аргументом "err".</li> <li> JavaLikeCalc: Функції кориÑтувацького API charAt() та charCodeAt() розширено підтримкою UTF. Функції кориÑтувацького API розширено isNaN() Ð´Ð»Ñ bool, integer, real, string (оÑобливо Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸ чиÑел у Ñ€Ñдку).</li></ul></li> <li> Ðрхіви: <ul><li> Об'єкти TMArchivator та TArchiveS доповнено функцією redntTm() та rdTm() Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¾Ñтаннього чаÑу Ñ€ÐµÐ·ÐµÑ€Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ñ€Ñ…Ñ–Ð²Ñ–Ð² повідомлень.</li> <li> TArchiveS::rdRestDtOverTm() розширено поверненнÑм double заміÑÑ‚ÑŒ float.</li> <li> Ðрхіви значень доповнено загальною опцією autoIdMode() режиму Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð†Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ‚Ð¾Ñ€Ñƒ автоматично Ñтворюваних архівів із варіантами Ð¿ÐµÑ€ÐµÐ»Ñ–Ñ‡ÐµÐ½Ð½Ñ AutoIdMode::{BothPrmAttrId,OnlyPrmId,OnlyAttrId}.</li> <li> Val: Додано функції API кориÑтувача getVals() та setVals() Ð´Ð»Ñ Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ— загального механізму доÑтупу до архівів/Ñ–Ñторії у маÑиві та із фікÑованою періодичніÑÑ‚ÑŽ.</li></ul></li> <li> UI: Декларацію контекÑтної документації із опиÑу деÑких вузлів уніфіковано функцією TUIS::docKeyGet(). <ul><li> VCAEngine: Додано функцію кориÑтувацького API Ñ€Ñ–Ð²Ð½Ñ ÑеанÑу this.ownerSess().uiCmd(). Віджет Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð¾ функцією API кориÑтувача this.attrList() Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ»Ñ–ÐºÑƒ атрибутів віджету.</li></ul></li></ul> <h4><span class="mw-headline" id=".D0.A1.D0.B8.D1.81.D1.82.D0.B5.D0.BC.D0.B0"><span class="mw-headline-number">7.8.3</span> СиÑтема</span></h4> <ul><li> FIX: ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ коду та Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸: <ul><li> TMess: Доповнено очищеннÑм змінної Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ LC_ALL та вÑтановленнÑм "LANG" Ñкщо порожнє, Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½ÑŽ LC_NUMERIC=C у кінці кінців.</li> <li> FIX:.,*: Виправлено багато оригінальних повідомлень вихідного коду також протÑгом Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð±Ñ–Ð»ÑŒÑˆÐ¾ÑÑ‚Ñ– модулів.</li> <li> FIX:DAQ.JavaLikeCalc: Виправлено переклад JavaLikeCalc коду функцією tr() у Ñтворені таблиці перекладу "Trs" та запиÑів там у проÑтому режимі (одна мова).</li> <li> КонтекÑтна документаціÑ: <ul><li> Позамережева Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð° деÑкими модулÑми OpenSCADA та більшіÑÑ‚ÑŽ бібліотек внутрішніх процедур та графічних елементів. Файл загальних CSS-Ñтилів позамережевої документації "doc/en/files/doc.css" покращено вимкненнÑм прозорого фонового кольору та деÑкими влаÑтивоÑÑ‚Ñми Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ð¼Ð¾Ð²Ð¸.</li> <li> Уніфіковано декларацією з опиÑу деÑких вузлів у функції TUIS::docKeyGet() та додано вузли до цього: <ul><li> DAQ-шаблони та JavaLikeCalc бібліотеки;</li> <li> СВУ-бібліотеки у UI.VCAEngine та UI.Vision.</li></ul></li> <li> UI: TUIS::docGet() доповнено кодом Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ LTS збірок та викориÑÑ‚Ð°Ð½Ð½Ñ Ð·Ð°Ð¼Ð¾Ñ€Ð¾Ð¶ÐµÐ½Ð¾Ñ— LTS документації на OpenSCADA файл-Ñервері.</li> <li> FIX:DAQ.JavaLikeCalc,UI.VCAEngine: Виправлено декларацію позамережевої документації Ð´Ð»Ñ "User_API".</li></ul></li></ul></li> <li> FIX: СкладаннÑ: <ul><li> FIX:configure.ac: ВерÑÑ–ÑŽ бібліотеки Ñдра збільшено до 3:7:0 та верÑÑ–ÑŽ програми збільшено до 0.9.1.</li> <li> Доповнено корінними файловими ÑиÑтемами (chroots) Debian 10, CentOs 8 та Ubuntu 20.04 Ð´Ð»Ñ Ð·Ð±Ñ–Ñ€ÐºÐ¸ OpenSCADA. <ul><li> Вихідні текÑти значно почищено ÑтоÑовно попереджень ÑÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ñ–Ð· GCC 9 (CentOs 8).</li> <li> UI.{QTCfg,Vision}: Ðдаптовано до збірки у оточені Debian 10 щодо Qt5.11.3, GCC8 та помилки ÑтоÑовно конфлікту макроÑу message() у StdLibC++ через Qt5.</li></ul></li></ul></li> <li> Android: Вивчено поведінку викориÑÑ‚Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð½Ð¾Ñ— Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ QT_SCALE_FACTOR на Android, Ñку вÑтановлено у 1.5 та видалено типовий шрифт "Helvetica,12,-1" разом із CSS-правилами QScrollBar.</li> <li> Модульну верÑÑ–ÑŽ підÑиÑтеми "Спеціальні" збільшено до 12; підÑиÑтеми "БД", "DAQ", "Ðрхіви" та "UI" збільшено до 13; підÑиÑтеми "ТранÑпорти" збільшено до 15.</li> <li> FIX: ПотоковіÑÑ‚ÑŒ, завданнÑ, реальний Ñ‡Ð°Ñ Ñ‚Ð° замки: <ul><li> ДеÑкі загальні реÑурÑи даних dataRes() замінено влаÑними реÑурÑами, переважно через ÑпоÑÑ‚ÐµÑ€Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ð±Ð»ÐµÐ¼ Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ Protocol.HTTP та <b>DAQ.ModBus</b>.</li> <li> FIX: Додано механізм загальних замків через контейнер замків, Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ commonLock(). <ul><li> FIX: Transport.{Sockets,SSL}: ВикориÑтано Ð´Ð»Ñ ÑиÑтемних функцій на кшталт getaddrinfo(), Ñкі не Ñ” багатопотоковими.</li></ul></li> <li> ÐŸÐ»Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð²Ð´Ð°Ð½ÑŒ доповнено фазуваннÑм Ñ—Ñ… виклику, що робить Ð½Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð½Ð° процеÑор рівним.</li> <li> FIX: ÐžÑ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— TCntrNode::nodeDis() виправлено Ð´Ð»Ñ Ð½ÑƒÐ»ÑŒÐ¾Ð²Ð¾Ð³Ð¾ чаÑу та функцію chldDel() вÑтановлено у відÑутніÑÑ‚ÑŒ Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾ замовченню.</li> <li> FIX: Виправлено негативну пріоритетніÑÑ‚ÑŒ політики "BATCH".</li> <li> Archive,DAQ.Controller: Ð”Ð»Ñ Ð¿Ð¾Ñ‚Ð¾Ñ‡Ð½Ð¾Ð³Ð¾ чаÑу повідомлень та значень переважно викориÑтано TSYS::curTime()/1000000 заміÑÑ‚ÑŒ time(NULL) оÑкільки Ñ‡Ð°Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ Ñ– значень у мікроÑекундах та позначено TSYS::curTime().</li></ul></li> <li> FIX: <span id="Redundancy" title="#Redundancy"><b>РезервуваннÑ</b></span>: <ul><li> .,UI.{QTCfg,Vision,WebCfg,WebCfgD}: Функцію "Передача локальних первинних команд" резервованих ÑиÑтем уніфіковано та розширено повним переміщеннÑм до TCntrNode::cntrCmd(), тож Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ Ð¿Ñ€Ð°Ñ†ÑŽÑ” наразі Ð´Ð»Ñ Ð±ÑƒÐ´ÑŒ-Ñких викликів також із Ð¾Ñ‚Ð¾Ñ‡ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ ÐºÐ¾Ñ€Ð¸Ñтувача.</li> <li> Archives,DAQ.DAQGate: ÐžÐ¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²ÐµÑ€Ñ…Ð½ÑŒÐ¾Ñ— межі чаÑу повідомлень у резервуванні та DAQGate змінено на викориÑÑ‚Ð°Ð½Ð½Ñ Ð¾Ñтаннього Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð¿Ð¾Ð²Ñ‚Ð¾Ñ€Ñƒ його запиту двічі, щоб запобігти втраті повідомлень на межі. <ul><li> FIX: Ð ÐµÐ·ÐµÑ€Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° DAQ.DAQGate відновлено у запиÑÑ– великих архівних блоків значень, переважно у відновлені ділÑнок архіву значень.</li> <li> Перше Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ у резервуванні повідомлень ввімкнено лише за наÑвноÑÑ‚Ñ– архіваторів повідомлень у резерві.</li> <li> Ð Ð¾Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ у архіваторах процедурою Ñ€ÐµÐ·ÐµÑ€Ð²ÑƒÐ²Ð°Ð½Ð½Ñ TMArchivator::redntDataUpdate() змінено на викориÑÑ‚Ð°Ð½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— put(), Ð´Ð»Ñ Ð·Ð´Ñ–Ð¹ÑÐ½ÐµÐ½Ð½Ñ Ñ†Ñ–Ñ”Ñ— операції автоматично Ð´Ð»Ñ Ð²ÑÑ–Ñ… отриманих повідомлень під замком.</li></ul></li> <li> DAQ,DAQ.*: Ð—Ð°Ð¿Ð¸Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½ÑŒ у резервуванні уніфіковано функцією vlSetRednt(). Ð¡ÐµÑ€Ð²Ñ–Ñ "TValue::get:/serv/attr" розширено дещо зайвим запитом оÑтаннього запитаного Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ EVAL там при втраті з'єднаннÑ.</li></ul></li> <li> Функцію strEncode() доповнено варіантом "Limit" Ð´Ð»Ñ Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ñƒ Ñ€Ñдка з урахуваннÑм змінноÑÑ‚Ñ– UTF-8, та наÑтупні елементи переведено на неї, заміÑÑ‚ÑŒ видаленого обмежувального варіанту функції strMess(): ключі TConfig, Ð’Ð’ DAQ-шаблонів, DB.SQLite, UI.QTCfg.</li> <li> FIX: КонфігураціÑ: <ul><li> TConfig,TCfg: Ключові Ð¿Ð¾Ð»Ñ Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð¾ обмеженнÑм Ñ—Ñ… розміру перед обрізаннÑм на боці БД. <ul><li> *: Функції Ð´Ð¾Ð´Ð°Ð½Ð½Ñ Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð¾ опрацюваннÑм Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ñ–Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ‚Ð¾Ñ€Ñƒ, або назви, та Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ñ—Ñ… у розмірі, поверненнÑм результуючої назви ініціатору, з викориÑтаннÑм Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— вузла chldAdd() до прÑмого Ð¿Ð¾Ð²ÐµÑ€Ð½ÐµÐ½Ð½Ñ Ñ–Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ‚Ð¾Ñ€Ñƒ та проÑтого Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ вузла Ð´Ð»Ñ Ð¾Ð´Ð½Ð°ÐºÐ¾Ð²Ð¸Ñ….</li> <li> DAQ: Ідентифікатори Ð’Ð’ Логічного Ð Ñ–Ð²Ð½Ñ DAQ-шаблонів розширено обмеженнÑм розміру до 1.5*OBJ_ID_SZ=30 Ñимволів та доповнено Ñ—Ñ… обрізаннÑм при Ñтворені.</li> <li> ТранÑпорти: Розмір Ідентифікатору вихідних транÑпортів вÑтановлено у OBJ_ID_SZ*2, оÑкільки вони можуть комбінуватиÑÑ Ñ–Ð· звичайного ідентифікатору вузла та деÑкого префікÑу, у автоматичному режимі.</li> <li> Доповнено функцією вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ð»Ñ–Ð² TCfg у типове значеннÑ, Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½ÑŽ значень попередніх запиÑів до відÑутніх полів.</li></ul></li> <li> TConfig,*: Функції кориÑтувацького API Ð´Ð»Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ— cfg() та cfgSet() розширено контролем доÑтупу.</li> <li> Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ–Ð· обраної БД покращено попередньою перевіркою Ð²Ð²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ñƒ функції TSYS::chkSelDB().</li> <li> TCntrNode,DAQ,DAQ.JavaLikeCalc: Доповнено функцією load__() Ð´Ð»Ñ Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð´ÐµÑких дій на кінці завантаженнÑ.</li></ul></li> <li> Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐšÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ: <ul><li> *: Уніфіковано щодо контролю модифікації об'єктів вузлів та очищено зайві модифікації, перенеÑеннÑм модифікації із контекÑту Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´ опцію "modifCalc".</li> <li> .,UI.{QTCfg,WebCfgD}: Таблиці розширено окремою допомогою за Ñтовпчиками та клітинками. <ul><li> ТранÑпорти: Таблицю зовнішніх хоÑтів OpenSCADA розширено контекÑтною допомогою до клітинки адреÑи транÑпорту, викориÑтовуючи функцію outAddrHelp().</li></ul></li></ul></li> <li> DAQ-шаблони та вÑÑ– Ñ—Ñ… реалізації доповнено функцією ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñ–Ð² Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ñ–Ð· другого та третього Ñ€Ñдка шаблонного Ð¿Ð¾Ð»Ñ "ЗначеннÑ", TFunction::IO доповнено прапорцем TFld::Selectable.</li> <li> Завершено уніфіковану реалізацію DAQ-шаблонів — TPrmTempl::Impl, та такі елементи мігровано Ñ– адаптовано до неї: DAQ.{JavaLikeCalc,<b>ModBus</b>,LogicLev,Siemens}, Protocol.{ModBus,UserProtocol}, UI.WebUser.</li> <li> FIX:DAQ,Archive.DBArch: Реалізовано копіюючий конÑтруктор TElem Ð´Ð»Ñ Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð±Ð»ÐµÐ¼ у Archive.DBArch та багатьох груп-таблиць у груповому табличному режимі.</li> <li> Function,DAQ.{JavaLikeCalc,LogicLev,<b>ModBus</b>,Siemens}: Розширено ÑтеженнÑм за зміною програми функції та на предмет гарÑчого перезапуÑку виконуваних процедур, вÑтановленнÑм Ð¿Ñ€Ð°Ð¿Ð¾Ñ€Ñ†Ñ "f_start".</li> <li> TMess,XMLNode: Доповнено функцією setUTF8(), Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ UTF-8 із Ñ—Ñ… кодів, взÑте із XMLNode Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð°Ð½Ð½Ñ Ñƒ інших міÑцÑÑ….</li></ul> <h4><span class="mw-headline" id=".D0.91.D0.94"><span class="mw-headline-number">7.8.4</span> БД</span></h4> <ul><li> FIX:*: Функцію ÑÐºÐ¸Ð´Ð°Ð½Ð½Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ð¹Ð½Ð¾Ð³Ð¾ контекÑту cfgToDefault() викориÑтано на початку функції dataSeek() та fieldSeek(), оÑкільки це обов'Ñзкова операціÑ, що-найменш Ð´Ð»Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ð¹Ð½Ð¾Ð³Ð¾ файлу, та має також здійÑнюватиÑÑ Ð´Ð»Ñ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ— у БД ÑтоÑовно нових полів.</li> <li> Доповнено контролем Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñ‚Ñ€Ð°Ð½Ð·Ð°ÐºÑ†Ñ–Ð¹ у Ñдрі OpenSCADA, у ÑервіÑному завдані Ð´Ð»Ñ Ñ‚Ð°Ð¹Ð¼Ð°ÑƒÑ‚Ñƒ > 10 Ñекунд або у окремому на БД завдані швидкого Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñ‚Ñ€Ð°Ð½Ð·Ð°ÐºÑ†Ñ–Ð¹ Ñпільних СУБД. Ð”Ð»Ñ Ñ‡Ð¾Ð³Ð¾ додано функції trTm_ClsOnOpen(), trTm_ClsOnReq() та trPr_ClsTask().</li> <li> Об'єкти БД доповнено відновленнÑм Ñ—Ñ… Ð²Ð²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð¿Ñ–ÑÐ»Ñ Ð²Ñ‚Ñ€Ð°Ñ‚Ð¸ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ (або іншої причини) Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ´Ð±Ð°Ñ‡ÐµÐ½Ð¸Ñ… до Ð²Ð²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ñ‚Ð° не вимкнених кориÑтувачем, за допомогою disabledByUser().</li> <li> Доповнено конфігурацією "Ð§Ð°Ñ Ð¶Ð¸Ñ‚Ñ‚Ñ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸Ñ… таблиць", Ð´Ð»Ñ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð½ÐµÐ°ÐºÑ‚Ð¸Ð²Ð½Ð¸Ñ… таблиць.</li> <li> FIX:{SQLite,MySQL,PostgreSQL,FireBird}: <ul><li> FIX:{MySQL,PostgreSQL,FireBird}: ВдоÑконалено та перевірено гарÑче Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ñ‚Ñ€Ð°Ñ‡ÐµÐ½Ð¸Ñ… з'єднань та без втрати даних. <ul><li> FIX:FireBird: Відновлено оÑновну роботу у запиті первинних ключів та адаптовано до FireBird верÑÑ–Ñ— 3.</li> <li> FIX:MySQL: Вирішено із аварійним завершеннÑм у вбудованому перепідключенні (за MYSQL_OPT_RECONNECT), Ñкий замінено влаÑним та гарÑчим перепідключеннÑм. Виправлено помилку "BLOB/TEXT can't have a default value (1)" на ÑучаÑних верÑÑ–ÑÑ… Ñерверу MariaDB, цілковитим видаленнÑм DEFAULT Ð´Ð»Ñ TEXT.</li></ul></li> <li> SQLite: Доповнено коректним опрацюваннÑм Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² БД SQLite, при доÑтупі до загальних бібліотек із різних процеÑів.</li></ul></li></ul> <h4><span class="mw-headline" id=".D0.97.D0.B1.D1.96.D1.80_.D0.94.D0.B0.D0.BD.D0.B8.D1.85"><span class="mw-headline-number">7.8.5</span> Збір Даних</span></h4> <ul><li> TController::alarmSet(): Розширено імплементацією концепції Ñ‚Ñ€Ð¸Ð³ÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ, Ñка передбачає також Ð¿Ñ€Ð¾Ð¿ÑƒÑ‰ÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ до буферу з метою Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð»Ð¸ÑˆÐµ за наÑвноÑÑ‚Ñ– порушень. <ul><li> Глобально уніфіковано та цілковито опиÑано у документації ÑтоÑовно повідомлень із об'єктів контролерів та DAQ-параметрів, коли параметр-джерело у повідомлені доповнюєтьÑÑ Ñ–Ð¼'Ñм об'єкту контролеру.</li> <li> FIX: Змінено на викориÑÑ‚Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ð½Ð¾Ð³Ð¾ ID-шлÑху параметру, Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ ÐºÐ¾Ð»Ñ–Ð·Ñ–Ñм у порушеннÑÑ… від параметрів із однаковими ідентифікаторами, але різними джерелами.</li></ul></li> <li> FIX:*: ВлаÑтивіÑÑ‚ÑŒ period() заздалегідь актуалізовано, при зміні конфігурації "SCHEDULE", Ð´Ð»Ñ Ð·Ð°Ð±ÐµÐ·Ð¿ÐµÑ‡ÐµÐ½Ð½Ñ ÐºÐ¾Ñ€ÐµÐºÑ‚Ð½Ð¾Ñ— періодичноÑÑ‚Ñ– даних архівів.</li> <li> Розширено раннім ввімкненнÑм бібліотек шаблонів у процеÑÑ– завантаженнÑ, початково Ð´Ð»Ñ Ñ‚Ñ€Ð°Ð½Ñпортних протоколів заÑнованих на DAQ-шаблонах.</li> <li> FIX:<span id="ModBus" title="#ModBus"><b>ModBus</b></span>: <ul><li> FIX: Режим "ÐÑинхронний запиÑ" відновлено та перевірено у запиÑÑ– піÑÐ»Ñ Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ, Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð°Ð½Ð½Ñ Ñƒ попереджені втрат. ÐÑинхронний Ð·Ð°Ð¿Ð¸Ñ Ð¿ÐµÑ€ÐµÐ¼Ñ–Ñ‰ÐµÐ½Ð¾ на піÑÐ»Ñ Ñ„Ð°Ð·Ð¸ запиту із пригніченнÑм-затримкою зміни запиÑаних значень у атрибутах до Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð±ÑƒÑ„ÐµÑ€Ñƒ запиÑу.</li> <li> FIX: Виправлено роботу у режимі резервуваннÑ.</li> <li> FIX: Загальну функцію upVal() поділено на дві функції upValStd() та upValLog() Ð´Ð»Ñ Ð¾ÐºÑ€ÐµÐ¼Ð¾Ð³Ð¾ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚Ð¸Ð¿Ñ–Ð² параметрів Ñпочатку "Стандартний" та "Логічний" тип на оÑтанок, Ð´Ð»Ñ Ð²Ð¸Ð¿Ð°Ð´ÐºÑ–Ð² викориÑÑ‚Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… "Стандартного" типу параметрів у "Логічному".</li> <li> Розширено роботою із помилковим або порожнім транÑпортом підключень, щоб забезпечити його зміну із зовнішніх процедур.</li> <li> Розширено прапорцем "s" Ñуворого запиту Ñкладних даних.</li></ul></li> <li> FIX:JavaLikeCalc: Розширено Ñпробою Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð½ÑŒÐ¾Ñ— процедури у випадку помилок у новій, переважно із DAQ-шаблонів. <ul><li> FIX: Виправлено аварійне Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð¿Ñ€Ð¸ гарÑчій компілÑції, переважно при повернені до коректної процедури піÑÐ»Ñ ÐºÐ¾Ð¼Ð¿Ñ–Ð»Ñції помилкової, у випадку викориÑÑ‚Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ñ†ÐµÐ´ÑƒÑ€Ð¾ÑŽ внутрішніх функцій та можливо Ñ– зовнішніх також, через відÑутніÑÑ‚ÑŒ Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ "fPrmst". Ð’ÑÑ– ці Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ ÑƒÐ½Ñ–Ñ„Ñ–ÐºÐ¾Ð²Ð°Ð½Ð¾ у функціÑÑ… buildClear(), workClear().</li> <li> Ð’Ñтановлено у зупинку функції при зміні джерела програми, Ð´Ð»Ñ Ð·Ð°ÑтоÑÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½.</li> <li> FIX: Попереджено рекурÑивних викликів, що ÑпоÑтерігалоÑÑ Ð½Ð° рекурÑивному Ñтворені віджетів у UI.VCAEngine.</li></ul></li> <li> Siemens: Розширено прÑмим визначеннÑм типу даних адреÑи. LibnoDave оновлено до 0.8.5.1.</li> <li> DAQGate: Розширено опцією та функцією Ñ€Ð¾Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñ€Ñ–Ð·Ð½Ð¸Ñ… віддалених контролерів у віртуальних параметрів.</li></ul> <h4><span class="mw-headline" id=".D0.90.D1.80.D1.85.D1.96.D0.B2.D0.B8-.D0.86.D1.81.D1.82.D0.BE.D1.80.D1.96.D1.8F"><span class="mw-headline-number">7.8.6</span> Ðрхіви-ІÑторіÑ</span></h4> <ul><li> FIX:ПовідомленнÑ: <ul><li> /serv/mess: ВдоÑконалено у вÑтавці, ÑтоÑовно незалежного запиÑу до архіву та Ñуто Ð´Ð»Ñ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð½Ð°Ñвних порушень.</li> <li> ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¼Ð°ÐºÑ€Ð¾Ñів "message", "mess_info", ... до функції Mess->put() переÑпрÑмовано на Ð·Ð°Ð¿Ð¸Ñ Ð´Ð¾ буферу, Ð´Ð»Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ Ð¿Ñ€Ñмого запиÑу до архіваторів.</li> <li> TArchiveS::messPut() очищено від аргументу "force".</li></ul></li> <li> FIX:ЗначеннÑ: <ul><li> TVArchive::getVals(): ВдоÑконалено Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð½ÐµÐ²Ñ–Ð»ÑŒÐ½Ð¸Ñ… буферів (з фікÑованою періодичніÑÑ‚ÑŽ) щодо запиту даних із буферу та різних архіваторів, викориÑтовуючи проміжний буферний маÑив, Ñкий програєтьÑÑ Ð² кінці.</li> <li> FIX: ВдоÑконалено Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ð½ÐµÐ·Ð°Ð»ÐµÐ¶Ð½Ð¾ Ð´Ð»Ñ Ð±ÑƒÑ„ÐµÑ€Ñƒ, архіваторів та Ñ—Ñ… періодичноÑÑ‚Ñ–, Ð´Ð»Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸ запитів даних на великому інтервалі та виÑокій періодичноÑÑ‚Ñ–.</li> <li> FIX: TValBuf.get() перемкнено із генерації виключень на Ð¿Ð¾Ð²ÐµÑ€Ð½ÐµÐ½Ð½Ñ EVAL за відÑутноÑÑ‚Ñ– запитаних даних.</li> <li> Ðрхіватори значень доповнено загальною опцією "Режим Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ ID атрибуту автоматично Ñтворюваних архівів" із обраннÑм із режимів: "Обидва ID параметру та атрибуту", "Тільки ID параметру", "Тільки ID атрибуту". Ð”Ð»Ñ Ð¼Ð¾Ð¶Ð»Ð¸Ð²Ð¾ÑÑ‚Ñ– контролю Ð½Ð°Ð¹Ð¼ÐµÐ½ÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡Ð½Ð¸Ñ… архівів.</li> <li> TVArchive::{setVals(),setVal()}: ДоÑтуп до функцій запиÑу до архіву обмежено лише кориÑтувачам у групі "Ðрхів".</li></ul></li> <li> FIX:FSArch: Режим повідомлень у XML доповнено кешем позицій. <ul><li> FIX: Ðрхівацію повідомлень значно вдоÑконалено та виправлено щодо Ñ€Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ñ Ð´ÐµÐºÑ–Ð»ÑŒÐºÐ¾Ñ… різних повідомлень на один чаÑ.</li> <li> FIX: Виправлено ÑтоÑовно Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ info.db та його опрацюваннÑ, викориÑтовуючи адреÑу БД Ñк унікальну ÑутніÑÑ‚ÑŒ заміÑÑ‚ÑŒ обмеженого ідентифікатору БД, Ñкий наразі іменуєтьÑÑ Ñ‡ÐµÑ€ÐµÐ· індекÑацію однакових.</li> <li> FIX: Ð¡Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ‚ÐµÐºÐ¸ архіву перенеÑено на початок, до Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ info.db.</li> <li> FIX: Виправлено архівацію дубльованих повідомлень у режимі Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð´ÑƒÐ±Ð»Ñ–ÐºÐ°Ñ‚Ð°Ð¼ - перепиÑано.</li></ul></li> <li> FIX:DBArch: <ul><li> FIX: Виправлено Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð°Ñ€Ñ…Ñ–Ð²Ñ–Ð² значень до архіватору Ð´Ð»Ñ Ð½ÐµÐ³Ñ€ÑƒÐ¿Ð¾Ð²Ð¾Ð³Ð¾ типу архівації.</li> <li> FIX: ОÑтаточно виправлено запит одиночних значень архіву, піÑÐ»Ñ Ð½ÐµÑ†Ñ–Ð»ÐºÐ¾Ð²Ð¸Ñ‚Ð¾Ð³Ð¾ Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ 2018-02-23 лише Ð´Ð»Ñ Ð´Ð°Ð½Ð¸Ñ… архіватору у періодичноÑÑ‚Ñ– 1 Ñекунда.</li> <li> Ðдаптовано до роботи лише у режимі прÑмого запиÑу архіву, Ð´Ð»Ñ Ð³Ñ€ÑƒÐ¿Ð¾Ð²Ð¾Ð³Ð¾ режиму архівів та щодо Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ†Ñ–Ð»ÑŒÐ¾Ð²Ð¾Ñ— інформації при запиÑÑ–.</li></ul></li></ul> <h4><span class="mw-headline" id=".D0.A2.D1.80.D0.B0.D0.BD.D1.81.D0.BF.D0.BE.D1.80.D1.82.D0.B8"><span class="mw-headline-number">7.8.7</span> ТранÑпорти</span></h4> <ul><li> .,*: Розширено підтримкою Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ð±Ð°Ð³Ð°Ñ‚ÑŒÐ¾Ñ… протоколів та функцію protocol() перейменовано у protocols(). <ul><li> Доповнено ÑервіÑом Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¸Ñ… транÑпортів за чаÑом Ð¶Ð¸Ñ‚Ñ‚Ñ (неактивноÑÑ‚Ñ–) та функцією outLifeTime(), уніфіковане щодо контролю чаÑу оÑтаннього запиту функцією lstReqTm().</li></ul></li> <li> FIX:Serial: Виправлено режим "Модем" вихідного транÑпорту, коректним опрацюваннÑм результату функції ResMtx::tryLock(). Поле ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ‚Ð¾ÐºÐ¾Ð¼ перенеÑено до Ð¿Ð¾Ð»Ñ Ð¾Ð¿Ñ†Ñ–Ð¹ через потребу прÑмого Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð´ÐµÑкою опцією на кшталт -RS485.</li> <li> FIX:Sockets,SSL: Розширено підтримкою IPv6 Ñк Ð´Ð»Ñ Ð²Ñ…Ñ–Ð´Ð½Ð¸Ñ…, так Ñ– вихідних транÑпортів, викориÑтовуючи getaddrinfo(). <ul><li> Доповнено опрацюваннÑм (підключеннÑм) вÑÑ–Ñ… IP-адреÑ, отриманих із Ñимволічної, оÑобливо Ð´Ð»Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¸Ñ… транÑпортів.</li> <li> Вихідні транÑпорти доповнено прÑмим визначеннÑм декількох Ð°Ð´Ñ€ÐµÑ Ñ…Ð¾Ñтів.</li> <li> Вихідні транÑпорти вдоÑконалено у викориÑтанні Ñпроб піÑÐ»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¸ запиту "Перевищено Ñ‡Ð°Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ.".</li> <li> FIX:Sockets: Виправлено Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¸Ñ… транÑпортів із адреÑою "SOCK:{N}" від ініціативних підключень, щодо Ð¾Ñ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð°Ð´Ñ€ÐµÑи вÑтановленнÑм у "SOCK:-1", чим попереджаючи можливіÑÑ‚ÑŒ перезапуÑку із викориÑтаннÑм вже закритого опиÑувача Ñокету, але можливо вже виділеного іншою чаÑтиною програми. <ul><li> ÐдреÑу вхідних транÑпортів у TCP-режимі може бути розширено додатковими параметрами та наразі наÑтупним полем піÑÐ»Ñ Ñ€ÐµÐ¶Ð¸Ð¼Ñƒ Ñ” ідентифікуюче Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ñ‚Ð¸Ð²Ð½Ð¾Ð³Ð¾ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñƒ режимі 2, тож цей режим розширено надÑиланнÑм ідентифікуючих повідомлень піÑÐ»Ñ Ð²ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ñ‚Ð¸Ð²Ð½Ð¸Ñ… підключень.</li> <li> "TCP:" Ð¿Ñ€ÐµÑ„Ñ–ÐºÑ Ð°Ð´Ñ€ÐµÑи зроблено необов'Ñзковим-опціональним.</li> <li> Режим адреÑи вхідного транÑпорту по замовченню вÑтановлено у 1 (не закривати, лише за параметрами KeepAlive).</li> <li> Порт по замовченню вÑтановлено у 10005.</li></ul></li> <li> SSL: Доповнено опрацюваннÑм NO_*_METHOD Ð´Ð»Ñ TLS1, TLS1_1, TLS1_2, DTLS1 та прÑмою підтримкою DTLSv1_2. Порт по замовченню вÑтановлено у 10045.</li></ul></li></ul> <h4><span class="mw-headline" id=".D0.A2.D1.80.D0.B0.D0.BD.D1.81.D0.BF.D0.BE.D1.80.D1.82.D0.BD.D1.96_.D0.9F.D1.80.D0.BE.D1.82.D0.BE.D0.BA.D0.BE.D0.BB.D0.B8"><span class="mw-headline-number">7.8.8</span> ТранÑпортні Протоколи</span></h4> <ul><li> FIX:HTTP: Доповнено коректною підтримкою KeepAlive, функціÑми вхідних транÑпортів keepAliveTm() та keepAliveReqs(). Розширено таблицею БД "HTTP_AuthSessions" зовнішніх ÑеанÑів автентифікації.</li> <li> FIX:ModBus: Вхідна чаÑтина розширена викориÑтаннÑм DAQ-шаблонів. <ul><li> Перелік типів даних таблиці Ð’Ð’ доповнено типом "Об'єкт".</li> <li> Ð’Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ð°Ñ€Ñ–Ð°Ð½Ñ‚Ñƒ протоколу за вхідними запитами дещо покращено визначеннÑм відмінноÑÑ‚Ñ– варіантів RTU та TCP, через Ð²Ñ€Ð°Ñ…ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð¸Ð¿Ñƒ транÑпорту.</li></ul></li> <li> UserProtocol: Розширено підтримкою DAQ-шаблонів.</li> <li> SelfSystem: Розширено підтримкою Ñпроб вихідних транÑпортів.</li></ul> <h4><span class="mw-headline" id=".D0.86.D0.BD.D1.82.D0.B5.D1.80.D1.84.D0.B5.D0.B9.D1.81_.D0.9A.D0.BE.D1.80.D0.B8.D1.81.D1.82.D1.83.D0.B2.D0.B0.D1.87.D0.B0"><span class="mw-headline-number">7.8.9</span> Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐšÐ¾Ñ€Ð¸Ñтувача</span></h4> <ul><li> FIX: TUIS::mimeGet() змінено щодо поведінки Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ "svg" Ñк "image/svg+xml" Ð´Ð»Ñ ÐºÐ¾Ñ€ÐµÐºÑ‚Ð½Ð¾Ð³Ð¾ Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ SVG-файлів, та багатьох таких файлів, на WEB.</li> <li> FIX:VCAEngine,Vision,<b>WebVision</b>: Варіант "LineEdit" примітиву "FormEl" доповнено видом "Пароль".</li> <li> FIX: СВУ-Ñтилі переведено на Ñхему Ð²Ð²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ñтилів за Ñ—Ñ… приÑутноÑÑ‚Ñ– заміÑÑ‚ÑŒ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ñ–Ð· "Ðемає Ñтилю" та виправлено ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ… елементів Ñ– загалом.</li> <li> VCAEngine,Vision: Ð’ÑÑŽ інформацію зведено у полі ÑтатуÑу Ð´Ð»Ñ Ð²Ñ–Ð´Ð¶ÐµÑ‚Ñ–Ð², бібліотек та проектів; що доповнено ÑтатуÑом виконуваної процедури - уÑпадковано, перевизначено.</li> <li> FIX:VCAEngine: <ul><li> Сторінки проектів доповнено типом "ПоÑиланнÑ", Ð´Ð»Ñ Ð¾Ð¿Ñ‚Ð¸Ð¼Ñ–Ð·Ð°Ñ†Ñ–Ñ— ÑÐ¿Ð¾Ð¶Ð¸Ð²Ð°Ð½Ð½Ñ Ð¿Ð°Ð¼'ÑÑ‚Ñ– на виÑоко-динамічних та виÑоко-повторюваних Ñторінках, на боці ÑеанÑу проекту. Ð’Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñторінок при виконанні проекту (ÑеанÑи) покращено запобіганнÑм зайвого та подвійного Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñ‚Ð° закриттÑ, що критично Ð´Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŽ поÑилань на Ñторінки.</li> <li> Багато заходів щодо Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ñ–Ð·ÑƒÐ°Ð»ÑŒÐ½Ð¸Ñ… елементів під Ñ‡Ð°Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ñƒ: <ul><li> Виправлено Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñторінок проекту під Ñ‡Ð°Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ñƒ, щодо Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½ÑŽ об'єктів та Ð·Ð°Ð±ÐµÐ·Ð¿ÐµÑ‡ÐµÐ½Ð½Ñ Ñ—Ñ… ранньому зв'Ñзуванню Ð´Ð»Ñ Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñторінок ÑеанÑів разом із Ñторінками проектів.</li> <li> Об'єкти ÑеанÑів переведено на влаÑне Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… Ð·Ð°Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½ÑŽ мертвому блокуванню у Ñкладних ÑитуаціÑÑ…, оÑкільки виклики Ñтилів викориÑтовують непрÑмий parent().</li></ul></li> <li> ÐžÐ¿Ñ‚Ð¸Ð¼Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð²Ñ–Ð´Ð´Ð°Ð»ÐµÐ½Ð¾Ñ— розробки: <ul><li> інформаційні ÑервіÑи контролю "/prm/cfg/prj", "/page/page" доповнено отриманнÑм кількоÑÑ‚Ñ– дочірніх Ñторінок у атрибуті "chPgN" за вÑтановленнÑм "getChPgN";</li> <li> доповнено ÑтоÑовно Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ´Ð°Ñ‡Ñ– іконок віджетів у контрольному ÑервіÑÑ– "/serv/wlbBr" Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ð¾Ð²Ð½Ð¾Ð³Ð¾ дерева віджетів, вÑтановленнÑм атрибутів "disIconsW", "disIconsCW".</li></ul></li> <li> СеанÑи проектів СВУ прибрано, на кінець, з під контролю модифікації режиму розробки.</li> <li> Додано прÑме Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñпецифічних до візуалізатору атрибутів, маркуючи Ñ—Ñ… префікÑом "vs_".</li> <li> FIX: Команду ÑеанÑу проекту "close" ÑервіÑу "/serv/pg" примуÑово опрацьовуєтьÑÑ, що актуально Ð´Ð»Ñ Ð¿Ð¾Ñилань на Ñторінки.</li> <li> FIX: Процедуру Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¡Ð’Ð£ Ñторінок доповнено очищеннÑм зайвих запиÑів та запиÑів уÑпадкованих, але відÑутніх віджетів, у таблиці "*_incl".</li> <li> FIX: Виправлено роботу функції кориÑтувацького API tr() із документів.</li></ul></li> <li> FIX:QTCfg,Vision: Виправлено Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´ÑÐ²Ñ–Ñ‚Ð»ÐµÐ½Ð½Ñ ÑинтакÑиÑу текÑтових полів шлÑхом первинного Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ñ€Ð°Ð²Ð¸Ð» ÑинтакÑиÑу а потім текÑту, Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿Ñуванню текÑту у окремих випадках, виÑвлено у протоколі обміну транÑпорту та Qt 5.11. <ul><li> Доповнено кнопками примуÑового Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ‚Ð° збереженнÑ, до меню.</li> <li> Покращено Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð¢Ð°Ð±Ð»Ð¸Ñ†ÑŒ ÑтоÑовно Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð½Ð°Ñвної ширини із maximumViewportSize().</li></ul></li> <li> FIX:Vision,<b>WebVision</b>: Покращено контроль Ñмуг прокрутки вкладених Ñторінок, Ð´Ð»Ñ Ð·Ð°Ð±ÐµÐ·Ð¿ÐµÑ‡ÐµÐ½Ð½Ñ Ñ—Ñ… роботи окремо, не двох разом. <ul><li> FIX:ElFigure: Завершено підтримку віддзеркаленнÑ, реалізацією: загалом, креÑÐ»ÐµÐ½Ð½Ñ Ð”ÑƒÐ³Ð¸, Ð·Ð°Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð·Ð°Ð³Ð°Ð»Ð¾Ð¼ та зображеннÑм. Ð—Ð°Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñм попереджено від прогалин при доÑтупі поза зображеннÑм.</li> <li> FIX:Діаграма: <ul><li> FIX:Тренди: Розширено побудову шкали чаÑу, Ð´Ð»Ñ Ð±Ð°Ð³Ð°Ñ‚ÑŒÐ¾Ñ… діб із цілковитим приховуваннÑм чаÑу, та Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÑˆÐ¾Ð³Ð¾ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð»Ñ–Ð²Ð¾Ñ€ÑƒÑ‡, викориÑтовуючи Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñ‡Ð°Ñової зони. Доповнено підтримкою великих чаÑових інтервалів за міÑÑцÑми.</li> <li> Вимкнено Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ñ‚Ð¾Ñ‡Ð½Ð¾ÑÑ‚Ñ– запитаних значень архіву, Ð´Ð»Ñ Ð´Ð¾Ð²Ð³Ð¸Ñ… лічильників.</li> <li> Покращено віддалену роботу на повільних каналах та із періодичніÑÑ‚ÑŽ буферу значень у 10 Ñекунд.</li></ul></li> <li> Text,Media,Box: Розширено відображеннÑм курÑору активноÑÑ‚Ñ–.</li> <li> FormEl: ДеÑкі види (Ð ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€Ñдку, Ð ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐºÑту, КомбобокÑ, Перелік, Дерево, ТаблицÑ) розширено окремим фоном та границею за допомогою Ñпецифічних кориÑтувацьких атрибутів "vs_background", "vs_border".</li> <li> Доповнено Ñпецифічним кориÑтувацьким атрибутом "vs_winTitle" динамічного Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÑƒ вікна.</li></ul></li> <li> FIX:Vision: <ul><li> ÐžÐ¿Ñ‚Ð¸Ð¼Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð²Ñ–Ð´Ð´Ð°Ð»ÐµÐ½Ð¾Ñ— розробки: <ul><li> Дерево проектів перемкнено на чаÑткове Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð³Ñ–Ð»Ð¾Ðº та розширеннÑ, Ð´Ð»Ñ Ð¿Ð¾ÐºÑ€Ð°Ñ‰ÐµÐ½Ð½Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸ на повільних підключеннÑÑ….</li> <li> Дерево віджетів покращено у роботі на повільних підключеннÑÑ… шлÑхом Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ–ÐºÐ¾Ð½Ð¾Ðº віджетів за порогом чаÑу повного Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð´ÐµÑ€ÐµÐ²Ð° більш 5 Ñекунд та ÑƒÐ²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ñ†ÑŒÐ¾Ð³Ð¾ Ð´Ð»Ñ Ñ‡Ð°Ñу менше 0.1 Ñекунди.</li></ul></li> <li> Розширено плануваннÑм періоду Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð°Ð»ÐµÐ¶Ð½Ð¾ від реальної ÑкоÑÑ‚Ñ– Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñƒ режимі виконаннÑ, на кшталт <b>UI.WebVision</b>.</li> <li> FIX: Загальні Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° вдоÑÐºÐ¾Ð½Ð°Ð»ÐµÐ½Ð½Ñ Ñ€ÐµÐ¶Ð¸Ð¼Ñ–Ð² Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð²Ñ–ÐºÐ½Ð°: <ul><li> FIX: Ручне маÑÑˆÑ‚Ð°Ð±ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ñ–ÐºÐ½Ð° Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ (ÑтоÑовно повного екрану або макÑимізації) покращено та виправлено у опрацюванні ознаки isResizeManual.</li> <li> FIX: Виправлено запуÑк у повно-екранному режимі та не цілковите маÑÑˆÑ‚Ð°Ð±ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¸ відновленні у не нульову позицію вікна.</li></ul></li> <li> FIX:FormEl: <ul><li> FIX:ТаблицÑ: Покращено Ð¿Ñ–Ð´Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¾ викориÑÑ‚Ð°Ð½Ð½Ñ Ð¼Ð°ÐºÑимальної ширини із розміру віджету та макÑимуму порту відображеннÑ, оÑкільки лише макÑимум порту може бути тут ще не ініційованим. ОÑтаточне Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†ÑŒ, переноÑом процедури до повідомлень: Ñтворити, змінити розмір та показати. Попереджено випадкові падіннÑ.</li> <li> FIX:Date: Виправлено аварійне Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð¿Ñ€Ð¸ вÑтановлені конфігурації.</li></ul></li> <li> FIX: Виправлено регулÑрну заміну оÑновної Ñторінки (аварійне завершеннÑ) та маÑÑˆÑ‚Ð°Ð±ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ режимі виконаннÑ.</li> <li> FIX: Виправлено Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÑтоÑовно аварійного Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñƒ закритті зовнішніх вікон при закритті головного вікна.</li> <li> FIX: Виправлено діалоги Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑтей Сторінок/Бібліотек та Віджетів щодо: <ul><li> Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð·Ð° Esc;</li> <li> Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ ÑкаÑÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½ за чаÑом у LineEdit;</li> <li> відв'ÑÐ·ÑƒÐ²Ð°Ð½Ð½Ñ Ð¾Ð·Ð½Ð°ÐºÐ¸ редагованоÑÑ‚Ñ– від видимоÑÑ‚Ñ– у TextEdit;</li> <li> Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ Ð²Ñ‚Ñ€Ð°Ñ‚Ñ– змін у вкладці "Обробка";</li> <li> Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾ зміну уÑпадкованої обчиÑлювальної процедури.</li></ul></li> <li> Контроль за фокуÑом перепиÑано у Ñпецифічний довкола СВУ-віджетів контроль, та не Qt-віджетів, що Ñхоже на UI.WebVision та що запобігає деÑким проблемам.</li> <li> ElFigure: Ð ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ñ–Ð³ÑƒÑ€ переключено у нормальний режим, без будь-Ñкої транÑформації (Ð¾Ð±ÐµÑ€Ñ‚Ð°Ð½Ð½Ñ Ñ‚Ð° віддзеркаленнÑ).</li></ul></li> <li> FIX:<span id="WebVision" title="#WebVision"><b>WebVision</b></span>: <ul><li> FIX:ОÑновне функціюваннÑ: <ul><li> FIX: JS функцію servSet() запиÑу до Ñерверу переключено у Ñинхронний режим Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð²Ñ‚Ñ€Ð°Ñ‚Ð°Ð¼.</li> <li> Уніфіковано оÑновну перевірку фонових об'єктів ÑтоÑовно підтримки опціональних фонових об'єктів, Ð´Ð»Ñ Ð·Ð¼ÐµÐ½ÑˆÐµÐ½Ð½Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ñ— кількоÑÑ‚Ñ– фонових об'єктів, де обов'Ñзковими наразі Ñ”: "ElFigure", "Діаграма", "Документ", "FormEl"; та опціональний лише "ТекÑÑ‚".</li> <li> Межу вертикального Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð¾Ñновного вікна вÑтановлено у 10% від загального розміру та у 50% Ð´Ð»Ñ Ð·Ð¼ÐµÐ½ÑˆÐµÐ½Ð½Ñ, Ð´Ð»Ñ Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ð¼Ð¸Ð³Ð¾Ñ‚Ñ–Ð½Ð½ÑŽ на FireFox від приміток про Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð¾Ð²Ð½Ñ–ÑˆÐ½Ñ–Ñ… вікон. Ð’Ñтановлено викориÑтаннÑ-Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð²Ð±ÑƒÐ´Ð¾Ð²Ð°Ð½Ð¾Ð³Ð¾ режиму маÑÑˆÑ‚Ð°Ð±ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ð¿Ð¾Ð²Ñ–Ð´Ð½Ð¾ до window.devicePixelRatio рівного 1 на рівні Web-браузеру.</li> <li> Значно покращено виÑÐ²Ð»ÐµÐ½Ð½Ñ Ð²Ñ‚Ñ€Ð°Ñ‚Ð¸ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¾Ñновної Ñторінки, у випадках Ð¿Ð¾Ð²ÐµÑ€Ð½ÐµÐ½Ð½Ñ Ð´Ð¾ вже закритих ÑеанÑів у Web-браузері.</li> <li> Доповнено реалізацією Ñпецифічного до візуалізатору атрибуту "userSetVis".</li> <li> FIX: Відновлено Ð¿ÐµÑ€ÐµÐ²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ†Ñ–Ð»Ð¾Ð³Ð¾ дерева віджетів Ð´Ð»Ñ Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ñутніх віджетів у візуалізаторі за Ñ—Ñ… Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñƒ СВУ-рушії.</li> <li> FIX: Попереджено зайві та окремі запити вміÑту вкладених Ñторінок при запуÑку.</li> <li> FIX: Покращено поведінку контролю фокуÑу та попереджено Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¼Ð¸ÑˆÑ– поза Ñторінок.</li></ul></li> <li> Доповнено контролем кешу Ñторінок за чаÑом Ð¶Ð¸Ñ‚Ñ‚Ñ Ñ‚Ð° макÑимальною кількіÑÑ‚ÑŽ Ñторінок Ñк на боці Ñерверу, так Ñ– Web-браузеру, відтак цей модуль наразі більш підходить Ð´Ð»Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸ у оперативному режимі!</li> <li> Контроль ÑеанÑів: <ul><li> Розширено можливіÑÑ‚ÑŽ ручного Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸Ñ… ÑеанÑів від адмініÑтративного кориÑтувача.</li> <li> FIX: Звичайні кориÑтувачі виключені від можливоÑÑ‚Ñ– Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ чужих ÑеанÑів.</li> <li> FIX: ОÑновний код запиту GET значно Ñпрощено щодо запобіганню перепідключеннÑм до СВУ-ÑеанÑів без локальних предÑтавників.</li> <li> Доповнено Ñтаном відкритих ÑеанÑів на Ñторінці контролю, включно із підключеним проектом та кориÑтувачем.</li></ul></li> <li> FIX:Панель ÑтатуÑу: <ul><li> Додано рівень порушень із функцією глобальної квітації, надÑиланнÑм "ws_alarmLev".</li> <li> Розширено підтримкою СВУ-Ñтилів у Ñ—Ñ… відображенні та зміні.</li> <li> FIX: Виправлено у формуванні розміру панелі ÑтатуÑу, оновлені та Ð·Ð°Ð¿Ð¾Ð±Ñ–Ð³Ð°Ð½Ð½Ñ Ñ—Ñ— Ð¼Ð¸Ð³Ð¾Ñ‚Ñ–Ð½Ð½Ñ Ð¿Ñ€Ð¸ оновленні оÑновної Ñторінки.</li></ul></li> <li> FIX:FormEl: <ul><li> FIX:{Tree,Table}: виправлено розрахунок ширини границі та відÑтупу у кінцевій геометрії. <ul><li> FIX:Tree: Виправлено Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ€Ð¾Ð¶Ð½ÑŒÐ¾Ð³Ð¾ Ñ€Ñдку у кінці. Доповнено маÑштабуваннÑм зображень дерева керуваннÑ.</li></ul></li></ul></li> <li> Розширено вÑтановленнÑм візуальних елементів СВУ щодо атрибуту "class" у "Примітив {WPrimitive}" та атрибуту "id" у ідентифікатор віджету на кшталт "wdg_{id}", Ð´Ð»Ñ ÑÐ¿Ñ€Ð¾Ñ‰ÐµÐ½Ð½Ñ Ð´ÐµÑ‚Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ підлаштуваннÑ.</li></ul></li> <li> FIX:QTStarter: Функцію updLookFeel() виправлено ÑтоÑовно Ð¿Ð¾Ð²ÐµÑ€Ð½ÐµÐ½Ð½Ñ Ñ‚Ð¸Ð¿Ñƒ "void". Додано емулÑцію правої клавіші миші та контекÑтного меню при утриманні лівої клавіші миші протÑгом чаÑу, вÑтановленого опцією командного Ñ€Ñдку --simulRightMKeyTm. Цей Ñ‡Ð°Ñ Ð²Ñтановлено у 2 Ñекунди Ð´Ð»Ñ Android.</li> <li> FIX:QTCfg: <ul><li> FIX: Виправлено заÑтоÑуваннÑ-прийнÑÑ‚Ñ‚Ñ Ð·Ð°Ð±ÑƒÑ‚Ð¸Ñ… змін редагованих віджетів при перемиканні до іншого вузла. Елементи TextEdit виправлено щодо Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¾Ð·Ð½Ð°ÐºÐ¸ редагуваннÑ, Ñку відв'Ñзано від видимоÑÑ‚Ñ–.</li> <li> Додано натÑк до груп вузлів Ð´Ð»Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸ Ð´Ð¾Ð´Ð°Ð½Ð½Ñ Ð²ÑƒÐ·Ð»Ð°.</li> <li> Операції переміщеннÑ, у конфігураційній таблиці, розширено гарÑчими клавішами "Ctrl+Up" та "Ctrl+Down".</li> <li> ÐžÐ¿Ñ‚Ð¸Ð¼Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð²Ñ–Ð´Ð´Ð°Ð»ÐµÐ½Ð¾Ñ— роботи: <ul><li> Попереджено Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð´ÐµÑ€ÐµÐ²Ð° навігації при обранні будь-Ñкого елементу.</li> <li> Ð£Ð¿Ð¾Ð²Ñ–Ð»ÑŒÐ½ÐµÐ½Ð½Ñ Ñ†Ð¸ÐºÐ»Ñƒ періодичного Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ–ÑÐ»Ñ Ð¿Ð¾Ñви діалогу зайнÑтоÑÑ‚Ñ–.</li></ul></li> <li> ПриÑкорено Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð²Ñ–ÐºÐ½Ð° конфігуратору із багатьма неактивними OpenSCADA хоÑтами, шлÑхом раннього ÑÐ¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð·Ð°Ð²Ð´Ð°Ð½ÑŒ хоÑтів.</li></ul></li> <li> WebUser: Розширено підтримкою DAQ-шаблонів.</li></ul> <h4><span class="mw-headline" id=".D0.A1.D0.BF.D0.B5.D1.86.D1.96.D0.B0.D0.BB.D1.8C.D0.BD.D1.96"><span class="mw-headline-number">7.8.10</span> Спеціальні</span></h4> <ul><li> FIX:FLibSYS: <ul><li> FIX:IO: write() виправлено щодо Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ‚Ð¸Ð¿Ð¾Ð²Ð¾Ð³Ð¾ типу даних, Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¾Ð²Ð¸Ñ… даних зроблено безпечним.</li> <li> CRC: Завершено викориÑтаннÑм нормальних поліномів, вхідних та вихідних відноÑноÑтей та XOR Ð´Ð»Ñ Ð²Ð¸Ñ…Ð¾Ð´Ñƒ.</li> <li> VArchObj: ДоÑтуп до функції запиÑу у архів обмежено лише кориÑтувачам у групі "Ðрхів".</li></ul></li></ul> <h4><span class="mw-headline" id=".D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.BD.D1.96_.D0.BE.D0.BD.D0.BE.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_7"><span class="mw-headline-number">7.8.11</span> СервіÑні оновленнÑ</span></h4> <ul><li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2697" rel="nofollow noreferrer noopener" target="_blank">п'Ñте (5) від 20.07.2020</a>.</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2693" rel="nofollow noreferrer noopener" target="_blank">четверте (4) від 07.07.2020</a>.</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2688" rel="nofollow noreferrer noopener" target="_blank">трете (3) від 15.06.2020</a>.</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2684" rel="nofollow noreferrer noopener" target="_blank">друге (2) від 01.06.2020</a>;</li> <li> <a class="external text" href="http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2680" rel="nofollow noreferrer noopener" target="_blank">перше (1) від 11.05.2020</a>.</li></ul> <h2><span class="mw-headline" id=".D0.9F.D0.BE.D1.81.D0.B8.D0.BB.D0.B0.D0.BD.D0.BD.D1.8F"><span class="mw-headline-number">8</span> ПоÑиланнÑ</span></h2> <ul><li> <a class="external" href="http://oscada.org/wiki/Documents/Release_0.9/Tests" title="Documents/Release 0.9/Tests">Протокол теÑтуваннÑ</a> промиÑлового релізу 0.9 LTS.</li> <li> <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Documents/Release_0.9/Updating_0.8.0_LTS" title="Special:MyLanguage/Documents/Release 0.9/Updating 0.8.0 LTS">ПоÑібник по Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ 0.8.0 LTS</a>.</li> <li> <a class="external text" href="http://oscada.org/en/development/tasks/posts/core/release_of_the_openscada_09_lts/" rel="nofollow noreferrer noopener" target="_blank">Ð—Ð°Ð²Ð´Ð°Ð½Ð½Ñ Ð²Ð¸Ð¿ÑƒÑку релізу та перелік піÑлÑрелізових робіт до першого Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ 0.9 LTS</a>.</li></ul> </div><table style="border-top: dotted 2px #999999; margin-top: 20pt; color: gray;" width="100%"><tr><td style="text-align: left;" width="40%"><a href="http://oscada.org/wiki/Documents/Release_0.9/uk">Documents/Release_0.9/uk</a> - <a href="http://oscada.org/en/main/about-the-project/licenses/">GFDL</a></td><td style="text-align: center;">April 2025</td><td style="text-align: right;" width="40%">OpenSCADA 1+r3018</td></tr></table></body> </html>