Export translations
Views
Special page
From OpenSCADAWiki
Jump to:
navigation
,
search
Settings
Group
About
Documents
Documents/API
Documents/DAQ
Documents/FAQ
Documents/How to
Documents/How to/Build from source
Documents/How to/Crash report
Documents/How to/Create module
Documents/How to/Create multi language project
Documents/How to/Cyclic programming
Documents/How to/Debug
Documents/How to/Install
Documents/How to/Live disk
Documents/How to/Release
Documents/How to/Transferring project configuration
Documents/How to/Violations, alarms and notifications
Documents/Program manual
Documents/Quick start
Documents/Release 0.8.0
Documents/Release 0.8.0/Update10
Documents/Release 0.8.0/Update11
Documents/Release 0.8.0/Update12
Documents/Release 0.8.0/Update13
Documents/Release 0.8.0/Update14
Documents/Release 0.8.0/Update15
Documents/Release 0.8.0/Update16
Documents/Release 0.8.0/Update17
Documents/Release 0.8.0/Update18
Documents/Release 0.8.0/Update19
Documents/Release 0.8.0/Update20
Documents/Release 0.8.0/Update3
Documents/Release 0.8.0/Update4
Documents/Release 0.8.0/Update5
Documents/Release 0.8.0/Update6
Documents/Release 0.8.0/Update7
Documents/Release 0.8.0/Update8
Documents/Release 0.8.0/Update9
Documents/Release 0.9
Documents/Release 0.9/Update 7
Documents/Release 0.9/Update1
Documents/Release 0.9/Update2
Documents/Release 0.9/Update3
Documents/Release 0.9/Update4
Documents/Release 0.9/Update5
Documents/Release 0.9/Update6
Documents/Release 0.9/Updating 0.8.0 LTS
Documents/Terms
Documents/User API
Functions and demands
Home
Libs
Libs/Devices
Libs/Documents
Libs/Electrical elements
Libs/Generic list
Libs/LowLevelDevices
Libs/Main
Libs/Main graphical elements
Libs/Mnemo elements
Libs/Prescriptions
Libs/Regulation elements
Libs/Service procedures
Libs/Technological apparatuses
Modules
Modules/BFN
Modules/BlockCalc
Modules/Comedi
Modules/DAQGate
Modules/DBArch
Modules/DBF
Modules/DBGate
Modules/DCON
Modules/DiamondBoards
Modules/FireBird
Modules/FLibComplex1
Modules/FLibMath
Modules/FLibSYS
Modules/FSArch
Modules/GPIO
Modules/HTTP
Modules/ICP DAS
Modules/JavaLikeCalc
Modules/LDAP
Modules/LogicLev
Modules/ModBus
Modules/MySQL
Modules/OPC UA
Modules/PostgreSQL
Modules/QTCfg
Modules/QTStarter
Modules/SelfSystem
Modules/Serial
Modules/Siemens
Modules/SMH2Gi
Modules/SNMP
Modules/Sockets
Modules/SoundCard
Modules/SQLite
Modules/SSL
Modules/System
Modules/SystemTests
Modules/UserProtocol
Modules/VCAEngine
Modules/Vision
Modules/WebCfg
Modules/WebCfgD
Modules/WebUser
Modules/WebVision
Sub-projects
Sub-projects/Automatic Builder of OpenSCADA
Sub-projects/Automation Linux distributive
Sub-projects/Embedding and PLC
Sub-projects/Server
Sub-projects/VCA
User:RomanSavochenko
Using
Using/HouseSpirit
Using/Kramatorsk Ball Mills
Using/Kramatorsk Water
Using/Model AGLKS
Using/Model Boiler
Using/OpenWrt TELEOFIS RTU968
Using/Yaroslavskij broiler
Works
Works/Road map
Works/Technical Support
Works/Technical Support/Agreement
Works/To do
Language
aa - Afar
ab - Abkhazian
ace - Achinese
ady - Adyghe
ady-cyrl - адыгабзэ
aeb - Tunisian Arabic
aeb-arab - تونسي
aeb-latn - Tûnsî
af - Afrikaans
ak - Akan
aln - Gheg Albanian
am - Amharic
an - Aragonese
ang - Old English
anp - Angika
ar - Arabic
arc - Aramaic
arn - Mapuche
arq - Algerian Arabic
ary - Moroccan Arabic
arz - Egyptian Arabic
as - Assamese
ase - American Sign Language
ast - Asturian
av - Avaric
avk - Kotava
awa - Awadhi
ay - Aymara
az - Azerbaijani
azb - تۆرکجه
ba - Bashkir
bar - Bavarian
bbc - Batak Toba
bbc-latn - Batak Toba
bcc - Southern Balochi
bcl - Bikol Central
be - Belarusian
be-tarask - Belarusian (Taraškievica orthography)
bg - Bulgarian
bgn - Western Balochi
bho - Bhojpuri
bi - Bislama
bjn - Banjar
bm - Bambara
bn - Bengali
bo - Tibetan
bpy - Bishnupriya
bqi - Bakhtiari
br - Breton
brh - Brahui
bs - Bosnian
bto - Iriga Bicolano
bug - Buginese
bxr - буряад
ca - Catalan
cbk-zam - Chavacano de Zamboanga
cdo - Min Dong Chinese
ce - Chechen
ceb - Cebuano
ch - Chamorro
cho - Choctaw
chr - Cherokee
chy - Cheyenne
ckb - Central Kurdish
co - Corsican
cps - Capiznon
cr - Cree
crh - Crimean Turkish
crh-cyrl - Crimean Turkish (Cyrillic script)
crh-latn - Crimean Turkish (Latin script)
cs - Czech
csb - Kashubian
cu - Church Slavic
cv - Chuvash
cy - Welsh
da - Danish
de - German
de-at - Austrian German
de-ch - Swiss High German
de-formal - German (formal address)
diq - Zazaki
dsb - Lower Sorbian
dtp - Central Dusun
dty - डोटेली
dv - Divehi
dz - Dzongkha
ee - Ewe
egl - Emilian
el - Greek
eml - Emiliano-Romagnolo
en - English
en-ca - Canadian English
en-gb - British English
eo - Esperanto
es - Spanish
et - Estonian
eu - Basque
ext - Extremaduran
fa - Persian
ff - Fulah
fi - Finnish
fit - Tornedalen Finnish
fj - Fijian
fo - Faroese
fr - French
frc - Cajun French
frp - Arpitan
frr - Northern Frisian
fur - Friulian
fy - Western Frisian
ga - Irish
gag - Gagauz
gan - Gan Chinese
gan-hans - Simplified Gan script
gan-hant - Traditional Gan script
gd - Scottish Gaelic
gl - Galician
glk - Gilaki
gn - Guarani
gom - Goan Konkani
gom-deva - Goan Konkani (Devanagari script)
gom-latn - Goan Konkani (Latin script)
got - Gothic
grc - Ancient Greek
gsw - Swiss German
gu - Gujarati
gv - Manx
ha - Hausa
hak - Hakka Chinese
haw - Hawaiian
he - Hebrew
hi - Hindi
hif - Fiji Hindi
hif-latn - Fiji Hindi (Latin script)
hil - Hiligaynon
ho - Hiri Motu
hr - Croatian
hrx - Hunsrik
hsb - Upper Sorbian
ht - Haitian Creole
hu - Hungarian
hy - Armenian
hz - Herero
ia - Interlingua
id - Indonesian
ie - Interlingue
ig - Igbo
ii - Sichuan Yi
ik - Inupiaq
ike-cans - Eastern Canadian (Aboriginal syllabics)
ike-latn - Eastern Canadian (Latin script)
ilo - Iloko
inh - Ingush
io - Ido
is - Icelandic
it - Italian
iu - Inuktitut
ja - Japanese
jam - Jamaican Creole English
jbo - Lojban
jut - Jutish
jv - Javanese
ka - Georgian
kaa - Kara-Kalpak
kab - Kabyle
kbd - Kabardian
kbd-cyrl - Адыгэбзэ
kg - Kongo
khw - Khowar
ki - Kikuyu
kiu - Kirmanjki
kj - Kuanyama
kk - Kazakh
kk-arab - Kazakh (Arabic script)
kk-cn - Kazakh (China)
kk-cyrl - Kazakh (Cyrillic script)
kk-kz - Kazakh (Kazakhstan)
kk-latn - Kazakh (Latin script)
kk-tr - Kazakh (Turkey)
kl - Kalaallisut
km - Khmer
kn - Kannada
ko - Korean
ko-kp - 한국어 (조선)
koi - Komi-Permyak
kr - Kanuri
krc - Karachay-Balkar
kri - Krio
krj - Kinaray-a
ks - Kashmiri
ks-arab - Kashmiri (Arabic script)
ks-deva - Kashmiri (Devanagari script)
ksh - Colognian
ku - Kurdish
ku-arab - كوردي (عەرەبی)
ku-latn - Kurdish (Latin script)
kv - Komi
kw - Cornish
ky - Kyrgyz
la - Latin
lad - Ladino
lb - Luxembourgish
lbe - лакку
lez - Lezghian
lfn - Lingua Franca Nova
lg - Ganda
li - Limburgish
lij - Ligurian
liv - Livonian
lmo - Lombard
ln - Lingala
lo - Lao
loz - Lozi
lrc - Northern Luri
lt - Lithuanian
ltg - Latgalian
lus - Mizo
luz - Southern Luri
lv - Latvian
lzh - Literary Chinese
lzz - Laz
mai - Maithili
map-bms - Basa Banyumasan
mdf - Moksha
mg - Malagasy
mh - Marshallese
mhr - Eastern Mari
mi - Maori
min - Minangkabau
mk - Macedonian
ml - Malayalam
mn - Mongolian
mo - молдовеняскэ
mr - Marathi
mrj - Western Mari
ms - Malay
mt - Maltese
mus - Creek
mwl - Mirandese
my - Burmese
myv - Erzya
mzn - Mazanderani
na - Nauru
nah - Nāhuatl
nan - Min Nan Chinese
nap - Neapolitan
nb - Norwegian Bokmål
nds - Low German
nds-nl - Low Saxon
ne - Nepali
new - Newari
ng - Ndonga
niu - Niuean
nl - Dutch
nl-informal - Nederlands (informeel)
nn - Norwegian Nynorsk
nov - Novial
nrm - Nouormand
nso - Northern Sotho
nv - Navajo
ny - Nyanja
oc - Occitan
olo - Livvi-Karelian
om - Oromo
or - Oriya
os - Ossetic
pa - Punjabi
pag - Pangasinan
pam - Pampanga
pap - Papiamento
pcd - Picard
pdc - Pennsylvania German
pdt - Plautdietsch
pfl - Palatine German
pi - Pali
pih - Norfuk / Pitkern
pl - Polish
pms - Piedmontese
pnb - Western Punjabi
pnt - Pontic
prg - Prussian
ps - Pashto
pt - Portuguese
pt-br - Brazilian Portuguese
qu - Quechua
qug - Chimborazo Highland Quichua
rgn - Romagnol
rif - Riffian
rm - Romansh
rmy - Romani
rn - Rundi
ro - Romanian
roa-tara - tarandíne
ru - Russian
rue - Rusyn
rup - Aromanian
ruq - Megleno-Romanian
ruq-cyrl - Megleno-Romanian (Cyrillic script)
ruq-latn - Megleno-Romanian (Latin script)
rw - Kinyarwanda
sa - Sanskrit
sah - Sakha
sat - Santali
sc - Sardinian
scn - Sicilian
sco - Scots
sd - Sindhi
sdc - Sassarese Sardinian
sdh - Southern Kurdish
se - Northern Sami
sei - Seri
ses - Koyraboro Senni
sg - Sango
sgs - Samogitian
sh - Serbo-Croatian
shi - Tachelhit
shi-latn - Tašlḥiyt
shi-tfng - ⵜⴰⵛⵍⵃⵉⵜ
si - Sinhala
sk - Slovak
sl - Slovenian
sli - Lower Silesian
sm - Samoan
sma - Southern Sami
sn - Shona
so - Somali
sq - Albanian
sr - Serbian
sr-ec - Serbian (Cyrillic script)
sr-el - Serbian (Latin script)
srn - Sranan Tongo
ss - Swati
st - Southern Sotho
stq - Saterland Frisian
su - Sundanese
sv - Swedish
sw - Swahili
szl - Silesian
ta - Tamil
tcy - Tulu
te - Telugu
tet - Tetum
tg - Tajik
tg-cyrl - Tajik (Cyrillic script)
tg-latn - Tajik (Latin script)
th - Thai
ti - Tigrinya
tk - Turkmen
tl - Tagalog
tly - Talysh
tn - Tswana
to - Tongan
tokipona - Toki Pona
tpi - Tok Pisin
tr - Turkish
tru - Turoyo
ts - Tsonga
tt - Tatar
tt-cyrl - Tatar (Cyrillic script)
tt-latn - Tatar (Latin script)
tum - Tumbuka
tw - Twi
ty - Tahitian
tyv - Tuvinian
tzm - Central Atlas Tamazight
udm - Udmurt
ug - Uyghur
ug-arab - Uyghur (Arabic script)
ug-latn - Uyghur (Latin script)
uk - Ukrainian
ur - Urdu
uz - Uzbek
uz-cyrl - ўзбекча
uz-latn - oʻzbekcha
ve - Venda
vec - Venetian
vep - Veps
vi - Vietnamese
vls - West Flemish
vmf - Main-Franconian
vo - Volapük
vot - Votic
vro - Võro
wa - Walloon
war - Waray
wo - Wolof
wuu - Wu Chinese
xal - Kalmyk
xh - Xhosa
xmf - Mingrelian
yi - Yiddish
yo - Yoruba
yue - Cantonese
za - Zhuang
zea - Zeelandic
zh - Chinese
zh-cn - Chinese (China)
zh-hans - Simplified Chinese
zh-hant - Traditional Chinese
zh-hk - Chinese (Hong Kong)
zh-mo - 中文(澳門)
zh-my - 中文(马来西亚)
zh-sg - Chinese (Singapore)
zh-tw - Chinese (Taiwan)
zu - Zulu
qqq - Message documentation
Format
Export for off-line translation
Export in native format
{{DISPLAYTITLE:Документы/Релиз 0.9/Обновление 5}}<noinclude><languages/></noinclude> <!--<div style="float:right; border:1px solid gray; width:300px; padding:2px; margin-left: 10pt; margin-bottom: 10pt; "> * '''Состояние:''' <span style="color: red">неделя тестирования и после-сборки</span> {{:Documents/How_to/Release/ru}} </div>--> Это обновление [[Special:MyLanguage/Documents/Release_0.9|релиза 0.9 LTS]] исправляет около 50 ошибок и добавляет МНОЖЕСТВО улучшений с несколькими значительными-концептуальными, с которыми целиком можно ознакомиться в [http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2831 протоколе изменений обновления]. [[file:at.png]] {{CntHdr|Significant actions of the developer of the OpenSCADA modules on the update}} * FIX:SYS.TMess: Type of labStor(), labSecCRON(), labSecCRONsel(), labTaskPrior(), labMessCat() changed to "string". : '''<span style="color: red">=</span>'''> obligatory revise of using the label functions since the compiler mayn't to say an error in functions like to printf(), TSYS::strMess() but that module will be crashed. {{CntHdr|[[Special:MyLanguage/Sub-projects/Automation_Linux_distributive|Automation Linux distributive of the project OpenSCADA]]}} * appending Debian 11 as the distributive base; * moving of building the Debian 10,9 base to the Debian 11 environment, then expanding the installer variants; * updating TDE to 14.0.11 and next 14.0.12; * fixing the plymouth problems, then the installations are safe now and "/var/boot.log" doesn't grow; * fixing Digikam, TDEPim, KArm and kdiff3, than appending the new patched packages "tdepim-trinity", "digikam-trinity" and kdiff3-trinity to the distributive collection. {{CntHdr|Main WWW-resources of the project — [http://oscada.org Site]}} * significant changes in the Site common interface: ** the Wiki-pages call in IFRAME appended for a waiting screen and an animated image of representing the loading wait; the opened pages vertical size was precisely fitted also at three attempts; ** the content window horizontal size limited in 1000 pixels; ** moving the vertical submenu of the main menu from the static left position to the call at an options button on the left of the main menu; ** moving to the top right for the service panel with buttons of the language select, call the print variant and the Google-search field; ** dividing twice the top logo image; ** the Google-search field: width expanding, moving up and hide under a search icon. * [http://oscada.org/en/news/single-page/article/changing-the-registration-conditions-and-rules-on-the-openscada-site/ changing the registration conditions and rules on the OpenSCADA site]; * the registration module finished in the translation to Ukrainian and enabled for acknowledge the new users registration by the site administrator. {{CntHdr|New and significantly updated parts}} * OpenSCADA Core: 3:11:0 => '''3:12:0''' : ([[#DataStorage|Common Conception of the Data Storage]], [[#MessTr|Messages Translation]], [[#MessSubLev|Message Sublevels {Main}[0...9] and Unification for the User Messages Transferring]]) * OpenSCADA "BD", "DAQ" subsystems: 14 => '''15''', 13 => '''14''' : ([[#CommonSQL|Significant Unification the Common SQL-code in the OpenSCADA Core]]) * DAQ.DAQGate: 2.5 => '''2.9''' : ([[#MessRedundTr|redundancy and the messages transferring]], [[#DAQGate|asynchronous writing mode implementation]]) * DAQ.JavaLikeCalc: 5.1 => '''5.4''' * DAQ.Siemens: 4.2 => '''4.4''' * {DAQ,Protocol}.ModBus: 3.3 => '''3.4''', 2.8 => '''2.9''' * {DAQ,Protocol}.OPC_UA: 2.5 => '''2.6''', 2.1 => '''2.2''' * Archive.FSArch: 3.6 => '''3.7''' * Archive.DBArch: 3.0 => '''3.1''' * Transport.SSL: 3.3 => '''3.4''' : ([[#SSL|pointing the certificates and the key directly from an external file with the input transports restarting at it change]]) * Protocol.HTTP: 3.6 => '''3.8''' * Protocol.UserProtocol: 1.4 => '''1.5''' * BD.DBGate: 1.0 => '''1.1''' * BD.SQLite: 3.0 => '''4.0''' * BD.MySQL: 3.5 => '''4.0''' * BD.PostgreSQL: 2.5 => '''3.0''' * BD.FireBird: 2.5 => '''3.0''' * UI.QTStarter: 5.10 => '''5.12''' * UI.QTCfg: 5.6 => '''5.9''' * UI.WebCfg: 1.8 => '''2.0''' * UI.WebCfgD: 2.1 => '''2.3''' * UI.VCAEngine: 7.1 => '''7.8''' : ([[#VCAEngine|finishing of implementing the changes obtaining in the runtime mode by the clocking cycles through]]) * UI.Vision: 7.14 => '''8.0''' : ([[#Vision|early opening the restored and specified pages in the init procedure]]) * UI.WebUser: 1.4 => '''1.5''' * UI.WebVision: 6.2 => '''6.6''' * LibsDB.OscadaLibs.base.anUnif: 2.1 => '''2.4''' * LibsDB.OscadaLibs.base.anUnifSt: 1.2 => '''1.3''' * LibsDB.OscadaLibs.base.digAlarm: 1.2 => '''1.3''' * LibsDB.OscadaLibs.base.codeState: 1.3 => '''1.4''' * LibsDB.OscadaLibs.servProc.docOffLine: 1.2 => '''1.3''' * LibsDB.OscadaLibs.Controller.test: 1.1 => '''1.2''' * LibsDB.vcaBase.Main ** alarmsAct: 1.1 => '''1.3''' ** alarmsSt: 1.2 => '''1.4''' ** RootPgSo: 2.4 => '''2.5''' ** ElCadr: 1.1 => '''1.2''' ** TextLab,ImgLab: 1.0 => '''1.1''' ** graphSelPrm: 1.4 => '''1.5''' ** objProps: 1.1 => '''1.2''' ** cntrRegul: 1.1 => '''1.2''' ** storeHouse: 1.0 => '''1.1''' * LibsDB.vcaBase.mnEls.El_Kran_Sh,Compressor: 1.0 => '''1.1''' * LibsDB.vcaBase.doc ** docAlarmsRep: 1.5 => '''1.6''' ** docUsersSet: 1.5 => '''1.7''' {{CntHdr|{{Anch|DataStorage|CONCEPTUAL > Common Conception of the Data Storage}} }} * the Conception is commonly unified in the direct storage specification and definition the Generic Storage "*.*" as a combination of the Configuration File and the work Data Base, when the Configuration File is the priority one for accessing the allowed data and the work Data Base for new data. * TBDS::{dataSeek,dataGet,dataSet,dataDel,genDBGet,genDBSet}() moved to the bit flags TBDS::ReqGenFlg; * the TBDS::dbList() moved to the bit flags TBDS::DBLsFlg; * TCntrNode appended of the functions storage() and setStorage() for tracking the availability of node data in different storages and offer a queue of the storages for the mechanism of sequentially removing duplicates, and they also used in the object functions DB(), fullDB(), setDB(); * the objects are adapted for tracking the multiple storages and are appended of the sequentially removing duplicates: 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}; * the generic parameters accessing functions TBDS::genDBGet() and TBDS::genPrmSet() moved under the new storage conception using TBDS::dataGet() and TBDS::dataSet() respectively, and renamed to genPrmGet() and genPrmSet() everywhere; * the objects moved to use the new function dataDelTbl(): DAQ.{TController,TPrmTmplLib,JavaLikeCalc,LogicLev,BlockCalc,ModBus,Siemens,OPC_UA}, Archive.DBArch, UI.{VCAEngine,Vision}.{WdgLib,Proj}; * the functions moved and used everywhere as static ones: TBDS::{dbList,dataSeek,dataGet,dataSet,dataDel,dataDelTbl}(); * the spare storage addresses with tables were shortened to the standard storage address with the table name unification, where the previous not standard names leave to be edited up to the 1.0 release, for the objects: SYS, DAQ.{TemplateLib,JavaLikeCalc.Lib}, UI.{VCAEngine,Vision}.{WdgLib,Proj}; * switched to select only DBs: Archive.DBArch, Protocol.HTTP; * the root object of the DB subsystem TTypeBD appended of the DB priority base [0...9] in the generic storages list and the Data Base object TBD appended of the configuration field "Priority in list" to control order of the databases from TBDS::dbList(), than control the loading order; * the "Work DB" configuration field changing disabled on the modification marking of all nodes; CONFIGURATION FILE * the configuration parameters and tables implementing in the common context of the TBDS::data{Seek,Get,Set}() functions; REFACTORING THE TCntrNode FLAGS * TCntrNode::{chldDel,nodeDis}() moved to direct use the new TCntrNode::EnDisFlag; * the flags TCntrNode::{NodeRemove,NodeRemoveOnlyStor} used everywhere of the function postDisable() checking and chldDel() call. {{CntHdr|{{Anch|CommonSQL|CONCEPTUAL > Significant Unification the Common SQL-code in the OpenSCADA Core}} }} * unification the table structure control by the structure item object TTable::TStrIt; * refactored, initially on SQLite, in the request lists form in the separate list variables; * common SQL-code moving to the functions: fieldSQLSeek(), fieldSQLGet(), fieldSQLSet(), fieldSQLDel(); * declaration in the core for the service definitions, methods and functions to the common SQL-code: SEEK_PRELOAD_LIM, tblStrct, seekSess, connRes, fieldFix(), getSQLVal(), setSQLVal(); * the fieldFix() appended an argument "langLs" of specifiyng need languages instead the argument "trPresent"; * propagating in such way of the last MULTILANGUAGE support code in DB.SQLite. {{CntHdr|{{Anch|MessTr|CONCEPTUAL > Messages Translation}} }} TFunction::IO object appended the flag IO::TransltText of marking the translate String IO directly: * the types "String (translate)" and "Text (translate)" appended in: template object of DAQ-Parameter, TFunction object of DAQ.JavaLikeCalc, UI-Attributes of UI.VCAEngine; * the flag TFld::TransltText used in: value getting of TValue of DAQ-Atributes, DAQ-Attributes translation of DAQ.{LogicLev,ModBus,OPC_UA,Siemens}, UI-Attributes translation of UI.VCAEngine; * set to the type "String (translate)" for: the field "colDscrCustNames" of wlb_Main.{alarmsAct,alarmsSt}. Expanding by the language for the execution environment of the user functions of the OpenSCADA object, for functions like to strftime(): * the object TCntrNodeObj, the function TCntrNode::objFuncCall() and TConfig::objFunc() expanded in the argument "user" renaming to "user_lang" with pointing language in the second line; * DAQ.JavaLikeCalc: the TCntrNodeObj execution appended of the language; * SYS.strftime() appended of execution from the pointed language-locale. TUIS,UI.{QTCfg,Vision}: docGet() expanded by the language in the second line.<br/> FIX: The "Translations" tab expansion and fixing for: * the option "check for mismatch (TrChkUnMatch)" renamed to "check/fix (TrChkAndFix)" and expanded of the translation fixing functions: by propagation the translations to empty sources, clearing the double to base translations, merging the base messages as the translations; * information of the non matching was appended in the second message text; * the translation management table appended of the user functions "Split item" and "Remove from Trs"; * the translation status appended of the short labels "SINGLELANGUAGE", "MULTILANGUAGE", "MULTILANGUAGE-DYNAMIC"; the message index; size of the cache and the translation context; * the base language configuration field of the MULTILANGUAGE modes expanded by list the project locales separated by ";". FIX: Expansion the Data Messages Translation in the tree modes: SINGLELANGUAGE, MULTILANGUAGE and MULTILANGUAGE-DYNAMIC: * the user language obtaining unified in the function lang2Code(), expanded by the arguments "user" and "onlyUser"; * the lang2CodeBase() function separated to the common one langBase() and appended the function langToLocale() of obtaining the complete locale at language from langBase(); * the language field of the objects TSYS, TUser appended of the selection list from langBase(); * FIX: the TMess::mRes lock renamed to TMess::trMessIdxRes and limited in use only for TMess::trMessIdx; * the translation cache significant extending and unification: ** in the new TMess object's functions translCacheGet(), translCacheSet(), translCacheLimits() and the own lock trMessCacheRes; ** extended by the message category for caching the system translations and users; ** the cache limiting also appended by the time limit variable "limCacheIts_TM" for what it checked in the service task. * appended for the translation context at the new function TMess::trCtx() and the object TrCtxAlloc for handling the context registration as user and language bound to the call thread: ** TCntrNode::cntrCmd(), Protocol.HTTP, UI.{Vision,WebVision,WebUser,WebCfg,WebCfgD} attached to use the translation context. * synchronized in the system prestored and the dynamic-data setting messages; * the DB type-module objects were appended by the specific information field "Features" of specifying the supported by DB features; * FIX: complete disabling the translation and registering in the message index at the loading for generic TConfig nodes with the JavaLikeCalc procedure text and a deprecated flag of enabling that procedure whole translation; * UI.QTCfg: the tree update enabled for the root page updation through the reconnection and the tree update at the user change; enabled for using the system language in the SINGLETRANSLATION mode for remote connections; * FIX:UI.VCAEngine: the project styles moved under a new storing table "{DB_TBL}_stls" and its structure with translation; * UI.{WebCfg,WebCfgD}: Generically adapted to the dynamic translation in the MULTILANGUAGE-DYNAMIC mode, using the HTTP-variable "lang", the user language and browser language; * the [[Special:MyLanguage/Documents/How_to/Create_multi_language_project|How to "Create multi language project"]] document was created. : PRIMARY PROJECT OBJECTS * implemented for the base message and its translations mark as fuzzy - "<!>" in the text end at changing, and warning the translation removing; * accessing the dynamic translation moved under the new functions trD()->TMess::translGet() and trDSet()->TMess::translSet(): TArchives,TDAQ,TTypeDAQ,TController,TParamContr,TFunction,TPrmTmpl,TTransports,DAQ.{BlockCalc,JavaLikeCalc}; * appended in the dynamic translation for: ** DAQ-attributes name-description postranslation after the system translation and translation in the context help; ** DAQ-attributes translation in the UserAPI functions: get(), set(), descr(); ** DAQ.JavaLikeCalc: names setting part of the execution form moved to itself; ** Protocol;{ModBus,OPC_UA,UserProtocol},UI.{VCAEngine,WebUser}. * adapted commonly to the new changing conception in the MULTILANGUAGE-DYNAMIC mode through "{base}\000{lang}\000{mess}"; * appended and used for a new function translIdxCacheUpd() of updating the operative translation messages' index and cache in the MULTILANGUAGE-DYNAMIC mode for the SET command; * appended of the translation copy in the SQL INSERT command and for the MULTILANGUAGE-DYNAMIC mode; * the configuration file appended of the MULTILANGUAGE-DYNAMIC mode support. : INDIVIDUAL MESSAGES - "Trs" * UI.VCAEngine: appended of changing the storage just after the widget procedure compile for placing of the dynamic messages translation to the project storage; * the transitive dynamic translation prevented in appending the table "Trs" for messages available in other sources, so checking the message index before; * appended for filtering the messages for they translatability before registering. * LibsDB.vcaBase: ** wlb_Main.ElViewGraph: enabled for the transitive translation in the tooltip and for the parameter description; ** wlb_Main.objProps: enabled for the transitive dynamic translation; ** wlb_Main.storeHouse: significantly expanded for the specific fields, ordering the columns, appending of the highlighting rules for column values with filter index or list, fixed in whole work. : SYSTEM MESSAGES * implemented for a function of prestoring system messages translation trS(), where the base message just return with the catalogue information, that is "{base}\000{cat}" and what is translated really in the call _() — in the background there is used Mess->I18N(), but for the specific language code mess_PreSave="<PSV>"; * the system translation function TMess::I18N() was attached to the messages cache; * the TFld and IO objects expanded in work with the prestoring system messages; * module info fields adapted to the MULTILANGUAGE-DYNAMIC mode; * adaption to the postranslation for the User API function TConfig::cfg() in the translatable strings; * UI.{QTCfg,Vision}: adapted to the control items obtain in language of the user and update the main window interface language at it change; ** UI.Vision: appended in updation the toolbars at the user change, what also adapted for the dynamic translation; all development dialogs adapted for the dynamic translation. * UI.{QTStarter,QTCfg,Vision}: appended for the system Qt-messages translation relating to the selected user language, through the common application property "lang" for the Qt-translation reimplemented function QTranslator::translate(), and then the language commonly switched by the last interface and for all opened; the Starter Menu set for dynamic translation and updating. {{CntHdr|{{Anch|MessSubLev|CONCEPTUAL > Message Sublevels {Main}[0...9] and Unification for the User Messages Transferring}} }} * generic adaption to sublevels {Main}[0...9] of the main message levels [0...7]; * DAQ,DAQ.DAQGate: the function TController::messSet() appended of the messages transferring from the top to the down, so sinking down, making the function virtual one and redefine that in DAQGate, and defining also the new OpenSCADA control service request of the TController object "set:/serv/mess"; * DAQ: specified for [[Special:MyLanguage/Documents/Program_manual#ArchMess|the DAQ-transparency messages]] in the category form "{TP}{ModId}:{CntrId}[.{prm}][:{spec}]", appended of such messages creation function TController::messSet() and the User API functions SYS.DAQ["Modul"]["Controller"].messSet(), SYS.DAQ["Modul"]["Controller"]["Parameter"].messSet(); * LibsDB.vcaBase: ** wlb_Main.{ElCadr,TextLab,ImgLab,cntrRegul},mnEls.{El_Kran_Sh,Compressor}: adapted for the user action messages forming by the new DAQ-function messSet() with the unified category structure for transferring between OpenSCADA stations of different levels; ** wlb_Main.{alarmsAct,alarmsSt}: adapted to process of sublevels of the main levels with coloring all the levels; expanded by the new user field "Type" as name of the alarm level from the new configuration attribute "types"; ** wlb_doc.{docUsersSet,docAlarmsRep}: appended in the DAQGate source complete scanning for whole transferring hierarchy; ** wlb_Main.alarmsSt,wlb_doc.{docMessRep,docAlarmsRep}: adapted to the transferred messages by DAQGate; ** wlb_Main.{alarmsSt,alarmsAct},wlb_doc.docMessRep: improved in the DAQGate source complete scanning for whole transferring hierarchy, also for user actions (OP); ** wlb_Main.TextLab: optionally enabled for the transitive translation in the status text which often comes from some DAQ-source. {{CntHdr|OpenSCADA libraries and projects}} * FIX:LibsDB.{OscadaLibs,vcaBase,vcaTest},{AGLKS,Boiler}.*: Appended, cleaned and fixed for the multilanguage messages by applying the new translation fixing mechanisms. * LibsDB.vcaBase,AGLKS.vca,Boiler.St: All project styles moved under a new storing table and its structure with translation. * FIX:LibsDB.vcaBase: ** FIX:wlb_Main.{alarmsAct,alarmsSt}: The default sorting at the field of the alarm time set back to "1" as not default descending order. wlb_Main.alarmsAct: Appended for the field "messCat" of specifying the alarm categories. ** wlb_Main.{ElViewGraph,graphSelPrm}: Adapted to reset the trend item color to the default styled at setting that to empty; appended of the empty color processing as the default one also taken from the style. ** FIX:wlb_Main.RootPgSo: Appended of complete updating at the user change, but language also can be changed, and the language. * LibsDB.OscadaLibs: The "DB" field content and the table base ID of UserFuncLibs.{techApp,servProc,Controller} renamed to the standard one "flb_techApp", "flb_servProc", "flb_Controller" respectively. ** tmplib_base.{anUnif,anUnifSt,digAlarm,codeState}: Adapted to the syntax highlight builtin of the input preprocessing procedure. ** tmplib_base.digAlarm: Expanded in the common attribute DESCR using for the specific parameters redefinition by the new fields "CustomFlds". ** tmplib_base.anUnif: Expanded in the common attribute DESCR using for the specific parameters redefinition by the new fields "CustomFlds" and "CustomAlarms". Appended of the user procedure option "toSave" of force saving the object at the exit. * flb_servProc.docOffLine: Expanded for the index page accessing from any other pages. {{CntHdr|API}} ''!!!!:Changes'': * SYS: TCntrNode::{chldDel,nodeDis}() moved to direct use the new TCntrNode::EnDisFlag: NodeNoFlg, NodeRemove, NodeRemoveOnlyStor; and the space after > 0x100(TCntrNode::NodeSpecific) was reserved for the node specific, where the TParamContr::EnDisFlag set only to NodeRemove_NoArch and Widget::EnDisFlag set only to Widget::{NodeRemove_NoDelMark,NoContainer}. TCntrNode::Flag items renamed SelfModify->Modified, SelfModifyS->ModifiedS, SelfSaveForceOnChild->SaveForceOnChild. ** Storage object's functions DB(), fullDB() and setDB() expanded of the argument "qTop". ** The subsystem name moved to the function subName() call and which set "virtual" and "constant", also as subVer() and subId(). ** The description field type of the TFld object and the name field of the IO object changed to "string". ** Result of TCntrNode::nodeNameSYSM() changed to "string". ** TMess: The lang2CodeBase() function separated to the common one langBase() and appended the function langToLocale() of obtaining the complete locale at language from langBase(). *** The function lang2Code() expanded by the arguments "user" and "onlyUser". *** I18N() changed in the arguments for "const string &mess" the first and mLang moved to the second, it result changed to "string", also for TModule::I18N(), and updated all definitions _(). *** The data translation functions (short definitions) renamed to trD_L(), trD_U(), trD_LU(), trDSet_L(), trDSet_U(), trDSet_LU(). *** Removed for I18Ns(). *** labStorGen() merged to labStor() and that labels labStor(), labSecCRON(), labSecCRONsel(), labTaskPrior(), labMessCat() type changed to "string"; appended of the label labStorGen(). *** lang2Code() and lang2CodeBase() renamed to langCode() and langCodeBase() respectively for starting the adaption to the language code more than 2 symbols. ** Security: The static method "pHashMagic" moved to the definition SEC_HASH_MAGIC. * DB: The functions TBDS::{open,close}() renamed to TBDS::{tblOpen,tblClose}() and set to static ones. ** TBDS::{dataSeek,dataGet,dataSet,dataDel,genDBGet,genDBSet}() moved to the bit flags TBDS::ReqGenFlg (renamed from TBDS::ReqGen): NoFlg, NoException, OnlyCfg, UseTranslation (renamed from ReqGen::UseTranslation), UseCache, UseAllKeys. ** TBDS::dbList() moved to the bit flags TBDS::DBLsFlg: LsNoFlg, LsCheckSel, LsInclGenFirst. ** The functions moved as static ones: TBDS::{dbList,dataSeek,dataGet,dataSet,dataDel,dataDelTbl}(), TBDS::{fullDBSYS,fullDB}(). ** The generic parameters accessing functions TBDS::genDBGet() and TBDS::genPrmSet() renamed to genPrmGet() and genPrmSet() everywhere. * DAQ: TTypeDAQ::compileFuncSynthHighl() renamed to TTypeDAQ::compileFuncSnthHgl() in a way of the name unification. * Archives-History: Definitions of the archive specific names renamed for BUF_ARCH_NM, ALRM_ARCH_NM, ALRM_ARCH_CH_NM to ARCH_BUF, ARCH_ALRM, ARCH_ALRM_CH; and appended for ARCH_NOALRM ("<noalarms>"). ''Appends'': * SYS: The global short functions appended of s2l() and s2u(). ** Appended of a new function strParseEnd() of parsing the separated string from the end. ** The function pathLev() appended of a new argument of position the offset to the next token begin and what also appended in the UserAPI function parsePath() of DAQ.JavaLikeCalc. ** TCntrNode appended of the functions storage() and setStorage() for tracking the availability of node data. TCntrNode::Flag appended of the item LoadForcibly. TCntrNode::modif() and TCntrNode::modifG() appended of a new argument "forceLoad". ** The time limit variable "limCacheIts_TM" appended for the cache limiting. ** The common encoding function strEncode() and the User API one appended the variant "ShieldBin" of shield the binary symbols [\x0-\x8\xB-\xC\x0E-\x1F]. ** TMess: Appended for a function of checking the messages for them translatability — isMessTranslable(). *** Appended for functions of managing the translation cache: translCacheGet(), translCacheSet(), translCacheLimits() and the own lock trMessCacheRes. Appended for a function translIdxCacheUpd() of updating the operative translation messages' index and cache, and functions translItSplit(), translItRemTrs() of the items splitting and removing from Trs. *** Appended for the translation context at the new function trCtx() and the object TrCtxAlloc for handling. *** Appended for the data translation trD()->translGet() and trDSet()->translSet(). *** Appended for the prestoring system messages translation trS(), as an other link to I18N(). *** Appended for the function messLevelTest(). *** The TMess::Type structure appended of an item "MaxLev" of the maximum message types/levels specifying. *** The TMess definitions appended of mess_PreSave="<PSV>" and mess_TrModifMark="<!>". ** XMLNode: Appended of the new saving option BinShield(0x400) for controllable shield the binary symbols [\x0-\x8\xB-\xC\x0E-\x1F]. ** TConfig,TCfg: Expanded for new parameters TConfig::{trcSet,setTrcSet}(), TCfg::{isSet,setIsSet}() of detection the configuration field changing and using in the partial DB-loading instead toDefault(); and TConfig::{noTransl,setNoTransl}() for global setting the structure default translation. TCfg::setExtVal() function appended an argument "toOne". ** TError: codes appended of: DB_TrRemoved (22) for mark the translation removing in DB, DB_ReadOnly (23) introduced by SQLite at the unification process, Core_NoNode (5) of the TCntrNode missing, Tr_ErrTransport (12) for the transport errors mark, Tr_ErrResponse (13) and Tr_ErrDevice (14) for more specific transport errors. * DB: The TBDS::realDBName() appended of the back conversion argument. ** The static methods of TBDS appended of the new function dbPart() of getting the storage address parts and appended of a new function dataDelTbl() of the common tables removing, also in the Configuration File. ** Appended for the structure item object TTable::TStrIt. ** Common SQL-code moving to the new functions: TTable::fieldSQLSeek(), TTable::fieldSQLGet(), TTable::fieldSQLSet(), TTable::fieldSQLDel(); with the flags TTable::SQLReqFlag: SQLNoFlg, SQLOrderForSeek, SQLFirstSkipForSeek. ** Declaration in the core for the service definitions, methods and functions to the common SQL-code: SEEK_PRELOAD_LIM, tblStrct, seekSess, connRes, fieldFix(), getSQLVal(), setSQLVal(). ** Appended of the list priority specifying functions TBD::lsPr(), TBD::setLsPr() and virtual one TTypeBD::lsPr(). ** Appended of [[Special:MyLanguage/Documents/Program_manual#DBFeat|the DB features]] specifying virtual function TTypeBD::features(). * DAQ: TFunction::IO object's structure IO::IOFlgs appended the flag IO::TransltText of marking the translate String IO directly. ** The function {TController,TParameter}::messSet() appended of the messages transferring from the top to the down, and also the User API functions SYS.DAQ["Modul"]["Controller"].messSet(), SYS.DAQ["Modul"]["Controller"]["Parameter"].messSet(). ** The TCntrNodeObj appended of the function lang() obtained from the second line of the common method mUserLang. ** The User API functions appended of the function funcSnthHgl() in the DAQ module object and for obtaining the syntax highlight rules of the module and language. * Archives-History: Appended of the function "void TArchives::messPut( const TMess::SRec &rec, const string &arch = "" )" variant. * Transports: Appended of the new function extHostSeek(). * UI: Appended of the Configuration File option "FontSnthHglCode" and the corresponded functions TUIS::fontSnthHglCode() and TUIS::setFontSnthHglCode(). ** VCAEngine: *** The User API functions mime() and mimeSet() appended of the correct equivalents resource() and resourceSet(). *** The Project object appended a Control Interface service request "read:/serv/access", of checking the read access. *** The Control Interface service request "get:/prm/cfg/prj" appended an option "noName" for preventing the project name request. {{CntHdr|SYS}} * FIX:Building: configure.ac: Core library version risen to 3:12:0 and the program version risen to 0.9.5. ** The module version of the subsystem "BD" risen to 15, the subsystem "DAQ" risen to 14. ** The Debian 11 root file systems (chroots) are appended for build OpenSCADA; appended for build to Ubuntu 22.04 LTS and Debian 11 ARM64; and Maemo 5 (Nokia N900) removed since the compiler crashes now constantly in several places. ** data/*.xml: The TBDS Generic parameter "SYSStPref" removed. ** SYS,data/ModelsDB/{AGLKS/oscada_AGLKS.xml,Boiler/oscada_Boiler.xml}: The configuration parameter "Lang2CodeBase" renamed to "LangBase" with support "Lang2CodeBase" up to the 1.0 release. * The source code messages and program documentation: ** The "[[Special:MyLanguage/Documents/Quick_start|Quick start]]" manual completely revised and actualized for the last LTS changes, and also included the new section "Execution the ready OpenSCADA project in the service-background space" into own section "[[Special:MyLanguage/Documents/Quick_start#Demon|Background and remote execution — server, PLC execution environment and remote development]]". ** The "[[Special:MyLanguage/Documents/Program_manual|Program Manual]]" document appended of the new section "[[Special:MyLanguage/Documents/Program_manual#Service|Execution the ready OpenSCADA project in the service-background space]]" and revised in the section "[[Special:MyLanguage/Documents/Program_manual#Startup|Startup and execution]]". ** New document of the How to "[[Special:MyLanguage/Documents/How_to/Create_multi_language_project|Create multi language project]]" appended for downloading to offline. ** The whole source code labels like to ????, !!!!, ?!?! and they comments were revised. ** The language Russian,Російська,Российский renamed to its true name mRussian. ** UI.{VCAEngine,Vision}: The "Mime data" renamed to "Resources" and "Mime type" to "MIME". * {{Anch|MessRedundTr|.,DAQ.DAQGate}}: The messages redundancy and messages transferring in DAQ.DAQGate limited for depth of the requesting messages up to the restoring time or one hour. ** The archivers redundancy and DAQ.DAQGate switched in the initial messages requesting to: *** request the active alarms; *** request the archive in deep and up to the alarms requesting time, without the alarms activation; *** ordinal-periodic request of the last messages, without the alarms activation. * Protocol.HTTP,UI.{WebCfg,WebCfgD,WebUser,WebVision}: Appended of the previous user detection to mark that actions for HTTP-modules with moving the previous user authentication session closing after successful the new one. ** All the HTTP-modules adapted to the user field in the HTTP-functions with the previous user in the second line. ** FIX:WebVision: The previous user is used now for detection of the user change between the ordinal users and for single session, than prevent to create new sessions. * Expanding the binary symbols [\x0-\x8\xB-\xC\x0E-\x1F] shielding: ** XMLNode: Appended of the new saving option BinShield(0x400) for controllable shield the binary symbols [\x0-\x8\xB-\xC\x0E-\x1F], what is significant for the WebBrowsers. ** UI.{WebCfgD,WebVision}: Appended of encoding the XML traffic for the binary symbols shielding using the new option "BinShield". * FIX: strParse() rewrote and tested in processing the group symbols merging at the scan; and strParse(), strLine(), pathLev() in position the offset to the next token begin and limiting in the down for 0; and pathLevEnd() in positioning the offset to the next token end and limited in the up for the size. TModSchedul::chkAllowMod(),UI.QTCfg,Protocol.HTTP: switched in use TSYS::pathLevEnd() and TSYS::pathLev() in the new behaviour. * Force loading appended of the errors suppression for not modified nodes before that operation. * .,DB,DAQ: The global configuration context copying mechanism (interstation) appended for the marking link to the last setting operation object, to easy postmarks setting. ** DAQ: As a postmark to the saving DAQ-parameter object there appended the attribute "prmTp" with the parameter type, which is used next in true detection the parameter type changing at the following loading. * .,UI.{QTCfg,WebCfgD}: The OpenSCADA Control Interface for Tables expanded by the user commands. {{CntHdr|DB}} * FIX: The TBD object appended an internal flag "mIsFirst" of control the object first enable and what used to prevent of the table "Trs" registering at each enable-connection-reconnection. * FIX: The TBDS::dataDel() fixed-appended in removing multiple items and appended of removing the empty table nodes of the Configuration File. {{CntHdr|DAQ}} * FIX: The controller objects manual start defined for some specific hot doings of the object enabling, when the doing was prevented from call twice at the normal start: ** DAQGate: resync the remote source data at the sync period >= 0; ** ModBus: force reformation of the acquisition blocks; ** OPC_UA: force reformation of the monitored items list; ** Siemens: force reformation of the acquisition blocks. * The "Return" type IO of the TFunction object was set to ReadOnly in the manual execution tab. * FIX:{{Anch|DAQGate|DAQGate}}: Appended of the asynchronous writing mode implementation. The configuration field of the remote stations selection moved in simple combobox. The controller object status appended of the counters of read/archive's/wrote values, read messages and the writing buffer status. ** FIX: Fixed in reusing parameters with empty address for included ones and appended for clearing the address at the parameters copy. ** FIX: Unified in the sync commonly and fixed in the attributes sync, with preventing in constantly sync of the missed on remote host parameters. * FIX:JavaLikeCalc: Prevented in some resources lock of the library function at its program change, when performed the program compile at disabled function. * Siemens: Appended of the new option "Maximum size of the request block, bytes" of specifying the maximum requesting block. {{CntHdr|Transports}} * The UpRiseLev stations splited in the requesting transport per the first host of the "reforwardHost" address, than preventing the common connection hung at long connection to very far reforward missing station. * {{Anch|SSL|SSL}}: Both input and output parts appended of the possibility to point the certificates and the key directly from an external file. Appended for reloading the certificates file of the input transport at it change by the transport reconnect. {{CntHdr|Transport Protocols}} * FIX:HTTP: Fixed in reading the "accept-language" HTTP variable only as the two symbol language code, then the common interface is translated also now on FireFox who sends there the country code also. * FIX:SelfSystem: In the input part switched to load the whole input message before checking the auth information, then preventing for strange error messages "Error the command format." for the message tail. {{CntHdr|User Interface}} * VCAEngine,Vision,WebVision: The "openlist:/serv/pg" control request appended in the attribute "pgGrp" (group) of the opened page for detection several pages open in one container then open last one and close previous ones, to prevent mostly the included pages all close and allow of specifying-override the need pages open. ** {{Anch|Vision|Vision}}: Refactored also for early opening the restored and specified pages in the init procedure. * QTStarter,WebVision,WebCfgD: Qt part, in the generic Qt Library, and Web appended for the table edition text apply at Enter and new line at Ctrl+Enter. * FIX:QTCfg,Vision: Prevented from hangs at stopping from a termination signal, from the console mostly, since locking the main Qt thread in modStop() without qApp->processEvents(). * QTCfg: The text fields appended of checking and activation the builtin syntax highlight rules from the XML-tag "SnthHgl". The Tables appended of finding for pointed strings. * {{Anch|VCAEngine|VCAEngine}}: ** Finishing of implementing the changes obtaining in the runtime mode by the clocking cycles through, after observing the race condition on the attributes changing, which cause to do not update the value on visualizers: *** rewrote for the modification control mechanism; *** specifying the forming and fixed cycles; *** reducing the main calculation clock to uint16; *** dividing the changes clock value of attributes and the widget commonly to the forming (uint16) and the fixed (uint16) = uint32; *** processing the changes clock value both at the modification and reading-checking; *** support of reloading the main calculation clock and clearing the old changes clock value; *** preventing the empty cycles for the common widgets requesting; *** removed for code of the previous slide current mark mechanism of the attributes changing detection with the doubles. ** The Widget copy operation appended of copying the used widget resources (the Image type now only), and in that way there performed. ** FIX: The "<deleted>" mark setting for the removed inherited included widgets moved to the save function of the container widget, since that is lost at the copy operations and now you can easy undo/redo such widgets removing. ** FIX: Fixed in the mime data copy at the widget libraries and the projects copy, moving the copy to the copy save, with expanding the mime operations for work with completely specified DBs. ** FIX: Prevented in the attribute values inheriting for the output links, then do not write to DAQ the obviously wrong values at the hot edition of running projects and their items. * FIX:Vision: Fixed, or finished the implementation, for UNDO/REDO the removing operation of the inherited included Widgets of the Project Pages. ** Adjusted in the focus policy to the UI.WebVision way and appended the focus force clearing at lost, to prevent the widget focus return at window activation, so you can use now the event "ws_FocusIn" in opening external subwindows. ** The child widgets selection conception at the visual editing of the development mode was unified and fixed in a new part "Visual editing" of [[Special:MyLanguage/Modules/Vision|the UI.Vision module documentation]]. ** Requesting of the widget attributes' values of the developed widget moved to a single big request, than the remote development is become much faster. * FIX:WebVision: The session methods mUser and mUserOrig moved under the data mutex lock, due to there can be crashes at active user manipulations. ** FIX: The view "Combo" of the type "Line" and the types "List" and "Combo" appended of creation value items missed in the selection list. ** FIX: The popup windows of the calendar and editable combo appended of the geometry check than preventing the main window overflow; and the popup windows closing moved completely at a mouse button press outward the window, together other popup menus. ** FIX: Improved and fixed in usability the view Table of the primitive FormEl and mostly in the text edition: true width fitting and minimum height setting to 40 pixels, FIX: fixed in specifying the column sorting value "0" as ascending-default and "1" as descending from the top, like to the UI.Vision behaviour and the numbers (integer,float) sort-comparing was implemented separately. ** Appended for the FrontEnd status display in the session status field with that requesting-scheduling at display the field. ==== Service updates ==== * [http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2862 the fifth (5) at 03.12.2022]. * [http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2855 the fourth (4) at 23.10.2022]. * [http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2849 the third (3) at 03.09.2022]. * [http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2843 the second (2) at 08.08.2022]. * [http://oscada.org/svn/tags/openscada_0.9/ChangeLog?p=2839 the first (1) at 24.07.2022].
Navigation menu
OpenSCADA
Site
Download
Old Wiki
OpenSCADA Wiki
Home
About OpenSCADA
Functions and demands
Tasks
Using
Fund
Recent changes
Random page
Search
Tools
Special pages
Printable version
MediaWiki
Help
Personal tools
English
Log in