InTouch 9.5 Uživatelská příručka Soubor
Transkript
Wonderware® FactorySuite™ InTouch 9.5 Uživatelská příručka Invensys Systems, Inc. Všechna práva vyhrazena. Bez předchozího písemného povolení společností Invensys Systems, Inc. nebo Pantek (CS) s.r.o. nesmí být žádná část této příručky reprodukována, uložena ve vyhledávacím systému ani převedena jakýmkoli způsobem, ať elektronicky nebo mechanicky, včetně fotokopírování nebo nahrávání. Společnosti Invensys Systems, Inc. ani Pantek (CS) s.r.o. nenesou žádnou odpovědnost vyplývající z autorských práv s ohledem na použití zde uvedených informací. Ačkoli byla tato příručka připravena velmi pečlivě, vydavatel ani autor na sebe neberou odpovědnost za jakékoli chyby nebo opomenutí. Nelze také vyvodit žádnou právní odpovědnost za škody vyplývající z použití zde uváděných informací. Informace v této příručce mohou být změněny bez předchozího upozornění a nevyplývá z nich pro společnost Invensys Systems, Inc. nebo Pantek (CS) s.r.o. žádný právní závazek. Programové vybavení popsané v příručce se poskytuje na základě licenčního ujednání. Toto programové vybavení může být používáno nebo kopírováno jen v souladu s podmínkami tohoto ujednání. © 2005 Invensys Systems, Inc. Všechna práva vyhrazena. Invensys Systems, Inc. 26561 Rancho Parkway South Lake Forest, CA 92630 U.S.A. http://www.wonderware.com Ochranné známky Názvy společností a produktů uvedené v této příručce mohou být chráněny ochrannými známkami jejich odpovídajících vlastníků. Invensys Systems, Inc. nepotvrzuje přesnost těchto názvů a jejich použití v této příručce nelze považovat za jakékoliv ovlivňování jejich platnosti. Alarm Logger, ActiveFactory, Archestra, Avanti, DBDump, DBLoad, DT Analyst, FactoryFocus, FactoryOffice, FactorySuite, FactorySuite A2, InBatch, InControl, IndustrialRAD, IndustrialSQL Server, InTouch, InTrack, MaintenanceSuite, MuniSuite, QI Analyst, SCADAlarm, SCADASuite, SuiteLink, SuiteVoyager, WindowMaker, WindowViewer, Wonderware a Wonderware Logger jsou ochranné známky společnosti Invensys plc nebo jejich dceřinných či přidružených firem. Ostatní názvy mohou být chráněny ochrannými známkami jejich odpovídajících vlastníků. -2- Obsah Ú V O D - Vítá vás program InTouch ............................................................................. 7 Systémové požadavky...................................................................................................... 8 Instalace programu InTouch ............................................................................................ 8 Tato příručka.................................................................................................................... 9 Technická podpora........................................................................................................... 9 Vaše licence FactorySuite.............................................................................................. 10 První spuštění programu InTouch.................................................................................. 10 Práce v programu InTouch Application Manager.......................................................... 13 K A P I T O L A 1 - Prvky programu WindowMaker ................................................ 21 Grafické uživatelské rozhraní programu WindowMaker............................................... 22 Application Explorer (Aplikační průzkumník) .............................................................. 23 Nástrojové lišty programu WindowMaker .................................................................... 31 Pravítko programu WindowMaker ................................................................................ 40 Stavový řádek programu WindowMaker....................................................................... 41 Nástrojová lišta Pan and Zoom (Ruka a lupa) ............................................................... 41 Barevná paleta programu WindowMaker ...................................................................... 44 Kontextové nabídky....................................................................................................... 47 Společné vlastnosti dialogových oken ........................................................................... 49 Různé zkrácené příkazy myši ........................................................................................ 52 Přesouvání objektů pomocí kláves se šipkami............................................................... 53 Použití nápovědy programu WindowMaker .................................................................. 53 K A P I T O L A 2 - Použití programu WindowMaker .............................................. 54 Jednoduché objekty ....................................................................................................... 55 Komplexní objekty ........................................................................................................ 56 Přizpůsobení Vašeho vývojového prostředí................................................................... 58 Práce s okny programu WindowMaker ......................................................................... 61 Práce s grafickými objekty ............................................................................................ 72 Uspořádání objektů ve Vašem okně .............................................................................. 82 Práce s obrázky a bitmapami ......................................................................................... 89 Práce s textovými objekty.............................................................................................. 94 Práce s čárami a obrysovými čárami ........................................................................... 101 Práce s předkonfigurovanými objekty ......................................................................... 101 Předkonfigurované objekty ovládacích prvků prostředí OS Windows ........................ 105 Práce s ovládacími prvky ActiveX .............................................................................. 114 Přizpůsobení Vašeho prostředí běhu programu ........................................................... 129 Obrazovkové klávesnice v programu InTouch ............................................................ 138 Vzhled a ovládání programu ve stylu Microsoft Windows XP ................................... 141 Zapnutí filtru klávesnice .............................................................................................. 147 Spuštění programu WindowViewer jako NT služby ................................................... 148 Použití aplikace Log Viewer (Prohlížeč záznamů) ke kontrole chybových hlášení .... 150 K A P I T O L A 3 - Zabezpečení aplikací InTouch .................................................. 153 Použití zabezpečení na základě aplikace InTouch ....................................................... 153 Použití zabezpečení na základě operačního systému ................................................... 160 Použití zabezpečení na základě ArchestrA .................................................................. 170 Vytvoření vlastního okna pro přihlašování.................................................................. 171 Zabezpečení a alarmy .................................................................................................. 172 InTouch skriptové funkce pro zabezpečení ................................................................. 173 K A P I T O L A 4 - Použití InTouchView ................................................................. 180 Co je InTouchView...................................................................................................... 180 Vytvoření nové aplikace InTouchView ....................................................................... 181 Použití nabídky InTouchView ..................................................................................... 182 -3- Konverze aplikací InTouchView ................................................................................. 183 K A P I T O L A 5 - Distribuované aplikace a síťový vývoj aplikací....................... 186 Síťový vývoj aplikací (NAD) ...................................................................................... 187 Dynamická změna rozlišení (DRC) ............................................................................. 191 Distribuované aplikace a časové zóny ......................................................................... 193 Distribuované alarmy................................................................................................... 194 Distribuovaná historie.................................................................................................. 194 K A P I T O L A 6 - Databáze proměnných ............................................................... 195 Speciální funkce databáze proměnných....................................................................... 196 Typy proměnných........................................................................................................ 197 Rozšířená podpora proměnných .................................................................................. 202 Definice nové proměnné.............................................................................................. 203 Definice vlastností proměnné ...................................................................................... 207 Definice alarmových stavů proměnné ......................................................................... 215 Odkazy na vzdálené proměnné .................................................................................... 221 Vytvoření aplikace Tagname Server............................................................................ 223 Dynamická změna adresování (DRA) ......................................................................... 225 Tag Browser (Prohlížeč proměnných) ......................................................................... 228 Přesměrování vzdálených odkazů pomocí skriptu....................................................... 234 Utilita Křížové odkazy programu InTouch.................................................................. 239 Vymazání proměnných z databáze .............................................................................. 244 Zobrazení počtu použitých proměnných...................................................................... 246 Nahrazování proměnných ............................................................................................ 247 Konverze zástupných proměnných .............................................................................. 248 Změna velikosti rozsahu I/O proměnných ................................................................... 249 Interní systémové $proměnné ...................................................................................... 250 Atributy proměnné....................................................................................................... 253 Utility databáze proměnných ....................................................................................... 267 K A P I T O L A 7 - Vytváření animačních propojení .............................................. 275 Společné vlastnosti animačních propojení................................................................... 276 Vytváření dotykových propojení ................................................................................. 284 Vytváření dotykových propojení vstupu uživatele ...................................................... 285 Vytváření propojení zobrazení..................................................................................... 294 Vytváření propojení zobrazení hodnoty....................................................................... 312 K A P I T O L A 8 - Vytváření skriptů QuickScript v programu InTouch............ 316 Skripty QuickScript programu InTouch ...................................................................... 317 Použití editoru skriptů QuickScript v programu InTouch........................................... 318 Aplikační skripty ......................................................................................................... 325 Skripty okna................................................................................................................. 327 Klávesové skripty ........................................................................................................ 328 Skripty dotykově citlivých tlačítek .............................................................................. 329 Podmínkové skripty ..................................................................................................... 332 Změnové skripty .......................................................................................................... 334 Skripty událostí ovládacích prvků ActiveX ................................................................. 336 Skripty QuickFunction................................................................................................. 338 Použití lokálních proměnných ..................................................................................... 346 Vytváření skriptů s cykly FOR-NEXT ........................................................................ 348 Styly a syntaxe skriptů................................................................................................. 353 Import skriptů QuickScript .......................................................................................... 361 Tisk skriptů .................................................................................................................. 364 Skriptové funkce.......................................................................................................... 365 Chybové zprávy editoru skriptů................................................................................... 375 -4- K A P I T O L A 9 - Alarmy a události....................................................................... 381 Úvod ............................................................................................................................ 382 Všeobecný základ o alarmech...................................................................................... 383 Alarmy a události......................................................................................................... 384 Aktuální alarmy v porovnání s historickými alarmy.................................................... 384 Typy alarmů................................................................................................................. 386 Priority alarmů ............................................................................................................. 387 Alarmové skupiny........................................................................................................ 388 Seznamy distribuovaných alarmových poskytovatelů ................................................. 393 Modely potvrzování alarmů......................................................................................... 395 Systém poskytování a spotřeby alarmů........................................................................ 397 Ukládání alarmových dat ............................................................................................. 398 Konfigurace alarmů v databázi proměnných ............................................................... 398 Alarmové atributy proměnné ....................................................................................... 399 Řízení vzniku a viditelnosti alarmu ............................................................................. 406 Nastavení alarmového systému.................................................................................... 409 Potvrzování lokálních alarmů ...................................................................................... 410 Horká záloha a synchronizace ..................................................................................... 411 Vzorové architektury ................................................................................................... 418 K A P I T O L A 1 0 - Klienti alarmů a událostí........................................................ 421 Ovládací prvek Alarm Viewer ActiveX....................................................................... 422 Objekt pro zobrazování alarmů distribuovaného alarmového systému ....................... 503 Ovládací prvek Alarm DB View ActiveX ................................................................... 529 Ovládací prvek Alarm Tree Viewer ActiveX .............................................................. 595 Ovládací prvek Alarm Pareto ActiveX ........................................................................ 624 K A P I T O L A 1 1 - Nástroje pro správu alarmů................................................... 660 Utilita Alarm DB Logger............................................................................................. 660 Utilita Alarm DB Purge/Archive ................................................................................. 671 Utilita Alarm DB Restore ............................................................................................ 678 K A P I T O L A 1 2 - SmartSymboly programu InTouch ....................................... 682 Přehled ......................................................................................................................... 682 SmartSymbol Manager (Správce SmartSymbolů) ....................................................... 683 Vygenerování SmartSymbolů...................................................................................... 686 Vkládání instancí SmartSymbolů ................................................................................ 690 Editování existujících SmartSymbolů.......................................................................... 696 Knihovna SmartSymbolů............................................................................................. 700 Dialogové okno SmartSymbol Properties (Vlastnosti SmartSymbolů) ....................... 705 K A P I T O L A 1 3 - Přepínání jazyka při běhu aplikace InTouch ....................... 709 Konfigurace jazyků pro přepínání jazyka při běhu aplikace........................................ 709 Změna nastavení písma pro konfigurovaný jazyk ....................................................... 711 Přidání funkce přepínání jazyků při běhu aplikace ...................................................... 712 Export textů v aplikaci pro externí překlad.................................................................. 715 Export do stávajícího souboru se slovníkem................................................................ 717 Překlad exportovaného souboru se slovníkem............................................................. 717 Import přeložených souborů se slovníky ..................................................................... 720 Testování funkce přepínání jazyka při běhu aplikace .................................................. 722 K A P I T O L A 1 4 - Reálné a historické trendy...................................................... 723 Reálné trendy ............................................................................................................... 724 Historické trendy ......................................................................................................... 728 Skriptové funkce historických trendů .......................................................................... 740 Distribuovaný systém historických dat........................................................................ 741 -5- K A P I T O L A 1 5 - I/O komunikace....................................................................... 748 Podporované komunikační protokoly .......................................................................... 749 Konvence adres vstupu/výstupu v programu InTouch................................................. 750 Adresa vstupu/výstupu v programu InTouch............................................................... 751 Komunikační kanály programu InTouch ..................................................................... 751 Definice vstupně/výstupní položky v programu InTouch........................................... 755 Monitorování stavu I/O komunikace ........................................................................... 758 Monitorování stavu komunikace I/O Serveru.............................................................. 761 Konfigurace přepnutí mezi I/O servery při selhání komunikace (I/O Failover) v programu InTouch .................................................................................................... 762 Reinicializace I/O komunikací podle komunikačního kanálu...................................... 772 Glosář pojmů ………………………………………………………………………….777 -6- ÚVOD Vítá vás program InTouch ® ® Vítejte v programu Wonderware InTouch . Tento program představuje nejrychlejší a nejjednodušší způsob, jak vytvořit aplikace rozhraní člověk - stroj (HMI - Human Machine Interface) pro operační systémy Microsoft® Windows™. Program InTouch je součástí softwarové rodiny Wonderware FactorySuite™. Aplikace InTouch jsou rozšířeny po celém světě v různých průmyslových odvětvích (potravinářství, ropný, strojní, chemický, farmaceutický, papírenský průmysl, doprava, služby a další sektory). Použitím programu InTouch je možné vytvořit výkonné, funkčně bohaté aplikace, které využívají klíčové funkce prostředí Microsoft Windows, včetně ovládacích prvků ActiveX , propojování a vkládání objektů (OLE), grafiky a dalších. Program InTouch lze také rozšířit přidáním uživatelských ovládacích prvků ActiveX, předkonfigurovaných objektů, obecných objektů a použitím skriptů InTouch QuickScript. Produkt InTouch se skládá ze tří hlavních částí: WindowMaker™, WindowViewer™ a InTouch Application Manager . V rozhraní InTouch Application Manager se zobrazuje přehled vytvořených aplikací InTouch. V tomto rozhraní lze také upravit nastavení aplikace tak, aby běžela jako služba; konfigurovat režim NAD pro síťový vývoj aplikací; nastavit režim DRC pro dynamické změny rozlišení aplikací; nebo využít nástroje DBDump a DBLoad pro snadný export a zpětný import databáze proměnných. Program WindowMaker je vývojové prostředí, v němž se z objektově orientovaných grafických prvků vytváří interaktivní, „dotykově citlivá“ zobrazovací okna. Objekty v těchto oknech mohou být připojeny k průmyslovým vstupně-výstupním zařízením a k jiným aplikacím v operačním systému Microsoft® Windows™. Program WindowViewer je uživatelské runtime prostředí, které zobrazuje grafická okna vytvořená v programu WindowMaker. WindowViewer také vykonává skriptovou část aplikace InTouch, realizuje historické ukládání dat, vyhodnocování alarmního systému a zajišťuje komunikaci prostřednictvím komunikačních protokolů (SuiteLink, DDE). TIP Abyste mohli rychle začít, přečtěte si z této kapitoly další podrobnosti týkající se instalace a spuštění programu InTouch. Obsah • Systémové požadavky • Instalace programu InTouch • Tato příručka • Technická podpora • Vaše licence FactorySuite • První spuštění programu InTouch • Práce v programu InTouch Application Manager -7- Systémové požadavky Softwarové a hardwarové systémové požadavky naleznete v soubor Readme, který je k dispozici na instalačním CD. Tento Readme soubor se také automaticky zobrazí po instalaci programu InTouch. Instalace programu InTouch Pro instalaci programu InTouch slouží nástroj Wonderware FactorySuite Installation Program. Instalaci je možné provést v operačním systému Microsoft Windows 2000, Windows 2003 nebo Windows XP. Instalační program vytvoří adresáře a zkopíruje soubory na Váš pevný disk. Přechod ze starší verze programu InTouch Aplikace ve starších verzích programu InTouch (vytvořené ve verzi 5.6 a vyšší) je možné konvertovat do vyšších verzí programu InTouch. V případě převodu starší aplikace do novější verze programu InTouch, bude pomocí dialogových oken InTouch požadovat potvrzení převodu aplikace a potvrzení zálohy aplikace. Zálohování aplikace vytvořené ve starší verzi programu InTouch Pokud se pokoušíte otevřít aplikaci, vytvořenou ve starší verzi programu InTouch, program WindowMaker automaticky detekuje, že je tato aplikace starší a zobrazí okno nástroje Backup Configuration. Pomocí tohoto nástroje je možné aplikaci jednoduše zazálohovat. Pro změnu nastavení výchozí cesty, do které se mají uložit soubory se zálohou, je třeba odškrtnout pole Use Default Backup Path (Použít defaultní zálohovací cestu). Po odškrtnutí této volby již bude aktivní pole Backup Path (Záložní cesta), do kterého je možné specifikovat souborovou cestu k adresáři, do kterého chceme zálohované soubory uložit. V případě, že složka není na pevném disku vytvořena, je třeba nejprve tuto složku vytvořit a až následně tuto cestu zadávat. V poli Ignore Files (Ignorovat soubory) můžete definovat soubory, které nechcete aby systém zálohoval. (Ve výchozím nastavení se zálohují veškeré soubory, které jsou umístěny v adresáři aplikace). V případě specifikace seznamu s větším počtem těchto souborů použijte jako oddělovač názvů jednotlivých souborů středník (;). TIP Při specifikaci jmen souborů lze použít standardní souborové funkční znaky (* a ?). -8- Tato příručka Tato uživatelská příručka je rozdělena do jednotlivých logických bloků, které popisují různé aspekty vývoje aplikací v programu InTouch. Příručka je napsána v „pracovním“ formátu, který vám pomocí uvedených kroků poradí, jak provést většinu funkcí a úloh. TIP Toto jsou „tipy“, které napovídají snadnější nebo rychlejší způsob provedení určité funkce nebo úlohy. V manuálu InTouch Reference Guide naleznete veškeré informace a popis skriptové části programu InTouch, popis skriptových funkcích, systémových proměnných a dotfieldů. Předpoklady Tato příručka předpokládá, že: • Znáte pracovní prostředí operačního systému Windows nebo Windows NT. • Umíte ovládat myš, nabídky Windows, umíte volit možnosti a používat online nápovědu. • Máte zkušenosti s programováním nebo jazykem pro psaní maker. Pro dosažení nejlepších výsledků byste měli dobře rozumět programovacím konceptům jako jsou proměnné, výrazy, funkce a metody. Technická podpora Technická podpora Wonderware Technical Support poskytuje odpovědi na různé druhy otázek, které se týkají produktů firmy Wonderware a jejich implementace. Dříve než budete pracovníky technické podpory kontaktovat, pokuste se nejprve najít možné řešení problému v příslušné kapitole příručky User's Guide. Pokud se poté obrátíte na pracovníky technické podpory, mějte prosím k dispozici následující informace: 1. Sériové číslo vašeho software. 2. Verzi programu InTouch, se kterou pracujete. 3. Typ a verzi operačního systému, který používáte. Například Microsoft Windows NT Verze 4.0 SP4 (nebo novější verze) Workstation. 4. Přesné znění systémových zpráv o chybě, které se objevily. 5. Související výstupní seznam z utility Log Viewer™, Microsoft Diagnostic utility (MSD) nebo z libovolné jiné diagnostické aplikace. 6. Podrobnosti o vašich pokusech řešení problému a o dosažených výsledcích. 7. Podrobnosti o tom, jak problém znovu navodit. 8. Technickou pomoc pro uživatele v ČR a SR poskytuje primárně místní Wonderware Autorizovaný Distributor, tj. firma Pantek (CS) s.r.o., která má statut Wonderware CSP (Certified Support Provider). -9- Vaše licence FactorySuite Informace o vaší licenci systému FactorySuite lze zobrazit pomocí utility pro zobrazení licence, která se spouští z dialogového okna About v nabídce Help v programu WindowMaker. ¾ Chcete-li otevřít obslužný program licence: 1. V nabídce Help programu WindowMaker klepněte na položku About. 2. Klepněte na View License. Objeví se dialogové okno License Utility - LicView. První spuštění programu InTouch Při prvním spuštění souboru INTOUCH.EXE se automaticky vytvoří soubor INTOUCH.INI. Tento soubor obsahuje výchozí konfigurační nastavení vaší aplikace. Při konfiguraci vaší aplikace se nastavení zapisují do souboru INTOUCH.INI. Jakmile jste nastavili aplikaci podle vašich požadavků, můžete při každém vytvoření nové aplikace zkopírovat vámi upravený soubor INTOUCH.INI do adresáře nové aplikace. Tato možnost eliminuje potřebu znovu nastavovat upravené parametry při každém vytvoření nové aplikace. Jak spustit poprvé program InTouch: ¾ 1. V menu Start ukažte na složku Programy, ukažte na složku Wonderware a klepněte na ikonu InTouch. Objeví se dialogové okno Welcome to InTouch Application Manager. 2. Klepněte na Next. Objeví se druhé dialogové okno Welcome to InTouch Application Manager, které zobrazuje výchozí cestu adresáře určeného ke spuštění programu. Například C:\programfiles\factorysuite\intouch\. - 10 - 3. Chcete-li určit jiný adresář, napište cestu k adresáři do vstupního pole nebo klepněte na tlačítko Browse a hledaný adresář vyhledejte. 4. Klepněte na Finish. 5. Objeví se InTouch Application Manager (správce aplikací InTouch) a automaticky začne vyhledávat ve vašem počítači všechny aktuální aplikace programu InTouch. Je-li nějaká aplikace nalezena, v dialogovém okně se objeví ikona s názvem aplikace. Například: - 11 - ¾ Jak vytvořit novou aplikaci programu InTouch: 1. V menu File (Soubor) klepněte na New (Nový), nebo klepněte na první ikonu v liště nástrojů. Objeví se průvodce pro vytvoření nové aplikace (Create New application). 2. Klepněte na tlačítko Next. Průvodce Vám nabídne vytvoření aplikace v adresáři InTouch\NewApp. 3. Cestu včetně názvu adresáře můžete změnit manuálním přepsáním nebo pomocí tlačítka Browse. 4. Klepněte na tlačítko Next. Pokud nastavený adresář neexistuje, objeví se dialogové okno s dotazem, zda-li chcete adresář vytvořit. Klepněte na tlačítko OK. Objeví se třetí část průvodce. - 12 - 5. Do políčka Name napište název Vaší aplikace. Tento název se bude zobrazovat v programu Správce aplikací (Application Manager). 6. Do políčka Description můžete napsat popis (komentář) k Vaší aplikaci. Lze zadat maximálně 255 znaků. 7. Klepněte na tlačítko Finish. Dokončí se vytvoření aplikace a její název se objeví v programu Správce aplikací (Application Manager). 8. Aplikaci označte a nyní ji lze spustit ve vývojovém prostředí WindowMaker pomocí pravého tlačítka myši, nebo přes menu File nebo dvojitým klepnutím levého tlačítka myši nebo stisknutím tlačítka Enter na klávesnici. Práce v programu InTouch Application Manager Program InTouch Application Manager budete používat při otevírání existujících aplikací v prostředí WindowViewer a WindowMaker, pro využívání nástrojů DBDump a DBLoad pro práci s databází proměnných a pro mazání aplikací. V menu Start ukažte na složku Programy, ukažte na složku Wonderware a klepněte na ikonu InTouch, objeví se okno programu InTouch Application Manager. Více informací o nástroji DBDump a DBLoad naleznete v Kapitole 6 – Databáze proměnných. - 13 - Zvolíte-li aplikaci v seznamu, její název a popis se objeví v poli ve spodní části obrazovky. Pokud na tento popisek klepnete pravým tlačítkem myši, objeví se nabídka zobrazující příkazy, které můžete použít pro zvolený text. Poznámka: Pokud vytváříte novou aplikaci a cesta k souborům bude obsahovat více než 114 znaků aplikaci nebude možné vytvořit. Cesta k adresáři se soubory aplikace nesmí obsahovat více než 114 znaků. Dále můžete provést několik příkazů z nabídky programu InTouch Application Manager v nabídce, která se objeví, když na aplikaci klepnete pravým tlačítkem myši. Chcete-li přejmenovat ikonu aplikace, klepněte pravým tlačítkem myši na aplikaci v seznamu a pak klepněte na Rename. Napište nový název a stiskněte ENTER. Chcete-li ikonu aplikace odstranit, klepněte pravým tlačítkem myši na aplikaci v seznamu a pak klepněte na Delete. Objeví se okno se zprávou, která žádá o potvrzení odstranění. Klepnutím na Yes se aplikace z okna odstraní a klepnutím na No se odstranění stornuje. Poznámka: Pokud odstraníte aplikaci ze seznamu, neodstraní se tím vaše soubory ani adresář aplikace. - 14 - Chcete-li aplikaci vyhledat: 1. V nabídce Tools klepněte na příkaz Find Applications. Objeví se dialogové okno Starting directory for search. TIP 2. Pro rychlejší nalezení aplikace klepněte pravým tlačítkem myši na prázdné místo v okně a pak klepněte na příkaz Find Applications v otevřené nabídce. Označte adresář, ve kterém chcete hledat aplikace, a pak klepněte na OK. Znovu se objeví InTouch Application Manager a zobrazí ikony všech aplikací, které byly nalezeny ve zvoleném adresáři. TIP V případě, že vybraná cesta obsahuje písmeno síťové jednotky a tato cesta obsahujevíce než 144 znaků, program WindowMaker takovouto složku neotevře. Cesta na složku s aplikací nesmí obsahovat více než 144 znaků. V případě že obsahuje, je třeba tento adresář přesunout na jiné místo. - 15 - ¾ Chcete-li zobrazit vlastnosti aplikace: 1. Zvolte aplikaci ze seznamu. 2. V nabídce File klepněte na příkaz Properties. Objeví se dialogové okno Properties. - 16 - ¾ Chcete-li zobrazit vlastnosti uzlu: V nabídce Tools klepněte na příkaz Node Properties. Objeví se dialogové okno Node Properties. TIP Pro rychlý přístup do dialogového okna Node Properties klepněte pravým tlačítkem myši na libovolné prázdné místo v okně a pak klepněte na příkaz Node Properties. Toto dialogové okno budete potřebovat při nastavení následujících funkcí: • Program WindowViewer jako NT služba • Síťový vývoj aplikací (NAD - Network Application Development) • Dynamická změna rozlišení (DRC - Dynamic Resolution Conversion) • • ¾ Chcete-li konfigurovat zobrazovací okno Application Manager: 1. V nabídce View klepněte na Details a pak klepněte pravým tlačítkem myši na kterékoli záhlaví sloupce (kromě Name) nebo klepněte pravým tlačítkem myši na prázdné místo v okně Application Manager a objeví se následující nabídka. 2. Klepněte na View a objeví se následující podnabídka. - 17 - 3. Zvolte příkaz, který chcete použít. Poznámka: Další informace o zobrazovacích příkazech najdete v oddílu Nástroje programu Application Manager. - 18 - Nástroje programu Application Manager Výchozí nastavení je takové, že při úvodním spuštění programu InTouch se zobrazí panel nástrojů a stavový řádek programu Application Manager. Chcete-li panel nástrojů skrýt: V nabídce View zvolte Toolbar. Pokud chcete panel znovu zobrazit, zopakujte tento krok. ¾ Chcete-li skrýt stavový řádek: V nabídce View zvolte Status Bar. Pokud chcete řádek znovu zobrazit, zopakujte tento krok. Následující přehled krátce popisuje každý nástroj v panelu nástrojů programu Application Manager: Nástroj Popis Provede příkaz New v nabídce File pro vytvoření nové aplikace. Tento příkaz není aktivní v systémech, které nemají vývojové prostředí (WindowMaker). Provede příkaz WindowMaker v nabídce File pro otevření zvolené aplikace ve vývojovém prostředí WindowMaker. Tento příkaz není aktivní v systémech, které nemají vývojové prostředí WindowMaker. Pro rychlé otevření aplikace v programu WindowMaker dvakrát klepněte na její ikonu v zobrazeném seznamu nebo ji zvolte a pak stiskněte ENTER. Provede příkaz WindowViewer v nabídce File pro otevření zvolené aplikace v prostředí WindowViewer. TIP Provede příkaz DBLoad v nabídce File pro spuštění utility DBLoad, která se používá pro načtení vstupního textového souboru databáze proměnných. Provede příkaz DBDump v nabídce File pro spuštění utility DBDump, která se používá pro vytvoření výstupního textového souboru databáze proměnných použitých v aplikaci. Provede příkaz Large Icons v nabídce View pro zobrazení velkých ikon v seznamu aplikací. Provede příkaz Small Icons v nabídce View pro zobrazení malých ikon v seznamu aplikací. Provede příkaz List v nabídce View pro zobrazení řádkového seznamu aplikací. Provede příkaz Details v nabídce View pro zobrazení řádkového seznamu aplikací rozšířeného o další podrobnosti. - 19 - Provede příkaz Node Properties v nabídce Tools pro otevření dialogového okna Node Configuration, které se používá pro nastavení parametrů počítače pro funkce: • WindowViewer jako NT služba • Síťový vývoj aplikací (NAD) • Dynamická změna rozlišení (DRC) Další informace najdete v kapitole 5 – Distribuované aplikace a síťový vývoj aplikací. - 20 - KAPITOLA 1 Prvky programu WindowMaker Program WindowMaker je vývojové prostředí pro aplikaci InTouch. Grafické uživatelské rozhraní programu WindowMaker zachovává normy grafického uživatelské rozhraní operačních systémů Windows 2000 a Windows NT. Program WindowMaker podporuje plovoucí a ukotvené nástrojové lišty, nabídky vyvolávané klepnutím pravého tlačítka myši pro rychlý přístup k často užívaným příkazům a přizpůsobitelnou barevnou paletu, která poskytuje podporu 16,7 miliónů barev. (Podpora barev je omezena pouze schopností Vaší grafické karty.) Application Explorer (Aplikační průzkumník) programu WindowMaker Vám poskytuje výkonnou grafickou metodu pro navigaci ve Vašich aplikacích InTouch a pro jejich konfiguraci. Poskytuje Vám snadný přístup k nejčastěji používaným příkazům a funkcím programu WindowMaker, jako jsou např. všechny příkazy oken, všechny příkazy pro konfiguraci a editory QuickScript programu InTouch. Navíc Application Explorer (Aplikační průzkumník) zobrazí všechny nainstalované doplňkové programy, jako je SQL Access Manager (Správce přístupu SQL), SPC Pro a Recipe Manager (Správa receptur) a poskytuje Vám přizpůsobitelný spouštěč aplikací. Application Explorer můžete nakonfigurovat tak, aby spouštěl jakýkoli jiný program FactorySuite nebo program pod operačním systémem Windows pro rychlé přepnutí mezi aplikací programu InTouch, konfigurací I/O Serveru a konfigurací ovládání. Obsah • Grafické uživatelské rozhraní programu WindowMaker • Application Explorer (Aplikační průzkumník) • Nástrojové lišty programu WindowMaker • Pravítko programu WindowMaker • Stavový řádek programu WindowMaker • Nástrojová lišta Pan and Zoom (Ruka a lupa) • Barevná paleta programu WindowMaker • Kontextové nabídky • Společné vlastnosti dialogových oken • Různé zkrácené příkazy myši • Přesouvání objektů pomocí kláves se šipkami • Použití nápovědy programu WindowMaker - 21 - Grafické uživatelské rozhraní programu WindowMaker WindowMaker podporuje normy grafického uživatelského rozhraní (GUI) operačních systémů Windows 2000 a Windows NT včetně podpory myši s pravým tlačítkem, plovoucí a ukotvené nástrojové lišty, rozbalovací nabídky, kontextovou nápovědu atd. Vývojové prostředí WindowMaker lze nakonfigurovat. Když poprvé otvíráte program WindowMaker, implicitně se automaticky zobrazí většina dostupných prvků, včetně všech nástrojových lišt, Application Explorer (Aplikačního průzkumníka) a stavového řádku. Kterýkoli prvek nebo všechny tyto prvky můžete však zobrazit nebo skrýt, můžete přesunovat nástrojové lišty a Application Explorer (Aplikačního průzkumníka) do kteréhokoli požadovaného umístění v rámci okna programu WindowMaker. Můžete také zobrazit volitelné pravítko a můžete zapnout nebo vypnout viditelnou mřížku ve Vašich oknech. Více informací o přesouvání nástrojových lišt je uvedeno v oddíle "Práce s plovoucími/ukotvenými nástrojovými lištami." Následující obrázek znázorňuje prvky vývojového prostředí programu WindowMaker: Když vytváříte novou aplikaci a poprvé spouštíte program WindowMaker, jeho programové prvky se automaticky zobrazí v implicitní konfiguraci zobrazené na výše uvedeném obrázku. Mnoho nástrojů se nezaktivuje do té doby, než se otevře okno a objekty se umístí v okně a potom se zvolí. Pokud není nástroj aktivní, jeho funkci nelze použít pro aktuální stav okna nebo vybraný objekt. Když zavřete program WindowMaker, uloží se plovoucí nebo ukotvené polohy a velikosti nástrojových lišt, Application Explorer (Aplikační průzkumník) a předvolby velikosti okna programu WindowMaker. Spustíte-li následně program WindowMaker, je zachována poslední velikost a poloha. - 22 - Application Explorer (Aplikační průzkumník) Application Explorer (Aplikační průzkumník) programu WindowMaker je hierarchický grafický náhled na Vaši aplikaci. Zobrazuje Vám, které položky ve Vaší aplikaci jste zkonfigurovali a poskytuje Vám snadný přístup k těmto položkám. Umožňuje Vám také rychlý přístup k mnoha nejčastěji používaným příkazům a funkcím programu WindowMaker. Poznámka: Application Explorer (Aplikační průzkumník) můžete nakonfigurovat tak, aby spustil jakýkoli jiný program z FactorySuite nebo libovolný program pod operačním systémem Windows. Tato výkonná funkce Vám umožní rychle přepínat mezi aplikací programu InTouch, konfigurací I/O Serveru a konfigurací ovládání. Nespouštějte program WindowViewer (view.exe) z Application Explorer (Aplikačního průzkumníka). Pokud spustíte program WindowViewer z Application Explorer, nově vytvořená okna v programu WindowMaker nemusí být synchronizována s okny v programu WindowViewer. Program WindowViewer se spouští správným způsobem použitím příkazu WindowViewer v nabídce File (Soubor) nebo klepnutím na přepínač rychlého spuštění Runtime (Chod programu) v nástrojové liště programu WindowMaker. Tak, jako je tomu u všech nástrojových lišt programu WindowMaker, může být Application Explorer (Aplikační průzkumník) "ukotven" do kteréhokoli okraje okna programu WindowMaker nebo může "plovat" kdekoli v okně programu WindowMaker. Pokud ukotvíte Application Explorer (Aplikačního průzkumníka) k okraji okna programu WindowMaker, automaticky přizpůsobí patřičným způsobem svou velikost a podle potřeby se zobrazí posuvníky. Je-li Application Explorer (Aplikační průzkumník) umístěn volně v okně programu WindowMaker, zobrazí se záhlaví jeho okna. Podobně jako je tomu u všech nástrojových lišt programu WindowMaker, když je Application Explorer (Aplikační průzkumník) umístěn plovoucím způsobem, můžete změnit jeho velikost. Více informací o ukotvené/plovoucí poloze Application Explorer (Aplikačního průzkumníka) je uvedeno v oddíle "Práce s plovoucími/ukotvenými nástrojovými lištami." Pokud klepnete pravým tlačítkem myši na záhlaví okna Application Explorer (Aplikačního průzkumníka), zobrazí se následující nabídka. Více informací o této nabídce je uvedeno v oddíle "Kontextové nabídky". Více informací o funkci pravého tlačítka myši v rámci Application Explorer (Aplikačního průzkumníka) najdete v oddíle "Navigace v Application Explorer (Aplikačním průzkumníku)". - 23 - Zobrazení/skrytí Application Explorer (Aplikačního průzkumníka) ¾ 1. V nabídce View (Zobrazit) klepněte na Application Explorer (Aplikační průzkumník). (Pokud spouštíte program WindowMaker poprvé, implicitně se zobrazí Application Explorer – Aplikační průzkumník.) 2. Opakujte krok 1 pro zavření Application Explorer (Aplikačního průzkumníka). TIP Rychlé skrytí Application Explorer (Aplikačního průzkumníka) se provádí klepnutím na nástroj Application Explorer (Aplikační průzkumník) na nástrojové liště View (Zobrazit). Rychlé skrytí Application Explorer (Aplikačního průzkumníka), když je umístěn volně v okně programu WindowMaker se provádí klepnutím na tlačítko na záhlaví okna nebo klepnutím pravého tlačítka myši v záhlaví okna a potom klepnutím na Hide (Skrýt) v nabídce. Když znovu zobrazíte Application Explorer (Aplikačního průzkumníka), opětovně se objeví v okně ve své předchozí velikosti a na předchozím místě. Navigace v Application Explorer (Aplikačním průzkumníku) Skupiny uvedené v hierarchickém grafickém pohledu Application Explorer (Aplikačního průzkumníka) můžete rozvinout a svinout. Pokud například klepnete dvakrát na skupinu, pohled se rozvine a zobrazí se prvky skupiny. Dvojitým klepnutím na prvek skupiny se tento prvek otevře. Klepnete-li například ve skupině Windows (Okna) dvakrát na prvkek s názvem okna, okno se otevře. Jestliže klepnete dvakrát na Tagname Dictionary (Databáze proměnných) objeví se dialogové okno Tagname Dictionary (Databáze proměnných) atd. TIP Všechny skupiny obsahující prvky mají předřazený symbol . Aby se rozvinula skupina a Vy si mohli prohlédnout její prvky, můžete klepnout na symbol . Podobně můžete klepnout na symbol , aby se skupina svinula a její prvky se skryly. Například: Následující část stručně popisuje chování každé skupiny uvedené v Application Explorer (Aplikačním průzkumníku), když provedete popisovanou činnost: - 24 - Položka Činnost Popis Windows (Okna) Dvojité klepnutí nebo klepnutí na Rozvine pohled pro zobrazení názvů všech existujících oken ve Vaší aplikaci. Dvojité klepnutí nebo klepnutí na Svine pohled. Klepnutí pravým tlačítkem myši Otevře operativní nabídku: Název okna Scripts (Skripty) Application (Aplikační) Key (Klávesový) • New (Nový) otevře dialogové okno Windows Properties (Vlastnosti okna). Dvojité klepnutí Otevře okno. Klepnutí pravým tlačítkem myši Zobrazí se kontextová nabídka příkazů, které můžete použít pro zvolené okno. Dvojité klepnutí nebo klepnutí na Rozvine pohled pro zobrazení všech typů QuickScript programu InTouch. Dvojité klepnutí nebo klepnutí na Svine pohled. Dvojité klepnutí Otevře Application Script (Aplikační skript) v editoru Application Script (skriptů aplikace). Klepnutí pravým tlačítkem myši Poznámka: Zobrazí se tlačítko Open (Otevřít). Klepněte na toto tlačítko pro otevření editoru Application Script (skriptů aplikace). Klepnutí na Rozvine pohled pro zobrazení všech klávesových skriptů v aplikaci. (Jsou vypsány podle klávesy přiřazené ke skriptům.) - 25 - Položka Činnost Popis Windows (Okna) Dvojité klepnutí nebo klepnutí na Rozvine pohled pro zobrazení názvů všech existujících oken ve Vaší aplikaci. Dvojité klepnutí nebo klepnutí na Svine pohled. Klepnutí na Svine pohled. Dvojité klepnutí Otevře editor Key Script (klávesových skriptů). (Pokud skripty existují, otevře se naposled editovaný skript.) Klepnutí pravým tlačítkem myši Zobrazí se kontextová nabídka: Název klávesovém skriptu Condition (Podmínkový) • New (Nový) otevře editor Key Script (klávesových skriptů). (Pokud skripty existují, otevře se naposledy editovaný skript.) • Open (Otevřít) otevře naposledy editovaný skript.) Dvojité klepnutí Otevře skript v editoru Key Scripts (klávesových skriptů). Klepnutí pravým tlačítkem myši Zobrazí se kontextová nabídka: • New (Nový) otevře editor Key Script (klávesových skriptů). (Otevře se skript, na který jste klepnuli pravým tlačítkem myši.) • Edit (Upravit) otevře zvolený skript. • Delete (Vymazat) vymaže zvolený skript. Klepnutí na Rozvine pohled pro zobrazení všech podmínkových skriptů v aplikaci. Klepnutí na Svine pohled. Dvojité klepnutí Otevře editor Condition Script (podmínkových skriptů). (Pokud skripty existují, otevře se naposledy editovaný skript.) - 26 - Klepnutí pravým tlačítkem myši Název podmínkového skriptu Data Change (Změnový) Zobrazí se kontextová nabídka: • New (Nový) otevře editor Condition Script (podmínkových skriptů). (Pokud skripty existují, otevře se naposledy editovaný skript.) • Open (Otevřít) otevře naposledy editovaný skript.) • List By (Vypsat podle) otevře podnabídku: − Name (Názvu) vypíše skripty podle jejich podmínky, − Description (Popisu) vypíše skripty podle jejich popisu. Dvojité klepnutí Otevře skript v editoru Condition Script (podmínkových skriptů). Klepnutí pravým tlačítkem myši Zobrazí se kontextová nabídka: • New (Nový) otevře editor Condition Script (podmínkových skriptů). (Otevře se skript, na který jste klepnuli pravým tlačítkem myši.) • Edit (Upravit) otevře zvolený skript. • Delete (Vymazat) vymaže zvolený skript. Klepnutí na Rozvine pohled pro zobrazení všech změnových skriptů v aplikaci. (Jsou vypsány podle proměnné přiřazené ke skriptům.) Klepnutí na Svine pohled. Dvojité klepnutí Otevře editor Data Change Script (změnových skriptů). (Pokud skripty existují, otevře se naposledy editovaný skript.) Klepnutí pravým tlačítkem myši Zobrazí se kontextová nabídka: • New (Nový) otevře editor Data Change Script (změnových skriptů). (Pokud skripty existují, otevře se naposledy editovaný skript.) • Open (Otevřít) otevře naposledy editovaný skript.) - 27 - Název změnového skriptu QuickFunctions (skripty QuickFunction) Název skriptu QuickFunction ActiveX Event (skript události ActiveX) Dvojité klepnutí Otevře skript v editoru Data Change Scripts (změnových skriptů). Klepnutí pravým tlačítkem myši Zobrazí se kontextová nabídka: • New (Nový) otevře editor Data Change Script (změnových skriptů). (Otevře se skript, na který jste klepnuli pravým tlačítkem myši.) • Edit (Upravit) otevře zvolený skript. • Delete (Vymazat) vymaže zvolený skript. Klepnutí na Rozvine pohled pro zobrazení všech skriptů QuickFunction v aplikaci. (Jsou vypsány podle jejich jména.) Klepnutí na Svine pohled. Dvojité klepnutí Otevře editor QuickFunctions (skriptů QuickFunction). (Pokud skripty QuickFunction existují, otevře se naposledy editovaný skript QuickFunction.) Klepnutí pravým tlačítkem myši Zobrazí se kontextová nabídka: • New (Nový) otevře editor QuickFunctions (skriptů QuickFunction). (Pokud skripty QuickFunction existují, otevře se naposledy editovaný skript QuickFunction.) • Open (Otevřít) otevře naposledy editovaný skript QuickFunction. Dvojité klepnutí Otevře skript QuickFunction v editoru QuickFunctions (skriptů QuickFunction). Klepnutí pravým tlačítkem myši Zobrazí se kontextová nabídka: • New (Nový) otevře editor skriptů QuickFunction (skriptů QuickFunction). (Otevře se skript, na který jste klepnuli pravým tlačítkem myši.) • Edit (Upravit) otevře zvolený skript QuickFunction. • Delete (Vymazat) vymaže zvolený skript QuickFunction. Klepnutí na Rozvine pohled pro zobrazení všech skriptů událostí objektů ActiveX. (Jsou vypsány podle názvu skriptu události.) Klepnutí na Svine pohled. - 28 - Dvojité klepnutí Otevře skript v editoru ActiveX Event Script (skriptů událostí objektů ActiveX). Klepnutí pravým tlačítkem myši Zobrazí se kontextová nabídka: Položka Činnost Popis Configure (Konfigurace) Dvojité klepnutí nebo klepnutí na Rozvine pohled pro zobrazení mnoha konfiguračních příkazů programu WindowMaker a příkazu Wizard/ActiveX Installation (Instalace předkonfigurovaných objektů/objektůActiveX). Dvojité klepnutí nebo klepnutí na Svine pohled. Dvojité klepnutí Otevře příslušné dialogové okno. Klepnutí pravým tlačítkem myši Zobrazí se tlačítko Open (Otevřít). Klepnutím na toto tlačítko se otevře příslušné dialogové okno položky. Dvojité klepnutí Otevře dialogové okno Tagname Dictionary (Databáze proměnných) zobrazující naposled modifikovanou definici proměnné. Jinak se zobrazí implicitní systémová proměnná $AccessLevel. Klepnutí pravým tlačítkem myši Zobrazí se tlačítko Open (Otevřít). Klepnutím na toto tlačítko se otevře dialogové okno Tagname Dictionary (Databáze proměnných) zobrazující naposled modifikovanou definici názvu příznaku. Jinak se zobrazí implicitní systémová proměnná $AccessLevel. Dvojité klepnutí Otevře utilitu Cross Reference (Křížové odkazy). Klepnutí Zobrazí se tlačítko Open (Otevřít). Název skriptu události ActiveX Název konfigurační položky Tagname Dictionary (Databáze proměnných) Cross Referencing (Křížové odkazování) - 29 - • Edit (Upravit) otevře zvolený skript. • Delete (Vymazat) vymaže zvolený skript. Položka Činnost pravým tlačítkem myši Popis Klepnutím se otevře utilita Cross Reference (Křížové odkazy). TemplateMaker (Tvorba šablon) Dvojité klepnutí Otevře utilitu SuperTag TemplateMaker (Tvorba šablon). Klepnutí pravým tlačítkem myši Zobrazí se tlačítko Open (Otevřít). Klepnutím se otevře utilita SuperTag TemplateMaker (Tvorba šablon). Dvojité klepnutí nebo klepnutí na Rozvine pohled pro zobrazení konfigurace doplňkových programů. Dvojité klepnutí nebo klepnutí na Svine pohled. Dvojité klepnutí Otevře příslušné dialogové okno. Klepnutí pravým tlačítkem myši Zobrazí se tlačítko Open (Otevřít). Klepnutím na toto tlačítko se otevře příslušné dialogové okno příkazu. Add-on Programs (Doplňkové programy) Název doplňkového programu Applications (Aplikace) Název aplikace Poznámka: Doplňkové programy se musí nainstalovat, aby se objevily v Aplikačním průzkumníku. Dvojité klepnutí nebo klepnutí na Rozvine pohled pro zobrazení všech ostatních aplikací, které můžete spouštět z programu WindowMaker. Dvojité klepnutí nebo klepnutí na Svine pohled. Klepnutí pravým tlačítkem myši Zobrazí se tlačítko New (Nový). Klepnutím je umožněno přidat další aplikaci do Aplikačního průzkumníka. Dvojité klepnutí Spustí aplikaci bez opuštění programu WindowMaker. Klepnutí pravým tlačítkem myši Zobrazí se kontextová nabídka: • - 30 - New (Nový) otevře prázdné dialogové okno Application Properties (Vlastnosti aplikace). Použijte tohoto příkazu Položka Činnost Popis pro přidání další aplikace. • Run (Spustit) spustí aplikaci. • Delete (Vymazat) odstraní aplikaci z Aplikačního průzkumníka. • Properties (Vlastnosti) otevře dialogové okno Application Properties (Vlastnosti aplikace) pro zvolenou aplikaci. Nástrojové lišty programu WindowMaker Nástroje na nástrojových lištách programu WindowMaker jsou seskupeny podle společné funkce. Například nástrojová lišta Arrange (Uspořádat) obsahuje nástroje, které můžete rychle použít pro provedení většiny příkazů uvedených v nabídce Arrange (Uspořádat). Umístíte-li kurzor na nástroj, objeví se rámeček rychlé nápovědy zobrazující název nástroje. Například: Práce s plovoucími/ukotvenými nástrojovými lištami Nástrojové lišty programu WindowMaker je možné umístit v "plovoucí a ukotvené" poloze. Tím je myšleno to, že můžete jakoukoli nástrojovou lištu přesunout z její implicitní "ukotvené" polohy a ukotvit ji opět na kterýkoli okraj okna programu WindowMaker nebo do oblasti nástrojových lišt v horní části okna programu WindowMaker. Ukotvené nástrojové lišty lze také přesunout z jejich ukotvené polohy na okraji okna a umístit volně v okně. Plovoucí nástrojové lišty mají záhlaví, která Vám umožňují změnit velikost lišt. TIP Application Explorer (Aplikační průzkumník) lze také ukotvit nebo umístit volně v okně a jeho velikost lze také změnit jako u jiných nástrojových lišt v případě, že je umístěn volně. Více informací o Aplikačním průzkumníku je uvedeno v oddílu "Application Explorer". Změna ukotvené pozice nástrojové lišty v okně ¾ 1. Klepněte na úchyty nástrojové lišty nebo na prázdnou plochu ukotvené nástrojové lišty. 2. Držte stisknuté levé tlačítko myši při přesunu nástrojové lišty od okraje okna nebo oblasti nástrojových lišt nebo z kteréhokoli okraje okna programu WindowMaker. 3. Přesuňte nástrojovou lištu k jinému okraji okna nebo do nové polohy v oblasti nástrojových lišt. TIP Pokud přesunete vodorovně ukotvenou nástrojovou lištu k levému nebo pravému okraji okna programu WindowMaker, změní se automaticky do svého implicitního tvaru, když je v poloze pro ukotvení k tomuto okraji. Přesunete-li podobně vertikální nástrojovou lištu do oblasti nástrojových lišt - 31 - v horní části okna nebo ke spodnímu okraji okna, změní se do svého implicitního vodorovného tvaru, když je v poloze pro ukotvení. 4. Uvolněte tlačítko myši. Nástrojová lišta se ukotví v novém umístění. Poznámka: Když je nástrojová lišta ukotvená, nemůžete změnit velikost, ani zobrazit nabídku aktivovanou pravým tlačítkem myši. ¾ Zobrazení/skrytí ukotvené nástrojové lišty 1. V nabídce View (Zobrazit) zvolte název nástrojové lišty. (Pokud spouštíte program WindowMaker poprvé, implicitně se zobrazí všechny nástrojové lišty.) 2. Opakujte krok 1 pro změnu (zobrazení/skrytí). TIP Když opět zobrazíte ukotvenou nástrojovou lištu, která byla skryta, objeví se v okně znovu ve své poslední ukotvené poloze. Přesunutí ukotvené nástrojové lišty do plovoucí polohy ¾ 1. Klepněte na úchyty nástrojové lišty nebo na prázdnou plochu ukotvené nástrojové lišty. 2. Když přesunujete nástrojovou lištu z její ukotvené polohy do nové polohy v okně programu WindowMaker, držte stisknuté tlačítko myši. 3. Uvolněte tlačítko myši. Nástrojová lišta se zobrazí následujícím způsobem: TIP Velikost plovoucí nástrojové lišty lze změnit. Pokud ukotvíte plovoucí nástrojovou lištu k levému nebo pravému okraji okna programu WindowMaker, změní se automaticky do svého implicitního svislého tvaru, když je v poloze pro ukotvení k tomuto okraji. Přesunete-li ji podobně do oblasti nástrojových lišt v horní části okna WindowMaker nebo ke spodnímu okraji okna WindowMaker, změní se do své implicitního vodorovného tvaru, když je v poloze pro ukotvení. K tomu dojde také tehdy, když ukotvíte plovoucí nástrojovou lištu, jejíž velikost jste změnili. Přesunete-li však nástrojovou lištu v okně do plovoucí polohy, vrátí se do své předchozí velikosti v plovoucí poloze. - 32 - ¾ Změna velikosti plovoucí nástrojové lišty 1. Přesuňte kurzor nad kterýkoli okraj nástrojové lišty. Kurzor se změní na dvoustrannou šipku. 2. Klepněte na okraj a držte stisknuté tlačítko myši, když přesunujete myš pro stanovení velikosti nástrojové lišty. TIP 3. Při přesunu myši se objeví rámeček, který znázorňuje, jakou velikost bude nástrojová lišta mít po uvolnění tlačítka myši. Například: Uvolněte tlačítko myši, když nástrojová lišta má požadovanou velikost. TIP Když klepnete pravým tlačítkem myši na záhlaví nástrojové lišty, objeví se nabídka zobrazující příkazy, které můžete použít pro nástrojovou lištu. Více informací o této nabídce je uvedeno v oddíle "Kontextové nabídky". ¾ Skrytí/zobrazení plovoucí nástrojové lišty 1. Pro skrytí plovoucí nástrojové lišty zvolte v nabídce View (Zobrazit) název nástrojové lišty nebo klepněte pravým tlačítkem myši na záhlaví nástrojové lišty, potom klepněte na Hide (Skrýt) v nabídce. TIP 2. Pro rychlé skrytí nástrojové lišty klepněte na tlačítko lišty. na záhlaví nástrojové Pro zobrazení skryté plovoucí nástrojové lišty zvolte v nabídce View (Zobrazit) název nástrojové lišty. TIP Nástrojová lišta se zobrazí ve své předchozí poloze a velikosti. Skrytí všech nástrojových lišt najednou ¾ 1. V nabídce View (Zobrazit) klepněte na Hide All (Skrýt vše) nebo klepněte na nástroj Hide/Restore All (Skrýt/obnovit vše) na nástrojové liště View (Zobrazit). Všechny nástrojové lišty a Application Explorer (Aplikační průzkumník) se skryjí. 2. Opakujte krok 1 pro jejich opětovné zobrazení. TIP Všechny zobrazené nástrojové lišty budou mít v nabídce View (Zobrazit) před svým názvem zaškrtávací znak. - 33 - Standardní nástrojová lišta Nástrojová lišta General (Standardní) je sestavena z nástrojů, které provádějí většinu příkazů pro práci s okny, jež je možné najít v nabídce File (Soubor) a nástroje pro práci se schránkou operačního systému Microsoft Windows, jež jsou obsaženy v nabídce Edit (Úpravy): TIP Klepnete-li pravým tlačítkem myši na prázdnou plochu otevřeného okna nebo klepnete-li pravým tlačítkem myši na název okna v položce Windows (Okna) v Aplikačním průzkumníku, zobrazí se nabídka, která také obsahuje většinu stejných příkazů okna. V následující tabulce je každý nástroj stručně popsán: Nástroj Popis Provede příkaz New Window (Nové okno) v nabídce File (Soubor) pro otevření dialogového okna Windows Properties (Vlastnosti okna) umožňujícího vytvořit nové okno. Provede příkaz Open Window (Otevřít okno) v nabídce File (Soubor) pro otevření dialogového okna Windows to Open (Okna k otevření) uvádějící názvy existujících oken, která můžete zvolit pro otevření. Provede příkaz Close Window (Zavřít okno) v nabídce File (Soubor) pro otevření dialogového okna Windows to Close (Okna k zavření) uvádějící názvy existujících oken, která můžete zvolit pro zavření. Provede příkaz Save Window (Uložit okno) v nabídce File (Soubor) pro otevření dialogového okna Windows to Save (Okna k uložení) uvádějící názvy všech aktuálně otevřených oken, která byla modifikována od jejich posledního uložení. Automaticky uloží všechna aktuálně otevřená okna, která byla modifikována od jejich posledního uložení. Tento nástroj nepožaduje potvrzení pro každé okno. Uloží automaticky všechna modifikovaná okna. Provede příkaz Duplicate (Duplikovat) v nabídce Edit (Úpravy) pro duplikaci aktuálně vybraného objektu (vybraných objektů) v okně. Provede příkaz Cut (Vyjmout) v nabídce Edit (Úpravy) pro vyjmutí aktuálně vybraného objektu (vybraných objektů) z okna a zkopíruje je do schránky systému Windows. Provede příkaz Copy (Kopírovat) v nabídce Edit (Úpravy) pro zkopírování aktuálně vybraného objektu (vybraných objektů) a zkopíruje je do schránky systému Windows. (Zkopírované objekty se nevymažou z okna.) - 34 - Provede příkaz Paste (Vložit) v nabídce Edit (Úpravy) pro vložení jakéhokoli objektu, který byl vyjmut nebo zkopírován do schránky systému Windows. (Kurzor se změní na režim vkládání. Klepněte v okně pro vložení zkopírovaného nebo vyjmutého objektu.) Provede příkaz Undo (Zpět) v nabídce Edit (Úpravy), který vrátí zpět poslední akci nebo příkaz použitou pro práci s objektem. Provede příkaz Redo (Provést znovu) v nabídce Edit (Úpravy), který stornuje poslední akci nebo příkaz návratu zpět použitou pro práci s objektem. Implicitně je nastaven počet úrovní návratu zpět/provést znovu na hodnotu 10. Levels of Undo (Úrovně návratu zpět) můžete zvýšit ve WindowMaker Properties (Vlastnostech programu WindowMaker) na hodnotu 25. Pro přístup k tomuto dialogovému oknu klepněte dvakrát v Aplikačním průzkumníku v položce Configure (Konfigurovat) na WindowMaker nebo v nabídce Special (Speciální) ukažte na Configure (Konfigurovat), potom klepněte na WindowMaker v podnabídce. Provede příkaz Print (Tisk) v nabídce File (Soubor) pro otevření dialogového okna WindowMaker Printout (Tisk WindowMaker) používaný pro tisk informací o databázi proměnných, oknech a skriptech QuickScript. Nástrojová lišta Wizards/ActiveX (Předkonfigurované objekty/ActiveX) Nástrojová lišta Wizards/ActiveX (Předkonfigurované objekty/ActiveX) obsahuje implicitně pouze nástroj předkonfigurovaného objektu, který používáte pro přístup ke knihovně předkonfigurovaných objektů s využitím Selection Dialog (Dialog výběru). Můžete však do lišty přidat jakýkoliv instalovaný předkonfigurovaný objekt nebo ovládací prvek ActiveX. Například: V následující tabulce je stručně popsán nástroj předkonfigurovaného objektu: Nástroj Popis Zobrazí dialogové okno Wizard Selection (Dialog výběru) pro volbu předkonfigurovaného objektu pro vložení do Vašich oken. Změní kurzor, pomocí tohoto nového kurzoru pak můžete vložit do okna vizualizace nový objekt typu SmartSymbol. - 35 - Nástrojová lišta Format (Formát) Nástrojová lišta Format (Formát) je sestavena z nástrojů, které provádějí většinu příkazů formátování textového objektu obsažených v nabídce Text. Obsahuje také nástroje, které používáte pro přístup k barevné paletě pro volbu barvy čáry, textu, výplně, pozadí okna a průhledné barvy u bitmapových objektů. V následující tabulce je každý nástroj stručně popsán: Nástroj Popis Provede příkaz Font (Písmo) v nabídce Text pro otevření dialogového okna Font (Písmo) používaného pro volbu typu písma, jeho stylu a velikosti. Provede příkaz Bold (Tučné písmo) v nabídce Text pro použití tučného stylu písma u zvolených jednotlivých nebo složených textových řetězců a číselných hodnot. Provede příkaz Italic (Kurzíva) v nabídce Text pro použití stylu písma kurzíva zvolených jednotlivých nebo složených textových řetězců a číselných hodnot. Provede příkaz Underline (Podtržení) v nabídce Text pro použití stylu podtrženého písma zvolených jednotlivých nebo složených textových řetězců a číselných hodnot. Provede příkaz Reduce Font (Zmenšení písma) v nabídce Text pro zmenšení velikosti každého písma. Tento příkaz lze použít zvolením textového řetězce (textových řetězců) a klepnutím na tento nástroj v nástrojové liště Text. Provede příkaz Enlarge Font (Zvětšení písma) v nabídce Text pro zvětšení velikosti každého písma. Tento příkaz lze použít zvolením textového řetězce (textových řetězců) a klepnutím na tento nástroj v nástrojové liště Text. Provede příkaz Left Justified (Zarovnaný doleva) v nabídce Text pro zarovnání zvolených jednotlivých nebo složených textových řetězců a číselných hodnot k levému okraji. Provede příkaz Centered (Vystředěný) v nabídce Text pro vystředění zvolených jednotlivých nebo složených textových řetězců a číselných hodnot. Provede příkaz Right Justified (Zarovnaný doprava) v nabídce Text pro zarovnání zvolených jednotlivých nebo složených textových řetězců a číselných hodnot k pravému okraji. Otevře barevnou paletu používanou k volbě barvy čárového objektu nebo obrysové čáry objektu. Otevře barevnou paletu používanou k volbě barvy výplně objektu. Otevře barevnou paletu používanou k volbě barvy textového objektu. Otevře barevnou paletu používanou k volbě barvy pozadí okna. Otevře barevnou paletu používanou k volbě průhledné barvy bitmapového objektu. - 36 - Nástrojová lišta Draw Object (Kreslení) Nástrojová lišta Draw Object (Kreslení) je sestavena ze všech nástrojů, které používáte pro kreslení jednoduchých grafických objektů, jako jsou obdélníky, elipsy, čáry nebo textové objekty, tak komplexních objektů, jako jsou reálné trendy, historické trendy, bitmapy a trojrozměrná tlačítka ve Vašich oknech: V následující tabulce je každý nástroj stručně popsán: Nástroj Popis Režim výběru používaný pro volbu objektů v okně. Nástroj pro kreslení obdélníků se používá pro kreslení obdélníků nebo čtverců. Nástroj pro kreslení zaoblených obdélníků se používá pro kreslení obdélníků nebo čtverců se zaoblenými rohy. Nástroj pro kreslení elips se používá pro kreslení elips a kružnic. Nástroj pro kreslení čar se používá pro kreslení čar v jakémkoli úhlu. Nástroj pro kreslení čar se používá pro kreslení vodorovných a svislých čar. Nástroj pro kreslení čar používaný pro kreslení lomených čar. Nástroj pro kreslení polygonů používaný pro kreslení mnohoúhelníkových objektů. Nástroj pro psaní textu se používá pro vytvoření textových objektů. Nástroj pro kreslení bitmap se používá pro kreslení bitmapových objektů za účelem vkládání bitmapy buď přímo ze schránky systému Windows nebo z následujících typů souborů: .BMP, .JPG, .PCX nebo .TGA. Nástroj pro vytváření objektů aktuálních trendů. Nástroj pro vytváření objektů historických trendů. Nástroj pro vytváření trojrozměrného tlačítka s textem. - 37 - Nástrojová lišta View (Zobrazit) Nástrojová lišta View (Zobrazit) je sestavena z nástrojů, které provádějí většinu příkazů obsažených v nabídce View (Zobrazit). Tyto příkazy se používají pro ovládání stavu okna programu WindowMaker. V následující tabulce je každý nástroj stručně popsán: Nástroj Popis Přepíná Application Explorer (Aplikační průzkumník) v nabídce View (Zobrazit) do stavu zapnuto a vypnuto pro zobrazení/skrytí Application Explorer. Přepíná příkaz Hide All (Skrýt vše) v nabídce View (Zobrazit) do stavu zapnuto a vypnuto pro zobrazení/skrytí všech ukotvených nástrojových lišt. Je-li aktivní režim Skrýt vše, celková velikost okna programu WindowMaker zůstane stejná. Pro návrat do normálního režimu klepněte na nástroj Hide/Restore All (Skrýt/Obnovit vše) na plovoucí nástrojové liště View (Zobrazit) nebo klepněte na nástroj Hide All (Skrýt vše) v nabídce View (Zobrazit). V režimu Skrýt vše zůstávají plovoucí nástrojové lišty viditelné a nástrojová lišta View (Zobrazit) je automaticky umístěna v plovoucí poloze v horní části okna programu WindowMaker. Pokud ukotvíte jakoukoli z plovoucích nástrojových lišt v režimu Skrýt vše, režim se automaticky ukončí. Zapíná a vypíná příkaz Full Screen (Celá obrazovka) v nabídce View (Zobrazit) pro přepnutí režimu zobrazení z normálního zobrazení na režim Celá obrazovka. Pro návrat do normálního režimu klepněte na nástroj Full Screen (Celá obrazovka) na plovoucí nástrojové liště View (Zobrazit) nebo klepněte na Full Screen (Celá obrazovka) v nabídce View (Zobrazit). V režimu Celá obrazovka jsou všechny prvky programu WindowMaker skryté vyjma jakýchkoli otevřených oken a plovoucích nástrojových lišt. Nástrojová lišta View (Zobrazit) je automaticky umístěna v plovoucí poloze v horní části okna programu WindowMaker. V režimu Celá obrazovka zůstanou souřadnice klientské plochy stejné. Například bod nahoře vlevo je 0,0. Režim Celá obrazovka automaticky nastaví souřadnice po maximalizaci klientské plochy, skryje záhlaví okna a panel nabídek, upraví klientskou plochu pro přehledový režim zobrazení na celé obrazovce. Přepíná příkaz Snap to Grid (Přizpůsobit mřížce) v nabídce Arrange (Uspořádat) do stavu zapnuto a vypnuto pro zobrazení/skrytí viditelné mřížky používané pro zarovnání objektů. Pracuje s příkazem Snap to Grid (Přizpůsobit mřížce) v nabídce Arrange (Uspořádat). - 38 - Není-li vybrána volba Snap to Grid (Přizpůsobit mřížce) v dialogovém okně WindowMaker Properties (Vlastnosti programu WindowMaker), tento nástroj není funkční. Přepíná příkaz Ruler (Pravítko) v nabídce View (Zobrazit) do stavu zapnuto a vypnuto pro zobrazení/skrytí pravítka. Více informací o pravítku je uvedeno v oddíle "Pravítko programu WindowMaker". Nástrojová lišta Arrange (Uspořádat) Nástrojová lišta Arrange (Uspořádat) je sestavena z nástrojů, které provádějí většinu příkazů obsažených v nabídce Arrange (Uspořádat): V následující tabulce je každý nástroj stručně popsán: Nástroj Popis Provádí příkaz Align Left (Zarovnat vlevo) v podnabídce Uspořádat/Zarovnat. Zarovná levý okraj všech vybraných objektů s levým okrajem vybraného objektu umístěného nejvíce vlevo. Provádí příkaz Align Center (Zarovnat na střed) v podnabídce Uspořádat/Zarovnat. Zarovná svislou osu všech vybraných objektů se svislou osou skupiny všech vybraných objektů. Provádí příkaz Align Right (Zarovnat doprava) v podnabídce Uspořádat/Zarovnat. Zarovná pravý okraj všech vybraných objektů s pravým okrajem vybraného objektu umístěného nejvíce vpravo. Provádí příkaz Align Top (Zarovnat nahoru) v podnabídce Uspořádat/Zarovnat. Zarovná horní okraj všech vybraných objektů s horním okrajem vybraného objektu umístěného nejvíce nahoře. Provádí příkaz Align Middle (Zarovnat doprostřed) v podnabídce Uspořádat/Zarovnat. Zarovná vodorovnou osu všech vybraných objektů s vodorovnou osou skupiny všech vybraných objektů. Provádí příkaz Align Bottom (Zarovnat dolů) v podnabídce Uspořádat/Zarovnat. Zarovná spodní okraj všech vybraných objektů se spodním okrajem nejspodnějšího vybraného objektu. Provádí příkaz Align Centerpoints (Zarovnat středy) v podnabídce Uspořádat/Zarovnat. Zarovná střed všech vybraných objektů se středem skupiny včech zvolených objektů. Provede příkaz Send to Back (Přenést do pozadí) v nabídce Arrange (Uspořádat) pro umístění všech zvolených objektů za všechny objekty, které nejsou zvoleny. Provede příkaz Bring to Front (Přenést do popředí) v nabídce Arrange (Uspořádat) pro umístění všech vybraných objektů před všechny objekty, které nejsou vybrány. Provede příkaz Space Horizontal (Rozmístit vodorovně) - 39 - v nabídce Arrange (Uspořádat) pro rovnoměrné rozmístění všech vybraných objektů vodorovně mezi vybranými objekty umístěnými zcela vlevo a zcela vpravo. Provede příkaz Space Vertical (Rozmístit svisle) v nabídce Arrange (Uspořádat) pro rovnoměrné rozmístění všech vybraných objektů svisle mezi vybranými objekty umístěnými zcela nahoře a zcela dole. Provede příkaz Make Symbol (Vytvořit symbol) v nabídce Arrange (Uspořádat) pro sdružení složených objektů do jediné jednotky nazývané symbol. Provede příkaz Break Symbol (Rozložit symbol) v nabídce Arrange (Uspořádat) pro rozpojení symbolu na jednotlivé komponenty. Provede příkaz Make Cell (Vytvořit buňku) v nabídce Arrange (Uspořádat) pro sdružení složených objektů do jediné jednotky nazývané buňka. Když se sdruží buňky, každá buňka zůstane zachována, tedy když se složená buňka rozloží, obnoví se původní buňky. Provede příkaz Break Cell (Rozložit buňku) v nabídce Arrange (Uspořádat) pro rozložení vybrané buňky. Když se sdruží buňky, každá buňka zůstane zachována, tedy když se složená buňka rozloží, obnoví se původní buňky. Provede příkaz Rotate Clockwise (Otočit doprava) v nabídce Arrange (Uspořádat) pro otočení vybraných objektů o 90 stupňů ve směru chodu hodinových ručiček. Provede příkaz Rotate CounterClockwise (Otočit doleva) v nabídce Arrange (Uspořádat) pro otočení vybraných objektů o 90 stupňů ve směru proti chodu hodinových ručiček. Provede příkaz Flip Horizontal (Překlopit vodorovně) v nabídce Arrange (Uspořádat) pro překlopení vybraných objektů podle vodorovné osy. Provede příkaz Flip Vertical (Překlopit svisle) v nabídce Arrange (Uspořádat) pro překlopení vybraných objektů podle svislé osy. Zapne příkaz Reshape Object (Upravit tvar objektu) v nabídce Edit (Úpravy) pro úpravu tvaru polygonu nebo lomené čáry. Pravítko programu WindowMaker Pravítko programu WindowMaker můžete použít pro přesné vyrovnání objektů ve Vašich oknech. Malé vertikální značky jsou od sebe vzdáleny 5 pixelů. Střední vertikální značky jsou od sebe vzdáleny 10 pixelů. Očíslované velké vertikální značky jsou od sebe vzdáleny 50 pixelů. Například: Přírůstky vzdálenosti 10 a 50 pixelů na pravítku odpovídají vzdálenosti v pixelech, o kterou se vybraný objekt přesune, když držíte klávesu SHIFT nebo CTRL a stisknete klávesu se šipkami nahoru, dolů, doprava nebo doleva. - 40 - Pokud například chcete přesunout objekt najednou o 10 pixelů, držte stisknutou klávesu SHIFT a přitom stisknete klávesu se šipkami. Pro přesunutí objektu najednou o 50 pixelů, držte stisknutou klávesu CTRL a přitom stisknete klávesu se šipkami. TIP Když vyberete objekt a stisknete pouze klávesu se šipkami, objekt se přesune o 1 pixel. Tyto vlastnosti jsou výhodné tehdy, když potřebujete provést jemné nastavení vyrovnání a umístění objektů. Více informací o použití kláves se šipkami najdete v oddíle "Přesun objektů pomocí kláves se šipkami." Zobrazení/skrytí pravítka ¾ 1. V nabídce View (Zobrazit) klepněte na Ruler (Pravítko) nebo klepněte na nástroj pravítka v nabídce View (Zobrazit). 2. Opakujte krok jedna pro skrytí pravítka. Stavový řádek programu WindowMaker Pokud vyberete v okně objekt, ve stavovém řádku programu WindowMaker se zobrazí souřadnice X a Y levého horního rohu objektu a šířka a výška objektu v pixelech. Například: Pokud vyberete složené objekty, ve stavovém řádku se zobrazí souřadnici levého okraje objektu (X) umístěného nejvíce vlevo a souřadnice horního okraj objektu (Y) umístěného nejvíce nahoře. Pro celou skupinu je také zobrazena šířka a výška. Například: Pokud klepnete na prázdnou plochu okna, ve stavovém řádku se zobrazí souřadnice X a Y aktuálního umístění kurzoru v okně. Například: ¾ Zobrazení/skrytí stavového řádku 1. V nabídce View (Zobrazit ) klepněte na Status Bar (Stavový řádek). 2. Opakujte krok jedna pro skrytí stavového řádku. Nástrojová lišta Pan and Zoom (Ruka a lupa) Nástrojová lišta Pan and Zoom (Ruka a Lupa) je ukotvitelná, přemístitelná nástrojová lišta, kterou je možné zobrazit nebo skrýt podle nastavení v nabídce View (Zobrazit). Nástrojová lišta Pan and Zoom (Ruka a Lupa) Vám umožní: • Zoom in (Přiblížit), zobrazit větší detaily • Zoom out (Oddálit), zobrazit větší celek • Návrat k normálnímu, výchozímu nastavení zobrazení • Vybrat specifickou oblast, na kterou chcete přiblížit pohled pomocí nástroje Rubber Band Zoom (Laso pro označení oblasti zobrazené lupou) - 41 - • Přesunout zorné pole pomocí Pan (Ruky) na jinou oblast a pomocí Zoom (Lupy) pohled na danou oblast přiblížit či oddálit podle zadaných procent (relativní zmenšení či zvětšení zorného pole). Lupa Vám umožní bližší pohled na prvky, které právě editujete tak, že budou požadované body přesně zarovnány, nebo Vám umožní určit, zda jsou jednotlivé prvky v okně InTouch umístěny přesně. Posouvání zorného pole rukou a změna velikosti zorného pole lupou Vám umožňuje provádět komplexní a podrobné úkony při kreslení. Ve výchozím nastavení je nástrojová lišta Pan and Zoom (Ruka a lupa) umístěna při dolním okraji okna WindowMaker na jeho pravé straně. Nástrojovou lištu Pan and Zoom (Ruka a lupa) je možné nechat jako plovoucí na libovolném místě pracovní plochy nebo ji ukotvit na jiném místě sestavy nástrojových lišt podél okrajů okna. Nástrojová lišta vypadá následovně: Ikony nástrojové lišty Pan and Zoom (Ruka a lupa) V následující tabulce je každý nástroj lišty Pan and Zoom (Ruka a lupa) označený ikonou stručně popsán. Nástroj Popis Zoom out (Oddálit) – oddálí pohled zobrazení editační plochy na nejbližší přednastavenou hodnotu. Zvětší rozsah zorného pole zpět na 100% (tj. oddálí lupu), pokud se použije po příkazu Zoom In (Přiblížit). Zoom in (Přiblížit) – přiblíží pohled zobrazení pracovní plochy na nejbližší přednastavenou hodnotu. Zmenší rozsah zorného pole (tj. přiblíží lupu) až na 500% původního výchozího nastavení. Zoom Normal (Normální Lupa) – vrátí pohled (ZVĚTŠENÍ) na výchozí nastavení velikosti (100%) a změní pohled osy x,y na body (0,0). Rubber Band Zoom (Laso pro označení oblasti zobrazené lupou) – vybere požadovanou oblast okna WindowMaker pro detailní zobrazení lupou. Nástroj Rubber Band Zoom umožňuje přiblížení lupy až na 500% výchozí hodnoty základního zobrazení. Show / Hide Thumbnail (Zobraz / skryj náhled) – zobrazí nebo skryje okno náhledu. Náhled poskytuje přehled o tom, jak jsou prvky ve Vašem okně uspořádány. Upravte velikost obdélníku pro Zoom (Přiblížit či oddálit lupu) nebo obdélník přetáhněte na jiné místo pomocí nástroje Pan (Ruka), přesunutím zorného pole na jinou oblast při nezměněné lupě. - 42 - Pan (Ruka) - přesune zorné pole okna WindowMaker na jinou oblast, nahoru, dolů, vlevo nebo vpravo. Zoom Fine Adjustment (Jemné nastavení lupy) – Zobrazuje aktuální nastavení lupy. Po klepnutí na šipku zvolte přednastavenou relativní velikost zorného pole zobrazeného lupou v % nebo hodnotu zadejte z klávesnice a potvrďte stiskem klávesy Enter. Minimální hodnota relativní velikosti zorného pole je 100% a maximální hodnota relativní velikosti je 500%. Hodnota „Open Window Width“ (celá šířka otevřeného okna) zobrazí celé otevřené okno (nebo sadu oken) tak, aby WindowMaker zobrazil celý obsah okna (celou využitou plochu). Použití Thumbnail Window (Náhledového okna) jako nástroje Pan and Zoom (Ruka a Lupa) Thumbnail window (Náhledového okno) můžete zobrazit nebo skrýt klepnutím na . Okno poskytuje přehled o tom, která část pracovní plochy je zobrazena na tlačítko displeji. Červený obdélník představuje oblast právě zobrazenou na obrazovce. Abyste zobrazili jinou oblast, přetáhněte obdélník na jiné místo okna náhledu. Klepněte na jiné místo okna náhledu, abyste přesunuli obdélník na tuto oblast. Pro změnu úrovně zvětšení či zmenšení lupy, změňte velikost obdélníku. Zobrazení náhledu zobrazuje objekty, u kterých není možné pohled přiblížit lupou jako bílý obdélník (viz dále). Použití kolečka myši jako nástroje Pan and Zoom (Ruka a Lupa) Pokud je Vaše myš vybavena kolečkem, můžete stisknout klávesu Ctrl a zároveň otáčet kolečkem, abyste změnili úroveň zvětšení či zmenšení lupy (tj. nastavili zobrazení pracovní plochy ve větším detailu nebo naopak ve větším celku). Pro přiblížení lupy, podržte stisknutou klávesu Ctrl a otáčejte kolečkem myši směrem od sebe. Pro oddálení lupy, podržte stisknutou klávesu Ctrl a otáčejte kolečkem myši směrem k sobě. Při pohybu myši, v několika místech kolečko „zaskočí“. V každém z těchto míst se změní úroveň přiblížení/oddálení lupy o 20%.Můžete také přesunout kurzor myši do okna InTouch a kolečko myši stisknout, abyste mohli měnit zobrazení zorného pole uvnitř vlastního okna. Když kolečko myši stisknete, objeví se ikona se čtyřmi šipkami. Teď můžete pohybovat myší tak, abyste přesunuli zorného pole zobrazené na obrazovce na jinou oblast, stejně jako nástrojem Pan (Ruka). Omezení nástrojů Pan and Zoom (Ruka a Lupa) Nástroje Pan and Zoom (Ruka a Lupa) nemají vliv na zobrazení následujících ovládacích prvků: • ActiveX controls (Ovládací prvky ActiveX) • The Distributed Alarm Object (Distribuované alarmové objekty) - 43 - • The 16 Pen Trend (16ti perový trend) • SPC Pro Objects (Objekty SPC Pro) Všechny ovládací prvky používané ve Windows, jako např. Text Box, Check Box, List Box, Combo Box a objekty Radio Group. Poznámka: Pokud se nalézá jeden z těchto ovládacích prků ve viditelné oblasti, když je nastavena úroveň zvětšení lupy větší než 100%, zobrazí se místo něj na obrazovce v oblasti, kde je ovládací prvek umístěn, obdélník s bílou barvou výplně a s černým okrajem. Každý z těchto ovládacích prvků má v programu InTouch přiřazené jméno ovládacího prvku. Jméno se zobrazuje v obdélníku na středu viditelné části tohoto obdélníku. Některé grafické symboly, které jsou k dispozici v předkonfigurovaných objektech, budou při nastavení lupy 200% a větším vypadat zkresleně. Barevná paleta programu WindowMaker Paleta programu WindowMaker podporuje až 16,7 miliónů barev. (Podpora barev je omezena pouze schopností Vaší grafické karty.) Paleta Vám implicitně nabízí široký rozsah volby barev. Můžete si však vytvořit Vaše vlastní uživatelské palety. Vaše uživatelské palety lze načíst do barevné palety programu WindowMaker nebo z barevné palety exportovat. Použití standardní barevné palety Barevná paleta programu WindowMaker se používá pro definici barvev statických nebo dynamických vlastností čar, obdélníků, zaoblených obdélníků, elips, lomených čar, polygonů a textu. Používá se také pro volbu barvy pozadí Vašich oken a průhledné barvy bitmap, která Vám umožní vidět i objekty za bitmapami. Více informací o transparentních bitmapách je uvedeno v kapitole 2, "Použití programu WindowMaker". Barevná paleta se zobrazí, jakmile klepnete na barevný čtverec v dialogovém okně nebo klepněte na jeden z nástrojů barev pro definici barvy čáry, výplně nebo textu vybraného objektu. ¾ Použití standardní barevné palety 1. Volba standardní barvy se provádí klepnutím na barvu, kterou chcete použít v sekci Standard Palette (Standardní paleta). (Barevná paleta se zavře a použije se zvolená barva.) - 44 - 2. Volba jedné z 32 klasických barev programu InTouch (barvy palety před verzí 7.0 programu InTouch) se provádí klepnutím na >> v pravém rohu. Vytvoření uživatelské barevné palety Barevná paleta programu WindowMaker Vám umožní definovat uživatelské barvy a přidat je do Vaší palety. Umožní Vám také importovat palety vytvořené v jiných aplikacích systému Windows a přidat je do standardní palety. Můžete také exportovat Vaše uživatelské palety do jiných aplikací systému Windows. ¾ Vytvoření uživatelské barvy 1. Otevřete barevnou paletu. 2. Klepněte pravým tlačítkem myši na jeden z prázdných čtverců v sekci Custom Palette (Uživatelská paleta) ve spodní části barevné palety. Objeví se následující nabídka. 3. Klepněte na Edit Custom Color (Editovat uživatelskou barvu). Zobrazí se dialogové okno Add a Color (Přidat barvu). - 45 - 4. Klepněte kdekoli v barevné ploše a použijte posuvník na pravé straně dialogového okna pro nastavení atributů barvy. Hue, Sat, Lum (Odstín, sytost, světlost) Kombinace odstínu, sytosti a světlosti lze použít pro definici jakékoli barvy. Sytost je hodnota barevné palety, kde 0 je červená, 60 je žlutá, 120 je zelená, 180 je azurová, 200 je purpurová a 240 je modrá. Sytost je množství barvy ve stanoveném odstínu až do maxima 240. Světlost je světlost barvy. Změníte-li kteroukoli z těchto hodnot, přizpůsobí se červené, zelené a modré stupnice. Nejsnadnějším způsobem pro experimentování s různými barvami je stisknout a podržet tlačítko myši a potom přesunovat kurzor po barevné matrici. Red, Green, Blue (Červená, zelená, modrá) Kombinaci úrovní červené, zelené a modré barvy lze použít pro definici jakékoli barvy. Výsledek změny těchto hodnot můžete vidět na barevné ploše. Změníte-li tyto hodnoty, přizpůsobí se hodnoty odstínu, sytosti a světlosti. Pokud definujete barvu pomocí Hue, Sat, Lum (Odstínu, Sytosti, Světlosti) nebo pomocí stupnic Red, Green, Blue (Červená, Zelená, Modrá), barva se zobrazí v polích Color|Solid (Barva|Plné zabarvení) pro ujištění, že jste definovali požadovanou barvu. Levé pole Color (Barva) zobrazuje množství bílé a černé barvy ve Vámi stanovené barvě. Pravé pole Solid (Plné zabarvení) Vám zobrazuje, jak bude barva vypadat, pokud zvolíte 100% barvy bez bílé a černé. Pro nastavení barvy použijte posuvník na pravé straně dialogového okna. Pro stanovení požadavku 100 % barvy bez žádné bílé a černé barvy, stiskněte klávesy ALT + O. 5. Klepněte na OK. Zvolená barva se přidá do čtverce, na který jste původně klepnuli v barevné paletě. - 46 - ¾ Volba uživatelské barvy pomocí nástroje savý papír 1. Otevřete barevnou paletu. 2. Klepněte pravým tlačítkem myši na prázdné čtverce v sekci Custom Palette (Uživatelská paleta) ve spodní části barevné palety. Objeví se následující nabídka. 3. Klepněte na nástroj savý papír, poté klepněte na barvu, kterou chcete přidat do sekce Custom Palette (Uživatelská paleta). Můžete zvolit jakoukoli barvu v okně programu WindowMaker nebo zcela mimo program WindowMaker. Použijete tuto funkci, když vytváříte průhledné bitmapy. Více informací o vytváření průhledných bitmap je uvedeno v kapitole 2, "Použití programu WindowMaker". Kontextové nabídky Program InTouch podporuje funkci pravého tlačítka myši pro zobrazení nabídek často používaných příkazů pro okna a grafické objekty. Kontextové nabídky obsahují příkazy, které lze použít pro zvolený text v dialogovém okně, textovém poli, v proměnné animačních propojení nebo ve výrazovém rámečku nebo v okně QuickScript, kde jsou také podporovány. Místo použití standardních nabídek pro nalezení příkazu, který chcete použít, můžete jednoduše klepnout pravým tlačítkem myši v okně, objektu, v dialogovém okně, textovém poli nebo ve skupinách a v jejich členech v Aplikačním průzkumníku. TIP ¾ Vypnutí funkce pravého tlačítka myši se provádí přidáním řádku oldrightmousebehavior=1 do Vašeho souboru INTOUCH.INI. Přístup k operativní nabídce okna 1. Klepněte pravým tlačítkem myši na prázdnou plochu okna. Objeví se následující nabídka. - 47 - 2. ¾ Klepněte na příkaz, který chcete v nabídce použít. (Příkazy, které nelze použít pro aktuální stav okna, nebudou aktivní.) Přístup k operativní nabídce grafického objektu 1. Klepněte pravým tlačítkem myši na objekt v okně. Objeví se následující nabídka. 2. Klepněte na příkaz, který chcete v nabídce použít. (Příkazy, které nelze použít pro aktuální stav objektu, nebudou aktivní.) TIP ¾ Pokud existuje pro příkaz "podnabídka", zobrazí se šipka. Pro volbu příkazu v podnabídce, ukažte na příkaz v původní nabídce aktivované pravým tlačítkem myši, potom klepněte na příkaz, který chcete v podnabídce použít pro objekt. Přístup k operativní nabídce dialogového okna 1. Klepněte v kterémkoli dialogovém okně programu WindowMaker pravým tlačítkem myši na textové pole. Objeví se následující nabídka. - 48 - 2. Klepněte na příkaz, který chcete použít pro zvolený text. (Příkazy, které nelze použít pro aktuální stav textu, nebudou aktivní.) Příkaz Select All (Vybrat vše) se stane aktivní, když je vybrán částečný nebo žádný text.) ¾ Přístup k operativní nabídce plovoucí nástrojové lišty 1. Klepněte pravým tlačítkem myši na záhlaví plovoucí nástrojové lišty. Objeví se následující nabídka. 2. Klepněte na příkaz v nabídce, který chcete použít pro nástrojovou lištu. Společné vlastnosti dialogových oken Při otevírání, ukládání, zavírání, mazání nebo kopírování okna (oken) pomocí příkazů v nabídce File (Soubor) v programu WindowMaker budete používat dialogová okna, která jsou si velmi podobná a mají mnoho společných vlastností. Abychom se vyhnuli zbytečnému opakování v postupech popisujících provedení těchto akcí, uvedeme v tomto oddílu společné vlastnosti takových dialogových oken. Klepnete-li pravým tlačítkem myši na prázdnou plochu otevřeného okna nebo klepnete-li v nabídce File (Soubor) na příkazy k otevření, uložení, vymazání nebo uložení pod názvem, objeví se implicitně příslušné dialogové okno zvoleného příkazu zobrazené jako seznam. To znamená, že názvy všech oken, pro které je možné pro zvolený příkaz použít, se objeví v souvislém seznamu. Například: - 49 - TIP Jestliže počet názvů oken přesáhne výchozí rozsah seznamu, objeví se vodorovný posuvník. Klepněte na Details (Podrobnosti) pro změnu zobrazení ze seznamu na podrobné zobrazení. - 50 - Zvolíte-li podrobné zobrazení, okna a jejich podrobnosti se zobrazí ve vícesloupcovém formátu. Zobrazené podrobnosti zahrnují komentáře, které jste pro okno zadali v dialogovém okně Window Properties (Vlastnosti okna), dále typ okna, datum a čas provedení poslední úpravy. Například: V podrobném zobrazení můžete zvolit jakékoli neotevřené okno klepnutím na kteroukoli část jeho řádku, tedy nejen v zaškrtávacím políčku. (Celý řádek se zvýrazní.) Na zvolené okno lze klepnout podruhé a volba se tak zruší. Jestliže počet názvů oken přesáhne výchozí rozsah seznamu, objeví se také svislý posuvník. Chcete-li seznam seřadit podle nějaké vlastnosti, klepněte na záhlaví sloupce této vlastnosti. Řazení při podrobném zobrazení: Sloupec Řazení Name (Název) Abecedně Comments (Komentář) Abecedně Type (Typ) Overlay (překryvné), Replace (nahrazení) nebo Popup (v popředí) Last Modified (Poslední úprava) Od nejstaršího údaje datum/čas (nahoře) k nejnovějšímu datu/času (dole) TIP Při každém klepnutí na záhlaví sloupce se pořadí seznamu přepne ze vzestupného na sestupné a naopak. Pokud je seznam například aktuálně seřazen vzestupně a klepnete na záhlaví sloupce, seznam pro zvolený sloupec se seřadí sestupně. - 51 - Chcete-li vrátit seznam do výchozího zobrazení, klepněte na malé pole zcela vlevo v záhlaví sloupce. Pokud chcete změnit šířku sloupců, umístěte kurzor na svislé čáry, které jednotlivé sloupce oddělují. Jakmile se kurzor změní na proužek „I“, klepnutím a tažením upravíte sloupec na požadovanou šířku. Pro rychlou automatickou změnu velikosti sloupce klepněte dvakrát na pravou dělicí svislou čáru sloupce. Chcete-li zvolené okno (zvolená okna) otevřít, klepněte na OK. Stornování Vašeho výběru a zavření dialogového okna se provádí klepnutím na Cancel (Storno). Pokud chcete vrátit zobrazení dialogového okna na zobrazení seznamu, klepněte na List (Seznam). Jestliže chcete zvolit všechna okna v seznamu, klepněte na Select All (Vybrat vše). Zrušení výběru všech oken v seznamu se provádí klepnutím na Clear All (Zrušit vše). Různé zkrácené příkazy myši Dvojitým klepnutím na objekt nebo symbol se automaticky provede příkaz Animation Links (Animační propojení) (v nabídce Special) se vybraným objektem nebo symbolem. Více informací o animačních propojeních je uvedeno v kapitole 7, "Vytváření animačních propojení". Dvojitým klepnutím na prázdné vstupní pole výrazu v dialogovém okně definice propojení se aktivuje Tag Browser (prohlížeč proměnných), kde jsou uvedeny všechny proměnné definované v Tagname Dictionary (Databázi proměnných). Dvojitým klepnutím za tečku (.) ve vstupním poli výrazu v dialogovém okně definice propojení se zobrazí dialogové okno Choose field name (Vybrat název pole) obsahující celkový seznam všech atributů proměnných (.fields). Dvojitým klepnutím na proměnnou ve výrazu animačního propojení se otevře definice proměnné v Tagname Dictionary (Databázi proměnných). Dvojitým klepnutím na název nadřazené šablony SuperTag ve výrazu animačního propojení se otevře dialogové okno vlastností Tagname Dictionary (Databáze proměnných) pro proměnné prvků SuperTag. Další informace o funkci Tag Browser (Prohlížeč proměnných) a atributech proměnných najdete v kapitole 6, "Tagname Dictionary (Databáze proměnných)". Klepnutím pravého tlačítka myši na prázdnou plochu otevřeného okna, textové pole v kterémkoli dialogovém okně programu WindowMaker nebo klepnutím na grafický objekt se zobrazí nabídka s příkazy, které lze použít pro okno, text nebo objekt. Klepnutím pravým tlačítkem myši na záhlaví plovoucí nástrojové lišty se zobrazí nabídka příkazů, které můžete použít pro nástrojovou lištu. - 52 - Přesouvání objektů pomocí kláves se šipkami V programu WindowMaker můžete použít kláves se šipkami nahoru, dolů, doleva a doprava pro přesunutí vybraného objektu nebo skupiny objektů o jeden pixel ve směru stisknuté klávesy se šipkami. Tato vlastnost může být výhodná tehdy, když potřebujete provést jemné nastavení vyrovnání a umístění. Pro přesunutí objektu najednou o 10 pixelů, držte stisknutou klávesu SHIFT a přitom stisknete klávesu se šipkami. Pro přesunutí objektu najednou o 50 pixelů, držte stisknutou klávesu CTRL a přitom stisknete klávesu se šipkami. Používáte-li klávesy se šipkami v programu WindowViewer, použije se pro přesun od jednoho objektu ke druhému speciální algoritmus. Klávesa se šipkou doleva například protne dráhu doleva v šířce odpovídající výšce vybraného objektu. Jestliže protne jakoukoli část jiného dotykového objektu v rámci své dráhy, tento objekt převezme střed jako aktuálně vybraný objekt. Pokud se nesetká z jiným dotykovým objektem, dráha obtéká okolo levého okraje obrazovky a snaží se protnout jiný objekt. Nesetká-li se s jiným objektem, zůstane originální objekt vybraný. Všechny klávesy se šipkami fungují stejným způsobem. Klávesy se šipkami nahoru a dolů používají šířku vybraného objektu pro šířku jejich drah. TIP Je-li Vám známo, že uživatel Vaší aplikace bude používat pouze kurzorové klávesy pro navigaci v oknech Vaší aplikace, měli byste pečlivě naplánovat umístění dotykových objektů v okně pro zajištění, že mají protínající se dráhy. V programu WindowViewer lze klávesu TAB také použít pro přechod mezi dotykovými objekty v okně. (Příkaz tabulace však nelze zaručit.) Opatrným návrhem aplikace a pochopením, jak reagují klávesy se šipkami, můžete vytvořit aplikace, jež lze používat bez myši. Použití nápovědy programu WindowMaker Program WindowMaker podporuje kontextovou nápovědu následujícím způsobem: • Pro získání nápovědy k otevřenému dialogovému oknu stiskněte klávesu F1. Objeví se příslušný seznam témat nápovědy on-line. • Pro získání nápovědy k různým funkcím QuickScript, klepněte v editoru QuickScript na Help (Nápověda) nebo v nabídce Insert (Vložit) ukažte na Functions (Funkce) a potom klepněte na Help (Nápověda). Objeví se dialogové okno se seznamem všech dostupných funkcí QuickScript. Klepněte na funkci, pro kterou chcete získat nápovědu. Objeví se příslušný seznam témat nápovědy on-line pro funkci. • Pro získání informací o softwaru InTouch, například o používané verzi, Vašem sériovém čísle a datu platnosti Vaší licence atd., v nabídce programu WindowMaker Help (Nápověda) klepněte na About (O programu). Objeví se dialogové okno About InTouch (O programu InTouch). • Klepněte na View License (Zobrazit informace o licenci) pro spuštění utility zobrazení licence pro získání informací týkající se Vaší licence programu FactorySuite. - 53 - KAPITOLA 2 Použití programu WindowMaker Nastavením různým vlastností programů WindowMaker a WindowViewer můžete přizpůsobit funkčnost a konečný vzhled Vaší aplikace. Můžete například stanovit, které nabídky mají být dostupné v programu WindowViewer, můžete včlenit název firmy do záhlaví okna Vaší aplikace atd. Tato kapitola popisuje konfiguraci programu WindowMaker a WindowViewer, práci s okny programu WindowMaker, editaci a uspořádání grafických objektů , nastavení vzhledu vývojového prostředí, nastavení obrazovkových klávesnic a instalaci a použití předkonfigurovaných objektů a ovládacích prvků ActiveX. V poslední části této kapitoly je popsáno použití aplikace Log Viewer. Obsah • Jednoduché objekty • Komplexní objekty • Přizpůsobení Vašeho vývojového prostředí • Práce s okny programu WindowMaker • Práce s grafickými objekty • Uspořádání objektů ve Vašem okně • Práce s obrázky a bitmapami • Práce s textovými objekty • Práce s čárami a obrysovými čárami • Práce s předkonfigurovanými objekty • Předkonfigurované objekty ovládácích prvků prostředí OS Windows • Práce s ovládacími prvky ActiveX • Přizpůsobení Vašeho prostředí běhu programu • Obrazovkové klávesnice v programu InTouch • Vzhled a ovládání programu ve stylu Microsoft Windows XP • Zapnutí filtru klávesnice • Spuštění programu WindowViewer jako NT služby • Použití aplikace Log Viewer - 54 - Jednoduché objekty Program WindowMaker má čtyři základní typy jednoduchých objektů; čáry, tvary s výplní, text a tlačítka. Každý z těchto jednoduchých typů objektů má atributy, které mají vliv na jejich vzhled. Tyto atributy zahrnují barvu čáry, barvu výplně, výšku, šířku, orientaci atd. a mohou být buď statické nebo dynamické. Statický atribut zůstává bez změny během chodu aplikace. Dynamický atribut je propojen s hodnotou výrazu, takže změna hodnoty výrazu má za následek změnu atributu. Například barva výplně nějakého objektu může být propojena s hodnotou diskrétního výrazu. Na základě stavu výrazu bude výplň mít jednu barvu, když je výraz pravdivý a jinou barvu, když je nepravdivý. Většinu atributů jednoduchých objektů lze nastavit jako dynamické. Objekt může mít více než jeden dynamický atribut. Dynamické atributy lze neomezeně kombinovat pro dosažení požadovaného výsledku. V následující tabulce jsou stručně popsány typy jednoduchých objektů programu WindowMaker: Objekt Popis Čára Čárový objekt je vytvořen z jednoho nebo více čárových segmentů v závislosti na typu čáry. Barva je jediný atribut čáry, který můžete animovat. Šířka a styl nelze animovat. Jsou to jednoduše přiřazené implicitní atributy. Tvary s výplní Tvary s výplní jsou dvourozměrné objekty vytvořené z uzavřené vnitřní plochy obklopené čarou. Tvary s výplní jsou například obdélníky, zaoblené obdélníky, kružnice, elipsy a polygony. Atributy tvaru s výplní jsou: barva čáry, šířka čáry, styl čáry, barva výplně, percentuální barevná výplň, výška, šířka, umístění, viditelnost, orientace a velikost. Text Text je objekt vytvořený z řetězce znaků na jednom řádku. Atributy textového objektu jsou: typ písma, velikost, barva, styl (tučný podtržení, kurzíva), zarovnání, viditelnost a umístění. Tlačítka Trojrozměrná tlačítka lze vytvořit v libovolné velikosti použitím nástroje Button (Tlačítko) na nástrojové liště Draw Object (Kreslení) programu WindowMaker. Výchozí "textový" řetězec na ploše tlačítka se edituje pomocí příkazu Substitute Strings (Nahradit řetězce) v nabídce Special. Tlačítkům lze přiřadit mnoho typů propojení, jako jsou skripty akcí, klávesové skripty, vstupní a výstupní propojení analogových nebo diskrétních hodnot. Pokud je přiřazeno k tlačítku vstupní nebo výstupní propojení, hodnota se zobrazí na tlačítku jako textový řetězec. - 55 - Komplexní objekty Kromě jednoduchých objektů podporuje InTouch také komplexní objekty, které jsou značně odlišné. Následující tabulka popisuje stručně typy komplexních objektů programu WindowMaker: Objekt Popis Bitmapa Nástroj Bitmap (Bitmapa) se používá pro vkládání bitmap do Vaší aplikace. Jakmile je bitmapa vložena do okna aplikace, lze bitmapu otáčet, lze ji definovat s průhlednou barvou, takže může být umístěna v plovoucí poloze nad jinými objekty. Trendy Existují dva nástroje trendů: jeden je určen pro tvorbu trendů, které zobrazují aktuální (reálná) data a druhý je určen pro tvorbu trendů, které zobrazují historická data (vyhledaná ze souborů historických dat). Jak reálné, tak historické trendy lze konfigurovat pro zobrazení grafických znázornění několika proměnných v časovém intervalu. Symboly Symbol je kombinací jednoduchých objektů (čar, tvarů s výplněmi a textu), se kterými se zachází jako s jediným objektem. Jakákoli změna atributu provedená na symbolu, ať se jedná o změnu statického atributu v programu WindowMaker nebo změnu dynamického atributu v programu WindowViewer, ovlivní všechny objekty sdružené do symbolu. Vytvoříte-li například symbol čerpadla ze dvou kružnic a dvou obdélníků a potom definujete Color Link (animace barvy) k symbolu, barva výplně se použije pro všechny čtyři objekty. Podobně volba Fill Color (Barva výplně) v programu WindowMaker změní také barvu výplně všech objektů složek. Objekty složek symbolu může mít různé hodnoty pro stejný statický atribut, jestliže tyto atributy byly odlišné předtím, než objekty byly složeny na symbol a nebyly měněny poté, co se staly symbolem. Symboly nemohou obsahovat bitmapy, tlačítka, buňky, alarmové objekty nebo trendy. Objekt Popis Buňky Buňka je seskupení dvou nebo více objektů, symbolů nebo jiných buněk, které jsou navzájem spojeny do tvaru jediné jednotky. Buňky zachovávají pevný prostorový vztah mezi jejich jednotlivými grafickými prvky. Každá složka buňky může mít svá vlastní animační propojení. Buňky se používají pro vytvoření virtuálních zařízení, jako je např. posuvný ovládač. Buňka se vytvoří vybráním dvou nebo více objektů, symbolů, a/nebo buněk a potom provedením příkazu Make Cell (Vytvořit buňku) v nabídce Arrange (Uspořádat). Jakmile se sloučí seskupení objektů do buňky, jejich původní atrubuty, jako jsou barvy, velikosti, animační propojení atd., nelze měnit. Jediným způsobem změny vzhledu nebo činnosti buňky je její "rozdělení" pomocí příkazu Break Cell (Rozložit buňku) v nabídce Arrange (Uspořádat). - 56 - Atributy složek buňky se mění při běhu programu WindowViewer v závislosti na animačních propojeních. Buňky lze duplikovat, kopírovat, vkládat, zarovnávat, rozmísťovat atd. U buněk nelze měnit jejich velikost. Je nutno je rozložit, stanovit jejich rozměry a složit opět na buňku. Buňky jsou velmi výhodné při tvoření vícenásobných podobných zařízení, kterým jsou přiřazeny různé proměnné. Předkonfig urované objekty Předkonfigurované objekty Vám ušetří značnou dobu během vývoje aplikace. Snadno se používají a konfigurují. Pokud zvolíte předkonfigurovaný objekt a vložíte ho do okna a potom na něj dvakrát klepnete, zobrazí se jeho konfigurační dialogové okno a můžete provést jeho konfiguraci. Například v případě předkonfigurovaného objektu "posuvník" konfigurace zahrnuje položky, jako je proměnná které je měněna, minimální a maximální rozsah posuvníku, barva výplně atd. Jakmile se zadají požadované konfigurační informace, předkonfigurovaný objekt je připraven k použití. V případě použití předkonfigurovaných objektů neztratíte čas kreslením jednotlivých složek objektu nebo zadáváním rozsahů hodnot objektů nebo animací objektu. Poznámka: Zdatný programátor "C" může vytvořit uživatelské předkonfigurované objekty použitím Wonderware Extensibility Toolkit (Rozšiřující sady nástrojů). Tuto sada nástrojů můžete zakoupit u svého prodejce. Více informací o předkonfigurovaných objektech je uvedeno v oddíle "Práce s předkonfigurovanými objekty". Ovládací prvky ActiveX Program WindowMaker podporuje ovládací prvky ActiveX, které jsou v jejich nejjednodušší formě miniaplikací, jež ovlivňují Vaši aplikaci a „běží v jejím rámci“. Program WindowMaker podporuje všechny ovládací prvky ActiveX, které jsou součástí programů Wonderware FactorySuite, např. všechny ovládací prvky InTrack ActiveX. Program WindowMaker podporuje také ovládací prvky ActiveX třetích stran, jako jsou např. ovládací prvky instalované pomocí Office 97. Ovládací prvky ActiveX programu InTouch nainstalujte stejně jako jakýkoli jiný předkonfigurovaný objekt. Podle potřeby můžete přidat často používané ovládací prvky ActiveX do Vaší nástrojové lišty Wizards/ActiveX (Předkonfigurované objekty/ActiveX) programu WindowMaker. Pokud zvolíte ovládací prvek ActiveX a vložíte jej do okna a potom na něj dvakrát klepnete, zobrazí se jeho konfigurační dialogové okno. Konfigurujete-li ovládací prvek ActiveX, stanovíte jedinečný název ovládacího prvku pro odkazování na prvek ve skriptech (výchozí název se vytvoří při prvním přidání ovládacího prvku). Všechny ovládací prvky ActiveX mají přiřazené vlastnosti, metody a události. Vlastnost ovládacího prvku ActiveX můžete - 57 - připojit k proměnné odpovídajícího typu dat. Metody ActiveX mohou být spouštěny pomocí funkcí InTouch QuickScript. Událost ActiveX můžete přiřadit ke skriptu ActiveX Event (událost ActiveX), který se provede, když událost nastane. Jinými slovy, funkce InTouch QuickScript můžete použít pro manipulaci s událostmi ovládacího prvku, vyvolání metod ovládacího prvku a změny vlastností ovládacího prvku. Během chodu programu ovládají proměnné a skripty QuickScript, které definujete v programu WindowMaker, chování ovládacích prvků ActiveX. Přizpůsobení Vašeho vývojového prostředí Existuje mnoho vlastností, které můžete nastavit pro přizpůsobení programu WindowMaker. Například můžete přizpůsobit Váš text záhlaví okna aplikace tak, že do něj vložíte název firmy. Můžete nastavit vzdálenost pixelů mřížky atd. ¾ Nastavení vlastností programu WindowMaker 1. V nabídce Special (Speciální) ukažte na Configure (Konfigurovat) a potom klepněte na WindowMaker nebo v Application Explorer (Aplikačním průzkumníku) ve složce Configure (Konfigurovat) klepněte dvakrát na WindowMaker. Zobrazí se dialogové okno WindowMaker Properties (Vlastnosti programu WindowMaker) s aktivní kartou vlastností General (Obecné). TIP V Application Explorer (Aplikačním průzkumníku) můžete také ve složce Configure (Konfigurovat) klepnout pravým tlačítkem myši na WindowMaker a potom na Open (Otevřít). - 58 - TIP 2. Klepnete-li pravým tlačítkem myši na vstupní textová pole v libovolném dialogovém okně, objeví se nabídka s příkazy, které lze aplikovat na zvolený text. V poli Title Bar Text (Text záhlaví okna) napište název, který se má objevit v záhlaví okna aplikace při jejím běhu. Například: Firma ABC, Obraz APP1 Poznámka: Používáte-li "Licenci typu Consignment", titulkový pás nelze měnit. 3. Klepněte na Show Application Directory (Zobrazit adresář aplikace), pokud chcete vložit cestu k adresáři aplikace do záhlaví okna. Například: Firma ABC, Obraz APP1 - C:\DEMOAPP1 4. V poli Spacing (Vzájemná vzdálenost) napište počet pixelů, které mají definovat vzdálenost mezi souřadnicemi pro přizpůsobení k mřížce. 5. Zvolte Show Grid (Zobrazit mřížku), pokud chcete, aby mřížka ve Vašich oknech byla viditelná, když zapnete funkci "přizpůsobení k mřížce" v programu WindowMaker. TIP Nezvolíte-li Show Grid (Zobrazit mřížku), ve Vašich oknech nebude při zapnutí funkce přizpůsobení k mřížce viditelná žádná mřížka. Klepněte na nástroj Snap to Grid (Přizpůsobení k mřížce) na nástrojové liště View (Zobrazit) nebo klepněte v nabídce Arrange (Uspořádat) na Snap to Grid (Přizpůsobit mřížce) pro zapnutí a vypnutí funkce přizpůsobení k mřížce. Objekty se přizpůsobí k mřížce jejich horním levým rohem. Vyberete-li několik objektů, přizpůsobení se aplikuje na horní levý roh prvního objektu vybraného ve skupině. 6. Zvolte Show Tag Count (Zobrazit počet proměnných), pokud chcete zobrazit v panelu nabídek programu WindowMaker počet proměnných definovaných ve Vaší databázi proměnných. TIP Toto může být velmi užitečná informace, pokud vytváříte aplikaci s omezenou velikostí databáze proměnných. Poznámka: Zobrazení počtu proměnných má značný vliv na výkon databáze proměnných v programu WindowMaker. Zobrazený počet proměnných nezahrnuje odkazy na vzdálené proměnné. Pro zjištění počtu použití Vašich odkazů na vzdálené proměnné, proveďte příkaz Update Use Counts (Aktualizovat počet použití) v nabídce Special (Speciální). Jakmile systém dokončí aktualizaci počtu použití, zobrazí se následující dialogové okno. - 59 - Více informací o aktualizaci počtu použití je uvedeno v kapitole 6 "Tagname Dictionary (Databáze proměnných)": 7. Zvolte Close on Transfer to WindowViewer (Zavřít při přechodu do WindowViewer), pokud chcete, aby se program WindowMaker automaticky zavřel, když spustíte program WindowViewer. Poznámka: Pokud máte dostatek operační paměti a často přecházíte mezi programy WindowViewer a WindowMaker, neměla by se tato možnost volit. TIP 8. Když zvolíte tuto možnost, automaticky se zvolí také možnost Close WindowViewer (Zavřít WindowViewer) na kartě vlastností General (Obecné) v dialogovém okně WindowViewer Properties (Vlastnosti WindowViewer). Zvolte Enable Scrapbook Menu Items (Aktivovat položky nabídky Scrapbook), pokud kopírujete a vkládáte objekty mezi programem WindowMaker a Scrapbook+. Poznámka: Aby bylo možné použít tyto příkazy nabídky, musí být na Vašem počítači instalován program Windows Scrapbook+. Tato možnost se používá pro zajištění kompatibility se staršími verzemi InTouch. Není podporována programy FactorySuite, program Scrapbook+ není již prostřednictvím firmy Wonderware prodáván. 9. Zvolte Pick Through Hollow Objects (Vyběr skrz duté objekty), pokud chcete, abyste byli schopni volit objekty, které jsou za "dutými" objekty. TIP Zvolíte-li tuto možnost a potom nakreslíte čtyři čáry a spojíte je do rámečku okolo jiného objektu, můžete zvolit objekt v rámečku bez přenesení rámečku dozadu. 10. Zvolte Enable Fast Switch (Aktivovat rychlý přepínač), pokud chcete, aby se rychlý přepínač programů WindowMaker a WindowViewer zobrazil ve Vašem panelu nabídky obou programů. TIP Zvolíte-li tuto možnost, v programu WindowMaker je rychlý přepínač slovo Runtime (Chod programu) zobrazené v horním pravém rohu Vaší obrazovky. V programu WindowViewer je to slovo Development (Vývoj). Pro rychle přepnutí mezi oběma programy klepněte na tento rychlý přepínač. Poznámka: Používáte-li rychlý přepínač, program WindowMaker automaticky uloží všechny změny provedené ve všech otevřených oknech před spuštěním programu WindowViewer. 11. V poli Line Selection Precision (Přesnost výběru čáry) napište počet pixelů, při kterém bude Váš kurzor vzdálen od čáry a stále ji bude schopen zvolit. - 60 - TIP Ve většině případů by mělo být dostatečné výchozí nastavení 4. 12. V poli Levels of Undo (Úrovně návratu zpět) napište počet úrovní návratu zpět/provedést znovu, které chcete uložit. Můžete zadat až 25 úrovní. Napíšete-li hodnotu nula, funkce návratu zpět/provést znovu se vypne. Jedna úroveň představuje jednu akci. Paměti akcí návratu zpět a provést znovu jsou prázdné v okamžiku, když vytvoříte nové okno nebo otevřete existující okno. Obě paměti se vyprázdní, když okno uložíte. Více informací o funkci návratu zpět a provedení znovu je uvedeno v oddíle "Návrat úprav objektu". 14. Klepněte na OK. Poznámka: Po provedení modifikace jakéhokoli z těchto nastavení se musí restartovat program WindowMaker, aby se uplatnily změny. Práce s okny programu WindowMaker Vaše aplikace programu InTouch bude pravděpodobně obsahovat mnoho různých oken, která jste vytvořili pro zachycení Vašich grafických a textových objektů. Když vytvoříte nové okno v programu WindowMaker, budete vyzváni k definici určitých vlastností tohoto okna, jako je barva pozadí, název, poloha obrazovky atd. Můžete také vytvořit skripty QuickScript, které se provádějí při otvírání, zavírání nebo trvajícím zobrazení okna. Tento oddíl popisuje postupy, kterými se budete řídit při vytváření, otevírání, ukládání, zavírání, mazání a duplikaci oken. TIP Panel nástrojů General (Standardní) obsahuje nástroje, které můžete rychle použít pro provedení většiny příkazů pro okna v nabídce File (Soubor). TIP Pro rychlý přístup k různým příkazům, které lze použít pro okno, klepněte pravým tlačítkem myši na prázdnou plochu otevřeného okna a potom klepněte na příslušný příkaz v nabídce aktivované pravým tlačítkem myši. Například: - 61 - Vytvoření nového okna Vytvoření nového okna ¾ 1. Klepněte v nabídce File (Soubor) na New Window (Nové okno) nebo klepněte na nástroj New Window (Nové okno) na nástrojové liště General (Standardní). Objeví se dialogové okno Window Properties (Vlastnosti okna). TIP Pro rychlé vytvoření nového okna klepněte pravým tlačítkem myši v Application Explorer (Aplikačním průzkumníku) na Windows (Okna) a potom klepněte na New (Nové). Poznámka: Nastavení v tomto dialogovém okně bude implicitně zohledňovat nastavení při vytváření posledního okna nebo v případě volby tohoto příkazu, když je otevřené okno v programu WindowMaker, budou nastavení odpovídat nastavením aktivního okna. Jsou-li k aktivnímu oknu přiřazeny skripty okna, objeví se okno se zprávou s dotazem, zda chcete zkopírovat skripty okna do nového okna. TIP Klepnete-li pravým tlačítkem myši na vstupní textová pole v libovolném dialogovém okně, objeví se nabídka s příkazy, které lze aplikovat na zvolený text. 2. V poli Name (Název) zapište název, který se má objevit v titulkovém pásu nového okna. Název může mít délku až 32 znaků. Může zahrnovat vložené mezery, interpunkční znaménka a jakýkoli jiný znak na klávesnici vyjma uvozovek ("). 3. Do pole Comment (Komentář) napište jakékoli komentáře, které jsou spojeny s oknem (volitelná možnost). Tyto informace jsou jen pro dokumentační účely a aplikace je nevyužívá. 4. Klepněte na pole Window Color (Barva okna) pro výběr barvy pozadí okna. Objeví se barevná paleta: - 62 - TIP Nejsou-li požadované žádné změny, klepněte na aktuálně výbranou barvu nebo stiskněte klávesu esc pro zavření palety. Více informací o použití barevné palety je uvedeno v kapitole 1, "Prvky programu WindowMaker". 5. Klepněte na barvu, kterou chcete použít pro pozadí okna. 6. Zvolte Window Type (Typ okna), který chcete použít. Existují tři typy oken: Replace (Nahradit) Automaticky zavře jakékoli okno (okna), které protíná při zobrazení na obrazovce včetně typu Popup (Vždy nahoře) Overlay (Překrýt) Zobrazí se na horní ploše aktuálně zobrazeného okna (zobrazených oken) a může být větší než okno (okna), které překrývá. Když se zavře překrývající okno, objeví se znovu okno (okna), které bylo (která byla) skrytá za ním. Klepnutím na jakoukoli viditelnou část okna za překrývajícím oknem se přenese toto okno do popředí jako aktivní okno. Popup (Vždy nahoře) Podobné chování jako u překrývajícího okna vyjma toho, že vždy zůstane na horní ploše všech jiných otevřených oken (dokonce i v případě, že klepnete na jiné okno). Popup okna obvykle vyžadují odezvu od uživatele, aby se skryla. TIP Typ okna můžete změnit znovu otevřením dialogového okna Window Properties (Vlastnosti okna). Existují tři způsoby: Otevřete okno a potom klepněte v nabídce Windows (Okna) na Window Properties (Vlastnosti okna). V Aplikačním průzkumníku klepněte v položce Windows (Okna) pravým tlačítkem myši na název okna a potom klepněte na Properties (Vlastnosti). (Není-li okno při provádění příkazu otevřené, automaticky se otevře za dialogovým oknem.) Otevřete okno, klepněte na prázdnou plochu okna a potom klepněte na Window Properties (Vlastnosti okna). - 63 - 7. Zvolte Frame Style (Styl rámečku) pro okno. K dispozici jsou tři styly: Single (Jednoduchý) Double (Dvojitý) None (Žádný) 8. Okno s 3D rámečky, které může mít záhlaví okna a ovládací prvky velikosti. Okno s 3D rámečky, které nemá záhlaví okna a u něhož nelze změnit jeho velikost bez ovládacích prvků velikosti. Okno bez rámečku, u něhož nelze změnit velikost bez ovládacích prvků velikosti. (S ovládacími prvky velikosti se stane oknem s 3D rámečky, u něhož lze změnit velikost.) Zvolte Title Bar (Záhlaví okna), pokud chcete, aby okno mělo záhlaví. Záhlaví okna se také používá pro přesun okna klepnutím tlačítka myši na záhlaví a přesunem myši. Poznámka: Má-li Vaše okno záhlaví, nemůžete zvolit Double (Dvojitý) nebo None (Žádný) pro Frame Style (Styl rámečku). 9. Zvolte Size Controls (Ovládací prvky velikosti), pokud chcete, aby uživatel byl schopen změnit velikost okna v programu WindowMaker. 10. Ve skupině Dimensions (Rozměry) napište umístění v pixelech, které chcete pro každou ze souřadnic okna: X Location (Poloha X) Počet pixelů mezi levým okrajem návrhové plochy programu WindowMaker a levým okrajem právě definovaného okna. Y Location (Poloha Y) Počet pixelů mezi horním okrajem návrhové plochy programu WindowMaker a horním okrajem právě definovaného okna. Window Width (Šířka okna) Šířka okna v pixelech. Window Height (Výška okna) Operační systém Windows omezuje minimální šířku okna podle nastaveného typu monitoru. Například pro standardní VGA je minimum 102 pixelů. Výška okna v pixelech. Operační systém Windows omezuje minimální výšku okna podle nastaveného typu monitoru. Například pro standardní VGA je minimum 26 pixelů. Poznámka: Hodnoty v těchto polích jsou implicitně nastaveny na rozměry dříve vytvořeného okna. Hodnoty se také automaticky modifikují, když ručně změníte velikost oken v programu WindowMaker použitím rámečku okna. - 64 - 11. Klepněte na Scripts (Skripty) pro přístup k editoru Window Scripts (Skripty okna). Existují tři typy skriptů, které můžete použít pro okno: On Show Provede se jednou, když se okno zobrazí. (Při zobrazení) While Showing (V průběhu zobrazení) Provádí se neustále ve stanovené frekvenci během zobrazení okna. On Hide Provede se jednou, když se okno skryje. (Při skrytí) Poznámka: Připojíte-li nějaký skript okna k aktivnímu oknu a potom vytvoříte nové okno, skript(y) lze kopírovat z aktivního okna do nového okna. Zobrazí se dialogové okno s dotazem, zda chcete zkopírovat skript(y) okna. TIP Jestliže se později rozhodnete, že potřebujete připojit skript k otevřenému oknu, klepněte pravým tlačítkem myši na prázdnou plochu otevřeného okna a potom klepněte na Window Scripts (Skripty okna). Není-li okno otevřené, klepněte dvakrát v Aplikačním průzkumníku na Windows (Okna) pro zobrazení všech názvů oken. Klepněte pravým tlačítkem myši na název okna a potom klepněte na Window Scripts (Skripty okna). Více informací o vytváření skriptů okna je uvedeno v kapitole 8, "Vytváření skriptů QuickScript v programu InTouch". Otevírání oken Při vývoji Vaší aplikace můžete otevřít tolik oken, kolik umožní paměť Vašeho počítače. Otevření okna (oken) ¾ 1. Klepněte v nabídce File (Soubor) na Open Window (Otevřít okno) nebo klepněte na nástroj Open Window na nástrojové liště General (Standardní). Objeví se dialogové okno Windows to Open (Okna k otevření) obsahující názvy všech oken ve Vaší aplikaci. TIP 2. Klepněte na zaškrtávací políčko vedle názvu okna (oken), které chcete otevřít. TIP 3. Pro rychlé otevření jediného okna klepněte dvakrát v Aplikačním průzkumníku na Windows (Okna) pro otevření seznamu všech názvů oken ve Vaší aplikaci a potom klepněte dvakrát na název okna. Můžete také klepnout pravým tlačítkem myši na název okna a potom klepnout na Open (Otevřít). Implicitně budou všechna aktuálně otevřená okna již zaškrtnuta. Klepněte na OK pro zavření dialogového okna a otevření zvoleného okna (zvolených oken). - 65 - Ukládání oken Jakmile jste vytvořili okno, budete potřebovat je uložit předtím, než bude možno je zavřít a ukončit Vaši aplikaci. Uloží se také všechny grafické objekty, skripty QuickScript, vlastnosti atd. přiřazené k oknu. Uložení okna (oken) ¾ 1. Klepněte v nabídce File (Soubor) na Save Window (Uložit okno) nebo klepněte na nástroj Save Window na nástrojové liště General (Standardní). Objeví se dialogové okno Windows to Save (Okna k uložení) obsahující názvy všech oken, která je třeba uložit. TIP Pro rychlé uložení jednoho okna klepněte pravým tlačítkem myši v Aplikačním průzkumníku na název okna a potom klepněte na Save (Uložit). Můžete také klepnout na prázdnou plochu okna a potom klepnout na Save Window (Uložit okno). Pro rychlé uložení všech aktuálně otevřených oken klepněte na nástroj oken Save All (Uložit vše) na nástrojové liště General (Standardní) nebo na příkaz Save All (Uložit vše) v nabídce File (Soubor). 2. Klepněte na zaškrtávací políčko vedle názvu okna (oken), které chcete uložit. 3. Klepněte na OK pro zavření dialogového okna a uložení zvoleného okna (zvolených oken). Zavírání oken Pokoušíte-li se zavřít okno (okna), které (která) byla modifikována od posledního uložení, budete vyzváni před zavřením okna programem WindowMaker k uložení provedených změn. Zavření okna (oken) ¾ 1. Klepněte v nabídce File (Soubor) na Close Window (Zavřít okno) nebo klepněte na nástroj Close Window na nástrojové liště General (Standardní). Objeví se dialogové okno Windows to Close (Okna k zavření) obsahující názvy všech aktuálně otevřených oken. TIP Pro rychlé zavření jednoho okna klepněte pravým tlačítkem myši v Aplikačním průzkumníku na název okna a potom klepněte na Close (Zavřít). Můžete také klepnout na prázdnou plochu okna a potom klepnout na Close Window (Zavřít okno). 2. Klepněte na zaškrtávací políčko vedle názvu okna (oken), které chcete zavřít. 3. Klepněte na OK pro zavření dialogového okna a zavření zvoleného okno (zvolených oken). - 66 - Mazání oken ¾ Vymazání okna (oken) 1. V nabídce File (Soubor) klepněte na Delete Window (Vymazat okno). Objeví se dialogové okno Windows to Delete (Okna k vymazání) obsahující názvy všech aktuálně otevřených oken. TIP Pro rychlé vymazání jednoho okna klepněte pravým tlačítkem myši v Aplikačním průzkumníku na název okna a potom klepněte na Delete (Vymazat). Můžete také klepnout na prázdnou plochu okna a potom klepnout na Delete Window (Vymazat okno). 2. Klepněte na zaškrtávací políčko vedle názvu okna (oken), které (která) chcete vymazat. 3. Klepněte na OK pro zavření dialogového okna a vymazání zvoleného okno (zvolených oken). Poznámka: Vymazaná okna nelze obnovit, pokud jste je nezálohovali. Budete vyzváni k potvrzení vymazání každého zvoleného názvu okna. Duplikace okna Pokud chcete vytvořit duplikát existujícího okna, musí být požadované okno otevřené. ¾ Duplikace okna 1. V nabídce File (Soubor) klepněte na Save Window As (Uložit okno jako). Objeví se dialogové okno Window to save under new name (Okno uložit pod novým názvem) obsahující názvy všech aktuálně otevřených oken. TIP Pro rychlou duplikaci okna klepněte pravým tlačítkem myši v Aplikačním průzkumníku na název okna a potom klepněte na Save As (Uložit jako). Můžete také klepnout na prázdnou plochu okna a potom klepnout na Save Window As (Uložit okno jako). 2. Klepněte na zaškrtávací políčko vedle názvu okna (oken), které (která) chcete duplikovat. (Lze zvolit pouze jeden název okna.) Objeví se dialogové okno Save "Window Name" As… (Uložit "název okna" jako…). 3. Do pole New Name (Nový název) zapište platný název nového okna. 4. Klepněte na OK pro zavření dialogového okna a vytvoření duplikátu okna. - 67 - Export oken Exportování oken je možné použít pro případ udržby aplikace, popřípadě když potřebujete rychle vytvořit větší množství vzdálených odkazů na jinou aplikaci programu InTouch. Jestliže chcete exportovat okna a následně okna importovat v jiné aplikaci InTouch, použijte příkaz Export (Exportovat) , který naleznete v menu pod položkou File (Soubor). Poznámka: V případě, že budete kopírovat okna z jedné aplikace do druhé jiným způsobem, například pomocí souborového manažeru nebo pomocí průzkumníka operačního systému Windows, může nastat narušení databáze proměnných v aplikaci programu InTouch! Pro exportování oken 1. Zavřete otevřená okna ve Vaší aplikaci InTouch. 2. V menu File (Soubor) klepněte na položku Export Window (Exportovat okno) 3. Vyberte cestu ke složce (adresáři) do kterého chcete soubory exportovat a klepněte na tlačítko OK. 4. Objeví se dialogové okno Windows Export (Okna k exportování) - 68 - 5. Zatrhněte okna, která chcete exportovat. 6. Klepněte na tlačítko OK, okna budou exportována do zadané složky. Poznámka: Pokud budete exportovat okna, všechny objekty a animační propojení umístěné v tomto okně budou vyexportovány. Proměnné, které jsou v tomto okně, budou nahrazeny takzvanými Placeholder tagnames (Zakomentované proměnné). Placeholders Tagnames (Zakomentované proměnné) jsou vytvořeny proto, aby program InTouch předcházel problémům, které mohou vzniknout tím, že cílová aplikace programu InTouch nemusí obsahovat stejné proměnné jako původní aplikace. Více informací o Placeholders tagnames (Zakomentované proměnné) naleznete v kapitole 6 - Databáze proměnných. Import oken Import oken z aplikace programu InTouch do Vaší aktuální aplikace Vám může ušetřit značnou dobu vývoje. Poskytuje Vám také rychlou a snadnou metodu pro tvorbu odkazů na vzdálené proměnné. Umožní Vám znovu použít Vaše dříve vytvořená okna, objekty a skripty oken. Když přesouváte okna z jedné aplikace programu InTouch do druhé, musíte použít příkaz Import v nabídce File (Soubor). Více informací o odkazech na vzdálené proměnné je uvedeno v kapitole 6 - Databáze proměnných. Poznámka: Provádíte-li přesun souborů oken programu InTouch pomocí jakékoli jiné metody, jako jsou např. příkazy přesunu programu File Manager (správce souborů) nebo Windows Explorer (Průzkumník systému Windows), můžete poškodit databázi proměnných Vaší aplikace! ¾ Import okna nebo skriptu QuickScript 1. Zavřete všechna okna ve Vaší aktuální aplikaci. - 69 - 2. V nabídce File (Soubor) klepněte na Import. Objeví se dialogové okno Browse for Folder (Procházet složky). 3. Najděte a zvolte adresář (složku) aplikace obsahující okna, která chcete importovat, a potom klepněte na OK. - 70 - 4. Objeví se následující dialogové okno. 5. Zvolte položku (položky), které chcete importovat, a potom klepněte na Select (Vybrat). Zobrazí se Vám dialogové okno pro výběr oknen nebo skriptů QuickScript, které chcete importovat. 6. Jakmile jste zvolili okno (okna) nebo skript (skripty) QuickScript, které chcete importovat, klepněte na Import. Systém automaticky zahájí import vybraných položek do Vaší aktuální aplikace. Poznámka: Při importu skriptu okna musíte importovat celé okno. Když importujete okno, všechny objekty a animační propojení se importují s oknem. Proměnné přiřazené objektům v okně (a proměnné používané v importovaném skriptu) se však zkonvertují na zástupné proměnné ("placeholder"). Proměnné v importovaném skriptu nebo okně se automaticky převedou na zástupné proměnné tak, že jsou přidány tři znaky na začátek jména každé proměnné. Když se například importuje diskrétní proměnná, jméno této proměnné získá předponu se třemi znaky ?d:. Importuje-li se proměnná s délkou jména 30, 31 nebo 32 znaků, vždy se přidají tři znaky na začátek jména každé proměnné. Přidání těchto tří znaků však nezkrátí délku jména existující proměnné. Například pro zástupné proměnné se délka jména proměnné 32 znaků zvýší na 35 znaků. Tato tři dodatečná místa jsou vyhrazena pouze pro zástupné proměnné. Toto zvětšení délky jména proměnné není podporováno pro standardní proměnné. Více informací o konverzi zástupných proměnných je uvedeno v kapitole 6 - Databáze proměnných. Poznámka: Pokud importujete okno z aplikace, která obsahuje prvky SuperTags, importují se do nové aplikace pouze instance SuperTag skutečně používané v importovaném okně. Neimportuje se celá struktura šablony SuperTag. Pokud má aplikace například stovky definovaných proměnných prvků SuperTag a v importovaném okně se používá pouze 50 těchto prvků, importuje se pouze těchto 50 prvků. - 71 - Práce s grafickými objekty Jakmile jste vytvořili nové okno ve Vaší aplikaci, můžete do něj vložit grafické objekty. Program WindowMaker Vám poskytuje množství nástrojů pro úpravy a uspořádání různých grafických objektů, které chcete nakreslit a vložit do Vašich oken. Tento oddíl popisuje postupy, které se používají pro provádění různých editačních funkcí na Vašem grafickém objektu. Objekt Popis Nástrojová lišta Draw Object (Kreslení) Obsahuje grafické kreslicí nástroje, které použijete pro vytváření grafických objektů ve Vašich oknech. Nástrojová lišta View (Zobrazení) Obsahuje nástroj Ruler (Pravítko), který můžete použít pro zobrazení pravítka jako pomůcku při vyrovnávání Vašich grafických objektů ve Vašich oknech. Tato nástrojová lišta obsahuje také nástroje, které použijete pro skrytí nebo zobrazení Application Explorer (Aplikačního průzkumníka), nástrojových lišt nebo viditelné mřížky ve Vašich oknech. Obsahuje také nástroj pro přepínání do a z režimu celé obrazovky. Nástrojová lišta General (Standardní) Nástrojová lišta Format (Formát) Obsahují nástroje, na které můžete klepnout pro rychlé použití příkazů v nabídce Edit (Úpravy) a v nabídce Text. Nástrojová lišta Arrange (Uspořádat) Obsahuje nástroje, na které můžete klepnout pro rychlé použití příkazů vyrovnání v nabídce Arrange (Uspořádat). Nástrojová lišta Wizards/ActiveX (Předkonfigurované objekty/ActiveX) Tuto nástrojovou lištu můžete také přizpůsobit přidáním jakýchkoliv předkonfigurovaných objektů nebo ovládacích prvků ActiveX, které opakovaně používáte. Více informací o nástrojových lištách programu WindowMaker je uvedeno v kapitole 1, "Prvky programu WindowMaker". - 72 - TIP Pokud klepnete pravým tlačítkem myši na objekt, objeví se nabídka zobrazující platné příkazy, které můžete použít pro zvolený objekt. Například: Poznámka: Příkazy v nabídkách aktivovaných pravým tlačítkem myši se budou lišit. Jsou závislé na typu zvoleného objektu. Volba a změna velikosti objektů Jestliže klepnete na objekt po jeho nakreslení, zobrazí se okolo něj několik malých obdélníků. Tyto obdélníky se nazývají "úchyty". Tyto úchyty se používají pro změnu velikosti a/nebo tvaru objektu. Pojem "vybraný" je klíčovou charakteristikou objektu vzhledem k úpravám grafiky v programu WindowMaker. Přítomnost "úchytů" okolo objektu indikuje, že objekt je "vybraný". Výběr objektu se provádí přímým klepnutím na něj. Klepnutím na prázdnou plochu okna se zruší výběr jakýchkoli aktuálně vybraných objektů v tomto okně. Všeobecně platí, že jakýkoli prováděný příkaz se použije pro všechny vybrané objekty, jeli příkaz pro objekt platný. ¾ Změna velikosti objektu 1. Vyberte objekt a potom umístěte bod kurzoru ve tvaru šipky na střed „úchytu". - 73 - 2. 3. Stiskněte a držte stisknuté levé tlačítko myši a přitom táhněte úchyt za účelem buď zvětšení nebo zmenšení objektu: Objekt můžete zvětšit/zmenšit v obou směrech v závislosti na tom, který zvolíte úchyt. Použijete-li pro změnu velikosti objektu jeden ze čtyřech rohových úchytů, změní se velikost objektu současně ve svislém a vodorovném směru. Uvolněte tlačítko myši. Objekt se překreslí ve své nové velikosti: Není-li velikost správná klepněte v nabídce Edit (Úpravy) na Undo (Zpět) nebo klepněte na nástroj Undo na nástrojové liště General (Standardní) a zkuste provést akci znovu. Více informací o nástrojových lištách programu WindowMaker je uvedeno v kapitole 1, "Prvky programu WindowMaker". Více informací o funkci návrat zpět a provést znovu je uvedeno v oddíle "Návrat úprav objektu". Výběr všech objektů v okně Výběr všech objektů v aktivním okně se provádí klepnutím v nabídce Edit (Úpravy) na Select All (Vybrat vše) nebo stisknutím klávesy F2 nebo klepnutím pravého tlačítka myši do prázdné plochy otevřeného okna a potom klepnutím na Select All (Vybrat vše). Výběr několika grafických objektů Výběr několika objektů se provádí výběrem prvního objektu, pak držte stisknutou klávesu SHIFT a přitom klepněte na jiné objekty, které chcete vybrat. Pro zrušení výběru určitého objektu ze skupiny vybraných objektů, přičemž je vybráno více objektů, stiskněte a držte stisknutou klávesu SHIFT a klepněte na objekty, u kterých chcete výběr zrušit. Výběr skupiny objektů Přesuňte kurzor na prázdnou plochu Vašeho okna. Stiskněte tlačítko a myši a táhněte myš. Objeví se tečkovaný obdélník výběru s kurzorem ve tvaru kříže. Táhněte myš tak daleko, až jste obklopíte všechny objekty, které chcete vybrat. Uvolněte tlačítko myši. Vyberou se všechny objekty, které byly umístěny zcela v obdélníku. - 74 - Zrušení výběru skupiny zvolených objektů Pokud držíte stisknutou klávesu Shift a přitom vytvoříte obdélník výběru, zruší se výběr všech obdélníkem obklopených objektů. Tato technika se může také použít pro začátek obdélníkového výběru v horní části jiného objektu. Jestliže držíte stisknutou klávesu Shift a přitom klepnete levým tlačítkem myši, objekt pod kurzorem se při pohybu kurzoru nepřesune. Místo toho se vytáhne pravoúhelník výběru. Návrat úprav objektu Program WindowMaker sleduje změny editace a formátování, které provádíte. Program WindowMaker můžete nakonfigurovat tak, aby podporoval až 25 úrovní návratu zpět/provést znovu. Funkci návrat zpět/provést znovu můžete také vypnout nastavením úrovně návratu zpět na nulu (0). Program WindowMaker je implicitně nastaven na 10 úrovní návratu zpět, kde jedna úroveň představuje jednu akci. Poznámka: Paměti návratu zpět a provedení znovu jsou prázdné v okamžiku, když vytvoříte nové okno nebo otevřete existující okno. Obě paměti se vymažou, když okno uložíte. Více informací o funkci návrat zpět/provést znovu je uvedeno v oddíle "Přizpůsobení Vašeho vývojového prostředí". Příkazy Undo (Zpět) a Redo (Provést znovu) jsou umístěny v nabídce Edit (Úpravy). K těmto příkazům je možný také přístup klepnutím pravého tlačítka myši na objekt. Příkazy jsou dynamické a změní se na základě poslední operace, pro kterou je lze použít. Pokud například přemístíte objekt a potom se rozhodnete vrátit jej do jeho původní polohy v okně, klepněte pravým tlačítkem myši na prázdnou plochu okna a klepněte na Undo Move (Přesun zpět) nebo v nabídce Edit (Úpravy) klepněte na Undo Move (Přesun zpět). Nástroje Undo (Zpět) a Redo (Provést znovu) jsou umístěny na nástrojové liště General (Standardní). Funkce zpět a provést znovu použijete pro vrácení akcí nebo příkazů, které jste použili pro objekt. Vrátit zpět a provést znovu můžete použít pro následující akce a příkazy: Akce/Příkaz Podporováno Základní Vytvořit, Vybrat, Zrušit výběr, Přesunout a Změnit velikost objektu Čára, Výplň, Text a Barva okna, Přesunout okno a Velikost okna Úpravy Duplikovat, Vyjmout, Kopírovat, Vložit, Vymazat Vložit bitmapu a Nastavit bitmapu – Původní velikost Vybrat vše, Vyjmout propojení, Kopírovat propojení, Vložit propojení, Vymazat propojení, Zvětšit poloměr, Zmenšit poloměr, Upravit tvar objektu, Přidat bod, Vymazat bod Uspořádání Přenést dozadu, Přenést dopředu, Zarovnat (všechny příkazy) Rozmístit vodorovně, Rozmístit svisle, Otočit doprava, Otočit doleva, Překlopit vodorovně, Překlopit svisle, Vytvořit symbol, Rozložit symbol, Vytvořit buňku, Rozložit buňku Text Všechny operace (velikost, styl, rozteč, zarovnání) Čára Všechny operace (šířka a styl) - 75 - Speciální Animační propojení (dvojité klepnutí na objekt), Nahradit textové řetězce Duplikace objektů ¾ Opětovné kreslení naposled nakresleného objektu 1. Nakreslete objekt. 2. Klepněte pravým tlačítkem myši na objekt a potom klepněte na Repeat Last Object (Opakovat poslední objekt). 3. Klepněte levým tlačítkem myši a potom nakreslete znovu stejný objekt. Duplikace objektu ¾ 1. Vyberte objekt (objekty), který (které) chcete duplikovat. 2. Klepněte v nabídce Edit (Úpravy) na Duplicate (Duplikovat) nebo klepněte na nástroj Duplicate Selection(s) (Duplikovat výběr/výběry) na nástrojové liště General (Standardní). Více informací o nástrojových lištách programu WindowMaker je uvedeno v kapitole 1, "Prvky programu WindowMaker". TIP Pro rychlou duplikaci objektu (objektů) klepněte pravým tlačítkem myši na objekt a potom na Duplicate (Duplikovat). Přesunete-li duplikovaný objekt (duplikované objekty) bez zrušení jejich výběru a provede opět jejich duplikaci, druhá duplikace (a všechny následné) se automaticky provedou s posunem o stejnou vzdálenost, o kterou se posunul od originálu první duplikát. Například: Tento postup můžete opakovat tolikrát, kolikrát je třeba. - 76 - Vyjmutí objektů do schránky systému Windows Vyjmutí objektu ¾ 1. Vyberte objekt (objekty), které chcete vyjmout. 2. Klepněte v nabídce Edit (Úpravy) na Cut (Vyjmout) nebo klepněte na nástroj Cut to Clipboard (Vyjmout do schránky) na nástrojové liště General (Standardní). TIP Pro rychlé vyjmutí objektu (objektů) klepněte pravým tlačítkem myši na objekt a potom na Cut (Vyjmout). Když vyjmete objekt, vymaže se z Vašeho okna a zkopíruje se do schránky systému Windows. Zkopírují se také atributy objektu a animační propojení. Kopírování objektů do schránky systému Windows Kopírování objektu ¾ 1. Vyberte objekt (objekty), které chcete kopírovat. 2. Klepněte v nabídce Edit (Úpravy) na Copy (Kopírovat) nebo klepněte na nástroj Copy to Clipboard (Kopírovat do schránky) na nástrojové liště General (Standardní) . Více informací o nástrojových lištách programu WindowMaker je uvedeno v kapitole 1, "Prvky programu WindowMaker". TIP Pro rychlé kopírování objektu (objektů) klepněte pravým tlačítkem myši na objekt a potom na Copy (Kopírovat). Poznámka: Když zkopírujete objekt, nevymaže se z Vašeho okna. Zkopíruje se do schránky systému Windows. Zkopírují se také atributy objektu a animační propojení. - 77 - Vložení objektů ze schránky systému Windows Vložení objektů ze schránky systému Windows ¾ 1. Zkopírujte nebo vyjměte objekt: 2. Klepněte v nabídce Edit (Úpravy) na Paste (Vložit) nebo klepněte na nástroj Paste from Clipboard (Vložit ze schránky) na nástrojové liště General (Standardní). TIP Pro rychlé vkládání zkopírovaného objektu klepněte pravým tlačítkem myši na objekt a potom na Paste (Vložit). 3. Kurzor se změní na rohový symbol. 4. Držte stisknuté levé tlačítko myši, zobrazí se tečkovaný obdélník velikosti zkopírovaného objektu. Přetáhněte obdélník do polohy v okně, kde chcete vložit objekt: 5. Uvolněte tlačítko myši pro vložení objektu: TIP Všechny vložené objekty zůstanou po vložení zvolené a můžete je přesunout pro nastavení jejich polohy. Poznámka: Když zkopírujete nebo vyjmete objekt do schránky systému Windows, zkopírují se také všechny atributy objekty a animační propojení. Pokud následně vložíte objekt do okna, všechny atributy objektu zůstanou zachovány. - 78 - Vyjmutí a vložení animačních propojení objektu Vyrovnávací paměť vkládání animačních propojení v programu WindowMaker je dočasná oblast paměti, v níž jsou uložena animační propojení, která jste vyjmuli nebo zkopírovali z objektu. (Vyrovnávací paměť ukládá pouze animační propojení poslední akce vyjmutí nebo kopírování.) Animační propojení uložené ve vyrovnávací paměti můžete vložit do kteréhokoli objektu nebo symbolu. Pokud vyberete několik objektů, animační propojení se vloží do všech vybraných objektů. Nemá-li vložené animační propojení použitelnou hodnotu vůči objektu, např. animační propojení barvy čáry vůči textovému objektu, propojení se nevloží. Více informací o animačních propojeních je uvedeno v kapitole 7, "Vytváření animačních propojení". ¾ Vyjmutí, kopírování, vložení a vymazání propojení 1. Zvolte objekt, pro který chcete použít příkaz animačního propojení. 2. V nabídce Edit (Úpravy) ukažte na Links (Animační propojení) a potom klepněte na příslušný příkaz. TIP Pro rychlý přístup k příkazům animační propojení klepněte pravým tlačítkem myši na objekt, potom ukažte na Links (Animační propojení) a potom klepněte na příslušný příkaz animačního propojení. Mazání objektů ¾ Vymazání objektu 1. Vyberte objekt (objekty), které chcete vymazat. 2. V nabídce Edit (Úpravy) klepněte na Erase (Vymazat). TIP Pro rychlé vymazání objektu (objektů) klepněte pravým tlačítkem myši na objekt a potom na Erase (Vymazat) nebo zvolte objekt a stiskněte klávesu del. Poznámka: Vymazané objekty se nezkopírují do schránky systému Windows. Zvětšení nebo zmenšení poloměru zaobleného objektu Poloměr rohu jakéhokoli objektu, který jste nakreslili pomocí nástroje Rounded Rectangle (Zaoblený obdélník), můžete zvětšit a/nebo zmenšit. ¾ Zvětšení (nebo zmenšení) poloměru zaobleného objektu 1. Zvolte objekt. 2. V nabídce Edit (Úpravy) klepněte na Enlarge Radius (Zvětšit poloměr) (nebo Reduce Radius (Zmenšit poloměr)). - 79 - TIP 3. TIP Pro rychlé zvětšení nebo zmenšení poloměru klepněte pravým tlačítkem myši na zaoblený objekt a potom klepněte na příslušný příkaz. Opakujte příkaz tolikrát, až se poloměr zvětší (nebo zmenší) na požadovanou hodnotu. Například: Můžete také použít klávesových zkratek Shift+Plus, (+ symbol na numerické klávesnici) pro zvětšení poloměru nebo Shift+Minus, (- symbol na numerické klávesnici) pro zmenšení poloměru. Kdykoli, když stisknete tyto kombinace kláves, provede se příkaz. Pokud držíte klávesy stisknuté, příkaz se provádí nepřetržitě, až se dosáhne maximálního možného zvětšení nebo zmenšení poloměru zaoblení objektu. Změna tvaru lomené čáry nebo polygonu Nastavení tvaru lomených čar nebo polygonů ¾ 1. TIP 2. Zvolte objekt lomené čáry nebo polygonu. Každý "bod", který jste definovali klepnutím myši při kreslení objektu, se zobrazí jako "úchyt". Klepněte v nabídce Edit (Úpravy) na Reshape (Změnit tvar) nebo klepněte na nástroj Reshape Object (Změnit tvar objektu) na nástrojové liště Arrange (Uspořádat). TIP 3. Pro rychlou změnu tvaru lomené čáry nebo polygonu klepněte pravým tlačítkem myši na objekt a potom klepněte na příkaz Reshape Object (Změnit tvar objektu). Změna tvaru objektu se provádí uchopením úchytu a tažením do požadované polohy: - 80 - 4. ¾ Když uvolníte tlačítko myši, objekt se překreslí do nového tvaru: Přidání nebo vymazání "bodů" na polygonu nebo lomené čáře 1. Zvolte objekt lomené čáry nebo polygonu. 2. Klepněte v nabídce Edit (Úpravy) na Add Point (Přidat bod) nebo Del Point (Vymazat bod) a potom klepněte na místo objektu, kde chcete přidat nový bod, nebo klepněte na bod, který chcete vymazat. TIP Pro rychlé přidání (nebo vymazání) bodů na lomené čáře nebo polygonu klepněte pravým tlačítkem myši na objekt a potom klepněte na příslušný příkaz. - 81 - Uspořádání objektů ve Vašem okně Program WindowMaker Vám poskytuje množství nástrojů, které použijete pro uspořádání Vašich objektů ve Vašich oknech. Tento oddíl popisuje různé nástroje pro uspořádání, které jsou dostupné v programu WindowMaker. TIP Nástrojová lišta Arrange (Uspořádat) obsahuje nástroje, které můžete rychle použít pro provedení většiny příkazů v nabídce Arrange (Uspořádat). Například: Více informací o nástrojové liště Arrange (Uspořádat) je uvedeno v kapitole 1, "Prvky programu WindowMaker". Zarovnání objektů Objekty můžete zarovnat podle jejich levých nebo pravých okrajů, horních nebo spodních okrajů, středů, svislých nebo vodorovných os. ¾ Zarovnání všech zvolených objektů 1. Vyberte objekt (objekty). 2. V nabídce Arrange (Uspořádat) ukažte na Zarovnat a potom klepněte na příslušný příkaz zarovnání. Zvolený objekt (zvolené objekty) se zarovnají podle Vašeho výběru. Následující příklady znázorňují chování každého příkazu zarovnání: Align Left (Zarovnat doleva) zarovná levý okraj všech vybraných objektů s levým okrajem vybraného objektu umístěného ve skupině nejvíce vlevo: TIP Pro rychlé zarovnání objektů vyberte objekty a potom klepněte na příslušný příkaz v nástrojové liště Arrange (Uspořádat). Více informací o nástrojových lištách je uvedeno v kapitole 1, "Prvky programu WindowMaker". - 82 - Align Center (Zarovnat na střed) zarovná svislou osu všech vybraných objektů se svislou osou skupiny všech vybraných objektů Align Right (Zarovnat doprava) zarovná pravý okraj všech zvolených objektů s pravým okrajem zvoleného objektu umístěného ve skupině nejvíce vpravo: Align Top (Zarovnat nahoru) zarovná horní okraj všech vybraných objektů s horním okrajem vybraného objektu umístěného nejvíce nahoře.: Align Middle (Zarovnat doprostřed) zarovná vodorovnou osu všech vybraných objektů s vodorovnou osou skupiny všech vybraných objektů: - 83 - Align Bottom (Zarovnat dolů) zarovná spodní okraj všech vybraných objektů se spodním okrajem nejspodnějšího vybraného objektu: Align Centerpoints (Zarovnat středové body) zarovná střed všech vybraných objektů se středem skupiny včech vybraných objektů: Rozvrstvení objektů Objekty můžete rozmístit do vrstev ve Vašem okně umístěním objektů před nebo za jiný objekt. Umístění objektu za jiný objekt ¾ 1. Vyberte objekt (objekty). 2. V nabídce Arrange (Uspořádat) klepněte na Send to Back (Přenést dozadu) nebo klepněte na nástroj Send to Back (Přenést dozadu) na nástrojové liště Arrange - 84 - (Uspořádat). Vybraný objekt (vybrané objekty) se znovu vykreslí za objektem (objekty) nevybraným (nevybranými) ve Vašem okně: TIP Pro rychlé přenesení objektu (objektů) dozadu klepněte pravým tlačítkem myši na objekt, potom ukažte na Front/Back (Dopředu/Dozadu) a pak klepněte na Send to Back (Přenést dozadu). Umístění objektu před jiný objekt ¾ 1. Vyberte objekt (objekty). 2. V nabídce Arrange (Uspořádat) klepněte na Bring to Front (Přenést dopředu) nebo klepněte na nástroj Send to Front (Přenést dopředu) na nástrojové liště Arrange (Uspořádat). Vybraný objekt (vybrané objekty) se znovu vykreslí před objektem (objekty) nevybraným (nevybranými) ve Vašem okně: Všimněte si, že objekt nejvíce vzadu se přenesl do popředí. TIP Pro rychlé přenesení objektu (objektů) dopředu klepněte pravým tlačítkem myši na objekt, potom ukažte na Front/Back (Dopředu/Dozadu) a pak klepněte na Send to Front (Přenést dopředu). Úprava vodorovné a svislé vzájemné vzdálenosti Objekty můžete také rovnoměrně rozmístit ve vodorovném směru mezi vybraným objektem nejvíce vlevo a vybraným objektem nejvíce vpravo. Můžete také ovládat svislou vzdálenost mezi vybraným objektem umístěným zcela nahoře a vybraným objektem zcela dole. ¾ Rovnoměrné vodorovné a svislé rozmístění objektů 1. Vyberte objekt (objekty). - 85 - 2. V nabídce Arrange (Uspořádat) klepněte na Space Horizontally (Rozmístit vodorovně) (nebo Space Vertically (Rozmístit svisle) nebo klepněte na příslušný nástroj na nástrojové liště Arrange (Uspořádat). Vybraný objekt (vybrané objekty) se znovu vykreslí rovnoměrně mezi nejvzdálenějšími objekty. Například: Více informací o nástrojových lištách programu WindowMaker je uvedeno v kapitole 1, "Prvky programu WindowMaker". Otáčení objektů V programu WindowMaker můžete otáčet většinu objektů včetně bitmap, obrázků JPEG, PCX a TGA a textových objektů. Objekty lze otáčet ve směru chodu hodinových ručiček nebo proti směru chodu hodinových ručiček o 360 stupňů v krocích po 90 stupních (90 stupňů, 180 stupňů, 270 stupňů a 360 stupňů). Jakákoli animační propojení přiřazená k objektu se otáčejí s objektem. Buňky však nelze otáčet. Můžete ale otáčet symboly. Poznámka: Otáčení objektů v programu WindowMaker nemá nic společného s dynamickým otáčením objektů při běhu programu. Objekty se otáčejí v programu WindowViewer podle definice animačního propojení Orientation (Orientace). Textové objekty nelze v programu WindowViewer otáčet. Bitmapy a obrázky lze však otáčet přiřazením animačního propojení Orientation (Orientace). ¾ Otáčení vybraných objektů o 90 stupňů 1. Vyberte objekt (objekty). 2. Klepněte v nabídce Arrange (Uspořádat) na Rotate Clockwise (Otočit doprava) (nebo Rotate CounterClockwise(Otočit doleva)). Vybraný objekt (vybrané objekty) se otočí o 90 stupňů ve zvoleném směru: - 86 - Pro otočení objektu o 180 stupňů opakujte tento postup. Pro otočení objektu o 270 stupňů proveďte tento postup dvakrát atd. TIP Pro rychlé otočení objektu klepněte pravým tlačítkem myši na objekt, potom ukažte na Rotate/Flip (Otočit/Překlopit) a pak klepněte na příslušný příkaz. Zrcadlení objektů Většinu objektů programu WindowMaker včetně bitmap, obrázků JPEG PCX a TGA můžete překlopit vodorovně nebo svisle (text nelze překlopit, lze jej pouze otočit). Když překlopíte objekt, převedete jej na vodorovný nebo svislý zrcadlový obrázek. Animační propojení přiřazená k objektu se překlopí společně s objektem. Překlopení zvoleného objektu ¾ 1. Vyberte objekt (objekty). 2. Klepněte v nabídce Arrange (Uspořádat) na Flip Horizontal (Překlopit vodorovně) (nebo Flip Vertical (Překlopit svisle) nebo zvolte příslušný nástroj na nástrojové liště Arrange (Uspořádat). Vybraný objekt (vybrané objekty) se překlopí. Například: TIP Pro rychlé překlopení objektu (objektů) klepněte pravým tlačítkem myši na objekt, potom ukažte na Rotate/Flip (Otočit/Překlopit) a pak klepněte na příslušný příkaz. Více informací o nástrojových lištách je uvedeno v kapitole 1, "Prvky programu WindowMaker". Vytváření buněk a symbolů Několik objektů můžete kombinovat do dvou rozdílných typů samostatných jednotek buněk a symbolů. Několik buněk lze zkombinovat do jediné buňky. Buňky jsou objekty, které zachovávají pevný prostorový vztah mezi jednotlivými grafickými prvky. Jednotlivé komponenty v buňce, vyjma jiné buňky, lze animovat. U buněk nelze měnit velikost, ani nelze buňkám přiřadit animační propojení. Animační propojení lze však přiřadit symbolům a symboly lze začlenit do buňky. Všechna animační propojení spojená se symbolem nebo objektem(objekty) v buňce se nezmění. U atributů objektů jako jsou text, typ písma, tloušťka čáry, poloměr a relativní poloha v buňce, nelze měnit velikost až do doby, než je buňka rozložena na jednotlivé komponenty. TIP Dvojitým klepnutím na buňku se zobrazí dialogové okno Substitute Tagnames (Nahradit proměnné) (ne dialogové okno volby animačních propojení jako v případě objektů a symbolů). Více informací o nahrazování proměnných je uvedeno v kapitole 6 "Tagname Dictionary (Databáze proměnných)". - 87 - Poznámka: Když se sdruží buňky, každá buňka zůstane zachována, tedy když se složená buňka rozloží, obnoví se původní buňky. Symbol lze vytvořit z několika symbolů a/nebo několika jednoduchých objektů jak je zobrazeno níže: Jestliže jeden z vybraných objektů má přiřazené animační propojení, toto propojení se připojí k novému symbolu. (Jsou-li ve vyrovnávací paměti vkládání animačních propojení obsažena propojení, budete vyzváni, zda chcete vložit tato animační propojení do nového symbolu.) Poznámka: Symbol nelze vytvořit, pokud více než jeden z vybraných objektů má animační propojení. Provádíte-li skládání dvou symbolů do nového symbolu, ztratí se původní struktura symbolu. Proto, když rozkládáte nový symbol, rozloží se na jednotlivé komponenty každého původního symbolu. Dva původní symboly se ztratí. Více informací o animačních propojeních je uvedeno v kapitole 7, "Vytváření animačních propojení". Vytvoření symbolu nebo buňky ¾ 1. Vyberte objekty, které chcete začlenit do buňky nebo symbolu... 2. V nabídce Arrange (Uspořádat) klepněte na Make Cell (Vytvořit buňku) (nebo Make Symbol (Vytvořit symbol) nebo klepněte na příslušný nástroj na nástrojové liště Arrange (Uspořádat). TIP Pro rychlé vytvoření buňky nebo symbolu vyberte všechny objekty. Klepněte pravým tlačítkem myši na jeden ze zvolených objektů a ukažte na Cell/Symbol (Buňka/symbol) a potom klepněte na příslušný příkaz. Rozložení symbolu nebo buňky ¾ 1. Vyberte symbol nebo buňku... 2. V nabídce Arrange (Uspořádat) klepněte na Break Cell (Rozložit buňku) (nebo Break Symbol (Rozložit symbol) nebo klepněte na příslušný nástroj na nástrojové liště Arrange (Uspořádat). TIP Má-li symbol definovaná animační propojení, automaticky se uloží tato propojení do vyrovnávací paměti vkládání animačních propojení. Pro rychlé rozložení buňky nebo symbolu klepněte pravým tlačítkem myši na buňku nebo symbol, potom ukažte na Cell/Symbol (Buňka/symbol) a pak klepněte na příslušný příkaz. Více informací o nástrojových lištách programu WindowMaker je uvedeno v kapitole 1, "Prvky programu WindowMaker". - 88 - Překlápění buněk Když provedete překlopení buňek, neprovede se jejich zrcadlení. Provede se pouze zrcadlení polohy buňky ve skupině objektů. Například: Porovnejte umístění buňky (na levé straně) a směru před překlopením a po překlopení. Její poloha se překlopila, ale ne její obsah. U objektu elipsy se provedlo zrcadlení. Stejná operace se aplikuje na buňky překlopené svisle. Práce s obrázky a bitmapami Všechny grafické objekty, jako jsou obrázky, snímky obrazovky, výkresy programu AutoCad, soubory typu JPEG, PCX a TGA atd., které jsou vytvořeny v jiných programech systému Windows se musí pro použití v InTouch vložit do bitmapového kontejneru v programu WindowMaker. Program WindowMaker považuje bitmapu za jediný objekt. Proto nemůžete animovat jednotlivé prvky bitmapy, ani nemůžete začlenit bitmapy do symbolů. Můžete je však začlenit do buňky. V programu WindowMaker můžete otáčet bitmapy, obrázky JPEG, PCX a TGA. Lze je otáčet ve směru chodu hodinových ručiček nebo proti směru chodu hodinových ručiček o 360 stupňů v krocích po 90 stupních (90 stupňů, 180 stupňů, 270 stupňů a 360 stupňů). Jakákoli animační propojení přiřazená k bitmapě se otáčejí s bitmapou. Poznámka: Otáčení bitmap v programu WindowMaker nemá nic společného s dynamickým otáčením objektů při běhu programu. Bitmapy nebo obrázky se otáčejí v programu WindowViewer podle animačnímu propojení Orientation (Orientace). Bitmapu můžete také definovat s průhlednou barvou, takže bitmapa může být v plovoucí poloze nad jinými objekty. Pokud definujete bitmapu s průhlednou barvou, barva pozadí okna nebo jiné objekty za bitmapou se zobrazí přes bitmapu všude tam, kde je použita průhledná barva. (Pro bitmapu lze použít pouze jednu průhlednou barvu.) Více informací o průhledných bitmapách je uvedeno v oddíle "Vytvoření průhledné bitmapy". Import bitmapy nebo souboru typu JPEG, PCX nebo TGA ¾ 1. Klepněte na nástroj Bitmap (Bitmapa) (kurzor se změní na nitkový kříž) a potom vytvořte bitmapový kontejner ve Vašem okně (velikost není důležitá). 2. Vyberte bitmapový kontejner: - 89 - 3. V nabídce Edit (Úpravy) klepněte na Import Image (Import obrázku). Zobrazí se dialogové okno Select Image File (Zvolte soubor obrázku) systému Windows. TIP Pro rychlé vložení obrázku klepněte pravým tlačítkem myši na bitmapový kontejner a potom klepněte na Import Image (Import obrázku). 4. Vyhledejte a zvolte soubor .BMP, .PCX, .TGA nebo .JPG, který chcete importovat jako bitmapu, potom klepněte na Open (Otevřít) nebo klepněte dvakrát na název souboru obrázku. Obrázek se vloží do bitmapového kontejneru: 5. Aby bitmapa měla svoji původní velikost, zvolte ji a potom klepněte v nabídce Edit (Úpravy) na Bitmap - Original Size (Bitmapa – původní velikost). Bitmapa se překreslí do své původní velikosti. TIP Pro rychlou změnu velikosti bitmapy klepněte pravým tlačítkem myši na bitmapu a potom klepněte na Bitmap - Original Size (Bitmapa – původní velikost). - 90 - Vložení bitmapy ze schránky systému Windows Vložení bitmapy ze schránky systému Windows do okna ¾ 1. Zkopírujte grafiku do schránky systému Windows. Zobrazte například grafiku, potom držte stisknutou klávesu ALT a přitom stiskněte klávesu PRINT SCRN pro zkopírování grafiky do schránky systému Windows. 2. Klepněte na nástroj Bitmap (Bitmapa) (kurzor se změní na nitkový kříž) a potom vytvořte bitmapový kontejner ve Vašem okně (velikost není důležitá). 3. Vyberte bitmapový kontejner: 4. V nabídce Edit (Úpravy) klepněte na Paste Bitmap (Vložit bitmapu). Bitmapa ze schránky Windows se vloží do bitmapového kontejneru: TIP 5. Pro rychlé vložení bitmapy klepněte pravým tlačítkem myši na bitmapový kontejner a potom klepněte na Paste Bitmap (Vložit bitmapu). Aby bitmapa měla svoji původní velikost, zvolte ji a potom klepněte v nabídce Edit (Úpravy) na Bitmap - Original Size (Bitmapa – původní velikost). Bitmapa se překreslí do své původní velikosti: - 91 - TIP Pro rychlou změnu velikosti bitmapy klepněte pravým tlačítkem myši na bitmapu a potom klepněte na Bitmap - Original Size (Bitmapa – původní velikost). Úprava bitmapy Bitmapy můžete upravovat přímo z programu WindowMaker. Pokud upravujete bitmapu v programu WindowMaker, spustí se aplikace, která je asociována s příponou .bmp. Pokud byla bitmapa vytvořena například pomocí programu MSPaint, automaticky se spustí při editaci bitmapy v programu WindowMaker program MSPaint, jak je popsáno dole. ¾ Úprava bitmapy z programu WindowMaker pomocí aplikace Windows Paint 1. TIP Vyberte bitmapu. V nabídce Edit (Úpravy) klepněte na Edit Bitmap (Upravit bitmapu). Otevře se program Microsoft Paint pro zobrazení bitmapy: Pro rychlou úpravu bitmapy klepněte pravým tlačítkem myši na bitmapu a potom klepněte na Edit Bitmap (Upravit bitmapu). 2. Proveďte úpravu bitmapy v aplikaci MS Paint. 3. Zavřete aplikaci MS Paint pro návrat do programu WindowMaker. Poznámka: Při provádění úprav bitmapy v její mateřské aplikaci nemůžete používat program WindowMaker. Pro návrat do programu WindowMaker zavřete mateřskou aplikaci. - 92 - Vytvoření průhledné bitmapy Bitmapu nebo obrázek můžete také definovat s průhlednou barvou, takže tyto mohou být v plovoucí poloze nad jinými objekty. Pokud definujete bitmapu s průhlednou barvou, barva pozadí okna nebo jiné objekty za bitmapou se zobrazí přes bitmapu všude tam, kde je použita průhledná barva. Vytvoření průhledné bitmapy ¾ 1. Klepněte na nástroj Bitmap (Bitmapa) (kurzor se změní na nitkový kříž) a potom vytvořte bitmapový kontejner ve Vašem okně (velikost není důležitá). 2. Vyberte bitmapový kontejner: 3. Klepněte pravým tlačítkem myši na bitmapový kontejner a potom klepněte v nabídce Edit (Úpravy) na Paste Bitmap (Vložit bitmapu) (pokud jste zkopírovali grafiku do schránky systému Windows), v opačném případě klepněte na Import Image (Import obrázku) (pro vyhledání a výběr soboru .BMP, .PCX, .TGA nebo .JPG pro otevření). Bitmapa se vloží do bitmapového kontejneru: 4. Klepněte pravým tlačítkem myši na bitmapu a potom klepněte na Bitmap - Original Size (Bitmapa – původní velikost) pro návrat bitmapy do její původní velikosti. 5. Při vybrané bitmapě klepněte na nástroj Transparent Color (Průhledná barva) na nástrojové liště Format (Formát) pro otevření palety průhledných barev. 6. Klepněte pravým tlačítkem myši na prázdný barevný čtverec v sekci Custom Palette (Uživatelská paleta) ve spodní části barevné palety. Zobrazí se dialogové okno Edit Custom Color (Upravit uživatelskou barvu). - 93 - 7. Klepněte na nástroj Blotter (Savý papír) (dialogové okno Edit Custom Color (Editovat uživatelskou barvu) se zavře). 8. Klepněte na barvu v bitmapě, kterou chcete, aby se stala průhledná. Barva se zkopíruje do barevného čtverce, který jste zvolili v paletě průhledných barev. 9. Klepněte na barevný čtverec pro přiřazení průhledné barvy bitmapě: V tomto příkladě byla barva široké plochy rámečku bitmapy převedena na průhlednou barvu. Proto je nyní barva pozadí okna vidět přes bitmapu. Pokud by byly za nyní průhlednou plochou objekty, budou také vidět přes bitmapu. Poznámka: Pro bitmapu lze použít pouze jednu průhlednou barvu. Práce s textovými objekty V programu WindowMaker můžete změnit typ písma, styl písma, velikost písma, zarovnání a otáčení jakéhokoli zvoleného textového objektu. Můžete jej otočit o 360 stupňů v krocích po 90 stupních (90 stupňů, 180 stupňů, 270 stupňů a 360 stupňů). Například: - 94 - Poznámka: Otáčení textových objektů v programu WindowMaker nemá nic společného s dynamickým otáčením objektů při běhu programu. Pro textové objekty nelze použít animační propojení Orientation (Orientace). Proto nelze textové objekty v programu WindowViewer otáčet. Nástrojová lišta Format (Formát) obsahuje nástroje, které můžete rychle použít pro vybrané objekty pro provedení většiny příkazů v nabídce Text. Například: Více informací o nástrojové liště Format (Formát) je uvedeno v kapitole 1, "Prvky programu WindowMaker". Formátování textových objektů Všechny textové příkazy programu WindowMaker fungují pro jednoduché texty i pro výběry více řetězců textů a numerických hodnot. Pokud není vybrán žádný textový řetězec, když se provádí příkaz v nabídce Text, příkaz způsobí změnu výchozího nastavením příslušného textového nástroje v nástrojové liště Format (Formát) a výchozího nastavení nástroje Text na nástrojové liště Draw Object (Kreslení). Nastavení atributů zarovnání je zvlášť důležité pro textové objekty používané pro zobrazení výstupní hodnoty. Zarovnání určuje, jak se zobrazí text s hodnotou různé délky během chodu programu. Jestliže například zobrazujete číselnou hodnotu na konci textového řetězce, který je zarovnán na střed nebo doprava, celý textový řetězec včetně hodnoty se opět vystředí nebo zarovná pokaždé, kdy se změní počet zobrazených číslic. Více informací o nástrojových lištách programu WindowMaker je uvedeno v kapitole 1, "Prvky programu WindowMaker". Zobrazení číselných hodnot Textové objekty se také používají pro zobrazení statických nebo dynamických číselných hodnot. V případě přiřazení animačního propojení Touch Links User Inputs – Analog (Uživatelský vstup hodnoty - analogová proměnná) nebo Value Display – Analog (Zobrazení hodnoty – analogová proměnná) k textovému objektu, můžete zobrazit analogovou (celočíselnou nebo reálnou) proměnnou. Pro určení formátu zobrazení analogové hodnoty se používají následující čtyři znaky: 0 Nula # číslo nebo znak libry , Čárka . desetinná tečka Následující tabulka znázorňuje formátování analogové hodnoty: Znak Popis # Zobrazuje jakékoli celé číslo. Například: 1234 se zobrazí jako 1234 (Je potřebný jen jeden znak #.) - 95 - Předřadí jednu počáteční nulu a jedno desetinné místo. Například: 0.0 .1 se zobrazí jako 0.1 77.1 se zobrazí jako 77.1 00000 Předřadí počáteční nuly podle potřeby. Například: 123 se zobrazí jako 00123 1234 se zobrazí jako 01234 12345 se zobrazí jako 12345 #,##0.0 Vloží čárku a počáteční nulu podle potřeby a jedno desetinné místo. Například: 1234.56 se zobrazí jako 1,234.6 123.4 se zobrazí jako 123.4 0,000.0 Předřadí čárku, počáteční nuly a jedno desetinné místo. Například: 12.3 se zobrazí jako 0,012.3 Poznámka: Pokud používáte nulu ve formátu, musí být následována nulami. Všechna místa vpravo od desetinné tečky musí být vždy nuly. Například 000.00 je správné, zatímco #0#0.0# je nesprávné. TIP Také pro číselné hodnoty se použije veškeré normální formátování textu, tj. typ písma, velikost, barva, zarovnání a styl. Vytvoření textového objektu ¾ 1. Klepněte na nástroj Text na nástrojové liště Draw Object (Kreslení). 2. Klepněte v okně a napište textový řetězec. TIP Pro rychlý přístup k různým příkazům, které můžete použít pro textový objekt klepněte pravým tlačítkem myši na textový objekt a potom klepněte na příslušný příkaz. Zobrazení číselné hodnoty v textovém řetězci ¾ 1. Klepněte na nástroj Text a potom zapište textový objekt v okně pomocí jednoho z dříve popsaných platných číselných formátů. Například: 2. Zvolte objekt a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení) nebo klepněte dvakrát na textový objekt. Objeví se dialogové - 96 - okno volby animačních propojení. TIP ¾ Pro rychlý přístup do dialogového okna klepněte pravým tlačítkem myši na textový objekt a pak klepněte na Animation Links (Animační propojení). 3. V sekci Value Display (Zobrazení hodnoty) klepněte na Analog (Analogové). Objeví se dialogové okno Output -> Analog Expression (Výstup -> Analogový výraz). 4. V poli Expression (Výraz) napište analogovou proměnnou nebo výraz. (V tomto příkladu se používá systémová proměnná $Second.) 5. Klepněte na OK. 6. Klepněte na rychlý přepínač Runtime (Chod programu) v horním pravém rohu panelu nabídek (nebo použijte klávesové zkratky ALT + !) pro přepnutí do programu WindowViewer nebo klepněte v nabídce File (Soubor) na WindowViewer. 7. Pokud použijete tento příklad, uvidíte aktuální systémové vteřiny (hodnota v rozmezí od 0-59) zobrazené na místě znaku libry (#) v textovém řetězci. 8. Klepněte na rychlý přepínač Development (Vývoj) v horním pravém rohu panelu nabídek (nebo použijte klávesové zkratky ALT + !) pro návrat do programu WindowMaker nebo klepněte v nabídce File (Soubor) na WindowMaker. Změna typu, stylu a velikosti písma řetězce 1. Vyberte textový řetězec a potom v nabídce Text klepněte na nástroj Fonts (Typy písma) na nástrojové liště Format (Formát). Objeví se standardní dialogové okno Font (Písmo) systému Windows. - 97 - 2. Zvolte požadovaný typ písma ze seznamu Font (Písmo) (název písma se objeví v poli Font). Jakmile je zvolený typ písma, zobrazí se jeho dostupné styly a velikosti v polích Font Style (Styl písma) ,Size (Velikost), Efects (Efekty) a Color (Barva). Je-li zvolená velikost písma, zobrazí se vzorek písma ve zvoleném stylu a velikosti v poli Sample (Vzorek) (viz výše uvedený příklad). 3. Klepněte na OK. Poznámka: Bodová velikost písma se zvětší nebo zmenší podle rozsahu bodových velikostí dostupných pro zvolené písmo. Implicitní písmo pro program WindowMaker je System a nelze měnit jeho velikost. Před změnou velikosti vyberte typ písma True Type systému Windows. Editování textových objektů ¾ Změna textu na objekt 1. Zvolte objekt nebo tlačítko s textem. 2. V nabídce Special (Speciální) klepněte na Substitute Strings (Nahradit texty). Objeví se dialogové okno Substitute Strings (Nahradit texty). TIP Pro rychlý přístup do dialogového okna klepněte pravým tlačítkem myši na textový objekt, ukažte na Substitute (Nahradit) a pak klepněte Substitute Strings (Nahradit texty). - 98 - Více informací o propojeních analogového vstupu/zobrazení je uvedeno v kapitole 7, "Vytváření animačních propojení". 3. V poli New String (Nový text) zapište nový řetězec a potom klepněte na OK. TIP Tento příkaz můžete také použít pro texty, které jsou začleněny do symbolu nebo buňky a pro změnu označení na tlačítcích nakreslených nástrojem Button (Tlačítko). Když měníte textový řetězec, zachová si všechny své původní atributy, tzn. typ písma, styl, barvu atd. Veškeré normální formátování textu se použije také pro číselné hodnoty. Můžete vybrat a editovat současně několik textových objektů. Záměna části textového objektu Můžete změnit část textu textového objektu a program InTouch automaticky provede změnu ve všech zvolených textových objektech používajících stejný text. ¾ Změna části textu v řadě textových objektů 1. Vyberte všechny textové objekty. 2. V nabídce Special (Speciální) klepněte na Substitute Strings (Nahradit texty). Objeví se dialogové okno Substitute Strings (Nahradit texty). TIP Pro rychlý přístup do dialogového okna klepněte pravým tlačítkem myši na textový objekt, ukažte na Substitute (Nahradit) a potom klepněte Substitute Strings (Nahradit texty). - 99 - TIP Klepnete-li pravým tlačítkem myši na vstupní textová pole v libovolném dialogovém okně, objeví se nabídka s příkazy, které lze aplikovat na zvolený text. 3. Klepněte na Replace (Nahradit). Objeví se dialogové okno Replace Text (Nahradit text). 4. V poli Old Text (Starý text) napište část řetězce, který chcete nahradit. 5. Do pole New (Nový) napište text pro nahrazení. 6. Klepněte na OK. Objeví se znovu dialogové okno Substitute Strings (Nahradit texty) zobrazující změnu provedenou na zvoleném textovém řetězci: 7. Klepněte na OK. Všechny vybrané textové objekty se automaticky modifikují. - 100 - Práce s čárami a obrysovými čárami Můžete také změnit styl a šířku čárového objektu včetně obrysových čar elips, pravoúhelníků, polygonů a bitmap nebo obrázků. Změnu stylu nebo šířky čáry můžete použít pro jediný zvolený objekt nebo pro několik zvolených objektů. Nabídka Line (Čára) je rozdělena do dvou sekcí. Horní sekce obsahuje šířky čáry a spodní sekce obsahuje styly čáry. Například: ¾ Použití příkazu čáry Zvolte objekt a potom v nabídce Line (Čára) klepněte na požadovaný styl nebo šířku čáry. TIP Pokud nezvolíte nějaký objekt, když vybíráte styl nebo šířku čáry, změna se použije pro výchozí nastavení všech nástrojů čáry v nástrojové liště Wizard (Předkonfigurované objekty). Poznámka: Šířku můžete změnit jen u pevných čar. Rozložené čáry mohou mít pouze šířku jednoho pixelu. Širší čáry zaberou při kreslení během chodu programu více času. ¾ Odstranění obrysové čáry objektu Zvolte objekt a potom v nabídce Line (Čára) klepněte No Line (Žádná čára). Obrysová čára objektu se odstraní. Práce s předkonfigurovanými objekty Předkonfigurované objekty Vám ušetří značnou dobu během vývoje aplikace. Snadno se používají a konfigurují. Konfigurace předkonfigurovaných objektů se provádí tak, že se objekt nainstaluje, zvolí se v dialogovém okně Wizard Selection (Výběr předkonfigurovaného objektu), vloží se do vašeho okna a potom se na něj dvakrát klepne. Zobrazí se příslušné dialogové okno konfigurace (pokud se jedná o předkonfigurovaný objekt, který lze nakonfigurovat). Pokud jste například chtěli použít předkonfigurovaný objekt posuvník, budete potřebovat nakonfigurovat položky, jako jsou ovlivňovaná proměnná, označení minimálního a maximálního rozsahu pro posuvníky, barva výplně atd. V případě použití předkonfigurovaných objektů ušetříte značnou dobu, protože nemusíte kreslit jednotlivé složky objektu nebo zadávat rozsahy hodnot objektů nebo animovat objekt. - 101 - ¾ Instalace nebo odstranění předkonfigurovaných objektů 1. V nabídce Special (Speciální) ukažte na Configure (Konfigurovat) a potom klepněte na Wizard/ActiveX Installation (Instalace předkonfigurovaného objektu/ActiveX) nebo v Application Explorer (Aplikačním průzkumníku) klepněte dvakrát na Wizard/ActiveX Installation (Instalace předkonfigurovaného objektu/ActiveX). Objeví se dialogové okno Wizard/ActiveX Installation (Instalace předkonfigurovaného objektu/ ActiveX) s aktivní kartou Wizard Installation (Instalace předkonfigurovaného objektu). TIP V Application Explorer (Aplikačním průzkumníku) můžete také klepnout pravým tlačítkem myši na Wizard/ActiveX Installation (Instalace předkonfigurovaného objektu/ActiveX) a potom na Open (Otevřít). Poznámka: Maximální počet předkonfigurovaných objektů, které lze současně nainstalovat činí 43. 2. V seznamu Installed Wizards (Instalované předkonfigurované objekty) zvolte předkonfigurovaný objekt, který chcete odstranit z Vaší aplikace a potom klepněte na Remove (Odstranit). Objeví se okno se zprávou požadující potvrzení vymazání. Poznámka: Tlačítko Remove (Odstranit) je aktivní jen tehdy, když předkonfigurované objekty jsou zobrazeny v seznamu Installed Wizards (Instalované předkonfigurované objekty). TIP Pro volbu skupiny předkonfigurovaných objektů klepněte na první předkonfigurovaný objekt v seznamu, držte stisknutou klávesu Shift a klepněte na poslední předkonfigurovaný objekt, který chcete zvolit. Vyberou se všechny předkonfigurované objekty v seznamu mezi prvním a posledním výběrem. - 102 - Pro výběr několika předkonfigurovaných objektů, které nejsou uvedeny postupně, klepněte na první předkonfigurovaný objekt, držte stisknutou klávesu Ctrl a potom klepněte na následující předkonfigurovaný objekt. Opakujte tento postup pro všechny předkonfigurované objekty, které chcete vybrat. 3. Klepněte na Yes (Ano) pro odstranění předkonfigurovaného objektu. Odstraněný předkonfigurovaný objekt (odstraněné předkonfigurované objekty) se přesune (přesunou) do seznamu List of Uninstalled Wizards (Seznam nenainstalovaných předkonfigurovaných objektů). Poznámka: Když odstraníte předkonfigurovaný objekt, nedojde k jeho vymazání. Není však již natažený do paměti. 4. Instalace předkonfigurovaných objektů se provádí jejich zvolením v seznamu List of Uninstalled Wizards (Seznam nenainstalovaných předkonfigurovaných objektů) a následným klepnutím na Install (Instalovat). Poznámka: Tlačítko Install (Instalovat) je aktivní jen tehdy, když předkonfigurované objekty jsou zobrazeny v seznamu List of Uninstalled Wizards (Seznam nenainstalovaných předkonfigurovaných objektů). 5. Klepněte na Search (Vyhledat), pokud chcete instalovat předkonfigurovaný objekt z jiného adresáře. Objeví se dialogové okno Search for Wizard files (Vyhledat soubory předkonfigurovaných objektů). 6. Vyhledejte adresář obsahující předkonfigurované objekty, které chcete instalovat a potom klepněte na OK. Objeví se znovu dialogové okno instalace předkonfigurovaného objektu. Všechny předkonfigurované objekty, které byly nalezeny, se zobrazí v seznamu List of Uninstalled Wizards (Seznam nenainstalovaných předkonfigurovaných objektů) a můžete nyní nainstalovat tak, jak bylo výše popsáno. - 103 - Umístění předkonfigurovaného objektu v okně ¾ 1. Klepněte na nástroj Wizard Dialog (Dialog předkonfigurovaného objektu) na nástrojové liště Wizards/ActiveX (Předkonfigurované objekty/ActiveX). Objeví se dialogové okno Wizard Selection (Výběr předkonfigurovaného objektu). 2. V seznamu předkonfigurovaných objektů klepněte na kategorii předkonfigurovaných objektů, které chcete použít. V oblasti zobrazení se zobrazí všechny dostupné předkonfigurované objekty v této kategorii. Zvolíte-li například Buttons (Tlačítka), okamžitě se zobrazí v oblasti zobrazení všechny dostupné předkonfigurované objekty tlačítek. 3. Zvolte předkonfigurovaný objekt, který chcete použít, a potom klepněte na OK nebo dvakrát klepněte na předkonfigurovaný objekt. Dialogové okno se zavře a znovu se objeví Vaše okno. TIP Přidání předkonfigurovaného objektu do nástrojové lišty Wizards/ActiveX (Předkonfigurované objekty/ActiveX) se provádí klepnutím na Add to toolbar (Přidat do nástrojové lišty). Jakmile jste přidali předkonfigurovaný objekt do nástrojové lišty Wizards/ActiveX (Předkonfigurované objekty/ActiveX), můžete jej kdykoli zvolit a vložit do Vašeho otevřeného okna. Poznámka: Počet předkonfigurovaných objektů, které můžete vložit do nástrojové lišty je limitován Vašimi systémovými zdroji. 4. Když se vrátíte do okna, kurzor se změní na rohový symbol na místo v okně, kde chcete vložit předkonfigurovaný objekt. - 104 - . Klepněte 5. Klepněte dvakrát na předkonfigurovaný objekt pro jeho konfiguraci (pokud je aplikovatelná). Poznámka: Některé funkce nástrojové lišty lze přímo použít pro modifikaci aplikovatelných předkonfigurovaných objektů. Například nástroj Reduce Font (Zmenšit písmo), nástroj Line Color (Barva čáry), nástroj Fill Color (Barva výplně) atd. Více informací o nástrojových lištách programu WindowMaker je uvedeno v kapitole 1, "Prvky programu WindowMaker". Odstranění předkonfigurovaných objektů z nástrojové lišty ¾ 1. Klepněte na nástroj Wizard Dialog (Dialog předkonfigurovaného objektu) na nástrojové liště Wizards/ActiveX (Předkonfigurované objekty/ActiveX). Objeví se dialogové okno Wizard Selection (Výběr předkonfigurovaného objektu). 2. Klepněte na Remove from toolbar (Odstranit z nástrojové lišty). Objeví se dialogové okno Remove Wizard from Toolbar (Odstranit předkonfigurovaný objekt z nástrojové lišty). 3. Vyberte předkonfigurovaný objekt (předkonfigurované objekty), který (které) chcete odstranit z nástrojové lišty. 4. Klepněte na OK. Předkonfigurované objekty ovládacích prvků prostředí OS Windows Předkonfigurované objekty ovládacích prvků tohoto typu jsou komplexní objekty. Na rozdíl od jiných předkonfigurovaných objektů poskytují zlepšenou funkčnost ve skriptech QuickScript programu InTouch. Je možné je používat pro editovaní datových objektů nebo vstupů operátora. Předkonfigurované objekty ovládacích prvků mají také .fields (.atributy) proměnných programu InTouch a některé z jeho vlastností jsou přístupné jak během vývoje, tak během chodu programu, když se používají jejich funkce ve skriptech QuickScript. Předkonfigurované objekty ovládacích prvků můžete používat ve vaší aplikaci InTouch pro zobrazení textu/dat, sběr informací při běhu programu z uživatelských voleb nebo nabídek pro uživatele. Volby mohou být ve formě seznamů, zaškrtávacích políček, pole se seznamem a rádiových tlačítek (výběr varianty). Textová pole můžete používat pro zobrazení nebo vstup textu/dat. - 105 - Když provádíte konfiguraci předkonfigurovaného objektu ovládacích prvků oken, musíte specifikovat Control Name (Název ovládacího prvku) pro identifikaci ovládacího prvku. Program InTouch používá Control Name (Název ovládacího prvku) pro identifikaci ovládacího prvku, když používáte ovládací funkci ve skriptu QuickScript. Proto musíte také specifikovat parametr Control Name (Název ovládacího prvku) ve funkci skriptu QuickScript. Například: SetPropertyD ( "ControlName.Property", Discrete ); Další informace o použití funkcí ovládacích prvků oken skriptů QuickScript je uvedeno v příručce InTouch Reference Guide. Control Names (Názvy ovládacích prvků) nezvyšují počet proměnných aplikace a musí být pro každý ovládací prvek jedinečné. Proměnné, třebaže nejsou vyžadované, mají podstatný význam pro efektivní použití ovládacího prvku. Například volba položky v seznamu není využitelná, jestliže zvolená položka není automaticky přiřazena k proměnné, tedy není přístupná pro program InTouch. Ovládací prvky mají vlastnosti (podobně jako u .fields (atributů) proměnných), které lze modifikovat při vývoji (program WindowMaker) a chodu programu (program WindowViewer). Podporují také specifické funkce skriptů QuickScript, které lze provádět při běhu programu pro modifikaci seznamů, načítání souborů, vypnutí ovládacích prvků atd. Poznámka: Objekty ovládacích prvků oken se nesmí navzájem překrývat, aby měli náležitou funkci. Pro ověření zvolte objekt v programu WindowMaker a ujistěte se, že okraje objektů se nedotýkají jiného objektu. Ovládací prvky oken, které se ovládají vstupy z klávesnice, nepracují v programu SuiteVoyager. Počáteční hodnota proměnných přiřazených buď k seznamu nebo k polím se seznamem nelze použít pro inicializaci hodnoty seznamu nebo pole se seznamem. Další informace o použití .fields (.atributů) ovládacích prvků oken najdete v příručce InTouch Reference Guide. Použití předkonfigurovaných objektů ovládacích prvků prostředí OS Windows Mezi předkonfigurované objekty ovládacích prvků patří: textová pole (TextBox), zaškrtávací políčka (CheckBox), pole se seznamem (ComboBox), seznamy (ListBox) a radiová (volitelná) tlačítka (RadioButton). Předkonfigurované objekty ovládacích prvků mají také .fields (.atributy) proměnných a funkce pro použití ve skriptech QuickScript, které můžete použít pro jejich dynamické ovládání při běhu programu. TIP Předkonfigurované objekty ovládacích prvků se vkládají do Vašich oken jako jakýkoli jiný předkonfigurovaný objekt. Více informací o vkládání předkonfigurovaných objektů je uvedeno v oddíle "Umístění předkonfigurovaného objektu do okna". - 106 - TIP Aby se dosáhlo nejlepšího 3D efektu ovládacího prvku oken, zvolte pro Vaše okno šedé pozadí. Pokud barva Vašeho okna nemůže být šedá, umístěte šedý "Předkonfigurovaný objekt panel" za předkonfigurovaný objekt ovládacího prvku. Pravidla použitelnosti ovládacích prvků Je velmi důležité, abyste dodržovali níže uvedená pravidla při použití předkonfigurovaných objektů ovládacích prvků: 1. Předkonfigurované objekty ovládacích prvků pracují náležitým způsobem, když nepřekrývají jiné předkonfigurované objekty ovládacích prvků nebo jiné normální grafické objekty. TIP 2. Pro ověření, že předkonfigurovaný objekt ovládacího prvku nepřekrývá jakýkoli jiný objekt, zvolte jej v programu WindowMaker. Ověřte si, že jeho rámeček se nedotýká jiného grafického objektu na obrazovce. Předkonfigurované objekty ovládacích prvků by se měly použít střídmě a rozumně. Poznámka: Umístěním 10 až 20 předkonfigurovaných objektů ovládacích prvků do jednoho okna má za následek, že zobrazení nejsou intuitivní a navigace je obtížná. Je-li nezbytné použití velkého počtu předkonfigurovaných objektů ovládacích prvků, doporučujeme vám vyvolat další dialogová okna s dodatečnými předkonfigurovanými objekty ovládacích prvků. Předkonfigurovaný objekt textového pole (TextBox) Předkonfigurované objekty ovládacího prvku textové pole jsou víceúčelové ovládací prvky, které lze použít pro vstup uživatele nebo zobrazení textu, jako je např. soubor poznámkového bloku (pouze ASCII soubory bez formátování). Textová pole můžete konfigurovat tak, aby byl umožněn vstup uživatele nebo jen pro čtení pro účely zobrazení. Do předkonfigurovaného objektu - 107 - ovládacího prvku textového pole můžete jen přiřadit proměnné typu Message (Textové). Poznámka: Pokud byla proměnná definována s maximální délkou, do proměnné lze přiřadit z obsahu textového pole pouze tento počet znaků. Není-li k textovému poli přiřazena žádná proměnná, pole může obsahovat až 65 535 znaků. Předkonfigurovaný objekt ovládacího prvku seznam (ListBox) Předkonfigurované objekty ovládacího prvku seznam zobrazují uživateli seznam voleb. Volby jsou zobrazeny svisle v jednom sloupci. Pokud počet položek překročí počet, který lze zobrazit v seznamu, objeví se na ovládacím prvku automaticky posuvníky. Seznamy vyžadují, aby uživatel provedl volbu ze seznamu a neumožňují vstup uživatele. K předkonfigurovanému objektu ovládacího prvku seznam můžete pouze přiřadit proměnné typu Message (Zpráva). Předkonfigurovaný objekt ovládacího prvku pole se seznamem (ComboBox) Předkonfigurované objekty ovládacích prvků pole se seznamem kombinují vlastnosti textového pole a seznamu. Volby jsou zobrazeny svisle v jednom sloupci. Pokud počet položek překročí počet, který lze zobrazit v seznamu, objeví se na ovládacím prvku automaticky posuvníky. Předkonfigurované objekty ovládacího prvku pole se seznamem umožňují uživateli provést výběr buď zapsáním textu nebo volbou položky ze seznamu. K předkonfigurovanému objektu ovládacího prvku pole se seznamem můžete pouze přiřadit proměnné typu Message (Zprávové). Existují tři styly polí se seznamem: Typ Popis Simple (Jednoduchý) Pole se seznamem vždy zobrazují seznam. Pro zobrazení položek v seznamu, musí být seznam dostatečně daleko vytažen, aby zobrazil všechny položky. Pokud je zde více položek, než lze zobrazit, automaticky se vloží posuvníky. Jednoduché pole se seznamem umožňují, aby uživatel zapsal volby, které nejsou v seznamu, nebo zobrazí první položku v seznamu, která se shoduje s napsanými písmeny. Pokud se nenalezne žádná shoda, zobrazí se horní část seznamu. Drop Drown (Rozbalovací) Pole se seznamem umožňují, aby uživatel buď zapsal přímo text nebo klepnul na šipku pro otevření seznamu voleb. Tak jako u jednoduchého pole se seznamem umožňuje tento ovládací prvek, aby uživatel zapsal volby, které nejsou v seznamu, nebo zobrazí první položku v seznamu, která se shoduje s napsanými písmeny. Pokud se nenalezne žádná shoda, zobrazí se horní část seznamu. - 108 - Drop Drown List (Rozbalovací seznam) Pole se seznamem jsou podobné jednoduchým seznamům. Zobrazují seznam voleb pro provedení výběru. Na rozdíl od seznamů se však seznam nezobrazí, dokud se neklepne na šipku. Tento typ ovládacího prvku se používá pro úsporu místa na obrazovce. Předkonfigurovaný objekt ovládacího prvku zaškrtávací políčko (CheckBox) Zaškrtávací políčko indikuje, zda jednotlivá podmínka je zapnuta/vypnuta, pravdivá/nepravdivá nebo ano/ne. Zaškrtávací políčka pracují nezávisle na sobě a umožňují, aby uživatel mohl současně zvolit nebo zrušit volbu jakéhokoli počtu zaškrtávacích políček. Zaškrtávací políčka odesílají diskrétní hodnotu. Odesílají 0, pokud nejsou zvoleny, a 1, pokud jsou zvoleny. K předkonfigurovanému objektu ovládacího prvku zaškrtávací políčko můžete pouze přiřadit proměnné typu Discrete (Diskrétní). Předkonfigurovaný objekt ovládacího prvku rádiová (volitelná) tlačítka (RadioButton) Rádiová nebo volitelná tlačítka představují pro uživatele sadu voleb. Na rozdíl od zaškrtávacích políček, pracují rádiová tlačítka jako část skupiny. Zvolením jednoho rádiového tlačítka okamžitě vymaže označení všech jiných tlačítek ve skupině. Rádiová tlačítka vysílají celočíselnou hodnotu. Hodnota ovládacího prvku rádiové tlačítko odpovídá zvolenému rádiovému tlačítku. Konfigurace předkonfigurovaných objektů ovládacích prvků Každý předkonfigurovaný objekt ovládacího prvku má své vlastní jedinečné dialogové okno konfigurace založené na jeho zamýšlené funkci. Možnosti zobrazené v dialogovém okně jsou konfigurovatelné vlastnosti, které nejsou dostupné prostřednictvím jiných nástrojů programu WindowMaker. Avšak vlastnosti, jako je barva, styl písma a velikost se modifikují pomocí příslušných nástrojů programu WindowMaker. Většina předkonfigurovaných objektů ovládacích prvků oken podporují funkce ve skriptech QuickScript. Můžete například vytvořit skript Data Change QuickScript (změna dat) pro načtení a vymazání seznamů, přidání a vymazání položek v seznamu atd. Další informace o použití funkcí ovládacích prvků skriptů QuickScript a .atributech (.fields) najdete v příručce InTouch Reference Guide. ¾ Konfigurace předkonfigurovaného objektu ovládacího prvku 1. Vložte předkonfigurovaný objekt do Vašeho okna. 2. Klepněte dvakrát na tento objekt. Objeví se příslušné dialogové okno konfigurace. Například: - 109 - TIP Klepnete-li pravým tlačítkem myši na vstupní textová pole v libovolném dialogovém okně, objeví se nabídka s příkazy, které lze aplikovat na zvolený text. 3. Do pole Control Name (Název ovládacího prvku) zapište jedinečný název pro identifikaci ovládacího prvku okna. Musíte specifikovat jedinečný Control Name (Název ovládacího prvku) pro každý předkonfigurovaný objekt ovládacího prvku, který používáte pro správnou funkci při běhu programu. Program WindowViewer používá Control Name (Název ovládacího prvku) pro identifikaci ovládacího prvku, když používáte funkci ovládacího prvku ve skriptu QuickScript. Control Names (Názvy ovládacích prvků) musí začínat abecedním znakem (podtržítka a čísla lze použít po prvním abecedním znaku) a nesmí obsahovat žádné zvláštní znaky. 4. Zadání Tagname (Proměnné), když konfigurujete ovládací prvek oken je nepovinné. Jestliže však specifikujete proměnnou, její hodnota se automaticky nastaví v atributu .Value (.Hodnota) ovládacího prvku (je to index zvolené položky v seznamu). 5. Zapište všechny jiné potřebné vstupy a nastavte parametry pro jednotlivý konfigurovaný ovládací prvek tak, aby byly použitelné. 6. Klepněte na OK. - 110 - Atributy předkonfigurovaného objektu ovládacího prvku Předkonfigurované objekty ovládacích prvků mají atributy jako proměnné .fields (.atributy) programu InTouch. Mohou být určeny pro čtení a zápis nebo jen pro čtení. K některým vlastnostem je možný přístup při vývoji k některým během chodu programu. Jsou identifikovány jako ControlName.x, kde x je atribut. Pokud například atribut .Visible (.Viditelný) ovládacího prvku oken je roven 0, ovládací prvek nebude v okně viditelný. Podobně jako u proměnných programu InTouch .Value (.Hodnota) je výchozí atribut pro předkonfigurovaný ovládací prvek. V programu WindowMaker atributy předkonfigurovaného objektu ovládacího prvku oken, jako jsou písmo, velikost a barva textu, se modifikují pomocí příslušných nástrojových lišt programu WindowMaker nebo příkazů nabídky. Vlastnosti, které nejsou podporované příkazy nástrojové lišty nebo nabídky, se konfigurují v dialogovém okně konfigurace předkonfigurovaného objektu. Ostatní vlastnosti předkonfigurovaných ovládacích prvků oken jsou dynamické a při běhu programu určené pro čtení a zápis nebo jen pro čtení. Je to podobné jako u atributů proměnných při běhu programu InTouch (.fields), jako jsou .Value (.Hodnota) a .Name (.Název). Na rozdíl od proměnných programu InTouch, atributy při běhu programu pro předkonfigurované objekty ovládacích prvků oken jsou přístupné prostřednictvím funkcí skriptů QuickScript a ne výrazů animačních propojení. Atributy při běhu programu mohou být buď pro čtení a zápis nebo jen pro čtení v závislosti na atributu. Funkce skriptů QuickScript GetProperty() a SetProperty() se musí použít pro ovládání nebo vyhledání těchto atributů. V následující tabulce je každý atribut ovládacího prvku stručně popsán: Atribut Popis .Caption Určuje "zprávu", která se má zobrazit se zaškrtávacím políčkem. .Enabled Určuje, zda objekt ovládacího prvku může reagovat na události generované operátorem. .ListCount Udává počet položek v seznamu nebo pole se seznamem. .ListIndex Určuje odpovídající index (proměnná nebo počet) aktuálně zvolené položky v seznamu. Poznámka: Index je číslo, které definuje určitou položku v seznamu. Když používáte seznam, index -1 označuje, že není aktuálně zvolená žádná položka. Když používáte pole se seznamem, index -1 označuje, že uživatel vložil nový text do vstupního pole textu ovládacího prvku. .NewIndex Odešle odpovídající celočíselný index (proměnná) poslední položky do seznamu nebo pole se seznamem prostřednictvím funkcí wcAddItem() nebo wcInsertItem(). .ReadOnly Určuje, zda obsah textového pole je určen jen pro čtení nebo pro čtení a zápis. .TopIndex Určuje odpovídající celočíselný index položky nejvíce nahoře v seznamu. - 111 - .Value Výchozí vlastnost pro všechny předkonfigurované objekty ovládacích prvků programu InTouch. Změny provedené u této vlastnosti jsou synchronizované v proměnné programu InTouch a v předkonfigurovaných objektech ovládacích prvků. .Visible Určuje, zda ovládací prvek je v okně viditelný. Atributy předkonfigurovaného objektu ovládacího prvku se nezobrazí v dialogovém okně Choose field name (Vybrat název pole). Příklad: [ErrorNumber=]GetPropertyM("ControlName.Property",Tagname); Kde: Parametr Popis ControlName Control Name (Název ovládacího prvku) nakonfigurovaný v předkonfigurovaném objektu ovládacího prvku, například CheckBox_1 nebo názvu alarmového objektu, například AlmObj_1. .Property Vlastnost ovládacího prvku nebo alarmového objektu. Tagname Platná proměnná programu InTouch (stejný typ pro odeslání), která nese hodnotu atributu, když se provede funkce. Více informací o předkonfigurovaných objektech ovládacích prvků je uvedeno v oddíle "Předdefinované objekty ovládacích prvků programu InTouch". " Funkce předkonfigurovaného objektu ovládacího prvku Následující tabulka popisuje stručně funkce ve skriptech QuickScript programu InTouch, které jsou dostupné pro použití v předkonfigurovaných objektech ovládacích prvků programu InTouch: Funkce Popis wcAddItem Přidá textovou položku do ovládacích prvků seznam (list box) nebo pole se seznamem (combo box). wcClear Odstraní všechny položky z ovládacích prvků seznam (list box) nebo pole se seznamem (combo box). wcDeleteItem Vymaže položku, jejíž index je specifikován, z ovládacích prvků seznam (list box) nebo pole se seznamem (combo box). wcDeleteSelection Vymaže aktuálně zvolenou položku ze seznamu. Používá se pro ovládací prvky seznam (list box) nebo pole se seznamem (combo box). wcErrorMessage Jestliže nastane chyba, funkce wcErrorMessage() zobrazí textovou zprávu popisující chybu. Používá se pro ovládací prvky seznam (list box), pole se seznamem (combo box), textová pole (text box), radiová tlačítka (radio button) a zaškrtávací políčka (check box). - 112 - wcFindItem Určuje odpovídající index první položky v ovládacích prvcích seznam (list box) nebo pole se seznamem (combo box), který se shoduje se specifikovaným textem. wcGetItem Vrací název položky, jejíž index je specifikován, z ovládacích prvků seznam (list box) nebo pole se seznamem (combo box). wcGetItemData Vrací celočíselnou hodnotu vlastnosti položky, jejíž index je specifikován, z ovládacích prvků seznam (list box) nebo pole se seznamem (combo box). wcInsertItem Vloží na specifikovanou pozici text (řetězec) do ovládacích prvků seznam (list box) nebo pole se seznamem (combo box). wcLoadlist Nahradí obsah ovládacích prvků seznam (list box) nebo pole se seznamem (combo box) novými položkami ze specifikovaného souboru. wcLoadText Nahradí obsah ovládacího prvku textového pole (text box) novým textem ze specifikovaného souboru. wcSavelist Nahradí obsah specifikovaného souboru položkami z ovládacích prvků seznam (list box) nebo pole se seznamem (combo box). Pokud soubor neexistuje, bude vytvořen. wcSaveText Uloží text obsažený v ovládacím prvku textové pole do specifikovaného souboru. Pokud soubor neexistuje, bude vytvořen. wcSetItemData Přiřadí celočíselnou hodnotu do vlastnosti položky, jejíž index je specifikován, v ovládacím prvku seznam (list box) nebo pole se seznamem (combo box). - 113 - Práce s ovládacími prvky ActiveX Ovládací prvky ActiveX - původně známé pod názvem ovládací prvky OLE nebo OCX – jsou samostatné softwarové komponenty, které provádějí standardním způsobem určité funkce. Ovládací prvky ActiveX definují standardní rozhraní pro opakovaně použitelné komponenty. Ovládací prvky nejsou samostatné aplikace. Spíše jsou to servery, které jsou umístěny do řídicího kontejneru. Aby bylo možné použít Ovládací prvky ActiveX, musí být umístěny v kontejneru ActiveX. Program InTouch je kontejner ActiveX. Program Microsoft VisualBasic a internetové prohlížeče jsou také kontejnery ActiveX. Ovládací prvky ActiveX se chovají přesně jako předkonfigurované objekty programu InTouch, vyjma případu, kdy přináší závažnou novou funkci do aplikací programu InTouch. Ovládací prvky ActiveX můžete vytvořit pomocí Visual Basic, Microsoft VC++ nebo jiných vývojových nástrojů třetí strany. Ovládací prvky ActiveX pro určitou funkci můžete také zakoupit u třetích stran. Tyto ovládací prvky jsou zabaleny do formy OCX. Wonderware InTrack vám také poskytuje několik Ovládací prvků ActiveX. Navíc ovládací prvek ActiveTrend programu IndustrialSQL Vám umožňuje běh programu IndustrialSQL Trend (nebo funkční podsoubor) z programu InTouch a ovládací prvek ActiveEvent Vám umožní ohlásit subsystému IndustrialSQL Event, když nastala událost v jiné aplikaci. Existují tři hlavní složky ovládacích prvků ActiveX: vlastnosti, metody a události. Vlastnosti jsou velmi podobné proměnným, které můžete modifikovat, například Calendar.day, Control.height atd. Metody jsou podobné voláním funkcí skriptu, které můžete vyvolávat z kontejneru. Například Browser.Navigate("http://www.wonderware.com"), Engine.start(). Události nastávají prostřednictvím kontejneru ActiveX. Například Control.click (shift). FileViewer.DoubleClick (název) atd. Program InTouch Vám umožní přístup k vlastnostem, metodám a událostem ovládacího prvku ActiveX. Tyto vlastnosti můžete asociovat s proměnnými programu InTouch nebo můžete k nim přistupovat prostřednictvím skriptů QuickScript programu InTouch. Poznámka: Aby skript události ovládacího prvku ActiveX fungoval náležitým způsobem, objekt ActiveX, pro který byl skript vytvořen, musí být natažen do paměti. Jestliže se okno obsahující ovládací prvek ActiveX zavře, skripty od událostí tohoto ovládacího prvku ActiveX nebo jakékoli jiné skripty QuickScript programu InTouch obsahující skriptové funkce propojené s tímto ovládacím prvkem ActiveX se neprovedou správným způsobem. Ve vaší aplikaci InTouch můžete použít jeden nebo více ovládacích prvků ActiveX. Program InTouch Vám umožní snadno zvolit a vložit ovládací prvek ActiveX do jakéhokoli okna aplikace a přidat je do vaší nástrojové lišty Wizards/ActiveX (Předkonfigurované objekty/ActiveX). Skripty od událostí ovládacích prvků ActiveX můžete také importovat z jedné aplikace do jiné. ¾ Použití ovládacího prvku ActiveX v programu InTouch 1. Nainstalujte ovládací prvek (prvky), který (které) chcete použít. 2. Zvolte a vložte ovládací prvek ActiveX do okna programu WindowMaker. 3. Nakonfigurujte vlastnosti ovládacího prvku ActiveX a přiřaďte jim proměnné. 4. Připojte skripty k událostem (Event) ovládacího prvku ActiveX. 5. Vyvolejte metody ActiveX a nastavte vlastnosti ovládacího prvku ActiveX ve skriptech ActiveX Event nebo v jiných skriptech QuickScript. - 114 - Na ovládacím prvku ActiveX lze provést v programu WindowMaker následující úpravy: • Velikost ovládacího prvku ActiveX lze změnit, pokud je ovládacím prvkem podporována změna velikosti. • Ovládací prvky ActiveX lze duplikovat, vyjímat, kopírovat, vkládat nebo mazat. • Pro ovládací prvek ActiveX lze použít všechny příkazy zarovnání (doleva, doprava, nahoru, dolů, středový bod). • Ovládací prvky ActiveX lze přidávat do nástrojové lišty Wizards/ActiveX (Předkonfigurované objekty/ActiveX). • Ovládací prvky ActiveX lze začleňovat společně s jinými objekty do vytvářené buňky. • Příkazy nabídky programu WindowMaker a jejich ekvivalentní nástroje nástrojové lišty lze použít přímo pro modifikaci mnoha vlastností ActiveX. Například Reduce Font (Zmenšit písmo), Line Color (Barva čáry), Fill Color (Barva výplně) atd. Program InTouch nepodporuje následující typy ovládacích prvků ActiveX: ¾ • Ovládací prvky bez oken • Místo jednoduchého rámce (skupinový rámeček) • Kontejnery • Řídicí prvky dat • Odbavovací objekty • Pole, binárně velké objekty, objekty, variantní typy Instalace nebo odstranění ovládacího prvku ActiveX 1. V nabídce Special (Speciální) ukažte na Configure (Konfigurovat) a potom klepněte na Wizard/ActiveX Installation (Instalace předkonfigurovaných objektů/ActiveX) nebo v Application Explorer (Aplikačním průzkumníku) klepněte dvakrát na Wizard/ActiveX Installation (Instalace předkonfigurovaných objektů/ActiveX). Objeví se dialogové okno Wizard/ActiveX Installation (Instalace předkonfigurovaných objektů/ActiveX). TIP 2. V Application Explorer (Aplikačním průzkumníku) můžete také klepnout pravým tlačítkem myši na Wizard/ActiveX Installation (Instalace předkonfigurovaných objektů/ActiveX) a potom na Open (Otevřít). Klepněte na záložku ActiveX Control Installation (Instalace ovládacího prvku ActiveX) pro aktivaci karty ActiveX Control Installation (Instalace ovládacího prvku ActiveX): - 115 - 3. V seznamu Installed ActiveX controls (Instalované ovládací prvky ActiveX) zvolte ovládací prvek (prvky), který (které) chcete odstranit z Vaší aplikace a potom klepněte na Remove (Odstranit). Objeví se interaktivní okno se zprávou požadující potvrzení vymazání. TIP 4. Pro volbu skupiny ovládacích prvků klepněte na první volbu, držte stisknutou klávesu Shift a zvolte poslední volbu. Všechny ovládací prvky mezi volbami se také zvolí. Pro výběr několika ovládacích prvků, které nejsou uvedeny postupně, klepněte na první ovládací prvek, držte stisknutou klávesu Ctrl a potom klepněte na další ovládací prvky. Klepněte na Yes (Ano) pro odstranění ovládacího prvku (ovládacích prvků). Odstraněný ovládací prvek (odstraněné ovládací prvky) se přesune (přesunou) do seznamu Available ActiveX controls (Dostupné ovládací prvky ActiveX). Poznámka: Když odstraníte ovládací prvek, nedojde k jeho vymazání. Není však již natažený do paměti. Proto nebude pracovat náležitým způsobem. 5. Instalace ovládacích prvků ActiveX se provádí jejich zvolením v seznamu Available ActiveX controls (Dostupné ovládací prvky ActiveX) a následným klepnutím na Install (Instalovat). Poznámka: Tlačítko Install (Instalovat) je aktivní jen tehdy, když ovládací prvky jsou zobrazeny v seznamu Available ActiveX controls (Dostupné ovládací prvky ActiveX). 6. Klepněte na Close (Zavřít). - 116 - Umístění ovládacího prvku ActiveX v okně ¾ 1. Klepněte na nástroj Wizard Dialog (Dialog předkonfigurovaného objektu) na nástrojové liště Wizards/ActiveX (Předkonfigurované objekty/ActiveX). Objeví se dialogové okno Wizard Selection (Výběr předkonfigurovaného objektu). 2. V seznamu předkonfigurovaných objektů klepněte na kategorii ActiveX Controls (Ovládací prvky ActiveX). V oblasti zobrazení se zobrazí všechny dostupné ovládací prvky ActiveX. 3. Zvolte ovládací prvek ActiveX, který chcete použít, a potom klepněte na OK nebo dvakrát klepněte na ovládací prvek. Dialogové okno se zavře a znovu se objeví vaše okno. TIP Přidání ovládacího prvku do nástrojové lišty Wizards/ActiveX (Předkonfigurované objekty/ActiveX) se provádí klepnutím na Add to toolbar (Přidat do nástrojové lišty). Jakmile jste přidali ovládací prvek do nástrojové lišty Wizards/ActiveX (Předkonfigurované objekty/ActiveX), můžete jej kdykoli zvolit a vložit do Vašeho otevřeného okna. Počet ovládacích prvků, které můžete vložit do nástrojové lišty je limitován vašimi systémovými zdroji. 4. Když se vrátíte do okna, kurzor se změní na rohový symbol v okně, kde chcete vložit ovládací prvek ActiveX. 5. Dvojitě klepněte na ovládací prvek pro provedení konfigurace jeho vlastností. . Klepněte na místo Více informací o nástrojových lištách programu WindowMaker je uvedeno v kapitole 1, "Prvky programu WindowMaker". - 117 - Odstranění ovládacích prvků ActiveX z nástrojové lišty ¾ 1. Klepněte na nástroj Wizard Dialog (Dialog předkonfigurovaného objektu) na nástrojové liště Wizards/ActiveX (Předkonfigurované objekty/ActiveX). Objeví se dialogové okno Wizard Selection (Výběr předkonfigurovaného objektu). 2. Klepněte na Remove from toolbar (Odstranit z nástrojové lišty). Objeví se dialogové okno Remove Wizard from Toolbar (Odstranit předkonfigurovaný objekt z nástrojové lišty). 3. Vyberte ovládací prvek (ovládací prvky) ActiveX, který (které) chcete odstranit z nástrojové lišty. Klepněte na OK. 4. Konfigurace ovládacího prvku ActiveX Když vložíte ovládací prvek ActiveX do okna programu InTouch, musíte konfigurovat jeho vlastnosti pro interakci s programem InTouch. Každý ovládací prvek musí být pojmenovaný pro odkaz ze skriptů QuickScript programu InTouch. Po vložení ovládacího prvku ActiveX se generuje výchozí název ovládacího prvku, jako je např. Calendar1. (Tento název ovládacího prvku bude společný v rámci vaší aplikace programu InTouch.) Vlastnosti ovládacího prvku ActiveX musí být přiřazeny proměnným programu InTouch. Každý typ vlastnosti musí být přiřazen k ekvivalentnímu typu proměnné programu InTouch. ¾ Pojmenování ovládacího prvku ActiveX 1. Vložte ovládací prvek ActiveX do Vašeho okna programu WindowMaker. 2. Klepněte dvakrát na ovládací prvek nebo klepněte pravým tlačítkem myši a potom klepněte na Properties (Vlastnosti). Objeví se příslušné dialogové okno Properties (Vlastnosti) ovládacího prvku. Poznámka: Každé dialogové okno Properties (Vlastnosti) ovládacího prvku ActiveX je pro ovládací prvek jedinečné. Počet zobrazených záložek závisí na vlastnostech jednotlivého ovládacího prvku. Některé ovládací prvky ActiveX mohou vyžadovat, abyste nakonfigurovali více vlastností než u ostatních ovládacích prvků. Například některé ovládací prvky mohou vyžadovat, abyste nakonfigurovali jejich barvy a písma, zatímco jiné prvky nemusí mít tyto vlastnosti. Pro všechny ovládací prvky ActiveX však program InTouch přidá tři záložky; Control Name (Název ovládacího prvku), Properties (Vlastnosti) a Events (Události). Například: - 118 - 3. Klepněte na záložku Control Name (Název ovládacího prvku) a potom napište jedinečné jméno pro ovládací prvek ActiveX v poli ControlName. Pro každý ovládací prvek ActiveX použitý ve vaši aplikaci InTouch musíte definovat jedinečné jméno. Název ovládacího prvku se používá ve skriptových funkcích pro identifikaci ovládacího prvku. Například: #Calendar1.day = Tag1; #Calendar1.year = 1997; Poznámka: Implicitně je určen název ovládacího prvku pomocí ProgID pro tento ovládací prvek. ProgID jsou názvy, které se zadávají do systémového registru, když se instalují ovládací prvky ActiveX do počítače. Když se umístí instance tohoto ovládacího prvku do aplikace programu InTouch, připojí se k němu ProgID ovládacího prvku získaný ze systémového registru a indexové číslo, které se objeví v názvu ovládacího prvku, jako např. Calendar1. Pokud používáte výchozí název ovládacího prvku, vytvoří se nová instance ovládacího prvku s jedinečným názvem za následujících okolností: • zvolením Duplicate (Duplikovat) v nabídce Edit (Úpravy); • zvolením Cut (Vyjmout) nebo Copy (Kopírovat) a potom Paste (Vložit) v nabídce Edit (Úpravy); • zvolením Save Window As (Uložit okno jako) v nabídce File (Soubor); • klepnutím na Undo (Zpět) a potom Redo (Provést znovu); • importem okna, které obsahuje ovládací prvek. Změna názvu ovládacího prvku ActiveX Nejlépe je neměnit názvy ovládacích prvků ActiveX; existuje však několik speciálních případů, kdy je změna názvu nezbytná. Předpokládejme, že používáte výchozí název ovládacího prvku, například Calendar1. Pokud později vymažete ovládací prvek ActiveX a potom jej vytvoříte znovu, program InTouch automaticky zvýší název ovládacího prvku. Duplikovaný název ovládacího prvku ActiveX bude v tomto případě Calendar2. Aby vaše existující skripty pracovali s novým ovládacím prvkem, musíte přejmenovat nový kontrolní prvek z Calendar2 na Calendar1. - 119 - Ovládací prvky ActiveX musí mít jedinečné názvy. Když provedete editaci názvu ovládacího prvku a klepnete na OK nebo na Apply (Použít), název se porovná s tabulkou existujících názvů ovládacích prvků. Jestliže název již v tabulce neexistuje, název ovládacího prvku se změní a uloží. Pokud název již existuje, zobrazí se chybová zpráva. Musíte specifikovat jedinečný název ovládacího prvku. Konfigurace vlastností ovládacích prvků ActiveX Vlastnosti, které můžete nakonfigurovat pro jednotlivý ovládací prvek ActiveX, jsou určovány návrhářem ovládacího prvku ActiveX. Každá karta vlastností Properties (Vlastnosti) ovládacího prvku ActiveX zobrazuje tři sloupce: Property (Vlastnost), Range (Rozsah) a Associated Tag (Přiřazená proměna). Sloupce Property (Vlastnost) a Range (Rozsah) jsou určeny jen pro čtení. Sloupec Associated Tag (Přiřazená proměnná) se používá pro přiřazení proměnných programu InTouch s příslušnou vlastností ve sloupci Property (Vlastnost). Poznámka: Pokud klepnete na určité položky ve sloupci Range (Rozsah), objeví se šipka, na kterou můžete klepnout pro zobrazení seznamu možných hodnot položky. Položky v oblasti seznamu jsou určeny pouze pro účely prohlížení a nelze je měnit. ¾ Konfigurace vlastností ovládacího prvku ActiveX 1. Klepněte na záložku Properties (Vlastnosti) v dialogovém okně Properties (Vlastnosti) ovládacího prvku pro aktivaci karty Properties (Vlastnosti): 2. Klepněte uprostřed každé buňky ve sloupci Associated Tag (Přiřazená proměnná), napište proměnnou pro příslušnou vlastnost. TIP Pokud napíšete proměnnou, která není definována v Tagname Dictionary (Knihovně proměnných), budete nyní vyzváni k její definici. Klepnete-li dvojitě na prázdnou buňku nebo klepnete-li na tlačítko , objeví se Tag Browser (Prohlížeč proměnných) zobrazující proměnné pro zvolený zdroj proměnných. Klepněte dvakrát na proměnnou, kterou chcete použít, nebo ji zvolte a potom klepněte na OK. Proměnná se automaticky vloží do buňky. - 120 - Poznámka: Mezi inicializací proměnné a vytvořením ovládacího prvku ActiveX vzniká problém načasování. V důsledku tohoto problému načasování není možné zaručit, že počáteční hodnota proměnné bude mít vždy hodnotu přiřazené vlastnosti v ovládacím prvku ActiveX. Aby bylo možné vyřešit tento problém, vytvořte asociaci mezi událostí Startup (spuštění) a skriptem QuickScript programu InTouch. Ve skriptu QuickScript implementujte logiku, která nastaví hodnotu proměnné do vlastnosti ovládacího prvku. To lze provést pomocí přiřazovacího příkazu. Například: #ThisControl.Property = MyTag; Jakmile se událost spustí, provede se skript QuickScript a vlastnost ovládacího prvku a hodnota proměnné bude v synchronizaci. Od té doby dochází k obvyklé výměně hodnot mezi vlastností a proměnnou. Více informací o funkci Tag Browser (Prohlížeč proměnných) je uvedeno v kapitole 6 "Tagname Dictionary (Databáze proměnných)". 3. Jakmile jste specifikovali proměnnou, dvojitě klepněte do buňky na levé straně proměnné pro výběr směru asociace proměnné k její příslušné vlastnosti. (Nepřetržitým klepáním můžete cyklicky procházet různými volbami směru asociace. Volby směru asociace jsou popsány níže.) TIP Ve sloupci Associated Tag (Asociovaná proměnná) jsou ve skutečnosti dvě pole. Jsou to výběr směru asociace a vstup proměnné. Ovládací prvek ActiveX určuje směr asociace a typ vlastnosti určuje typ proměnné, který je třeba použít. Lze zvolit jednosměrnou nebo dvousměrnou asociaci. Jestliže však zvolený směr asociace není pro vlastnost nebo proměnnou platný, ovládací prvek ji podle toho automaticky změní. Zvolíte-li například , když se změní hodnota proměnné, její asociovaná vlastnost se příslušným způsobem změní. Dole se objeví určitá podmnožina souborů založených na potenciálním vztahu mezi vlastností a proměnnou. Pokud například asociujete vlastnost k zapisovatelné proměnné, uvidíte rozdílný soubor asociací, než když asociujete stejnou vlastnost k proměnné určené jen pro čtení. Zvolte příslušný symbol asociace následujícím způsobem: Proměnná nastaví hodnotu asociované vlastnosti. Tento symbol udává, že vlastnost je určena pouze pro čtení a proměnná nemůže měnit hodnotu vlastnosti. Vlastnost nastaví hodnotu asociované proměnné. Tento symbol udává, že proměnná je určena pouze pro čtení a vlastnost nemůže měnit hodnotu proměnné. Hodnotu lze nastavit jak z proměnné, tak z vlastnosti. (Proměnná má přednost.) Proměnná a vlastnost jsou určeny jen pro čtení. Proměnná může měnit hodnotu vlastnosti, ale vlastnost nemůže měnit hodnotu proměnné. Vlastnost nemůže měnit hodnotu proměnné, protože vlastnost není připojitelná nebo proměnná je určena je pro čtení. Vlastnost může měnit hodnotu proměnné, ale proměnná nemůže měnit hodnotu vlastnosti. Proměnná nemůže měnit hodnotu vlastnosti, protože vlastnost je určena je pro čtení. 4. Klepněte na OK. - 121 - Poznámka: K vlastnostem můžete mít přístup nebo můžete změnit vlastnosti také prostřednictvím skriptů ActiveX Event a/nebo jiných skriptů QuickScript programu InTouch. Všechny skriptové funkce ActiveX jsou označeny znakem # (libra). Platná syntaxe pro přístup k vlastnostem ActiveX zní: #ControlName.PropertyName Příklady: #Calendar1.Day = 29; Tag1 = #Calendar1.year; Další informace najdete v části "Konfigurace ovládacího prvku ActiveX". Poznámka: Když se změní karta vlastnosti ActiveX, změny jsou automaticky účinné bez toho, zda klepnete nebo neklepnete na tlačítko "Použít" nebo "Storno" na straně vlastnosti. Vlastnosti aktualizované na straně výchozích vlastností ovládacího prvku se nemusí odrazit na straně vlastností ActiveX programu InTouch. Přepnutím zpět a vpřed mezi kartami zaktualizuje stranu vlastností. Použití metod ovládacího prvku ActiveX Metody ovládacího prvku ActiveX jsou podobné jako vlastnosti ovládacího prvku ActiveX. Metody aktivujete při běhu programu (WindowViewer). Přístup k metodám ovládacího prvku ActiveX je možný prostřednictvím skriptů události ActiveX a/nebo jiných skriptů QuickScript programu InTouch. Poznámka: Aby skript události ActiveX fungoval náležitým způsobem, ovládací prvek ActiveX, pro který byl skript vytvořen, musí být natažen do paměti. Jestliže se okno obsahující ovládací prvek ActiveX zavře, jeho skripty události ActiveX nebo jakékoli jiné skripty QuickScript programu InTouch obsahující skriptové funkce asociované s tímto ovládacím prvkem ActiveX se neprovedou správným způsobem. ¾ Použití metod a/nebo vlastností ActiveX 1. Klepněte v dialogovém okně Properties (Vlastnosti) ovládacího prvku na záložku Events (Události) pro aktivaci karty vlastností Events (Události): - 122 - 2. Dvojitě klepněte na prázdnou buňku ve sloupci Script (Skript). Zobrazí se editor ActiveX Event Scripts (Skripty události ActiveX). 3. V nabídce Insert (Vložit) klepněte na ActiveX. Zobrazí se ActiveX Control Browser (Prohlížeč ovládacích prvků ActiveX). 4. V seznamu Control Name (Název ovládacího prvku) zvolte ovládací prvek ActiveX, k jehož metodám nebo vlastnostem chcete provést přístup. V seznamu jsou uvedeny názvy všech ovládacích prvků ActiveX, které se právě používají ve Vaší aplikaci. - 123 - Poznámka: Pokud vyberete ThisControl (Tento ovládací prvek) místo aktuálního Control Name (Názvu ovládacího prvku), zobrazené metody a vlastnosti budou určeny pro ovládací prvek ActiveX, který je aktuálně zvolený ve Vaší aplikaci. Zvolením ThisControl (Tento ovládací prvek) místo aktuálního Control Name (Názvu ovládacího prvku) můžete vytvořit obecné funkce skriptu ActiveX Event. Tyto funkce můžete potom zkopírovat a vložit do jiného skriptu ActiveX Event nebo jakéhokoli jiného skriptu QuickScript programu InTouch bez provedení změny názvu ovládacího prvku v novém skriptu. Například: #ThisControl.Navigate ("http:\\www.wonderware.com"); #ThisControl.Navigate(URL); { kde URL je proměnná} K ovládacímu prvku ThisControl je možný přístup pouze prostřednictvím skriptů ActiveX Event. Není k němu přístup prostřednictvím jakéhokoli jiného typu skriptu QuickScript programu InTouch. ThisControl (Tento ovládací prvek) se používá pro zápis obecných odkazů ve skriptech událostí, které lze znovu použít v jakékoli instanci stejného typu ovládacího prvku. Pokud se zvolí ThisControl (Tento ovládací prvek), stejný seznam vlastností a metod se zobrazí jako seznam pro specifický název ovládacího prvku. 5. V seznamu Method / Property (Metoda / Vlastnost) zvolte metodu nebo vlastnost, kterou chcete použít ve Vašem skriptu. TIP 6. Metody jsou položky v seznamu, které obsahují kulaté závorky. Například Display(). Klepněte na Done (Hotovo). Zvolený název ovládacího prvku a metody nebo vlastnosti se automaticky vloží do vašeho skriptu. TIP Přístup k metodám a vlastnostem ovládacích prvků ActiveX lze také získat prostřednictvím nabídky Insert (Vložit) ve všech ostatních typech skriptů QuickScript programu InTouch. Použití parametrů událostí ovládacích prvků ActiveX Události ovládacích prvků ActiveX můžete provádět při běhu programu (WindowViewer) návrhem jednotlivé akce a jejím přiřazením k události. Pokud například váš ovládací prvek ActiveX má událost reagující na vznik chyby, můžete vytvořit skript QuickScript ActiveX Event, který zobrazí okno s chybovou zprávou, když dojde k chybě. Skripty událostí ActiveX jsou určeny pro reakce na události. Ke každé události můžete vytvořit pojmenovaný skript. ¾ Použití událostí ActiveX Event 1. Klepněte dvakrát na ovládací prvek ActiveX, pro který chcete vytvořit skript události ActiveX. Objeví se zvolené dialogové okno Properties (Vlastnosti) ovládacího prvku ActiveX. 2. Klepněte na záložku Events (Události) pro aktivaci karty vlastností Events (Události): - 124 - 3. Ve sloupci Event (Událost) zvolte událost, ke které chcete asociovat skript události ActiveX. 4. V příslušné buňce ve sloupci Script (Skript) zapište jedinečný název pro skript události ActiveX, který chcete vytvořit, a potom klepněte dvakrát na název nebo klepněte na OK. Objeví se následující okno se zprávou. Klepněte na OK. Objeví se editor skriptů ActiveX Event zobrazující název, který jste zapsali ve vstupním poli Name (Název) (viz níže uvedený příklad). Pokud dvojitě klepnete na prázdnou buňku Script (Skript), když se zobrazí editor skriptů ActiveX Event, musíte potom zapsat název pro skript události ActiveX. TIP Jestliže skript události ActiveX, který chcete použít již existuje, klepněte na tlačítko . Objeví se dialogové okno Choose ActiveX Script (Vybrat skript ActiveX) obsahující všechny existující skripty události ActiveX ve Vaší aplikaci. - 125 - 5. V nabídce Insert (Vložit) klepněte na ActiveX. Zobrazí se ActiveX Control Browser (Prohlížeč ovládacích prvků ActiveX). 6. V seznamu Control Name (Název ovládacího prvku) zvolte This Event (Tato událost) pro získání přístupu k parametrům pro zvolenou událost. V tomto případě se jedná o zvolenou událost Error (Chyba). - 126 - Poznámka: K položce ThisEvent (Tato událost) je možný přístup pouze prostřednictvím skriptů ActiveX Event. Není k němu přístup prostřednictvím jakéhokoli jiného typu skriptu QuickScript programu InTouch. Pro získání přístupu k parametrům události pro ovládací prvek ActiveX musíte zvolit ThisEvent (Tato událost). Parametry události obsahují užitečné informace. Můžete mít například událost aktivovanou klávesou a chcete vědět "V pořádku, víme tedy že byla stisknuta klávesa, ale která klávesa byla stisknuta?" Je-li tato informace důležitá, vývojář pravděpodobně přidal parametr události pro uložení kódu klávesy. Pro získání přístupu k tomuto parametru musíte zvolit ThisEvent (Tato událost) a potom zvolit parametr, který by mohl být nazván keypressedkeycode. Zvláště je třeba poznamenat, že většina událostí ActiveX nemají parametry. Události mohou nebo nemusí předávát parametry při běhu programu. Přístup k parametrům události lze získat použitím klíčového slova ThisEvent (Tato událost). Například: MyActiveXErrorNumber = #ThisEvent.ErrorNumber; Kde: # označuje, že se jedná o funkci skriptu ActiveX. ThisEvent (Tato událost) se vztahuje k události zvolené na kartě vlastností Event (Událost) ovládacího prvku ActiveX a ErrorNumber (Číslo chyby) je parametr předávaný zvolenou událostí. 7. V seznamu Method / Property (Metoda / Vlastnost) zvolte metodu nebo vlastnost, kterou chcete použít ve Vašem skriptu ActiveX Event. - 127 - 8. Klepněte na Done (Hotovo). Zvolený název ovládacího prvku – v tomto případě ThisEvent (Tato událost) - a zvolený parametr události se automaticky vloží do Vašeho skriptu v místě kurzoru. Například: Poznámka: Odkaz ve skriptu na ActiveX Event se skládá z následujících položek: Značka (#) označuje "Já jsem odkaz na ActiveX". Název ovládacího prvku. Omezující znak (tečka (.)) pro oddělení názvu ovládacího prvku od vyvolávané vlastnosti nebo metody. Vlastnost, metoda nebo parametr události. 9. Klepněte na OK pro uložení Vašeho skriptu ActiveX Event a zavření editoru skriptů. Objeví se znovu zvolené dialogové okno Properties (Vlastnosti) ovládacího prvku ActiveX. 10. Klepněte na OK pro uzavření dialogového okna Properties (Vlastnosti) nebo můžete pokračovat ve tvoření skriptů ActiveX Event. - 128 - Přizpůsobení Vašeho prostředí běhu programu Tak jako je tomu v programu WindowMaker, existuje mnoho vlastností, které můžete nastavit pro přizpůsobení prostředí běhu programu (WindowViewer). Můžete například nastavit rychlost blikání pro blikající objekty, překročení časového limitu nečinnosti systému a výstražné hodnoty, okna, která se automaticky otevřou, když se spustí program WindowViewer pomocí jeho ikony nebo příkazem z nabídky. Nastavení obecných vlastností programu WindowViewer ¾ Nastavení vlastností programu WindowViewer 1. TIP V nabídce Special (Speciální) ukažte na Configure (Konfigurovat) a potom klepněte na WindowViewer nebo v Application Explorer (Aplikačním průzkumníku) ve složce Configure (Konfigurovat) klepněte dvakrát na WindowViewer. Zobrazí se dialogové okno WindowViewer Properties (Vlastnosti programu WindowViewer) s aktivní kartou vlastností General (Obecné). V Application Explorer (Aplikačním průzkumníku) můžete také klepnout pravým tlačítkem myši na WindowViewer a potom klepnout na Open (Otevřít). - 129 - - 130 - TIP 3. TIP 4. Klepnete-li pravým tlačítkem myši na vstupní textová pole v libovolném dialogovém okně, objeví se nabídka s příkazy, které lze aplikovat na zvolený text. Zvolte Start up as icon (Spustit jako ikona), pokud chcete program WindowViewer spustit jako ikonu místo jako okno. Zvolte tuto možnost volby jen tehdy, když používáte program WindowViewer pro sběr dat pro jiné aplikace vzájemně propojené vstupem/výstupem. Zvolte Close WindowViewer (Zavřít WindowViewer), pokud chcete, aby se program WindowViewer automaticky zavřel, když spustíte program WindowMaker. TIP Pokud paměť nepředstavuje žádný problém a Vy často pomocí rychlého přepínače přecházíte mezi programy WindowViewer a WindowMaker, neměla by se tato možnost volit. Možnost volby rychlého přepínače se volí v dialogovém okně WindowMaker Properties – General (Vlastnosti WindowMaker – Obecné). 5. Když zvolíte tuto možnost, automaticky se zvolí také možnost Close on Transfer to WindowViewer (Zavřít při přechodu k WindowViewer) na kartě vlastností WindowMaker Properties / General (Vlastnosti WindowMaker / Obecné). 6. Zvolte Close all open windows (Zavřít všechna otevřená okna), pokud chcete, aby se všechna otevřená okna automaticky uzavřela, když chcete přejít z programu WindowViewer do programu WindowMaker. TIP 7. Zvolením této vlastnosti se uvolní paměť ve Vašem systému. Zvolte Always Load Windows from Disk (Vždy načtěte okna z disku), pokud systém má málo paměti. TIP Zvolením této možnosti volby způsobí, aby se okna Vaší aplikace načetla z disku a neuložila do paměti RAM, když je zavřete. 8. V poli Minimum Memory to keep free (Minimální volná paměť) napište počet Kb paměti, který chcete udržovat volný pro ostatní aplikace systému Windows. 9. Zvolte Optimize performance for memory (Optimalizovat výkonnost z hlediska paměti) pro podstatné zvýšení rychlosti aktualizace výkresu. Zvolením této možnosti volby se podstatně zvýší rychlost aktualizace textových polí. TIP Pokud má váš systém málo paměti, tuto možnost volby neaktivujte. 10. V poli Warning (Varování) napište počet vteřin, které mohou uplynout bez činnosti operátora (klepnutí myši nebo stisknutí kláves) předtím, než se systémová diskrétní proměnná $InactivityWarning nastaví na 1 (Pravdivý). TIP Proměnnou $InactivityWarning můžete použít v podmínkovém skriptu QuickScript pro zobrazení okna varujícího operátora, že se odhlásil/odhlásila ze systému. Klepne-li operátor tlačítkem myši, stiskne klávesu nebo provede činnost pomocí jakéhokoli jiného ukazovacího zařízení předtím, než uplyne časová prodleva, nedojde k odhlášení. Proměnná $InactivityWarning a časovací jednotka se vynuluje. 11. V poli Timeout (Časová prodleva) napište počet vteřin, které mohou uplynout bez činnosti operátora (klepnutí myši, stisknutí kláves atd.) předtím, než se systémová diskrétní proměnná $InactivityTimeout nastaví na 1 (Pravdivý). Když je proměnná - 131 - $InactivityTimeout pravdivá, zamění systém přihlášeného operátora na rezervované jméno "None (Žádný)" a nastaví bezpečnostní proměnnou $AccessLevel na 0. TIP Proměnnou $InactivityTimeout můžete použít v podmínkovém skriptu QuickScript pro zobrazení okna sdělujícího operátorovi, že se odhlásil/odhlásila z aplikace. Vlastnost Timeout (Časová prodleva) můžete použít nezávisle na vlastnosti Warning (Varování). Hodnota Timeout (Časová prodleva) musí být větší než hodnota Warning (Varování) pro náležité použití obou systémových proměnných. Hodnota Warning (Varování) se například stane pravdivou po 30 vteřinách nečinnosti a hodnota Timeout (Časová prodleva) se stane pravdivou po dalších 15 vteřinách (pro celkový počet 45 vteřin) nečinnosti. 12. V poli Tick Interval (Interval časování) zapište interval rychlosti, který použije program InTouch pro kontrolu jeho interní časovací jednotky. Poznámka: Toto nastavení ovládá, jak rychle se provedou skripty QuickScript aplikace While Running (Při běhu), okno While Showing (Při zobrazení), podmínka While On True/On False (Při pravdivé/nepravdivé hodnotě), akce klávesy a dotykových tlačítek While Down (Ve stisknuté poloze). Skripty se nemohou provést rychleji než každých 10 milisekund v operačním systému Windows NT nebo každých 50 milisekund v operačním systému Windows 2000. Více informací je uvedeno v kapitole 8, "Vytváření skriptů QuickScript v programu InTouch". 13. V poli Update Time Variables every (Aktualizovat časové proměnné každých) zapište frekvenci (v milisekundách), ve které chcete, aby program WindowViewer aktualizoval systémové časově založené proměnné, jako jsou $Msec, $Second, $Minute atd. TIP Doporučujeme vám použít výchozí nastavení 1000 milisekund. Můžete však napsat nulu, aby se zamezilo aktualizaci všech časových proměnných. 14. Zvolte Beep when objects touched (Zvuková signalizace při dotyku objektů), pokud chcete, aby se v programu WindowViewer ozvala zvuková signalizace při zvolení všech dotykově citlivých objektů. 15. Zvolte Update all trends "Fast" (Aktualizovat všechny trendy "rychle"), pokud chcete, aby se Vaše objekty trendů aktualizovaly rychleji. Poznámka: Zvolte tuto možnost volby, pokud jste si absolutně jisti, že žádné objekty nepřekrývají objekty reálných trendů. Pokud zvolíte tuto možnost volby a jakýkoli objekt překrývá objekt trendu, nebude nakreslen náležitým způsobem. 16. Zvolte Debug Scripts (Ladit skripty), pokud chcete, aby se vypsala zpráva do programu Log Viewer vždy, když se provede skript QuickScript. TIP Zvolíte-li možnost volby nabídky Debug (Ladit) na kartě vlastností WindowViewer Properties/Window Configuration (Vlastnosti WindowViewer/Konfigurace okna), budete schopni zapnout nebo vypnout tento příkaz při běhu programu z nabídky Special (Speciální) programu WindowViewer. - 132 - 17. Zvolte Use old SendKeys (Použít staré zasílací klíče) jen tehdy, když používáte mezinárodní aplikaci, která byla vyvinuta pomocí programu InTouch verze 3.26 nebo nižší. (Je to dědičná možnost volby a nepoužívá se ve FactorySuite.) Poznámka: Use old SendKeys (Použít staré zasílací klíče) je dědičná možnost volby a nepoužívá se pro program FactorySuite. 18. V polích Slow, Medium, Fast (Pomalu, Středně, Rychle) zapište rychlosti (v milisekundách), které chcete použít pro odkazy blikajících animací. 19. V poli I/O Retry Initiates (Podněty pro opakované propojení na vstupy/výstupy) napište počet vteřin, které mají uplynout předtím, než program znovu zkusí navázat spojení s I/O serverem. (Pole I/O Retry Initiates (Podněty pro opakované propojení na vstupy/výstupy) nemá žádný vliv, když se program InTouch napoprvé může úspěšně připojit k serveru vstupu/výstupu.) 20. Zvolte možnost volby Start Local Servers (Spustit místní servery), když chcete, aby se zobrazilo dialogové okno kdykoli, když spustíte program WindowViewer, a server, se kterým chcete komunikovat, není v činnosti. Například: Klepněte na Yes (Ano) pro spuštění serveru nebo klepněte na No (Ne) pro ignorování zprávy a zavření dialogového okna. 21. V sekci Hotlinks (Odkazy) můžete nastavit několik vlastností. V případě, že uživatel najede kurzorem myši oblast, na které je definováno animační propojení typu User Input (Uživatelský vstup), kolem takovéhoto objektu se vytvoří grafické zobrazení aktivní oblasti. Tuto vlastnost zapnete zaškrtávacím políčkem Show Halo around Hotlinks (Zobrazit ohraničení kolem odkazu).V případě že chcete aby ohraničená oblast kopírovala tvar objektu zaškrtněte políčko Halo follows object shape (Ohraničení kopíruje tvar objektu). V případě ohraničení ActiveX objektu zatrhněte pole Show Halo around ActiveX controls (Zobrazit ohraničení ActiveX prvku). 22. V sekci Keyboard (Klávesnice) můžeme nastavit obrazovkové klávesnice HMI InTouch. 23. Klepněte na OK pro uložení Vašeho nastavení vlastnosti a zavření editoru skriptů. Poznámka: Po provedení modifikace jakéhokoli z těchto parametrů se musí restartovat program WindowViewer, aby se změny aplikovaly. - 133 - Nastavení vlastností konfigurace okna programu WindowViewer ¾ Konfigurace okna programu WindowViewer 1. V nabídce Special (Speciální) ukažte na Configure (Konfigurovat) a potom klepněte na WindowViewer nebo v Application Explorer (Aplikačním průzkumníku) ve složce Configure (Konfigurovat) klepněte dvakrát na WindowViewer. Objeví se dialogové okno WindowViewer Properties (Vlastnosti programu WindowViewer). TIP V Application Explorer (Aplikačním průzkumníku) můžete také klepnout pravým tlačítkem myši na WindowViewer a potom klepnout na Open (Otevřít). 2. Klepněte na záložku Window Configuration (Konfigurace okna): TIP Klepnete-li pravým tlačítkem myši na vstupní textová pole v libovolném dialogovém okně, objeví se nabídka s příkazy, které lze aplikovat na zvolený text. Ve skupině nabídek zvolte nabídky a příkazy, které chcete zobrazit při běhu programu. 3. TIP 4. Implicitně se panel nabídek zobrazí, když WindowViewer běží. Zrušte možnost volby Menu Bar (Panel nabídek), aby se zamezilo zobrazení panelu nabídek. Zrušte příkaz WindowMaker, pokud chcete zamezit tomu, aby operátor nebyl schopen přepnout do programu WindowMaker program. (Zvolení této možnosti volby - 134 - nemá vliv na rychlý přepínač do programu WindowMaker.) 5. Zrušte nabídku Logic (Logika), pokud chcete zamezit, aby operátor spouštěl nebo zastavoval provádění všech skriptů QuickScript při běhu programu. Poznámka: Můžete použít systémovou proměnnou $LogicRunning, aby operátor byl schopen spustit a zastavit všechny skripty QuickScript. Pokud zvolíte možnost volby Allow CTRL-Break to stop scripts (Povolit zastavení skriptů pomocí CTRL-Break), operátor bude schopen ukončit provádění všech skriptů Quickscript bez ohledu na to, zda se nabídka Logic (Logika) zobrazí nebo ne. Asynchronní skripty QuickFunction, které se právě provádějí, nelze zastavit. Můžete však zabránit, aby se prováděly nové asynchronní skripty QuickFunction. 6. Nabídku Debug (Ladit) zvolte pouze tehdy, když potřebujete "vyladit" Vaší aplikaci. 7. Zvolte ovládací prvky Window (Okno), které chcete, aby byly dostupné při běhu programu. Poznámka: Možnost Control Menu (Řídicí nabídka) (nazývaná také Systémová nabídka) musíte zrušit, aby se skrylo tlačítko zavření (X) v horním pravém rohu aplikace.) 8. V poli Title Bar Text (Text titulkového pásu) napište název, který se má objevit v záhlaví okna aplikace při jejím běhu. Například: Firma ABC, Obraz APP1 Poznámka: Používáte-li "Propagační licenci", titulkový pás nelze měnit. 9. Zvolte Show Application Directory (Zobrazit adresář aplikace), pokud chcete vložit cestu adresáře aplikace do záhlaví okna. Například: Firma ABC, Obraz APP1 - C:\DEMOAPP1 10. Zvolte Hide Title Bar (Skrýt titulkový pás), pokud chcete skrýt záhlaví okna při běhu programu. - 135 - 11. Zvolte Impossible to Close (Nemožné zavřít), pokud chcete zabránit tomu, aby operátor mohl zavřít program WindowViewer. Poznámka: Možnost Control Menu (Řídicí nabídka) (nazývaná také nabídka Systém) musíte zrušit, aby se skrylo tlačítko zavření (X) v horním pravém rohu aplikace. 12. Zvolte Allow CTRL-Break to stop scripts (Povolit zastavení skriptů pomocí CTRL-Break), abyste umožnili operátorovi stisknout klávesovou zkratku CTRL + BREAK pro zastavení provádění všech skriptů QuickScript kdykoli je to nezbytné při běhu programu. Poznámka: Asynchronní skripty QuickFunction, které se právě provádějí, nelze zastavit. Můžete však zabránit, aby se prováděly nové asynchronní skripty QuickFunction. 13. Zvolte Disable ALT key (Vypnout klávesu ALT), pokud chcete vypnout klávesu ALT a zamezit, aby operátor mohl provádět příkazy nabídky pomocí klávesy ALT + akcelerátoru. Například ALT + F4 pro zavření aplikace. Poznámka: Možnost Control Menu (Řídicí nabídka) (nazývaná také nabídka Systém) musíte zrušit, aby se skrylo tlačítko zavření (X) v horním pravém rohu aplikace. 14. Zvolte Hide Cursor (Skrýt kurzor), pokud chcete zamezit zobrazení kurzoru při běhu programu, protože se používá dotyková obrazovka. 15. Zvolte Disable CTRL-ESC key (Vypnout klávesu CTRL-ESC), pokud chcete zamezit, aby operátor mohl získat přístup k nabídce Start operačního systému Windows pro zavření a/nebo přepnutí aplikací. 16. Zvolte Always Maximize (Vždy maximalizovat), pokud chcete, aby program WindowViewer byl vždy maximalizovaný. 17. Klepněte na OK pro uložení Vašich nastavení a zavření dialogového okna. Poznámka: Po provedení modifikace jakéhokoli z těchto parametrů se musí restartovat program WindowViewer, aby se změny aplikovaly. - 136 - Volba domovských oken programu WindowViewer ¾ Volba výchozích oken při spuštění programu WindowViewer 1. V nabídce Special (Speciální) ukažte na Configure (Konfigurovat) a potom klepněte na WindowViewer nebo v Application Explorer (Aplikačním průzkumníku) ve složce Configure (Konfigurovat) klepněte dvakrát na WindowViewer. Objeví se dialogové okno WindowViewer Properties (Vlastnosti programu WindowViewer). TIP 2. V Application Explorer (Aplikačním průzkumníku) můžete také klepnout pravým tlačítkem myši na WindowViewer a potom klepnout na Open (Otevřít). Klepněte na záložku Home Windows (Domovská okna): 3. Zvolte okno (okna), která se mají automaticky otevřít, když se přímo spustí program WindowViewer. Poznámka: Volby domovských oken nemají žádný vliv, když používáte rychlý přepínač pro spuštění programu WindowViewer. Domovská okna se automaticky otevřou, když spustíte program WindowViewer přímo pomocí ikony příkazu jeho nabídky. 4. Klepněte na OK. - 137 - Obrazovkové klávesnice v programu InTouch Uživatel může použít jednu ze tří obrazovkových klávesnic, které jsou k dispozici v programu InTouch. První klávesnicí je InTouch Keyboard (Standardní klávesnice, popřípadě číselná část klávesnice, programu InTouch). Tato obrazovková klávesnice je výchozí nastavenou klávesnicí ve všech aplikacích InTouch. Standardní numerická klávesnice programu InTouch má následující uspořádání: Druhou obrazovkovou klávesnicí , která je k dispozici v systému InTouch je Resizable Keyboard (Klávesnice s možností změny velikosti). Velikost této obrazovkové klávesnice je možné měnit za běhu programu, takže ji můžete zmenšit, abyste viděli aplikaci nebo ji naopak podle potřeby zvětšit popřípadě v rámci aplikace přesunout. Klávesnice s možností změny velikosti má v pravém dolním rohu tři šikmé proužky které ukazují, že je možné změnit její velikost. Klávesnice s možností změny velikosti má následující uspořádání: - 138 - Třetí obrazovkovou klávesnicí, která je k dispozici je Windows Keyboard (Klávesnice operačního systému Windows). Program InTouch přijímá vstupy z této obrazovkové klávesnice. Pokud potřebujete podrobnější informace o této klávesnici, která je součástí operačního systému Windows, nahlédněte prosím do dokumentace operačního systému. Uspořádání systémové klávesnice na obrazovce je následující: Konfigurace obrazovkové klávesnice v aplikaci WindowMaker Součástí programu InTouch jsou dvě obrazovkové klávesnice: • Standardní alfanumerické popřípadě numerická obrazovková klávesnice programu InTouch • Klávesnice programu InTouch s možností změny velikosti Program InTouch také podporuje obrazovkovou klávesnici, která je součástí operačního systému Windows . Obrazovkové klávesnice pomáhají uživatelům při zadávání vstupních hodnot v situacích, kdy se používá aplikace InTouch, ale k počítači, na kterém aplikace běží není připojena normální klávesnice. - 139 - ¾ Konfigurace obrazovkové klávesnice v programu WindowViewer 1. V nabídce Special (Speciální) ukažte na Configure (Konfigurovat) a potom klepněte na WindowViewer. 2. Pro nastavení standardní klávesnice programu InTouch, klepněte na InTouch Keyboard. Pro nastavení klávesnice typu Resizable Keyboard (Klávesnice s možností změny velikosti) nebo Windows Keyboard (Klávesnice operačního systému Windows), klepněte na požadovanou volbu a potom klepněte na OK. Poznámka: Pokud klepnete na Resizable Keyboard (Klávesnice s možností změny velikosti), klepněte na Options (Možnosti), abyste zvolili vlastnosti písma, ve kterém se zobrazuje popis kláves a vstupní řádek. - 140 - Použití obrazovkové klávesnice v programu WindowViewer Abyste mohli nastavenou obrazovkovou klávesnici používat v programu WindowViewer, musíte tuto klávesnici konfigurovat v programu WindowMaker. Více informací je uvedeno v odstavci „Konfigurace obrazovkové klávesnice v aplikaci WindowMakerMaker“. ¾ Použití obrazovkových klávesnic v programu WindowMaker 1. Proveďte konfiguraci obrazovkove klávesnice v programu WindowMaker. 2. Vytvořte vstupní odkaz na proměnnou ve vaší aplikaci v programu WindowMaker. V dialogovém okně Input Link Definition (Definice vstupního odkazu) klepněte na výběrové tlačítko Yes (Ano) v oblasti Keypad? (Klávesnice?), potom aplikaci spusťte v programu WindowViewer. 3. Klepněte na User input field (Pole uživatelského vstupu) . Zobrazí se klávesnice, kterou jste nakonfigurovali. 4. Abyste klávesnici použili, klepněte na klávesy se znaky, které je třeba zadat, potom klepněte na Enter nebo OK. Vzhled a ovládání programu ve stylu Microsoft Windows XP Operační systémy Microsoft Windows XP a Windows 2003 poskytují nový vzhled a ovládání, které se významně liší od standardu operačního systému Microsoft Windows 2000 a ostatních starších systémů.. Program InTouch Vám dovoluje vybrat vzhled oken a ovládacích prvků programu InTouch tak, aby měl program při běhu pod operačním systémem Windows XP stejný vzhled a ovládání jako vlastní operační systém. V tomto oddílu je uveden rozdíl mezi standardními vizuálními styly systému Windows 2000 a Windows XP, dále je uveden stručný popis, jak můžete vizuální styly upravit a jsou zde uvedeny příklady uživatelsky definovaných vizuálních stylů ve standardu Windows XP. Pokud Váš program InTouch běží pod operačním systémem Windows XP, program InTouch používá výchozí nastavení vizuálních stylů dle systému Windows XP. Pokud například Váš program běží na počítači s operačním systémem Windows 2000, okno programu InTouch Application Manager (Správce aplikací) vypadá následovně: - 141 - V operačním systému Microsoft Windows XP okno programu InTouch Application Manager (Správce aplikací) vypadá přibližně následovně: Všechny ovládací prvky a dialogová okna programu InTouch se zobrazují s použitím vizuálního stylu Windows XP. Například dialogové okno Touch - Action Script (Skript dotykově citlivých tlačítek) na počítači s operačním systémem Windows 2000 vypadá - 142 - přibližně následovně: Stejné dialogové okno Touch - Action Script (Skript dotykově citlivých tlačítek) se objeví na počítači s operačním systémem Window XP v následujícím vizuálním stylu: - 143 - Úpravy vizuálních stylů Windows XP Témata, která používá operační systém Windows XP jako souhrnné označení pro nastavení vzhledu pracovní plochy, ukazatele myši, ikon, spořiče obrazovky, oken, tlačítek atd. je možné upravit a tyto úpravy se promítnou do vizuálního stylu, ve kterém se zobrazí okna a ovládací prvky programu InTouch. Následující příklad ukazuje, jak je možné upravit výchozí téma operačního systému Windows XP a jak se tyto změny projeví při běhu programu InTouch. Podrobné pokyny a informace týkající se operačního systému Microsoft Windows XP naleznete v nápovědě operačního systému a v aplikaci Microsoft’s Help and Support Center (Středisko podpory a nápovědy), která je součástí operačního systému. ¾ Úprava vizuálních stylů Windows XP 1. V nabídce Start, ukažte na Settings (Nastavení) a klepněte na Control Panel (Ovládací panel). 2. Klepněte na Display (Zobrazení). Na záložce Themes (Témata) se objeví seznam témat. 3. Vyberte téma, které chcete upravit. Poznámka: vhodnější je vytvořit nový název pomocí volby Save as (Uložit jako). - 144 - - 145 - 4. Klepněte na záložku Appearance (Vzhled) a vyberte barvu v seznamu Color Scheme (Barevné schéma). Klepněte na Apply (Použít). 5. V nabídce Start ukažte na Programs (Programy), ukažte na Wonderware a klepněte na InTouch. Otevře se okno programu Application Manager (Správce aplikací). Program InTouch uvidíte zobrazený v tématu, které jste zvolili. - 146 - Zapnutí filtru klávesnice Aplikace může být navržena a používána tak, aby odlišovala různé úrovně přístupu k funkčnostem operačního systému. Pokud máte operátory s různými přístupovými úrovněmi, lze pro některé uživatele zapnout filtr klávesnice. Jiní uživatelé, jako např. administrátor, budou moci využívat jakékoli klávesy. Například, pokud aplikaci používá operátor bez zvláštních přístupových práv, po stisku kláves Ctrl-Alt-Del se objeví dialogové okno Windows Security (Zabezpečení systému Windows). Jediné dostupné tlačítko je Cancel (Storno). Uživatel tak nemůže využít za běhu aplikace InTouch ostatní volby jako Lock Computer (Uzamknout počítač), Log Off (Odhlásit se), Shut Down (Vypnout), Change Password (Změnit heslo) nebo Task Manager (Správce úloh). Může klepnout pouze na tlačítko Cancel (Storno) a vrátit se do aplikace InTouch. Pokud se však do aplikace InTouch přihlásí uživatel s vyšší přístupovou úrovní, např. administrátor, výše uvedené volby nebudou zakázány, stejně tak jako kombinace kláves Alt-TAB, Ctrl-Escape nebo klávesa Windows. ¾ Postup pro zapnutí filtru klávesnice 1. V menu Special vyberte položku Configure a zvolte WindowViewer. Zobrazí se dialogové okno WindowViewer Properties (vlastnosti WindowViewer). 2. Klepněte na záložku Window Configuration (Konfigurace okna). 3. Zrušte zaškrtnutí volby Enable Fast Switch (Povolit ryché přepnutí). 4. V části Miscellaneous (Různé), zaškrtněte volby Disable ALT key (Zakázat klávesu ALT), Disable WIN key (Zakázat klávesu Windows) a Disable ESC key (Zakázat klávesu ESC) a klepněte na tlačítko Apply (Použít). 5. Vytvořte skript, který se spustí při změně operátora (uživatele) aplikace InTouch. Na základě přístupové úrovně operátora lze pomocí skriptové funkce povolit/zakázat konkrétní klávesy. Skriptová funkce pro zapnutí/vypnutí filtru klávesnice má následující syntaxi: - 147 - EnableDisableKeys() Zapíná/vypíná filtr klávesnice pro klávesy Alt,Escape a Windows Kategorie View Syntaxe EnableDisableKeys(int AltKey,int EscKey,int WinKey); Parametr Popis AltKey Hodnota integer, která zapne nebo vypne filtr klávesnice pro klávesu Alt, 0=vypnutí, 1=zapnutí EscKey Hodnota integer, která zapne nebo vypne filtr klávesnice pro klávesu Escape, 0=vypnutí, 1=zapnutí WinKey Hodnota integer, která zapne nebo vypne filtr klávesnice pro klávesu Windows, 0=vypnutí, 1=zapnutí Poznámka Zapíná/vypíná klávesy Alt,Escape a Windows Příklad(y) EnableDisableKeys(0,0,0); // povolí všechny tři klávesy EnableDisableKeys(1,1,1); // zakáže všechny tři klávesy EnableDisableKeys(0,0,1); // povolí klávesy Alt a Escape, zakáže klávesu Windows. Spuštění programu WindowViewer jako NT služby V programu InTouch lze velmi snadno vytvořit konfigurace klient-server. Uzel lze konfigurovat tak, aby se choval jako server. Tento server pak může ukládat databázi proměnných a historická data, provádět skripty programu InTouch, poskytovat alarmy a vstupně-výstupní data. Libovolný klientský uzel pak může tyto informace ze serveru získávat a zobrazovat je. Když program WindowViewer spustíte jako NT službu, získáte všechny výhody, které nabízí tento způsob provozování aplikací. Program WindowViewer bude například pracovat bez přerušení, ačkoli v operačním systému budou probíhat různá přihlášení a odhlášení a také se bez zásahu operátora automaticky spustí při nabíhání systému. To umožňuje automatické spuštění programu WindowViewer bez zásahu člověka a bez snížení bezpečnosti operačního systému. Poznámka: Když je program WindowViewer konfigurován jako NT služba, jsou všechny funkce NAD (síťový vývoj aplikací) zakázány. ¾ Chcete-li program WindowViewer nastavit jako NT službu 1. Spusťte program InTouch (INTOUCH.EXE). Objeví se dialogové okno InTouch Application Manager. - 148 - 2. Klepněte na nástroj „Node Properties“, nebo v nabídce Tools klepněte na Node Properties. Objeví se dialogové okno Node Properties s aktivní kartou App Development: TIP Pro rychlý přístup do dialogového okna klepněte pravým tlačítkem myši na prázdnou oblast v okně Application Manager a pak klepněte na položku Node Properties. 3. Zvolte možnost Start WindowViewer as a service a program WindowViewer se bude automaticky spouštět jako NT služba. 4. Klepněte na OK Pokud běh programu WindowViewer jako NT služby vypnete nezaškrtnutím možnosti Start WindowViewer as an NT service, program WindowViewer se z pohledu Správce služeb Windows NT odinstaluje. Může však být dále spouštěn jako aplikace. Pokud je program WindowViewer nakonfigurován tak, aby pracoval jako NT služba, a následně je pak spuštěn přímo (klepnutím na svou ikonu, přes nabídku spustit v systému Windows atd.), dojde ke zpoždění asi 15 sekund, než se zobrazí okno programu WindowViewer. Toto zpoždění je způsobeno tím, že se program WindowViewer snaží - 149 - připojit k Správci služeb Windows NT. Jakmile připojení k Správci služeb selže, zobrazí WindowViewer následující okno zprávy: Klepnutím na Yes se program WindowViewer spustí jako aplikace, ne jako NT služba. Klepnutím na No se příkaz ke spuštění programu Použití aplikace Log Viewer (Prohlížeč záznamů) ke kontrole chybových hlášení Chybová hlášení, která Vám pomohou vyhledat a odstranit problémy ve Vaší aplikaci InTouch se zapisují do aplikace Log Viewer (Prohlížeč záznamů), která je spolu s jinými aplikacemi umístěna v okně System Management Console (SMC). SMC (Konzola správy systému) je instalována zároveň s instalací programu InTouch. Abyste viděli chybová hlášení aplikace a zjistili příčiny chyb, spusťte aplikaci Log Viewer (Prohlížeč záznamů). Když aplikaci SMC (Konzola správy systému) spustíte poprvé, aplikace Log Viewer (Prohlížeč záznamů) se v levém podokně se stromy jednotlivých aplikací zobrazí sbalená jako kořen stromu. Strom aplikace Log Viewer (Prohlížeč záznamů) rozbalte, abyste viděli počítače, ke kterým máte vytvořené záznamy o událostech. Klepnutím na ikonu Local Machine (Lokální počítač) zobrazenou ve stromu, otevřete soubor se záznamy pro tento uzel. ¾ Spuštění aplikace Log Viewer (Prohlížeč záznamů) 1. V nabídce Start ukažte na All Programs (Všechny programy) popř. jen na Programs (Programy) dle nastavení Vašeho operačního systému, potom ukažte na Wonderware a klepněte na System Management Console (Konzola správy systému). Okno aplikace System Management Console (Konzola správy systému) se - 150 - zobrazí na obrazovce. 2. V levém podokně aplikace System Management Console (Konzola správy systému) klepněte na Log Viewer (Prohlížeč záznamů). 3. V pravém podokně aplikace System Management Console (Konzola správy systému) ve sloupci Name (Jméno) klepněte dvakrát na jméno skupiny uzlů, pro kterou chcete - 151 - záznam zobrazit. 4. V pravém podokně aplikace System Management Console (Konzola správy systému) ve sloupci Name (Jméno), klepněte dvakrát na jméno uzlu, pro který chcete zobrazit záznamy. Soubor se záznamy pro daný uzel se zobrazí v pravém podokně. - 152 - KAPITOLA 3 Zabezpečení aplikací InTouch InTouch nabízí možnost zvolit buď tradiční zabezpečení v rámci aplikace InTouch, zabezpečení využívající účty definované v operačním systému nebo zabezpečení využívající infrastrukturu ArchestrA. Typ použitého zabezpečení je konfigurován přímo v aplikaci InTouch, takže lze provozovat na jednom počítači aplikace InTouch s různým typem zabezpečení. Všechny tři typy zabezpečení jsou kompatibilní s vlastností Síťový vývoj aplikace (NAD Network Application Development), která zajišťuje distribuci aplikace. Zabezpečení na základě aplikace InTouch funguje s vlastností NAD stejně jako předchozí verze InTouch. Více informací o NAD najdete v oddíle Síťový vývoj aplikací (NAD) . Zabezpečení na základě infrastruktury ArchestrA je centralizované, bez ohledu na to, zda-li se NAD používá nebo ne. U zabezpečení na základě operačního systému se bude jméno uživatele skládat z Windows Domain Name / User name (Jméno domény Windows / jméno uživatele). U zabezpečení na základě ArchestrA by se aktivity související se zabezpečením měly definovat externě v tzv. Integrated Development Environment (IDE - Jednotné vývojové prostředí). Více informací o IDE najdete v příručce Wonderware ® ArchestrA™ Integrated Development Environment (IDE) Guide. Obsah • Použití zabezpečení na základě aplikace InTouch • Použití zabezpečení na základě operačního systému • Použití zabezpečení na základě ArchestrA • Vytvoření vlastního okna pro přihlašování • Zabezpečení a alarmy • InTouch skriptové funkce pro zabezpečení Použití zabezpečení na základě aplikace InTouch Použití zabezpečení v aplikacích InTouch je volitelné. Výchozí nastavení pro zabezpečení aplikace InTouch je nastaveno na typ "None" (žádné). Pokud se však zabezpečení v aplikaci využije, poskytuje vývojáři možnost určit, jaké funkce a části aplikace budou jednotlivým operátorům dostupné, resp. nedostupné a to pouhým propojením na interní proměnné. S implementovaným zabezpečením lze navíc vytvářet kontrolní záznamy, které spojují operátora se všemi alarmy a událostmi, a které se vyskytly v době, kdy byl přihlášen do systému. Zabezpečení je založeno na principu přihlášení operátora do aplikace zadáním jeho uživatelského jména a hesla. Vývojář aplikace nebo uživatel s administrátorskou přistupovou úrovní musí nadefinovat pro každého operátora uživatelské jméno (User Name), heslo (Password) a přístupovou úroveň (Access Level). - 153 - Není zde však žádná vazba mezi zabezepečením v operačním systému Microsoft Windows a zabezpečením aplikace InTouch. Po vytvoření nové aplikace je výchozím uživatelským jménem Administrator s přístupovou úrovní 9999. (Přístupová úroveň 9999 umožňuje přístup ke všem zabezpečovacím příkazům). Jakmile je do bezpečnostního seznamu přidáno nové uživatelské jméno a dojde k novému spuštění programu WindowMaker nebo WindowViewer, nastaví se výchozí uživatelské jméno automaticky na None s přístupovou úrovní 0. Přístupová úroveň nula zabraňuje v přístupu k příkazu nabídky Configure Users jak v programu WindowMaker, tak i v programu WindowViewer. Nicméně účet dministrator a jeho heslo zůstalo v systému a lze ho použít. Jakmile se operátor přihlásí do aplikace, je přístup ke všem chráněným funkcím závislý na ověření jeho hesla a přístupové úrovně. (To je typicky porovnáno s hodnotou interní bezpečnostní proměnné $AccessLevel nebo $Operator přiřazené k takové funkci.). Například přístup k určitému oknu, viditelnost objektu, příkazové tlačítko apod. může být povoleno podmínkou, že přístupová úroveň přihlášeného operátora musí být větší než 2000: $AccessLevel > 2000 Typický postup je následující: pro přihlášení do aplikace operátor v nabídce Special vybere příkaz Security a pak klepne na podnabídku Log On (v programu WindowMaker i WindowViewer). Vývojář aplikace však může také sestavit uživatelské přihlašovací okno, které obsahuje dotykově citlivé vstupní objekty přiřazené k interním bezpečnostním proměnným. Tyto proměnné využívá operátor pro zadání hodnot svého uživatelského jména a hesla. Kromě přihlášení se lze také odhlásit z aplikace, změnit heslo, příp. konfigurovat seznam uživatelů aplikace InTouch, jejich heslo a přístupovou úroveň. Použití interních proměnných pro zabezpečení Pokud implementujete zabezpečení v aplikaci InTouch, můžete využít několik interních systémových proměnných svázaných se zabezpečením pro tlačítka, animační propojení, skripty atd., čímž lze řídit, jaká okna, funkce nebo části aplikace bude mít přihlášený nebo nepřihlášený operátor dostupné: Tagname (proměnná) Datový typ Rozsah hodnot $AccessLevel System Integer (systémová celočíselná) 0-9999 $Operator System Message (systémová textová) max. 16 znaků $ChangePassword System Discrete (systémová diskrétní) 1 nebo 0 $ConfigureUsers System Discrete (systémová diskrétní) 1 nebo 0 - 154 - Typ přístupu Pouze pro čtení Pouze pro čtení Čtení i zápis Čtení i zápis $InactivityTimeout System Discrete (systémová diskrétní) 1 nebo 0 $InactivityWarning System Discrete (systémová diskrétní) 1 nebo 0 $OperatorEntered System Message (systémová textová) max. 16 znaků $PasswordEntered System Message (systémová textová) max. 16 znaků Pouze pro čtení Pouze pro čtení Čtení i zápis Čtení i zápis Například pro vytvoření objektu, který bude viditelný na základě přístupové úrovně přihlášeného uživatele, může být použit v animačním propojení visibility (viditelnost) následující výraz: $AccessLevel >= 2000 Nebo lze použít skript využívající podmínku IF: IF $Operator == "Mistr" THEN Show "Okno Ovládací panel"; {a mohou tady být další příkazy, které se vykonají pouze tehdy, když je přihlášen operátor Mistr} ENDIF; Také lze ovládat dotykovou citlivost objektu na základě hodnot interních systémových proměnných v animačním propojení Disable (Deaktivace). Například: Tento výraz způsobí, že když do aplikace není nikdo přihlášen, resp. Je přihlášen s nulovou přístupovou úrovní, dotyková funkce objektu nebo tlačítka je vypnuta a nelze na něj klepnout. Více informací o interních systémových proměnných svázaných se zabezpečením najdete v on-line příručce InTouch Reference Guide. - 155 - Konfigurace uživatelů a jejich přístupové úrovně ¾ Chcete-li nastavit zabezpečení pro operátory aplikace 1. TIP V nabídce Special zvolte příkaz Security (Zabezpečení) a pak v podnabídce klepněte na položku Configure Users (Konfigurace uživatelů). Objeví se dialogové okno Configure Users. Klepnete-li pravým tlačítkem myši na vstupní textová pole v libovolném dialogovém okně, objeví se nabídka s příkazy, které lze aplikovat na zvolený text. 2. Do pole User Name (uživatelské jméno) napište jméno, které chcete operátorovi přiřadit. 3. Do pole Password (Heslo) napište heslo (max. 16 znaků). 4. Do pole Access Level (přístupová úroveň) napište hodnotu (od nejnižší = 0 do nejvyšší = 9999). 5. Klepněte na Add a uživatelské jméno se přidá do seznamu uživatelů. 6. Chcete-li změnit existující uživatelské jméno, zvolte požadované jméno ze seznamu User Name. Napište změnu a poté klepněte na Update, aby se tato změna potvrdila. 7. Chcete-li odstranit uživatelské jméno, vyberte jméno v seznamu a poté klepněte na tlačítko Delete. Jména None a Administrator jsou rezervována a pouze heslo uživatele Administrator může být změněno. Jakmile jste pro aplikaci nakonfigurovali jména uživatelů, měli byste změnit heslo pro jméno Administrator, protože výchozí heslo může být s velkou pravděpodobností obecně známé většině uživatelů systému. Výchozí přístupová úroveň pro uživatelské jméno Administrator je nejvyšší (9999) a umožňuje přístup ke všem částem systému včetně příkazu Configure Users. - 156 - Změna hesla přihlášeného uživatele ¾ Chce-li přihlášený uživatel změnit svoje heslo 1. V nabídce Special zvolte příkaz Security (Zabezpečení) a pak v podnabídce klepněte na položku Change Password (Změna hesla). Objeví se dialogové okno Change Password. Klepnete-li pravým tlačítkem myši na vstupní textová pole v libovolném dialogovém okně, objeví se nabídka s příkazy, které lze aplikovat na zvolený text. 2. Do pole Old Password (Staré heslo) napište své staré heslo. 3. Do pole New Password (Nové heslo) napište nové heslo (max. 16 znaků). 4. Do pole Verify New Password (Ověření nového hesla) napište znovu vaše nové heslo. 5. Klepněte na OK. Aby se zabránilo odpozorování hesla jinými osobami, zobrazují se zadávané údaje na obrazovce jako hvězdičky. TIP Pokud nechcete, aby byla nabídka Special v programu WindowViewer viditelná, můžete vytvořit tlačítko a propojit ho s interní proměnnou $ChangePassword tak, aby se proměnná $ChangePassword nastavila na hodnotu 1, čímž se zobrazí ialogové okno Change Password. Když se toto dialogové okno zobrazí, operátor může změnit své heslo. Přihlášení do aplikace se zabezpečením InTouch ¾ Chcete-li se přihlásit do aplikace 1. V nabídce Special zvolte příkaz Security (Zabezpečení) a poté v podnabídce klepněte na položku Log On (Přihlášení). Objeví se dialogové okno Log On. 2. Do pole Name (Jméno) napište své uživatelské jméno. 3. Do pole Password (heslo) napište své heslo. 4. Klepněte na OK. - 157 - Pokud je informace zadaná nesprávně nebo je neplatná, objeví se okno se zprávou, že přihlášení do aplikace selhalo. Pokud přihlášení proběhlo úspěšně, interní proměnná $AccessLevel se nastaví na svou předem definovanou hodnotu (nastavenou v seznamu uživatelů "Configure Users"). Poznámka: Viz také funkce PostLogonDialog(). Odhlášení z aplikace se zabezpečením InTouch ¾ Chcete-li se z aplikace odhlásit 1. V nabídce Special zvolte příkaz Security (Zabezpečení) a pak v podnabídce klepněte na položku Log Off (Odhlášení) Po provedení tohoto příkazu se uživatelské jméno nastaví na "None" s přístupovou úrovní "0". Vývojář aplikace může nakonfigurovat aplikaci tak, aby v případě určité doby nečinnosti došlo k automatickému odhlášení operátora. Automatické odhlášení ze systému Vaši aplikaci lze nakonfigurovat tak, aby automaticky odhlásila operátora, pokud po určitou dobu není prováděna žádná činnost. Tato funkčnost se provádí nastavením tzv. varování a časové prodlevy. ¾ Konfigurace nečinnosti 1. V nabídce Special (Speciální) zvolte Configure (Konfigurovat) a potom klepněte na WindowViewer nebo v Application Explorer (Aplikačním průzkumníku) ve složce Configure (Konfigurovat) klepněte dvakrát na WindowViewer. Zobrazí se dialogové okno WindowViewer Properties (Vlastnosti WindowViewer) s aktivní kartou vlastností General (Obecné). V Application Explorer (Aplikačním průzkumníku) můžete také klepnout pravým tlačítkem myši na WindowViewer a poté klepnout na Open (Otevřít). - 158 - 2. V poli Warning (Varování) napište počet vteřin, které mohou uplynout bez činnosti operátora (klepnutí myši nebo stisknutí kláves) předtím, než se systémová diskrétní proměnná $InactivityWarning nastaví na 1 (Pravda). Pokud pole Inactivity Warning bude nastaveno na hodnotu nula, funkčnost Warning (Varování) se nebude využívat. TIP 3. Proměnnou $InactivityWarning můžete použít v podmínkovém skriptu QuickScript pro zobrazení okna varující operátora, že bude odhlášen ze systému. Klepne-li operátor tlačítkem myši, stiskne klávesu nebo provede činnost pomocí jakéhokoli jiného ukazovacího zařízení předtím, než uplyne časová prodleva, k automatickému odhlášení nedojde a proměnná $InactivityWarning a časovač doby nečinnosti se vynuluje. V poli Timeout (Časová prodleva) napište počet vteřin, které mohou uplynout bez aktivity operátora (klepnutí myši, stisknutí kláves atd.) předtím, než se systémová diskrétní proměnná $InactivityTimeout nastaví na 1 (Pravda). Když je proměnná $InactivityTimeout pravdivá, zamění systém přihlášeného operátora na rezervované uživatelské jméno "None" (Nikdo) a nastaví bezpečnostní proměnnou $AccessLevel na hodnotu 0. TIP Proměnnou $InactivityTimeout můžete použít v podmínkovém skriptu QuickScript pro zobrazení okna sdělujícího operátorovi, že byl odhlášen z aplikace. - 159 - Vlastnost Timeout (Časová prodleva) můžete použít nezávisle na vlastnosti arning (Varování). V případě využití obou vlastností však musí být hodnota Timeout (Časová prodleva) větší než hodnota Warning (Varování). Například nastavte Inactivity Warning na 30 a Inactivity Timeout na 45. Hodnota $InactivityWarning (Varování) se stane pravdivou po 30 vteřinách nečinnosti a hodnota $InactivityTimeout (Časová prodleva) se stane pravdivou po dalších 15 vteřinách (celkově po 45 vteřinách) nečinnosti a operátor bude odhlášen. Použití zabezpečení na základě operačního systému Ve schématu ověřování založeném na operačním systému se v aplikaci InTouch využívají k přihlašování jména ze seznamu uživatelů, které jsou nakonfigurovány v operačním systém (tzn. účty spojené s doménou sítě Windows \ pracovní skupinou). Každé jméno uživatele má přiřazenou přístupovou úroveň, která stanoví oprávnění uživatele k dané činnosti. Protože operační systém spravuje hesla interně, program InTouch hesla neukládá. Zabezpečení založené na operačním systému programu InTouch využívá skriptovou funkci AddPermission k údržbě seznamu uživatelů a jejich přístupových úrovní. Tento seznam je vytvořen po provedení příkazu AddPermission() a zapíše se na disk. Soubor obsahující podrobnosti ověřování uživatelů se nekopíruje do počítačů klientů NAD (Síťového vývoje aplikace). Nastavení zabezpečení na základě operačního systému Zabezpečení na základě operačního systému lze vybrat z nabídky Typ zabezpečení v programu WindowMaker. Vývojář aplikace obvykle vybere nastavení zabezpečení po vytvoření nové aplikace InTouch. ¾ Chcete-li nastavit zabezpečení na základě operačního systému: 1. Otevřete aplikaci ve vývojovém prostředí WindowMaker. 2. V nabídce Special (Speciální) zvolte Security (Zabezpečení), poté ukažte na možnost Select Security Type (Vybrat typ zabezpečení) a vyberte položku OS. Použití systémových proměnných pro zabezpečení Pro zabezpečení na základě operačního systému jsou k dispozici čtyři nové systémové proměnné - $OperatorDomain, $OperatorDomainEntered, $OperatorName a $VerifiedUserName. Následující tabulka vysvětluje funkčnost těchto nových systémových proměnných a uvádí příklady: $OperatorDomain Kategorie Zabezpečení Použití Při výběru zabezpečení založeného na operačním systému bude po úspěšném přihlášení operátora proměnná $OperatorDomain obsahovat název domény nebo název počítače specifikovaného při přihlašování. Je-li vybráno zabezpečení na základě ArchestrA a uživatel je přihlášen, bude proměnná $OperatorDomain obsahovat text „ArchestrA“. Je-li vybráno zabezpečení na základě aplikace InTouch, proměnná $OperatorDomain bude obsahovat řetězec „InTouch“. Je-li vybrána možnost „None“ (žádné zabezpečení), obsahuje tato proměnná prázdný řetězec „“. - 160 - Poznámky - Datový typ Text Příklad(y) $Operator = "honza"; $OperatorDomain="Firma_pobocka1"; Viz také $Operator $OperatorDomainEntered Kategorie Zabezpečení Použití Kdykoliv se změní proměnná $PasswordEntered, systém se pokusí vnitřně o přihlášení, aniž by se zobrazilo příslušné grafické uživatelské rozhraní. Pokus o přihlášení využívá proměnné $OperatorEntered a $PasswordEntered jako vstupní uživatelské jméno a heslo a hodnotu (text) proměnné $OperatorDomainEntered jako název domény (používá se jen v případě, že je nastaveno zabezpečení založené na operačním systému). Jestliže typ zabezpečení není založen na operačním systému, tato proměnná se ignoruje. Poznámky - Datový typ Text Příklad(y) $OperatorEntered="honza"; $OperatorDomainEntered="Firma_pobocka1" $PasswordEntered="heslo"; Viz také $Operator - 161 - $OperatorName Kategorie Zabezpečení Použití Proměnná $OperatorName obsahuje celé jméno operátora v případech, kdy se používá zabezpečení na základě operačního systému nebo na základě ArchestrA, někdo je přihlášen a neodhlásil se. Plné jméno je přebráno z operačního systému nebo z platformy ArchestrA. Jinak (tzn. u zabezpečení na základě aplikace InTouch) tato proměnná obsahuje jméno přihlášeného uživatele (stejný obsah jako proměnná $Operator). Poznámky - Datový typ Text Příklad(y) $Operator = "honza";$OperatorName = "Jan Novak"; Viz také $Operator $VerifiedUserName Obsahuje ověřené plné jméno uživatele, pokud vyvolání funkce InvisibleVerifyCredentials() bylo úspěšné a jestliže typ zabezpečení je nastaven na zabezpečení na základě operačního systému nebo zabezpečení na základě ArchestrA aplikačního serveru. Je-li toto volání neúspěšné, výše uvedená systémová proměnná nebude obsahovat nic. Kategorie Zabezpečení Použití $VerifiedUserName Poznámky Kdykoliv se hodnota výše uvedené systémové proměnné změní (tedy kdykoliv je vyvolána funkce InvisibleVerifyCredentials), vygeneruje se v alarmovém systému událost. V alarmovém objektu bude sloupec „Value“ (Hodnota) v případě úspěšného volání obsahovat plné jméno ověřeného uživatele. V případě neúspěšného volání bude sloupec „Value“ (Hodnota) obsahovat prázdný text. Sloupec Name (Jméno) bude obsahovat název proměnné „$VerifiedUserName“. Datový typ Text Platné hodnoty Plné jméno uživatele Příklad(y) Tag = InvisibleVerifyCrdentials( "honza","heslo", "Firma_pobocka1"). Jestliže volání bylo úspěšné, nastaví se proměnná $VerifiedUserName na hodnotu „Jan Novak“ a vygeneruje se v alarmovém systému událost operátora. V alarmovém objektu sloupec se jménem indikuje v události proměnnou $VerifiedUserName a sloupec s hodnotou je nastaven na "Jan Novak". Jestliže bylo toto volání neúspěšné, proměnná $VerifiedUserName a sloupec s hodnotou jsou nastaveny na "". Kdykoliv se vyvolá výše uvedená funkce skriptu, proměnná - 162 - $VerifiedUserName se nastaví na plné jméno příslušného uživatele nebo na prázdný text. Viz také InvisibleVerifyCredentials(); $OperatorName, $Operator Nastavení skupin uživatelů Zabezpečení založené na operačním systému využívá seznam oprávněných skupin uživatelů systému Windows. Uživatelé mohou vytvářet skupiny na místním počítači nebo na doménovém serveru. Správce musí spojit uživatele systému Windows do skupin tím, že je do těchto skupin přidá. V programu WindowMaker musí autor nové aplikace použít skriptovou funkci AddPermission() k nastavení seznamu skupin s požadovanou úrovní přístupu jednotlivých skupin. Funkce AddPermission() bude obvykle vyvolána při aplikace, takže běžící aplikace rozpoznává všechny oprávněné skupiny uživatelů v okamžiku, kdy uživatel je připraven se přihlásit. Abyste mohli nastavit a spravovat skupinu uživatelů na místním počítači, musíte být přihlášeni jako správce počítače (Administrator) nebo mít práva správce (administrátora). ¾ Chcete-li nastavit skupinu správců na místním počítači a chcete-li přidávat uživatele 1. V nabídce Start klepněte na příkaz Settings (Nastavení), poté klepněte na příkaz Control Panel (Ovládací panely). 2. Poklepejte na ikonu Administrative Tools (Nástroje pro správu), poté poklepejte na ikonu Computer Management (Správa počítače). Zobrazí se okno Computer Management (Správa počítače). 3. V okně Computer Management (Správa počítače) operačního systému vytvořte pro správce aplikace InTouch novou skupinu uživatelů (například InTouchAdmins) - 163 - 4. V nabídce Action (Akce) klepněte na příkaz New Group (Nová skupina) nebo klepněte pravým tlačítkem myši na pravý panel dialogového okna Správa počítače a v kontextové nabídce klepněte na příkaz New Group (Nová skupina). Zobrazí se dialog New Group (Nová skupina). 5. Do pole Group Name (Název skupiny) zapište název své skupiny, poté zapište do pole Description (Popis) její případný popis. 6. Klepněte na tlačítko Add (Přidat). Zobrazí se dialog Select Users or Groups (Vybrat uživatele nebo skupiny). - 164 - 7. Klepněte na jméno uživatele, kterého chcete přidat do skupiny, a poté klepněte na tlačítko Add (Přidat). Tip Pokud chcete přidat více členů zároveň, držte stisknutou klávesu CTRL a klepněte na další jména členů; poté klepněte na tlačítko Add (Přidat). 8. ¾ Klepněte na tlačítko OK. Chcete-li nastavit skupinu uživatelů na místním počítači a chcete-li přidávat uživatele 1. V nabídce Start klepněte na příkaz Settings (Nastavení), poté klepněte na příkaz Control Panel (Ovládací panely). 2. Poklepejte na ikonu Administrative Tools (Nástroje pro správu), poté poklepejte na ikonu Computer Management (Správa počítače). Zobrazí se okno Computer Management (Správa počítače). 3. V okně Computer Management (Správa počítače) operačního systému vytvořte pro správce aplikace InTouch novou skupinu uživatelů (například InTouchUsers). - 165 - 4. V nabídce Action (Akce) klepněte na příkaz New Group (Nová skupina) nebo klepněte pravým tlačítkem myši na pravý panel dialogového okna Správa počítače a v kontextové nabídce klepněte na příkaz New Group (Nová skupina). Zobrazí se dialog New Group (Nová skupina). 5. Do pole Group Name (Název skupiny) zapište název své skupiny, poté zapište do pole Description (Popis) její případný popis. 6. Klepněte na tlačítko Add (Přidat). Zobrazí se dialog Select Users or Groups (Vybrat uživatele nebo skupiny). 7. Klepněte na jméno uživatele, kterého chcete přidat do skupiny, a poté klepněte na tlačítko Add (Přidat). Tip Pokud chcete přidat více členů zároveň, držte stisknutou klávesu CTRL a klepněte na další jména členů; poté klepněte na tlačítko Add (Přidat). 8. Klepněte na tlačítko OK. - 166 - ¾ Chcete-li přidat uživatele do existující skupiny 1. Poklepejte na název skupiny a vyvolejte tak dialogové okno vlastností skupiny. Zobrazí se dialog Properties (Vlastnosti) skupiny. 2. Klepněte na tlačítko Add (Přidat) a přidejte uživatele. Zobrazí se dialog Select Users or Groups (Vybrat uživatele nebo skupiny). 3. Klepněte na jméno uživatele, kterého chcete přidat do skupiny, a poté klepněte na tlačítko Add (Přidat). Tip Pokud chcete přidat více členů zároveň, držte stisknutou klávesu CTRL a klepněte na další jména členů; poté klepněte na tlačítko Add (Přidat). 4. Klepněte na tlačítko OK. Další informace k vytváření skupin uživatel najdete v dokumentaci operačního systému Windows. Po nastavení konfigurace aplikace InTouch na zabezpečení na základě operačního systému nebo na základě ArchestrA, možnosti Change Password (Změna hesla), Log On (Přihlásit), Configure Users (Konfigurovat uživatele) a Log Off (Odhlásit) v nabídce Special...Security (Speciální … zabezpečení) budou nedostupné. - 167 - Nastavení přístupové úrovně pro skupiny uživatelů v programu WindowMaker Posledním krokem v nastavení zabezpečení aplikace InTouch na základě operačního systému je nastavení přístupové úrovně skupinám uživatelů v programu WindowMaker. V programu WindowMaker se k nastavení seznamu skupin s požadovanou úrovní přístupu používá funkce AddPermission(). ¾ Chcete-li nastavit přístupové úrovně skupinám uživatelů 1. Spusťte program WindowMaker. 2. V nabídce Special (Speciální) ukažte na příkaz Scripts (Skripty) a poté klepněte na příkaz Application Scripts (Aplikační skripty). 3. V seznamu Condition Type (Typ podmínky) klepněte na možnost On Startup (Při spuštění). 4. Pomocí funkce AddPermission() zadejte názvy skupin a odpovídající úrovně přístupu. Požadované a výchozí parametry funkce AddPermission() jsou: Operační systém nebo Doména, Skupina a Úroveň přístupu. 5. Klepněte na tlačítko OK. - 168 - Funkčnost zabezpečení operačního systému v aplikaci InTouch Schéma ověřování na základě operačního systému dědí určité vlastnosti a funkčnosti účtů z operačního systému, zatímco zbývající vlastnosti a funkčnosti jsou přebírány z programu InTouch. Zásady hesla (například minimální a maximální stáří hesla a minimální délka hesla) jsou přebírány z operačního systému. Uživatelská jména použitá během instalace fungují jako část operačního systému. Doména systému Windows musí být nastavena s požadovanými zásadami účtů tak, aby byly tyto standardy prosazovány. Z aplikace InTouch se přebírá a využívá vlastnost automatického odhlášení po určité době nečinnosti. Přihlašování k aplikaci zabezpečené na základě operačního systému Jestliže se uživatel přihlašuje k aplikaci InTouch, zobrazí se dialogové okno vyžadující zadání uživatelského jména, hesla a názvu domény nebo místního počítače. Kombinace domény/uživatelského jména se předává operačnímu systému k ověření účtu. Aplikace provede pokus o přihlášení s povolenou nebo zakázanou vyrovnávací pamětí operačního systému. Jestliže se uživatel nemůže přihlásit bez vyrovnávací paměti (například následkem výpadku sítě), ale dříve již byl ověřen s aktivní vyrovnávací pamětí, plné jméno uživatele a jeho přístupová úroveň se načtou z vyrovnávací paměti programu InTouch. Jestliže všechny kontroly zabezpečení proběhnou úspěšně, uživatel se považuje za přihlášeného k aplikaci InTouch a aktualizují se příslušné datové struktury (například $Operator). Jinak se zobrazí odpovídající chybová zpráva. Poznámka: Jestliže se operátor nikdy dříve úspěšně nepřihlásil a uvedená doména je nedostupná, přihlášení nebude úspěšné. - 169 - Použití zabezpečení na základě ArchestrA Jestliže je uzel konfigurován k používání zabezpečení ArchestrA, aplikace InTouch vyvolává metody a dialogová okna ke konfiguraci uživatelů a k přihlašování/odhlašování z produktu Industrial Application Server (průmyslový aplikační server), který využívá architekturu ArchestrA. Uživatelé jsou konfigurováni v tzv. Galaxy, tzn. v projektu aplikačního serveru. Další informace najdete v dokumentaci aplikačního serveru. Ověřování a autorizace platformy ArchestrA Systém zabezpečení ArchestrA je určen k tomu, aby správci systému (administrátoři) mohli snadno definovat uživatele systému a přiřazovat jim činnosti, které mají tito uživatelé povoleny vykonávat. Jednotlivá oprávnění jsou v rámci zabezpečení definována typicky podle typů činností, které mohou uživatelé vykonávat pomocí svých nástrojů uživatelského rozhraní. Základní přístup se skládá z následujících kroků: 1. Definice modelu zabezpečení. 2. Seskupení jednotlivých automatizačních objektů v souladu s modelem zabezpečení za účelem jejich ochrany. 3. Definice uživatelů v souladu s modelem zabezpečení. Správce systému definuje uživatele systému tím, že vytvoří odpovídající uživatelské profily. Poté se jim přiřadí jejich role (uživatel může být přiřazen i do více rolí) výběrem ze seznamu rolí definovaného předem v modelu zabezpečení. Uživatelé aplikace InTouchView jsou obvykle ověřováni prostřednictvím přihlášení na základě jména a hesla. Během instalace je k dispozici možnost používat při přihlášení ověřování uživatele v operačním systému Windows. To samozřejmě vyžaduje, aby byl uživatel definován v operačním systému Windows. Utilita k ověřování uživatelů je také dodávána jako ovládací prvek ActiveX, který mohou používat jiní dodavatelé k vyvinutí klientských aplikací využívajících architekturu ArchestrA včetně jejího zabezpečení. Nastavení zabezpečení na základě ArchestrA Poté co správce definuje uživatelské profily uživatelů aplikace InTouch nebo InTouchView v aplikačním serveru, může nastavit zabezpečení ArchestrA v aplikaci InTouch . ¾ Chcete-li nastavit zabezpečení na základě ArchestrA: 1. Otevřete aplikaci ve vývojovém prostředí WindowMaker. 2. V nabídce Special (Speciální) zvolte Security (Zabezpečení), poté zvolte možnost Select Security Type (Vybrat typ zabezpečení) a vyberte ArchestrA. Poznámka: Po nastavení konfigurace aplikace InTouch na zabezpečení na základě ArchestrA, možnosti Change Password (Změna hesla), Log On (Přihlásit), Configure Users (Konfigurovat uživatele) a Log Off (Odhlásit) v nabídce Special...Security (Speciální … zabezpečení) budou nedostupné. - 170 - Funkčnost zabezpečení ArchestrA v aplikaci InTouch Systém zabezpečení ArchestrA je globální funkce, která se vztahuje na všechny objekty v databázi Galaxy. Jde o systém založený na vztazích mezi uživateli a objekty a funkcemi systému Galaxy. Tento systém využívá role zabezpečení (oprávnění ke konfiguraci, správě systému a zpracování) a skupiny zabezpečení, které určují oprávnění konkrétní role k možnosti pracovat s určitými objekty. Konfigurace systému zabezpečení se provádí pomocí editoru objektů Galaxy (IDE -Integrated Development Environment) a vztahuje se na všechny objekty. Přihlašování k aplikaci zabezpečené na základě ArchestrA Uživatelé se k aplikacím InTouch zabezpečeným pomocí ArchestrA obvykle přihlašují zadáním platného uživatelského jména a hesla. Jestliže byl systém konfigurován s otevřeným zabezpečením, použijí se při přihlašování parametry výchozího uživatele a systém nevyžaduje samostatné přihlášení. Následující postup předpokládá, že režim zabezpečení byl konfigurován tak, aby vyžadoval ověřování. ¾ Při přihlášení postupujte takto: 1. Spusťte aplikaci InTouch založenou na zabezpečení ArchestrA. Zobrazí se přihlašovací dialogové okno. 2. Zapište platné uživatelské jméno a heslo. Jestliže vás systém nemůže ověřit, vyzve vás znovu k přihlášení. Jakmile systém ověří přihlašovací informace uživatele, poskytne přístup ke všem operacím, jež jsou přístupné na základě role/oprávnění uživatele v modelu zabezpečení. Vytvoření vlastního okna pro přihlašování Jestliže nabídka Special (Speciální) není v programu WindowViewer zobrazena, můžete vytvořit vlastní přihlašovací okno, které operátor použije k přihlášení k aplikaci. ¾ Chcete-li vytvořit vlastní okno pro přihlašování • Propojte systémové proměnné $OperatorEntered, $PasswordEntered a $OperatorDomainEntered s objekty, které budou sloužit v okně aplikace InTouch pro zadávání přihlašovacích údajů uživatele nebo je použijte ve skriptu QuickScript k nastavení uživatelského jména, hesla a názvu domény (jde o interní systémové proměnné typu Text, které jsou určeny jen k zápisu.) Proměnná $OperatorDomainEntered je povinná jen v případě, že model zabezpečení je založen na operačním systému. Jinak se tato proměnná ignoruje. Jestliže režim zabezpečení je založen na operačním systému a proměnná $OperatorDomainEntered neobsahuje žádnou hodnotu, bude se ověření provádět na lokálním počítači. Například: Zadejte uživatelské jména do -> $OperatorEntered Zadejte název domény do -> $OperatorDomainEntered Zadejte uživatelské heslo do -> - 171 - $PasswordEntered Na rozdíl od změn hodnot proměnných $OperatorEntered a $PasswordEntered, změna hodnoty proměnné $OperatorDomainEntered nespustí přihlašování. Jsou-li zadané hodnoty platné, interní proměnné $AccessLevel a $Operator se nastaví na příslušné hodnoty (konfigurované v seznamu zabezpečení uživatelů). I v případech, kdy se nabídka Special (Speciální) v programu WindowViewer nezobrazuje, lze pro tlačítko vytvořit animaci User Input - Discrete (Zadání diskrétní uživatelské hodnoty) s proměnnou $ChangePassword a zobrazit tak dialogové okno Change Password (Změna hesla) a umožnit operátorovi změnu hesla. Jestliže operátor klepne na tlačítko, hodnota proměnné $ChangePassword se nastaví na hodnotu 1 a zobrazí se dialogové okno Change Password (Změna hesla). Jestliže operátor dialogové okno uzavře, systém znovu nastaví hodnotu na 0. (Jde o systémovou diskrétní proměnnou určenou jen k zápisu.) Systém umožňuje rovněž vytvořit animaci User Input - Discrete (Zadání diskrétní uživatelské hodnoty) s proměnnou $ConfigureUsers a poskytuje tak oprávněnému operátorovi, jehož úroveň přístupu je rovna nebo větší než 9000, k přístupu k dialogovému oknu Configure Users (Konfigurace uživatelů). V něm lze editovat seznam zabezpečení uživatelů. Jestliže operátor klepne na tlačítko, hodnota proměnné $ ConfigureUsers se nastaví na 1 a zobrazí se dialogové okno Configure Users (Konfigurace uživatelů). Jestliže operátor dialogové okno uzavře, systém znovu nastaví hodnotu na 0. (Jde o systémovou diskrétní proměnnou určenou jen k zápisu.) Dialogové okno Configure Users (Konfigurace uživatelů) má smysl vyvolát pouze při zabezpečení na základě aplikace InTouch. Zabezpečení a alarmy Jestliže aplikace InTouch funguje jako poskytovatel alarmů a má nastaveno zabezpečení na základě operačního systému nebo ArchestrA a vznikne alarm, alarmový objekt bude zobrazovat ve sloupci Operátor celý název operátora za předpokladu, že operátor je přihlášen. Jestliže je operátor například registrován v doméně PODNIK_ZAVOD1 s ID uživatele (UserID) jako JanN a s celým jménem Jan Novák, do aplikace se přihlásí jako JanN, nicméně sloupec Operátor v alarmovém objektu bude obsahovat Jan Novák. Jestliže operátor alarm potvrdí a uzel provádějící potvrzení je nastaven k použití zabezpečení na základě operačního systému nebo ArchestA, sloupec Operátor bude aktualizován tak, aby zobrazoval celé jméno operátora, který potvrzení provedl. Jinak bude alarmový objekt zobrazovat název počítače spojený s obsahem proměnné $Operator. Celé jméno v alarmových záznamech Aplikace InTouch může poskytovat celé jméno uživatele při potvrzování alarmů. To je možné také u záznamů vznikajících při detekci alarmů. Ve většině organizací není přihlašovací ID celé jméno osoby, ale spíše jeho zkratka nebo označení role. Jestliže u aplikací InTouch fungujících jako poskytovatel a spotřebitel alarmů je zvoleno zabezpečení na základě operačního systému: • Objekt pro zobrazování alarmů zobrazí celé jméno uživatele přihlášeného při vzniku alarmů a při jejich potvrzování. • Objekt pro tisk alarmů vytiskne celé jméno uživatele přihlášeného při vzniku alarmů a při jejich potvrzování. • Utilita pro ukládání alarmů do databáze (Alarm DB Logger) s každým záznamem alarmu uloží do polí Operátor i Operátor potvrzení (Operator a AckOperator) název domény, přihlašovací ID uživatele a celé jméno uživatele. To umožní jednoznačnou - 172 - identifikaci událostí i v případech, kdy podnik má dva zaměstnance se stejnými celými jmény. • Při odesílání alarmů a potvrzení alarmů do distribuovaného alarmového systému se v existujícím poli Jméno operátora spojí název domény a přihlašovací ID uživatele. InTouch skriptové funkce pro zabezpečení Program InTouch nyní disponuje novými skriptovými funkcemi pro zabezpečení. Nové funkce jsou popsány v následující části. InvisibleVerifyCredentials() Kontroluje a ověřuje platnost daného uživatele bez přihlašování uživatele k aplikaci InTouch. Kategorie zabezpečení Syntaxe AnalogTag=InvisibleVerifyCredentials( "UserId", "Heslo", "Doména" ); Parametr Popis UserId Název uživatelského účtu v operačním systému Windows, který je součástí místního počítače, pracovní skupiny nebo domény nebo účtu aplikace InTouch nebo účtu architektury ArchestrA Poznámky Jestliže uvedená kombinace uživatele, hesla a domény je platná, funkce vrací celočíselnou hodnotu odpovídající přístupové úrovni přiřazené uživateli; v opačných případech vrací hodnotu -1. Volání této funkce nijak nemění stav právě přihlášeného uživatele. Pole domény je platné jen v případě, že model zabezpečení je založen na operačním systému. Jestliže se používá režim zabezpečení ArchestrA a jestliže tento režim zabezpečení právě používá zabezpečení založené na operačním systému, uživatelské ID by mělo obsahovat uživatelské jméno s názvem domény nebo s názvem počítače. Příklad(y) AnalogTag=InvisibleVerifyCredentials( "honza", "Heslo", "Firma_pobocka1" ); Viz také PostLogonDialog(), AttemptInvisibleLogon(), IsAssignedRole(), QueryGroupMembership(), AddPermission(). - 173 - PostLogonDialog() Vyvolá přihlašovací dialogové okno aplikace InTouch a vrací hodnotu TRUE (Pravda). Kategorie Syntaxe zabezpečení DiscreteTag=PostLogonDialog(); Parametr Popis - - Poznámky Vyvolá přihlašovací dialogové okno aplikace InTouch a vrací hodnotu TRUE (Pravda). Příklad(y) DiscreteTag=PostLogonDialog(); Viz také InvisibleVerifyCredentials(), AttemptInvisibleLogon(), IsAssignedRole(), QueryGroupMembership(), AddPermission(). AttemptInvisibleLogon() Pokusí se přihlásit uživatele do aplikace InTouch na základě použitých parametrů. Kategorie zabezpečení Syntaxe DiscreteTag=AttemptInvisibleLogon( "UserId", "Heslo", "Doména" ); Parametr Popis UserId Platný název uživatelského účtu. Password (Heslo) Heslo uživatele. Domain (Doména) Název místního počítače, pracovní skupiny nebo domény, k níž uživatel náleží. Tento sloupec se používá jen v případě, že model zabezpečení je založen na operačním systému. DiscreteTag Návratová hodnota: v případě úspěšného ověření vrací hodnotu TRUE (pravda). Jinak vrací hodnotu FALSE (nepravda). - 174 - Poznámky Pokusí se přihlásit uživatele do aplikace InTouch na základě použitých parametrů. Jestliže režim zabezpečení není založen na operačním systému, parametr Doména se ignoruje. V případě úspěšného pokusu o přihlášení funkce vrací hodnotu TRUE (Pravda) a systémové proměnné $OperatorDomain, $OperatorName, $AccessLevel a $Operator se zaktualizují na příslušné hodnoty. Jestliže se pokus o přihlášení nezdaří, funkce vrací hodnotu FALSE a momentálně přihlášený uživatel (pokud existuje) zůstává i nadále aktuálním uživatelem. Pole domény je platné jen v případě, že model zabezpečení je založen na operačním systému. Jestliže se používá režim zabezpečení ArchestrA a tento režim zabezpečení právě používá zabezpečení založené na operačním systému, uživatelské ID by mělo obsahovat uživatelské jméno s názvem domény nebo s názvem počítače. Příklad(y) AnalogTag=AttemptInvisibleLogon( "honza", "heslo", "Firma_pobocka1" ); \\ zabezpečení je založeno na operačním systému AnalogTag=AttemptInvisibleLogon( "honza", "heslo", "" ); \\ zabezpečení je založeno na aplikaci InTouch nebo na ArchestrA. Viz také PostLogonDialog(), InvisibleVerifyCredentials(), IsAssignedRole(), QueryGroupMembership(), AddPermission(). IsAssignedRole() Kategorie zabezpečení Syntaxe DiscreteTag=IsAssignedRole( "NazevRole" ); Parametr Popis NazevRole Role spojená s uživatelem aplikačního serveru. Poznámky Platí jen pro režim zabezpečení na základě ArchestrA a vztahuje se k právě přihlášenému uživateli. Je-li uživatel právě přihlášen a role, kterou má přiřazenou v systému Galaxy IDE, odpovídá zadané roli, tato funkce vrátí hodnotu TRUE (Pravda). Ve všech ostatních případech funkce vrátí hodnotu FALSE (Nepravda). Příklad(y) DiscreteTag=IsAssignedRole( "Administrator" ); Viz také AttemptInvisibleLogon(), PostLogonDialog(), InvisibleVerifyCredentials(), QueryGroupMembership(), AddPermission(). - 175 - QueryGroupMembership() Kategorie zabezpečení Syntaxe DiscreteTag=QueryGroupMembership( "Domena", "Skupina" ); Parametr Popis Domain (Doména) Název domény nebo místního počítače, ve kterém je umístěna Skupina Group (Skupina) Název skupiny uživatelů. Poznámky Platí jen pro režim zabezpečení založený na operačním systému a vztahuje se k právě přihlášenému uživateli. Je-li uživatel právě přihlášen a je součástí zadané skupiny uživatelů Skupina, která je umístěna v doméně Domena, funkce vrací hodnotu TRUE (Pravda); ve všech opačných případech funkce vrací hodnotu FALSE (Nepravda). Se zabezpečením aplikace InTouch na základě ArchestrA bude QueryGroupMembership pracovat jedině v případě, že zabezpečení ArchestrA bude nastaveno na zabezpečení na základě skupin uživatelů operačního systému. Příklad(y) DiscreteTag=QueryGroupMembership( "Firma_pobocka1", "InTouchAdmins" ); DiscreteTag=QueryGroupMembership( "JanS01", "InTouchUsers" ); Viz také PostLogonDialog(), InvisibleVerifyCredentials(), IsAssignedRole(), AttemptInvisibleLogon(), AddPermission(). AddPermission() Pokusí se přiřadit přístupovou úroveň skupině uživatelů umístěné v doméně Domena Kategorie zabezpečení Syntaxe DiscreteTag=AddPermission( "Domena", "Skupina", AccessLevel); Parametr Popis Domain (Doména) Název domény nebo místního počítače, ve kterém je umístěna Skupina. Group (Skupina) Skupina uživatelů v systému Windows. AccessLevel Přístupová úroveň (0 až 9999) v aplikaci InTouch spojená s danou skupinou. - 176 - Poznámky Platí jen pro režim zabezpečení na základě operačního systému. Pokusí se přiřadit přístupovou úroveň (AccessLevel) skupině uživatelů umístěné v doméně Domena. Je-li tento pokus úspěšný, funkce vrací hodnotu TRUE (Pravda) a ve vnitřních záznamech v aplikaci InTouch se úroveň přístupu AccessLevel přiřadí danému účtu/skupině, což se využije při pozdějším přihlašování uživatele. Ve všech ostatních případech funkce vrátí hodnotu FALSE (Nepravda). Příklad(y) DiscreteTag=AddPermission( "Firma_pobocka1", "InTouchAdmins", 9000);DiscreteTag=AddPermission( "JanS01", "InTouchUsers", 5000); Viz také PostLogonDialog(), InvisibleVerifyCredentials(), IsAssignedRole(), AttemptInvisibleLogon(), QueryGroupMembership(). ChangePassword() Zobrazuje dialogové okno Change Password (Změna hesla), které umožňuje přihlášenému operátorovi změnit heslo. Kategorie zabezpečení Syntaxe [Vysledek=]ChangePassword(); Parametr Popis [Vysledek] Vrací některou z následujících celočíselných hodnot: 0 = bylo stisknuto tlačítko Cancel (Storno). 1 = bylo stisknuto tlačítko OK. Poznámky Při použití aplikace na PC s dotykovou obrazovkou existuje možnost použít alfanumerickou klávesnici. Příklad(y) Errmsg=ChangePassword(); Je-li tato skriptová funkce přiřazena k tlačítku nebo vyvolávána v Condition (podmínkovém) skriptu nebo Data Change (změnovém) skriptu, otevře se dialogové okno (s volitelnou klávesnicí) a vyzve uživatele k zadání platného hesla, nového hesla a ověření nového hesla. - 177 - Logoff() Odhlásí uživatele v aplikaci InTouch. Kategorie zabezpečení Syntaxe DiscreteTag = LogOff(); Parametr Popis Odhlásí aktuálně přihlášeného uživatele a nastaví aktuální stav uživatele na výchozí stav bez operátora (None). Poznámky Příklad(y) DiscreteTag = LogOff(); Viz také PostLogonDialog(), InvisibleVerifyCredentials(), IsAssignedRole(), AttemptInvisibleLogon(), QueryGroupMembership(), AddPermission(). Systémové proměnné pro zabezpečení aplikace InTouch $OperatorName Kategorie Zabezpečení Použití Proměnná $OperatorName obsahuje celé jméno operátora v případech, kdy se používá zabezpečení na základě operačního systému nebo na základě ArchestrA, někdo je přihlášen a neodhlásil se. Plné jméno je přebráno z operačního systému nebo z platformy ArchestrA. Jinak (tzn. u zabezpečení na základě aplikace InTouch) tato proměnná obsahuje jméno přihlášeného uživatele (stejný obsah jako proměnná $Operator). Poznámky - Datový typ Text Příklad(y) $Operator = "honza"; $OperatorName = "Jan Novak"; Viz také $Operator - 178 - $OperatorDomain Kategorie Zabezpečení Použití Při výběru zabezpečení založeného na operačním systému bude po úspěšném přihlášení operátora proměnná $OperatorDomain obsahovat název domény nebo název počítače specifikovaného při přihlašování. Je-li vybráno zabezpečení na základě ArchestrA a uživatel je přihlášen, bude proměnná $OperatorDomain obsahovat text „ArchestrA“. Je-li vybráno zabezpečení na základě aplikace InTouch, proměnná $OperatorDomain bude obsahovat text „InTouch“. Je-li vybrána možnost „None“ (žádné zabezpečení), obsahuje tato proměnná prázdný řetězec „“. Poznámky - Datový typ Text Příklad(y) $Operator = "honza"; $OperatorDomain="Firma_pobocka1"; Viz také $Operator $OperatorDomainEntered Kategorie Zabezpečení Použití Kdykoliv se změní proměnná $PasswordEntered, systém se pokusí vnitřně o přihlášení, aniž by se zobrazilo příslušné grafické uživatelské rozhraní. Pokus o přihlášení využívá proměnné $OperatorEntered a $PasswordEntered jako vstupní uživatelské jméno a heslo a hodnotu (text) proměnné $OperatorDomainEntered jako název domény (používá se jen v případě, že je nastaveno zabezpečení založené na operačním systému). Jestliže typ zabezpečení není založen na operačním systému, tato proměnná se ignoruje. Poznámky - Datový typ Text Příklad(y) $OperatorEntered="honza"; $OperatorDomainEntered="Firma_pobocka1"; $PasswordEntered="heslo";‘ Viz také $Operator - 179 - K A P I T O L A 4 Použití InTouchView InTouchView je navržen jako vizualizace a rozhraní speciálně pro použití v prostředí ArchestrA Industrial Application Server (Průmyslový aplikační server). InTouchView nepoužívá jiný zdrojový kód, ani nevyžaduje jinou instalační proceduru než produkt InTouch. Vývojář aplikace sám určí případ od případu, zda-li aplikace bude fungovat jako standardní InTouch nebo InTouchView. Vývojář nastavením volby ve vývojovém prostředí WindowMaker určí pro každou aplikaci, jestli bude fungovat jako plnohodnotná aplikace InTouch nebo jako InTouchView. Obsah • Co je InTouchView • Vytvoření nové aplikace InTouchView • Použití nabídky InTouchView • Konverze aplikací InTouchView Co je InTouchView InTouchView umožňuje vyvíjet operátorské vizualizační a ovládací aplikace v projektech využívajících aplikační server Wonderware Industrial Application server na bázi technologie ArchestrA. Tato kapitola vysvětluje rozdíly mezi aplikacemi InTouch a InTouchView. Rozdíly mezi InTouchView a InTouch Hlavní rozdíly ve funkčnosti aplikací InTouchView oproti běžným aplikacím InTouch jsou v tom, že nejsou schopny se připojit na jiné I/O datové zdroje než na ty, které jsou v databázi projektu Industrial Application Serveru - tzv. Galaxy. Aplikace InTouchView také nejsou schopny vytvářet vlastní alarmy, nicméně podporují zobrazování a potvrzování alarmů z jiných alarmových poskytovatelů. Dále není umožněno, aby si vytvářely vlastní historické trendy. Aplikace InTouchView používají model zabezpečení "ArchestrA". Spouštění aplikace InTouchView Při spouštění vývojového prostředí WindowMaker se kontrolují informace týkající se typu aplikace. Pokud se zjistí, že aplikace je typu InTouchView, WindowMaker odebere přístup na některé nabídky a funkce, které nelze použít v aplikacích typu InTouchView. - 180 - Licence InTouchView Pokud je aplikace typu InTouchView, program WindowViewer žádá po licenčním manažeru (License Manager) licenci pro běh aplikace typu InTouchView. Jinak žádá licenci pro běh plnohodnotné (standardní) aplikace InTouch. Získání licence pro InTouchView • Spusťte aplikaci InTouch v programu InTouch nebo InTouch TSE (InTouch v prostředí terminálových služeb). Během spouštění program InTouch posuzuje aplikaci, kterou spouští. Kontroluje, zda-li je aplikace typu InTouchView a pokud ano, tak žádá po licenčním manažeru (License Manager) licenci pro běh aplikace typu InTouchView. Poznámka: Pokud aplikace není typu InTouchView, program žádá po licenčním manažeru (License Manager) licenci InTouch. Jestliže je licence InTouchView úspěšně načtena, InTouch pokračuje ve spouštění aplikace. Když však licence InTouchView není dostupná, program InTouch žádá licenci InTouch. Pokud je licence InTouch úspěšně načtena, InTouch pokračuje ve spouštění aplikace. Jinak program InTouch zjistí, že licence InTouchView ani InTouch nejsou dostupné, zobrazí stručný popis problému a nabídne volby Abort (Přerušit), Try (Opakovat) nebo Ignore (Přeskočit - používá se pro Demo režim). Vytvoření nové aplikace InTouchView Bez ohledu na to, zda chcete vytvořit aplikaci typu InTouchView nebo plnohodnotnou aplikaci InTouch, pro spuštění vývojového prostředí WindowMaker musíte mít licenci InTouch umožňující spustit vývojové prostředí. ¾ Chcete-li vytvořit novou aplikaci InTouchView 1. Postupně klepněte na Start, Programs a Wonderware a spusťte program InTouch. 2. Objeví se InTouch Application Manager (správce aplikací InTouch). V menu File (Soubor) klepněte na New (Nový) nebo klepněte na první ikonu v liště nástrojů. 3. Následujte průvodce pro vytvoření nové aplikace. 4. Zadejte název aplikace a její popis a zaškrtněte volbu InTouchView Application. - 181 - 5. Klepněte na tlačítko Finish. Systém vytvoří novou aplikaci typu InTouchView a nastaví typ zabezpečení na model "ArchestrA". Provozování aplikace InTouchView Aplikaci InTouchView můžete spustit, pokud máte licenci InTouchView nebo InTouch runtime. ¾ Chcete-li provozovat aplikaci InTouchView • Spusťte aplikaci InTouchView v programu WindowViewer. Aplikace InTouchView neukládá historické trendy, negeneruje alarmy a není schopna se připojit na jiný zdroj dat (I/O) než na tzv. Galaxy Aplikačního serveru. Generovány jsou pouze události typu SYS a USER. Použití nabídky InTouchView Ve vývojovém prostředí můžete u aplikace InTouchView používat nabídky (menu) a funkce pro nastavování různých funkčností jako u plnohodnotné aplikace InTouch. Avšak některé funkce nejsou u InTouchView podporovány. Tyto funkce se sice objeví v nabídce (menu), ale budou šedivé, což je známkou toho, že nejsou povoleny. Níže uvedený seznam konkrétně popisuje, které nabídky (menu) a funkce nejsou dostupné u aplikací InTouchView. Rozdíly v nabídce programu WindowMaker pro aplikace InTouchView U aplikací InTouchView nejsou dostupné v nabídce Special (Speciální) následující volby: • Access Names (Komunikační kanály) • Alarm Groups (Alarmové skupiny) • Configure..Alarms (Konfigurace .. Alarmy) - 182 - • Configure..Historical Logging (Konfigurace .. Ukládání historických dat) • Configure..Distributed Name Manager (Konfigurace .. Správce distribuovaných poskytovatelů) U aplikací InTouchView nejsou dostupné v Application Exploreru (Aplikačním průzkumníku) následující volby: • Configure..Access Names (Konfigurace .. Komunikační kanály) • Configure..Alarm Groups (Konfigurace .. Alarmové skupiny) • Configure..Alarms (Konfigurace .. Alarmy) • Configure..Historical Logging (Konfigurace .. Ukládání historických dat) • Configure..Distributed Name Manager (Konfigurace .. Správce distribuovaných poskytovatelů) • Následující volby v Tagname Dictionary (Databázi proměnných) nejsou dostupné a budou u aplikací InTouchView vyšedlé: • Alarms (Alarmy) • Details & Alarms (Detaily a alarmy) • Log Data (Ukládat data) • Log Events (Ukládat události) • Priority (for Log Events) (Priorita (pro pole Ukládat události)) Konverze aplikací InTouchView InTouch umožňuje konvertovat aplikace typu InTouchView na standardní aplikaci InTouch a naopak. Například, pokud jste vytvořili aplikaci InTouchView, ale nyní potřebujete přistupovat na data z jiného zdroje než je Application Server, můžete zkonvertovat aplikaci na aplikaci InTouch. Stejně tak pokud jste vytvořili aplikaci InTouch, ale chcete přistupovat na data pouze z Application Serveru, můžete aplikaci zkonvertovat na aplikaci InTouchView. Konverze aplikace InTouchView na aplikaci InTouch Pokud potřebujete přistupovat na data z jiného zdroje než je Application Server, můžete zkonvertovat aplikaci typu InTouchView na standardní aplikaci InTouch. Abyste však takto zkonvertovanou aplikaci mohli provozovat v programu WindowViewer, musíte mít k dispozici plnou licenci InTouch runtime. Poznámka: Nelze měnit typ aplikace, pokud je program WindowViewer spuštěn. ¾ Chcete-li zkonvertovat aplikaci InTouchView na aplikaci InTouch: 1. Otevřete aplikaci InTouchView ve vývojovém prostředí WindowMaker. 2. V nabídce Special (Speciální) zvolte Application Type (Typ aplikace). Objeví se dialogové okno, v kterém je zaškrtnuta volba InTouchView Application. - 183 - 3. Zrušte zaškrtnutí volby InTouchView Application a klepněte na OK. Jakmile aplikaci zkonvertujete na standardní aplikaci InTouch, můžete využívat všechny funkce, které byly u aplikace InTouchView zakázané, resp. nedostupné. Poznámka: Po konverzi aplikace InTouchView na InTouch budete možná potřebovat změnit typ zabezpečení ve vaší aplikaci. ¾ Chcete-li změnit typ zabezpečení: 1. V nabídce Special zvolte příkaz Security (Zabezpečení) a pak v podnabídce klepněte na položku Select Security Type (Výběr typu zabezpečení): 2. Vyberte typ zabezpečení pro vaši aplikaci. Více informací o zabezpečení najdete v kapitole 3 "Zabezpečení aplikací InTouch". Konverze aplikace InTouch na aplikaci InTouchView Pokud chcete přistupovat pouze na data z Application Serveru, můžete aplikaci InTouch zkonvertovat na aplikaci InTouchView. ¾ Chcete-li konvertovat aplikaci InTouch na aplikaci InTouchView: 1. Otevřete aplikaci InTouch ve vývojovém prostředí WindowMaker. 2. V nabídce Special (Speciální) zvolte Application Type (Typ aplikace). Objeví se dialogové okno, v kterém je nezaškrtnutá volba InTouchView Application: - 184 - 3. Zaškrtněte volbu InTouchView Application a klepněte na OK. Systém poté zkontroluje, zda-li je v aplikaci použit jiný Access Names (Komunikační kanál) než Galaxy. Pokud ano, objeví se dialogové okno s upozorněním, že musíte před přepnutím na InTouchView nejdříve odstranit ostatní Access Names (Komunikační kanály). Systém také upozorní na to, že InTouchView nepodporuje ukládání historických dat a generování alarmů. Poznámka: Před přepnutím aplikace na InTouchView musíte odstranit všechny Access Names (Komunikační kanály) s výjimkou Access Name „Galaxy". 4. Klepněte na tlačítko OK. Jakmile aplikaci zkonvertujete na aplikaci InTouchView, některé nabídky (menu) a funkce budou nepřístupné. - 185 - KAPITOLA 5 Distribuované aplikace a síťový vývoj aplikací Program InTouch je navržen pro práci se samostatnými i distribuovanými aplikacemi. Samostatné aplikace využívají pro každý monitorovaný systém jedno operátorské rozhraní, jsou jednoduché na konfiguraci a údržbu. Distribuované aplikace jsou oproti tomu mnohem složitější, často s několika síťovými vrstvami. Distribuované aplikace mají obvykle centrální vývojovou stanici, centrální ukládání dat a řadu klientských stanic, které komunikují s centrální stanicí a mezi sebou navzájem. Program InTouch obsahuje mnoho funkcí, které značně usnadňují tvorbu a správu distribuovaných aplikací. Jednou z nejefektivnějších je Network Application Development (NAD) pro síťový vývoj aplikací. NAD umožňuje řadě klientských stanic udržovat kopii jedné aplikace, aniž je omezena možnost na vývoji této aplikace dále pracovat. Program InTouch prostřednictvím NAD rovněž automaticky uvědomuje klientské stanice o změnách ve zdrojové aplikaci a umožňuje i dynamickou aktualizaci lokálních kopií bez přerušení činnosti spuštěné aplikace. Tato kapitola popisuje, jak se distribuované vlastnosti programu InTouch uplatní za běhu aplikace v runtime prostředí. Obsah • Síťový vývoj aplikaci (NAD) • Dynamická změna rozlišení (DRC) • Distribuované aplikace a časové zóny • Distribuované alarmy • Distribuovaná historie - 186 - Síťový vývoj aplikací (NAD) NAD podává automaticky zprávy o změnách v aplikaci a automaticky distribuuje aktualizované aplikace do uzlů se systémy InTouch Runtime (View Node). V architektuře NAD je hlavní kopie aplikace udržována na centrálním místě sítě. Každý uzel s programem InTouch Runtime (WindowViewer) zavádí tuto hlavní aplikaci a kopíruje ji do místa definovaného uživatelem. V následujícím příkladu mají dva InTouch Runtime uzly (View Node 1, 2) hlavní aplikaci registrovanou ve vývojovém uzlu (Development Node), avšak ve skutečnosti ji spouštějí z vlastních pevných disků. Když uzel s programem InTouch Runtime zkopíruje a spustí aplikaci, automaticky monitoruje vznik změn v hlavní aplikaci. Pokud změna vznikne, má každý runtime uzel (View Node) uživatelsky nakonfigurován typ odezvy na tuto změnu: od ignorování změn až po dynamickou aktualizaci běžící aplikace (WindowViewer) na tomto uzlu, který nahraje změny provedené v hlavní aplikaci bez přerušení svého chodu. Nastavení aplikace programu InTouch pro NAD Síťový vývoj aplikací neboli NAD je architektura, která kombinuje to nejlepší z architektur klient-server. NAD poskytuje automatická upozornění na změny provedené v hlavní aplikaci a automatickou distribuci aktualizovaných aplikací na klientské uzly. NAD se dá použít dokonce i pro automatickou distribuci master/slave aplikací. ¾ Chcete-li aplikaci nastavit pro NAD 1. Spusťte program InTouch (INTOUCH.EXE). Objeví se dialogové okno InTouch Application Manager. - 187 - 2. Klepněte na nástroj „Node Properties“ nebo v nabídce Tools klepněte na Node Properties anebo klepněte pravým tlačítkem myši na prázdnou oblast v zobrazeném okně aplikace a pak klepněte na Node Properties. Objeví se dialogové okno Node Configuration s aktivní kartou App Development: Poznámka: V kartě App Development je několik možností, které umožňují určit, jak bude NAD pracovat. Tato nastavení jsou konfigurována v každém klientském uzlu se systémy InTouch Runtime, NIKOLIV VE VÝVOJOVÉM UZLU. To umožňuje nastavit vlastní konfigurace pro každý klientský uzel. - 188 - TIP Pokud spustíte program WindowViewer jako službu operačního systému Microsoft Windows, bude WindowViewer pracovat bez přerušení, ačkoli v operačním systému proběhnou různá přihlášení a odhlášení, např. při změnách směn operátorů. Volbou této možnosti také docílíte toho, že se program InTouch spustí automaticky např. po výpadku proudu nebo pokud se zařízení vypne a zapne. Při této volbě se program WindowViewer spustí automaticky bez zásahu člověka a bez snížení bezpečnosti operačního systému. 3. Zatrhněte pole Enable Network Application Development pro aktivaci režimu NAD. Po zatrhnutí položky bude možné výbrat jeden z pěti režimů startu aplikace. Poznámka: Počáteční kopírování hlavní aplikace může trvat déle než následné aktualizace. 4. Do pole Local working directory zadejte adresář, do kterého má program WindowViewer zkopírovat hlavní aplikaci. TIP Pokud je tento uzel vývojový, lze zadat cestu k lokálnímu adresáři, např. c:\InTouch\NAD. Lze také zadat vzdálenou cestu UNC, např. \\uzel\sdileni\cesta. Tato možnost je vhodná pro sítě se souborovým serverem, kde je většina souborů uložena centrálně. Pokud je tento uzel klientský (pouze pro spouštění v InTouch Runtime), pravděpodobně se použije cesta k lokálnímu adresáři. Jestliže adresář neurčíte, program WindowViewer automaticky vytvoří podadresář s názvem „‚NAD‘“ v adresáři, ze kterého byl program WindowViewer spuštěn. Doporučuje se použít lokální adresář, kdykoli je to možné, aby časová zpoždění a selhání sítě neovlivňovala chod programu WindowViewer. Poznámka: Nikdy nepoužívejte „kořenový“ adresář nebo název cesty UNC, která ukazuje do kořenového adresáře. Program WindowViewer bude v určeném cílovém adresáři aplikace odstraňovat všechny soubory a podadresáře, než provede kopírování adresáře hlavní aplikace. Nikdy proto nepoužívejte cestu k adresáři hlavní aplikace nebo UNC ukazující na kořenový adresář hlavní aplikace. Poznámka: Tento adresář by měl být považován za dočasný adresář. Neměly by do něj být ukládány žádné soubory kromě těch, které byly kopírovány prostřednictvím NAD. 5. V poli Polling Period (sec) zadejte časovou periodu v sekundách, s jakou bude program WindowViewer kontrolovat změny v hlavní aplikaci. Poznámka: Při nastavování tohoto údaje může příliš malá hodnota způsobit, že se program WindowViewer bude příliš zabývat vyhledáváním změn v hlavní aplikaci na úkor zajišťování hladkého chodu vlastní aplikace. 6. Ve skupině Change Mode zvolte možnost akce, kterou má program WindowViewer vykonat, když se hlavní aplikace změní. Možnost Ignore changes Akce Uzel s programem InTouch Runtime (WindowViewer) bude ignorovat všechny změny provedené ve vývojovém uzlu. Na uzlu se systémem InTouch Runtime se program WindowViewer Restart WindowViewer - 189 - automaticky zavře, zkopíruje se aktualizovaná hlavní aplikace (je-li to nastaveno) a program WindowViewer se opět spustí. Objeví se okno se zprávou upozorňující operátora na změnu aplikace a vyzve ho, zda si přeje program WindowViewer restartovat. Prompt user to Restart WindowViewer Load Changes into WindowViewer Prompt user to load changes into WindowViewer Změny provedené ve vývojovém uzlu se dynamicky zavedou do programu WindowViewer. Tato možnost může při rozsáhlých změnách ovlivnit výkon aplikace. Objeví se okno zprávy upozorňující operátora na změnu aplikace a nabídne mu, zda si přeje dynamicky zavést změny do programu WindowViewer. 7. Klepněte na OK. Vyrozumění klientů o změnách v aplikaci Při vývoji aplikace v programu InTouch se pomocí příkazu Notify Clients (Vyrozumět klienty) vyrozumí klientské aplikace o změnách ve zdrojové aplikaci. To se provede v rozhraní WindowMaker v menu Special klepnutím na položku Notify Clients. Po klepnutí na tuto položku program InTouch automaticky vyrozumí všechny vzdálené uzly pracující v klientském modu režimu NAD o tom, že se změnila zdrojová aplikace umístěná na vývojové stanici. Klientské stanice následně začnou automaticky z vývojové stanice stahovat aktuální verzi aplikace a podle režimu který mají nastavený novou aplikaci spustí. Poznámka: V případě použití příkazu Notify Clients, můžete tento krok vyhodnotit pomocí skriptové části programu InTouch. Proces kopírování aplikace Když uzel s programem WindowViewer kopíruje aplikaci, snaží se zachovávat atributy jednotlivých souborů hlavní aplikace (pro čtení, systémový soubor, skrytý soubor atd.). Program WindowViewer kopíruje všechny soubory a podadresáře hlavní aplikace kromě následujících souborů: *.WVW, *.DAT, *.LGH, *.IDX, *.LOG, *.LOK, *.FSM, *.STG, *.DBK, *.CBK, *.HBK, *.KBK, *.LBK, *.NBK, *.OBK, *.TBK, *.WBK, *.XBK, *.$$$, RETENTIV.X, RETENTIV.D, RETENTIV.A, RETENTIV.S, RETENTIV.H, RETENTIV.T, WM.INI, DB.INI, LINKDEFS.INI, TBOX.INI, GROUP.DEF, a ITOCX.CFG. - 190 - Poznámka: WindowViewer vymaže všechny soubory a podadresáře v cílovém adresáři aplikace. Tento adresář by měl být považován za dočasný a neměly by tedy do něj být umísťovány žádné soubory. Dynamická změna rozlišení (DRC) Dynamická změna rozlišení (Dynamic Resolution Conversion - DRC) je vlastnost, která poskytuje nezávislost na velikosti rozlišení obrazovky. V architektuře NAD je InTouch aplikace vytvořena a udržována ve vývojovém uzlu a kopírována na několik klientských uzlů s programem InTouch Runtime (WindowViewer). Dynamická změna rozlišení umožňuje všem těmto uzlům zobrazit aplikace v různých rozlišeních obrazovky. V každém uzlu s programem InTouch Runtime se grafické rozlišení přepočítá do příslušných předem definovaných rozlišení pro tento uzel (640x480, 800x600 aj.), včetně možnosti vlastního nastavení (700x500 aj.). Přepočítání se provede při kompilaci aplikace programem WindowViewer a nevyžaduje program WindowMaker. Nastavení aplikace pro dynamickou změnu rozlišení ¾ 1. Spusťte program InTouch (INTOUCH.EXE). Objeví se dialogové okno InTouch Application Manager. 2. Klepněte na nástroj „Node Properties“ nebo na nabídku Tools a pak klepněte na Node Properties. Objeví se dialogové okno Node Configuration. TIP 3. Pro rychlý přístup do dialogového okna klepněte pravým tlačítkem myši na prázdnou oblast zobrazeného okna aplikace a pak klepněte na položku Node Properties. Klepněte na záložku Resolution. Objeví se dialogové okno Node Properties. - 191 - 4. Chcete-li, aby program WindowViewer lokálně přepočítával grafické rozlišení hlavní aplikace, zvolte možnost Allow WindowViewer to dynamically change resolution. (Popis tří režimů rozlišení je uveden níže.) TIP Pokud tato možnost není zvolena, program WindowViewer spustí aplikaci, jen když je rozlišení obrazovky na lokálním uzlu stejné jako rozlišení aplikace na vývojovém uzlu. Pokud jsou rozlišení různá, program WindowViewer vyzve uživatele ke spuštění vývojového program WindowMaker pro převod grafického rozlišení aplikace na rozlišení použité na lokálním uzlu. Pokud jste nastavili cestu UNC k adresáři hlavní aplikace, dojde ke změně pouze v původní aplikaci. 5. V režimu Use application resolution spustí program WindowViewer aplikaci v rozlišení, ve kterém byla vyvinuta a ignoruje rozlišení lokálního uzlu. Pokud byla aplikace vyvinuta např. v rozlišení 640x480 a rozlišení lokálního uzlu je 1024x768, program WindowViewer nebude dynamicky měnit rozlišení aplikace. Místo toho se aplikace zobrazí v rozlišení 640x480. 6. V režimu Convert to screen video resolution spustí program WindowViewer aplikaci v rozlišení lokálního uzlu a ignoruje rozlišení, ve kterém byla aplikace vyvinuta. Pokud je např. lokální uzel spuštěn v rozlišení 640x480 a aplikace byla vyvinuta v rozlišení 1280x1024, program WindowViewer dynamicky změní rozlišení aplikace a zobrazí ji v rozlišení 640x480 display. (Tento režim bude pravděpodobně používán nejčastěji.) 7. Režim Custom resolution umožňuje programu WindowViewer spustit aplikaci v rozlišení definovaném v polích Pixel width (X) a Pixel height (Y) (musí být zadány celé hodnoty). Jak rozlišení aplikace, tak i rozlišení uzlu budou ignorovány. Pokud jsou např. hodnoty v polích Pixel width (X) a Pixel height (Y) nastaveny na 512 a 384, aplikace je na lokálním uzlu zobrazena v obdélníku o rozměrech 512 x 384 pixelů. 8. Klepněte na OK. - 192 - Práce s vícemonitorovými systémy V současné době na trhu existují vyspělé grafické karty, které umožňují k jednomu systému připojit současně více než jeden monitor VGA. Tyto monitory pracují současně a vytvářejí virtuální obrazovku, která může být velmi velká. Jako příklad může sloužit oblíbený systém, který spojuje čtyři monitory uspořádané do čtverce: dva dole a dva nahoře. Jestliže má každá jednotlivá obrazovka rozlišení 800x600 pixelů, vytvořená virtuální obrazovka bude mít celkem 1600x1200 pixelů. Dynamická změna rozlišení (DRC) usnadňuje podporu těchto vícemonitorových sestav. Volbou v kartě Resolution lze snadno využít celou virtuální obrazovku nebo její část. Pokud je rozlišení aplikace zvoleno pro provozování na sudém počtu monitorů, mohou se určitá dialogová okna zobrazit přes více než jednu obrazovku. To může způsobit problémy např. u okna Keypad, protože některé klávesy nemusí být dostupné. Pro odstranění tohoto problému nabízí program InTouch několik možností pro vícemonitorové konfigurace. Chcete-li na uzlu provést nastavení pro více monitorů: Vhodným textovým editorem (např. editor Poznámkový blok (Notepad) systému Windows) otevřete soubor WIN.INI umístěný v adresáři Windows. Vyhledejte oddíl [InTouch] a doplňte následující parametry: [InTouch] MultiScreen=1 zapne vícemonitorový režim MultiScreenWidth=640 šířka jedné obrazovky v pixelech MultiScreenHeight=480 výška jedné obrazovky v pixelech Pokud je např. rozlišení obrazovky 2560 x 1024 rozdělené na dva horizontální monitory, zadejte následující parametry: [InTouch] MultiScreen=1 MultiScreenWidth=1280 MultiScreenHeight=1024 Poznámka: Výše uvedené parametry ovlivňují pouze dialogová okna s numerickou klávesnicí (pro zadávání čísel) a s klávesnicí QWERTY (pro zadávání textů). Jiná dialogová okna ovlivněna nebudou. Distribuované aplikace a časové zóny Program InTouch obsahuje služby, které usnadňují použití aplikací v různých časových zónách. Tyto služby jsou využívány v alarmním a historizačním systému pro zobrazení hodnot v lokálním čase. Například: Pokud si inženýr v Kalifornii prohlíží alarm, který vznikl v továrně v Kansasu v 10:00, a má nastavený lokální kalifornský čas, potom tento alarm uvidí s časem vzniku 8:00. To samé platí pro zobrazení historických dat. Klíčem k těmto službám je použití času UCT (Universal Coordinated Time), známého také jako Greenwich Mean Time neboli GMT, jako referenčního času v programu InTouch. Každý počítač má nastavený lokální čas a časový posun od UCT (UCT offset) pro časovou zónu, ve které se počítač nachází. V předchozím příkladě je časová zóna počítače umístěného v Kalifornii GMT-8 a počítače v Kansasu GMT-6. - 193 - Program InTouch používá tyto GMT časové posuny jako základ pro vyhodnocení všech alarmních stavů a historických dat. V předchozím příkladě, kdy aplikace v Kalifornii obdrží alarmovou informaci od aplikace v Kansasu, systém zpracuje čas podle místního časového pásma a adekvátně alarm zobrazí. Proto je událost v 10:00 v GMT-6 totožná s událostí v 8:00 v GMT-8. Distribuované alarmy Program InTouch podporuje Distribuovaný alarmní systém. Tato vlastnost umožnuje zobrazit alarmové stavy a události generované jak lokální aplikací InTouch, tak alarmními systémy dalších, síťově připojených aplikací InTouch. Alarmy je možné potvrzovat jak na lokálním počítači, tak na vzdáleném uzlu. Podrobné informace o provozu a konfiguraci distribuovaného alramního systému jsou uvedeny v kapitole 9 – Alarmy a události. Distribuovaná historie Program InTouch poskytuje distribuovaný historizační systém, který umožňuje zobrazovat historická data z aplikací InTouch (verze 5.6 a novější) lokálních nebo vzdálených, které jsou umístěny na síti. Tato vlastnost umožňuje současné získávání historických dat z různých historických databází. Tyto historické databáze jsou označovány jako poskytovatelé historických dat. Pomocí těchto poskytovatelů lze např. přiřadit v historickém trendu ke každému z 8 per jiného poskytovatele. Poznámka: Jako poskytovatel historických dat může být nastaven InTouch nebo IndustrialSQL server. Podrobné informace o provozu a konfiguraci distribuovaného alramního systému jsou uvedeny v kapitole 14 – Reálné a historické trendy. - 194 - KAPITOLA 6 Databáze proměnných Tagname Dictionary (Databáze proměnných) je srdcem programu InTouch. Při běhu programu obsahuje databáze aktuální hodnotu všech položek v databázi. Aby bylo možno vytvořit databázi při běhu programu, vyžaduje program InTouch informace o všech vytvářených proměnných. Každé proměnné musí být přiřazen název a typ. Program InTouch vyžaduje také dodatečné informace o některých typech proměnných. Například pro proměnné typu I/O (vstup/výstup) vyžaduje program InTouch více informací, aby byl schopen vytvořit hodnotu a konvertovat ji pro interní použití. Tagname Dictionary (Databáze proměnných) je mechanismus používaný pro zadávání těchto informací. V této kapitole jsou také popsány dva databázové obslužné programy - DBDump a DBLoad. Program DBDump Vám umožňuje exportovat databázi proměnných aplikace InTouch jako textový soubor, který lze zpracovávat jinými programy, jako je např. Microsoft Excel, pro modifikaci, ukládání atd. Program DBLoad umožňuje načíst databázi proměnných vytvořenou jiným programem, jako je např. Excel, nebo vyexportovanou z jiné aplikace InTouch, pomocí programu DBDump, do existující aplikace programu InTouch. Obsah • Speciální funkce databáze proměnných • Typy proměnných • Rozšířená podpora proměnných • Definice nové proměnné • Definice vlastností proměnné • Definice alarmových stavů proměnné • Odkazy na vzdálené proměnné • Vytvoření aplikace Tagname Server • Dynamická změna adresování (DRA) • Tag Browser (Prohlížeč proměnných) • Přesměrování vzdálených odkazů pomocí skriptu • Utilita Křížové odkazy programu InTouch • Vymazání proměnných z databáze • Zobrazení počtu použitých proměnných • Nahrazování proměnných • Konverze zástupných proměnných • Změna velikosti rozsahu I/O proměnných • Interní systémové $proměnné • Atributy proměnné • Utility databáze proměnných - 195 - Speciální funkce databáze proměnných Databáze proměnných Vám poskytuje následující speciální funkce: Funkce Popis Tag Browser (Prohlížeč proměnných) Tag Browser (Prohlížeč proměnných) se používá pro výběr proměnných a jejich dotfields (atributů proměnných), vzdálených referencí na proměnné a proměnných typu SuperTag z aplikací FactorySuite nebo jakéhokoli jiného zdroje proměnných, který podporuje rozhraní databáze proměnných. Tagname Cross Referencing (Křížové odkazy) Tagname Cross Referencing umožňuje zjistit, kde se proměnná ve Vaší aplikaci používá včetně oken, skriptů, konfigurace SQL, spouštěcích podmínek SPC atd. Informace o odkazech můžete vytisknout nebo uložit do souboru. Proměnné typu SuperTag Program InTouch podporuje strukturu SuperTag, která Vám umožňuje definovat složené typy proměnných. Můžete definovat šablony SuperTag až se 64 členy a 2 úrovněmi vkládání. Jednotlivé členy se chovají přesně jako normální proměnné a podporují trendy a alarmy a všechna dotfields (atributy proměnných). Odkazy Vzdálené odkazy na proměnné umožňují programu InTouch přístup k datům z I/O serveru bez nutnosti vytvoření proměnné ve Vaší lokální databázi proměnných. Vzdálené odkazy Vám umožňují import nebo export okna nebo skriptu QuickScript bez potřeby konverze proměnných ze zástupnými znaky (placeholders). Rozšířená podpora proměnných Program InTouch může podporovat v databázi proměnných až 61 405 proměnných. (Počet proměnných, které Váš systém podporuje, je určen Vaší licencí.) - 196 - Typy proměnných Když definujete proměnné v databázi programu InTouch, musíte přiřadit ke každé proměnné specifický typ podle jejího použití. Pokud například proměnná má číst nebo zapisovat proměnné přicházející z jiné aplikace systému Windows, jako je I/O server, musí být proměnná typu I/O (vstup/výstup). V následujícím textu je popsán každý typ proměnné programu InTouch a jeho použití. Proměnné paměťového typu Proměnné paměťového typu existují interně v rámci Vaší aplikace programu InTouch. Můžete je použít pro vytváření systémových konstant a simulací. Můžete je také použít pro vytváření vypočtených proměnných, ke kterým je přístup prostřednictvím jiných programů systému Windows. Můžete například definovat paměťovou proměnnou s počáteční hodnotou 3,1416 nebo můžete uložit receptury ve skupinách paměťových proměnných. V simulacích můžete použít paměťové proměnné pro ovládání akcí skriptů QuickScript v pozadí. Můžete například definovat paměťovou proměnnou "COUNT", která se mění při akci skriptu QuickScript, pro vyvolání různých animačních efektů, které mají nastat pro aktuální STEP (KROK) procesu. Existují čtyři paměťové typy: Paměťové diskrétní Interní diskrétní proměnná s hodnotou buď 0 (nepravda, vypnuto) nebo 1 (pravda, zapnuto). Paměťové celočíselné 32 bitová celočíselná hodnota se znaménkem v rozsahu od -2 147 483 648 do 2 147 483 647. Paměťové reálné Paměťová proměnná s plovoucí (desetinnou) tečkou. Hodnota s plovoucí desetinnou tečkou může být v rozsahu -3.4e38 do 3.4e38. Všechny výpočty s plovoucí desetinnou tečkou se provádějí s 64 bitovým rozlišením, ale výsledek je uložen ve 32 bitové formě. Paměťové textové Proměnná textového řetězce, který může mít délku až 131 znaků. - 197 - Proměnné typu I/O (vstup/výstup) Všechny proměnné, které načítají nebo zapisují své hodnoty do nebo z jiného programu systému Windows jsou proměnné typu I/O (vstup/výstup). To zahrnuje všechny vstupy a výstupy z programovatelných automatů, počítačů pro řízení výroby a dat ze síťových uzlů. K proměnným I/O lze získat přístup buď prostřednictvím dynamické výměny dat Microsoft (DDE) nebo komunikačního protokolu Wonderware SuiteLink. Když se hodnota proměnné typu I/O pro čtení/zápis změní, je okamžitě zapsána do vzdálené aplikace. Proměnná se může také aktualizovat ze vzdálené aplikace, kdykoli se položka, ke které je proměnná připojena, ve vzdálené aplikaci změní. Implicitně jsou všechny proměnné I/O nastaveny na čtení/zápis. Můžete je však omezit pouze pro čtení zvolením možnosti Read Only (Pouze pro čtení) v dialogovém okně Tagname Dictionary (Knihovna proměnných). Existují čtyři typy I/O (vstup/výstup): I/O diskrétní Diskrétní proměnná vstupu/výstupu s hodnotou buď 0 (nepravda, vypnuto) nebo 1 (pravda, zapnuto). I/O celočíselné 32 bitová celočíselná hodnota se znaménkem v rozsahu od -2 147 483 648 do 2 147 483 647. I/O reálné Proměnná s plovoucí (desetinnou) tečkou. Hodnota s plovoucí desetinnou tečkou může být v rozsahu ±3.4e38. Všechny výpočty s plovoucí desetinnou tečkou se provádějí s 64 bitovým rozlišením, ale výsledek je uložen ve 32 bitové formě. I/O textové Proměnná vstupu/výstupu s textovým řetězcem, který může mít délku až 131 znaků. - 198 - Smíšené typy proměnných Existuje několik speciálních typů proměnných, které můžete přiřadit k proměnným pro provádění komplexních funkcí, jako je vytváření dynamických alarmových objektů, historických trendů, monitorování nebo řízení proměnných vykreslovaných každým historickým trendem. Existují také nepřímé typy proměnných, které můžete použít pro opětovné přiřazení proměnné k několika zdrojům. Tyto speciální typy jsou popsány níže. Group Var Typ Group Var (Skupinová proměnná) se používá pro proměnné s přiřazenou Alarm Group (Alarmovou skupinou) pro vytvoření dynamických alarmových objektů, systémových protokolů a tiskových protokolů. Proměnné typu Group Var použijete pro vytvoření alarmových oken nebo alarmových protokolů, které zobrazují všechny alarmy asociované se specifickou skupinovou proměnnou. Můžete také ovládat alarmy, které jsou zobrazeny nebo zaprotokolovány přiřazením rozdílné alarmové skupiny k proměnné Group Var. Proměnou typu Group Var můžete také použít pro vytváření tlačítek, na která operátor klepá pro selektivní zobrazení alarmů pro rozdílné oblasti zařízení ve stejném alarmovém okně. Všechna dotfields (atributy proměnných) asociovaná s alarmovými skupinami lze použít pro proměnné Group Var. Poznámka: Typ Group Var je stále podporován v programu InTouch 7.11, ale nemá žádný účel. Již se nepoužívá pro dynamickou změnu alarmových skupin, protože standardní alarmový systém byl zrušen. Více informací o alarmech je uvedeno v kapitole 9, "Alarmy a události". Hist Trend Program InTouch vyžaduje proměnnou typu Hist Trend, když vytváříte historický trend. Všechna dotfields (atributy proměnných) asociovaná s historickými trendy lze použít pro proměnné Hist Trend. Tag ID Toto je speciální typ, který se používá s objekty historických trendů. Proměnné typu Tag ID použijete pro vyhledání informací o proměnných, které se vykreslují v historickém trendu. Ve většině případech použijete proměnné Tag ID pro zobrazení názvu proměnné přiřazené ke specifickému peru nebo pro změnu proměnné přiřazené k peru. Můžete zpracovat výraz ve skriptu QuickScript pro přiřazení nové proměnné k jakémukoli peru v jakémkoli historickém trendu. Ve Vašem skriptu QuickScript může být použit například následující výraz: MyHistTrendTag.Pen1=MyLoggedTag.TagID; Po provedení tohoto QuickScriptu, Pen1 (Pero1) v historickém trendu asociovaném s proměnnou Hist Trend "MyHistTrendTag" zahájí vykreslování historického trendu na základě uložených dat pro "MyLoggedTag". Další informace o použití proměnných Tag ID najdete v příručce InTouch Reference Guide. - 199 - Nepřímé diskrétní, nepřímé analogové, nepřímá zpráva Proměnné nepřímého typu Vám umožní vytvořit jedno okno a přiřazovat proměnné v tomto okně proměnným několika zdrojů. Řekněme například, že máte padesát stejných čerpadel, u kterých chcete, aby je operátor monitoroval z hlediska alarmových stavů. Místo vytvoření padesáti rozdílných oken (jedno pro každé čerpadlo) můžete použít nepřímé proměnné v jednom okně, které vyvolá zdrojové proměnné asociované s jednotlivými čerpadly založené na skriptu QuickScript, který nasměruje nepřímé proměnné ke zdrojovým proměnným čerpadla, jež generovalo alarmový stav. Můžete také použít skript QuickScript dotykového tlačítka, který umožní, aby operátor mohl ručně zvolit, které čerpadlo se má zobrazit. Tato metoda zkracuje dobu pro vývoj a zmenšuje velikost aplikace. Poznámka: Program InTouch podporuje také nepřímé proměnné SuperTag. Všechny nepřímé proměnné SuperTag jsou zobrazeny v dialogovém okně Tagname Types (Typy proměnných) databáze proměnných. Nepřímé proměnné SuperTag lze také použít ve skriptech QuickScript programu InTouch. Když zaměňujete nepřímou proměnnou za jinou zdrojovou proměnnou, jak nepřímá proměnná, tak zdrojová proměnná se stanou přesnými vzájemnými duplikáty v každém aspektu včetně atributů proměnných, skriptů atd. Pokud se změní hodnota zdrojové proměnné, změna se projeví u nepřímé proměnné. Pokud se změní hodnota nepřímé proměnné, obdobně se změní zdrojová proměnná. Hodnoty nepřímých proměnných můžete definovat v databázi jako retentivní, což zajistí, aby se poslední hodnota zapamatovala jako výchozí pro příští spuštění. Nepřímé proměnné jsou přiřazeny pomocí pole .Name (.(Název). Jestliže jste například vytvořili nepřímou analogovou proměnnou nazývanou "Setpoint (Zadaná hodnota)" a použili níže uvedený výraz ve skriptu QuickScript, "Setpoint1 (Zadaná hodnota 1)" se stane zdrojem pro hodnotu "Setpoint (Zadaná hodnota)": Setpoint.Name = "Setpoint1"; nebo Setpoint.Name = Setpoint1.Name; Proměnné můžete také zřetězit pro použití v nepřímých proměnných. Jestliže jste například vytvořili skript Data Change (Změna dat) QuickScript, který se provede při každé změně hodnoty proměnné "Number (Počet)", nepřímá proměnná "Setpoint (Zadaná hodnota)" se změní obdobným způsobem: Number=1; Setpoint.Name = "Setpoint" + Text(Number, "#" ); Když se tento skript QuickScript provede, hodnota analogové proměnné "Number (Počet)" se převede na text, který se připojí se na analogovou proměnnou "Setpoint (Zadaná hodnota)" a přitom nastaví "Setpoint.Name (Název zadané hodnoty)" rovný "Setpoint1 (Zadané hodnotě 1)". (Proměnné nepřímého analogového typu se používají jak pro celočíselné (celá čísla), tak pro reálné (plovoucí desetinná tečka) proměnné. - 200 - Když vyvoláte zdrojovou proměnnou a zdrojová proměnná je uzavřena do uvozovek: Indirect.name= "mytag" nebo zdrojová proměnná je definována zřetězením textového řetězce s proměnnou: Indirect.Name = "mytag" + Text(Number, "#"); není zdrojová proměnná aktivní pro nepřímou. Nepřímá proměnná nepřijme charakteristiky zdrojové proměnné do té doby, než se skript QuickScript neprovede podruhé. Doporučujeme Vám, abyste ověřili, že všechny nepřímé proměnné se odkazují na aktivní proměnné. Zdrojová proměnná (zdrojové proměnné) je (jsou) aktivována (aktivovány), když je (jsou): • zobrazena (zobrazeny) v otevřeném okně aplikace; • používána (používány) ve skriptu QuickScript Window (Okno) nebo Action (Akce) a okno aplikace, které je asociováno se skriptem, je otevřené; • aktivně používána (používány) aktuálním trendem; • používána (používány) pro alarmové účely; • událost zaprotokolována a je aktivováno Event Logging (Protokolování událostí); • zaznamenána (zaznamenány) v protokolu historických dat a Historical Logging (Záznam historických dat) je aktivováno; • použita (použity) ve skriptu QuickScript Key (Klávesa), Condition (Podmínka), Data Change (Změna dat) nebo Application (Aplikace); • proměnná Auto Collection (Automatický sběr) v programu InTouch SPCPro; • k ní (k nim) aktivně přistupuje klientská aplikace (jako je např. Microsoft Excel) pomocí DDE; • na ní (na ně) odkaz z lokálního klienta pomocí Point Access (PTACC.DLL) • přiřazena (prováděn odkaz) na nepřímou proměnnou (dojde ke zpoždění zlomku vteřiny, neboť skript musí vyžádat správnou hodnotu I/O proměnné); nebo • Access Name (Komunikační kanál) programu InTouch konfigurován pro protokol DDE pro avizování všech položek. - 201 - Rozšířená podpora proměnných Program InTouch může podporovat v databázi proměnných až 61 405 proměnných. Počet proměnných, které Váš systém podporuje, je určen Vaší licencí softwaru. ¾ Určení podpory proměnných pro Váš systém 1. Zavřete všechna okna. 2. V nabídce Special (Speciální) klepněte na Update Use Counts (Aktualizovat počet použití).. TIP Objeví se okno se zprávou sdělující, že aktualizace počtu použití může trvat určitou dobu. Nyní můžete příkaz stornovat nebo pokračovat. 3. Klepněte na Yes (Ano) pro pokračování aktualizace počtu použití. 4. Jakmile systém dokončil aktualizaci počtu použití, zobrazí se následující dialogové okno. 5. Řádek Tag License (Licence proměnných) zobrazí počet proměnných podporovaných Vaší licencí. Poznámka: Jakákoli proměnná použitá v programu SPCPro, jako jsou Collection Tag, Scooter Tag nebo Trigger Tag, nebude do počtu zahrnuta. 6. Klepněte na OK. - 202 - Definice nové proměnné Proměnné mohou mít délku až 32 znaků a musí začínat abecedním znakem (A-Z nebo az). Zbývající znaky mohou být A-Z, a-z, 0-9, !, @, -, ?, #, $, %, _, \ a &. Poznámka: Znak obráceného lomítka (\) je platný jen pro proměnnou typu SuperTag. Proměnné jsou také automaticky indexovány. Jestliže například zadáte a uložíte proměnnou R4001 a potom klepnete na New (Nová), proměnná se automaticky indexuje na R4002. Pokud proměnná obsahuje čísla oddělená znakem, provede se automatické indexování prvního nalezeného celého čísla. N7-0 bude například indexováno jako N7-1. Jsou dovoleny jen kladné změny. Například R4002 na R4003, R4003 na R4004 atd. Používáte-li v proměnných pomlčky (-), musíte být opatrní. Jsou sice pro použití v proměnných platné, ale používají se také jako negace a odečítací "operátor" ve výrazech nebo logice. Proto se objeví určitá dvojznačnost. Používáte-li například A=B-C ve výrazu, máze na mysli, že A=B mínus C nebo že jednoduše chcete přiřadit proměnnou nazvanou B-C k proměnné nazvané A? Program InTouch bude předpokládat druhou možnost. Zabránit této nejasnosti můžete oddělením proměnných od operátorů znakem (znaky) mezery. Například A = B - C. Zamyslete se nad tímto příkladem: X-101=FT-101*SP-101 Vidíte, že FT-101 se násobí SP-101 a je přiřazeno k X-101 v důsledku skutečnosti, že nebyly použity žádné mezery? Když poprvé provádíte přístup k Tagname Dictionary (Databázi proměnných), zobrazí se definice pro interní systémovou proměnnou $AccessLevel. Jakmile definujete proměnné v databázi proměnných, zobrazí se při provádění opětovného přístupu poslední editovaná definice proměnné. Klepněte na << nebo na >> pro procházení definicí proměnných aktuálně uložených ve Vaší databázi proměnných. (Tlačítka procházení nebudou aktivní, pokud neexistují žádné předchozí nebo následující proměnné pro zobrazení.) Klepněte na Select (Vybrat) pro rychlé nalezení určité definice proměnné. Objeví se dialogové okno Select Tag (Vybrat proměnnou) v režimu výběru. Více informací o funkci Tag Browser (Prohlížeč proměnných) je uvedeno v oddíle "Prohlížeč proměnných". - 203 - Možnosti volby v horní části Tagname Dictionary (Databáze proměnných) se používají pro zobrazení různých dialogových oken úrovní podrobností proměnných, jak je uvedeno v následujícím textu: Volba Popis Main (Hlavní) Zobrazuje hlavní dialogové okno databáze proměnných. V případě proměnných typu SuperTag zobrazuje dialogové okno Main (Hlavní) pouze mateřskou nebo kořenovou proměnnou. Jakékoli změny provedené v mateřské nebo kořenové proměnné mohou přepsat informace proměnné Member (člen). Po provedení změny klepněte na Save (Uložit). Zobrazí se okno s dotazem, zda chcete přepsat proměnné členů změnami kořenové proměnné. Details (Podrobnosti) Zobrazí příslušné dialogové okno podrobností pro zvolený typ proměnné. Alarms (Alarmy) Zobrazí příslušné dialogové okno konfigurace alarmů pro zvolený typ proměnné. Details & Alarms (Detaily a alarmy) Zobrazí jak příslušná dialogová okna podrobností, tak dialogová okna konfigurace alarmů pro zvolený typ proměnné. Members (Prvky) Zobrazí dialogové okno podrobností prvku pro proměnnou typu SuperTag. TIP ¾ Klepnete-li pravým tlačítkem myši na vstupní textová pole v libovolných dialogových oknech databáze proměnných, objeví se nabídka s příkazy, které lze aplikovat na zvolený text. Definice nové proměnné 1. V nabídce Special (Speciální) klepněte na Tagname Dictionary (Databáze proměnných) nebo v Application Explorer (Aplikačním průzkumníku) klepněte dvakrát na Tagname Dictionary (Databáze proměnných). Objeví se dialogové okno Tagname Dictionary (Databáze proměnných). 2. Klepněte na New (Nová). (Pole Tagname (Proměnná) se vymaže.) 3. V poli Tagname (Proměnná) napište název, který chcete použít pro novou proměnnou. TIP Proměnné mohou mít délku až 32 znaků a musí začínat abecedním znakem (AZ nebo a-z). Zbývající znaky mohou být A-Z, a-z, 0-9, !, @, -, ?, #, $, %, _, \ a &. Pro proměnnou nelze použít slovo RetVal. Toto je rezervované slovo. Pokud se pokusíte použít toto slovo a potom se snažíte editovat funkci typu - 204 - QuickFunction, generuje se chybové hlášení "Proměnná nemůže mít tento název. Proměnná existuje". 4. Klepněte na Type (Typ). Objeví se dialogové okno Tag Types (Typy proměnných). 5. Zvolte typ pro proměnnou, potom klepněte na OK. Zobrazí příslušné dialogové okno podrobností pro zvolený typ. (Dialogová okna podrobností jsou popsána v této kapitole později.) TIP Názvy jakékoli proměnné typu SuperTag vytvořené v utilitě TemplateMaker se také objeví v tomto dialogovém okně a lze je zvolit jako typ proměnné. Například ColdRoom a EvapUnit výše. Pro proměnné typu SuperTag, které nebyly vytvořeny pomocí utility TemplateMaker, se objeví název "SuperTag". Například proměnné typu SuperTag vytvořené v proměnné animačního propojení nebo ve vstupním poli výrazu, skriptu QuickScript, nebo vytvořené v externím souboru a potom zavedená utilitou DBLoad. Další informace o typech proměnných najdete v části "Typy proměnných". Více informací o vytváření proměnných typu SuperTag programu InTouch je uvedeno v části "Vytváření proměnných typu SuperTag v programu InTouch". Poznámka: Jestliže je proměnná aktuálně propojena s objektem nebo je používána ve skriptu QuickScript, její typ lze změnit jen tehdy, když neběží program WindowViewer. 6. Klepněte na Group (Skupina) pro přiřazení proměnné ke specifické alarmové skupině. Objeví se dialogové okno Alarm Groups (Alarmové skupiny). Zvolte alarmovou skupinu, kterou chcete přiřadit k proměnné, a potom klepněte na Done (Hotovo). Poznámka: Pokud jste nepřiřadili proměnnou ke specifické alarmové skupině, program InTouch standardně automaticky přiřadí proměnnou ke kořenové skupině $System. - 205 - Jakmile jste vytvořili proměnnou a přiřadili ji k alarmové skupině a jestliže jste nezavřeli dialogové okno, všechny následné proměnné, které definujete, se přiřadí ke stejné alarmové skupině, pokud je nezměníte. Více informací o definici alarmových skupin je uvedeno v kapitole 9, "Alarmy a události". 7. Pro proměnné typu I/O zvolte Read Only (Pouze pro čtení) pro omezení proměnné pouze pro čtení při běhu programu. 8. Pro proměnné typu I/O zvolte Read Write (Čtení - zápis) pro přidělení proměnné schopností čtení a zápisu při běhu programu. 9. V poli Comment (Poznámka) napište jakoukoli různorodou poznámku, která se má uložit v systému, pokud se týká Vaší proměnné (až 50 znaků). TIP Když poprvé provádíte přístup k dialogovému oknu Tagname Dictionary (Databázi proměnných), zobrazí se v poli Comment (Poznámka) implicitní poznámka pro interní systémovou proměnnou $AccessLevel. Tuto poznámku byste měli vymazat, aby se zabránilo přiřazení s jakýmikoli proměnnými, které definujete. Vymazání poznámky se provádí jejím zvolením a stisknutím klávesy DEL. Více informací o použití distribuovaného alarmového systému je uvedeno v kapitole 9, "Alarmy a události". 10. Zvolte Log Data (Ukládat data), pokud chcete, aby se proměnná uložila do protokolu historických dat při běhu programu, kdykoli se hodnota v inženýrských jednotkách změní o více než je hodnota v Log Deadband (Pásmu necitlivosti ukládání), kterou specifikujete, nebo implicitně jednou za hodinu bez ohledu na změnu. Poznámka: Aby bylo možné Vaše proměnné skutečně ukládat, musíte aktivovat ukládání historických dat prostřednictvím příkazu Configure Historical Logging (Konfigurovat ukládání historických dat) v nabídce Special (Speciální). Rozhodnete-li se později zrušit ukládání dat pro danou proměnnou, data uložená dříve pro tuto proměnnou již nebudou dostupná. Pokud provedete změny v programu WindowMaker při běhu programu WindowViewer, změny se neprojeví dokud program WindowViewer nebude opětovně spuštěn. 11. Zvolte Log Events (Ukládat události), pokud chcete ukládat změny hodnoty proměnné, které jsou iniciovány operátorem, vstupem/výstupem, skriptem QuickScript nebo systémem. TIP Když definujete proměnnou pro monitorování událostí, zaznamená se do alarmového systému zpráva o události vždy, když se změní hodnota proměnné. Zpráva o události se zaznamená tak, jak se změnila hodnota. Například, zda operátor, vstup/výstup, skripty QuickScript nebo systém inicioval změnu. Když zvolíte Log Events (Ukládat události), zaktivuje se pole Priority (Priorita). Hodnota zapsaná pro Priority (Prioritu) určuje úroveň priority události pro proměnnou. Platné vstupy v tomto poli jsou 1 až 999, kde 1 je nejvyšší a 999 je nejnižší priorita. Více informací o událostech a prioritách je uvedeno v kapitole 9, "Alarmy a události". 12. Zvolte Retentive Value (retentivní hodnota), pokud chcete uchovat aktuální hodnotu proměnné, kdykoli se ukončí program WindowViewer. Tato hodnota se použije jako počáteční hodnota pro proměnnou, kdykoli se následně znovu spustí program WindowViewer. - 206 - Poznámka: Retentivní hodnoty nejsou zapisovány do vstupních/výstupních zařízení při náběhu programu WindowViewer. Hodnoty vstupu/výstupu se zaktualizují, když I/O Server poprvé načte data ze zařízení. TIP Retentivní hodnoty nelze zvolit nebo vymazat pro nové nebo existující proměnné, když běží program WindowViewer. Když vyberete tuto volbu, počáteční hodnota proměnné se bude neustále aktualizovat, aby se projevila aktuální hodnota proměnné. Pokud ukončíte program WindowViewer, počáteční hodnota se nastaví podle poslední uchované hodnoty. Jestliže tuto volbu zrušíte, počáteční hodnota proměnné se nastaví na poslední uchovanou hodnotu. 13. Zvolte Retentive Parameters (Retentivní parametry), pokud chcete uchovat jakékoli změny, které provedl operátor v hodnotě jakýchkoli polí alarmových mezí proměnné. Tato hodnota se použije jako počáteční hodnota pro alarmy, kdykoli se znovu spustí program WindowViewer. Poznámka: Poněvadž změny jsou uloženy okamžitě, doporučujeme Vám důrazně, abyste zvolili dvě výše uvedené retentivní možnosti volby pro hodnoty, které se často nemění. 14. Definujte podrobnosti typu proměnné a potom klepněte na Close (Zavřít). Definice vlastností proměnné Na počátku zobrazené dialogové okno Tagname Dictionary (Databáze proměnných) se používá pro vstup základních informací o proměnné. Mnoho bodů - zvláště vstupy a výstupy – vyžadují větší podrobnosti pro jejich náležitou obsluhu. Pro každý typ specifikované proměnné, existuje specifické dialogové okno podrobností, které se používá pro definici podrobností typu proměnné. Většina typů proměnných má svoje vlastní specifická dialogová okna podrobností a dialogová okna alarmových stavů. Když zvolíte typ Vaší proměnné, zobrazí se implicitně příslušné dialogové okno podrobností. Jakmile jste dokončili definici základní proměnné, budete potřebovat definovat podrobnosti proměnné a podle potřeby alarmové podmínky. Kroky, které je třeba dodržet při definici podrobností každého typu proměnné, jsou popsány v následujících oddílech. Definice vlastností paměťové diskrétní proměnné Proměnné paměťového diskrétního typu existují interně v rámci Vaší aplikace programu InTouch. Proměnou typu Memory Discrete (Paměťová diskrétní) definujete, když potřebujete interní proměnnou s hodnotou buď 0 (nepravda, vypnuto) nebo 1 (pravda, zapnuto). ¾ Definice vlastností paměťové diskrétní proměnné 1. Když zvolíte Memory Discrete (Paměťová diskrétní) jako typ Vaší proměnné, zobrazí se následující dialogové okno podrobností. TIP Pokud se nezobrazí, klepněte na Details (Podrobnosti) v horní části dialogového okna Tagname Dictionary (Databáze proměnných). - 207 - 2. Klepněte na Initial Value (Počáteční hodnota), kterou chcete uložit do proměnné, když je databáze při běhu programu poprvé zavedena. 3. Pokud definujete diskrétní alarmový stav pro tuto proměnnou, která je "zapnuta", když hodnota proměnné je rovna 1 (zapnuto, pravda), napište zprávu do pole On Msg, kterou chcete zobrazit ve Vaší hodnotě alarmového okna/ve Vašem poli meze. 4. Pokud definujete diskrétní alarmový stav pro tuto proměnnou, která je "zapnuta", když hodnota proměnné je rovna 0 (vypnuto, nepravda), napište zprávu do pole Off Msg, kterou chcete zobrazit ve Vaší hodnotě alarmového okna/ve Vašem poli meze. 5. Pokud chcete definovat alarmové podmínky proměnné, klepněte buď na Alarms (Alarmy) nebo Details & Alarms (Detaily a alarmy) v horní části dialogového okna Tagname Dictionary (Databáze proměnných) pro zobrazení příslušného dialogového okna alarmových stavů pro typ proměnné, kterou definujete. Více informací o alarmech je uvedeno v kapitole 9, "Alarmy a události". 6. Jakmile jste dokončili definici Vaší proměnné, klepněte na Close (Zavřít) pro uložení Vaší definice proměnné a zavření dialogových oken proměnné. Definice vlastností paměťové analogové proměnné Proměnné paměťového analogového typu existují interně v rámci Vaší aplikace programu InTouch. Existují dva paměťové analogové typy: Memory Integer (Paměťová celočíselná) a Memory Real (Paměťová reálná). Proměnou typu Memory Integer (Paměťová celočíselná) definujete, když potřebujete interní proměnnou s celočíselnou hodnotou s 32 znaky v rozsahu od -2 147 483 648 do 2 147 483 647. Proměnou typu Memory Real (Paměťová reálná) definujete, když potřebujete interní proměnnou s hodnotou s plovoucí desetinnou tečkou v rozsahu od -3.4e38 do 3.4e38. (Všechny výpočty s plovoucí desetinnou tečkou se provádějí s 64 bitovým rozlišením, ale výsledek je uložen ve 32 bitové formě.) ¾ Definice vlastností paměťové analogové proměnné 1. Když zvolíte Memory Integer (Paměťová celočíselná) nebo Memory Real (Paměťová reálná) jako typ Vaší proměnné, zobrazí se následující dialogové okno podrobností. TIP Pokud se nezobrazí, klepněte na Details (Podrobnosti) v horní části dialogového okna Tagname Dictionary (Databáze proměnných). 2. V poli Initial Value (Počáteční hodnota) napište hodnotu, kterou chcete uložit do proměnné, když je databáze při běhu programu poprvé zavedena. 3. V poli Min Value (Minimální hodnota) zapište minimální hodnotu proměnné. Ta se používá pro grafy historických trendů, vstup/výstup a atributu .Min EU. 4. V poli Max Value (Maximální hodnota) zapište maximální hodnotu proměnné. Ta se používá pro grafy historických trendů, vstup/výstup a atributu .Max EU. 5. V poli Eng Units zadejte označení, které chcete použít pro inženýrské jednotky proměnné. 6. V poli Deadband (Pásmo necitlivosti) zapište počet inženýrských jednotek proměnné, o které se musí změnit její hodnota předtím, než se zaktualizuje databáze. - 208 - 7. V poli Log Deadband (Pásmo necitlivosti ukládání) zapište počet inženýrských jednotek proměnné, o které se musí změnit její hodnota předtím, než se zaznamenají do protokolového souboru historických dat. Implicitní hodnota nula znamená, že se uloží každá změna. Poznámka: Musíte zvolit Log Data (Zaznamenat data) pro proměnnou, jestliže ji chcete zaznamenat na disk, když se její inženýrské jednotky změní o více než hodnotu v Log Deadband (Pásmu necitlivosti ukládání). Pokud změníte hodnotu Log Deadband (Pásma necitlivosti ukládání), když běží program WindowViewer, Vaše změny se neprojeví až do zastavení a opětovného spuštění ukládání historických dat. Více informací o záznamu historických dat je uvedeno v kapitole 14, "Reálné a historické trendy". 8. Pokud chcete definovat alarmové podmínky proměnné, klepněte buď na Alarms (Alarmy) nebo Details & Alarms (Detaily a alarmy) v horní části dialogového okna Tagname Dictionary (Databáze proměnných) pro zobrazení příslušného dialogového okna alarmových stavů pro typ proměnné, kterou definujete. Více informací o alarmových stavech najdete v části "Definice alarmových stavů proměnné". 9. Jakmile jste dokončili definici Vaší proměnné, klepněte na Close (Zavřít) pro uložení Vaší definice proměnné a zavření dialogových oken proměnné. Definice vlastností paměťové textové proměnné Proměnné paměťového textového typu existují interně v rámci Vaší aplikace programu InTouch. Proměnou typu Memory Message (Paměťová textová) definujete, když potřebujete interní proměnnou s textovým řetězcem, který může mít délku 131 znaků. ¾ Definice vlastností paměťové textové proměnné 1. Když zvolíte Memory Message (Paměťová textová) jako typ Vaší proměnné, zobrazí se následující dialogové okno podrobností. TIP Pokud se nezobrazí, klepněte na Details (Podrobnosti) v horní části dialogového okna Tagname Dictionary (Databáze proměnných). 2. Do pole Maximum Length (Maximální délka) zapište maximální počet znaků povolený ve zprávě proměnné. (Program InTouch dovoluje maximálně délku 131 znaků, která je zobrazena implicitně.) 3. V poli Initial Value (Počáteční hodnota) napište textový řetězec, který chcete zobrazit pro proměnnou, když se poprvé spustí program WindowViewer. 4. Jakmile jste dokončili definici Vaší proměnné, klepněte na Close (Zavřít) pro uložení Vaší definice proměnné a zavření dialogových oken proměnné. - 209 - Definice vlastností I/O diskrétní proměnné Všechny proměnné, které načítají nebo zapisují své hodnoty do nebo z jiného programu systému Windows jsou proměnné typu I/O (vstup/výstup). To zahrnuje všechny vstupy a výstupy z programovatelných ovládačů, počítačů pro řízení výroby, jiných programů systému Windows a dat ze síťových uzlů. Proměnou typu I/O Discrete (I/O diskrétní) definujete, když potřebujete I/O proměnnou s hodnotou buď 0 (nepravda, vypnuto) nebo 1 (pravda, zapnuto). ¾ Definice vlastností I/O diskrétní proměnné 1. Když zvolíte I/O Discrete (I/O diskrétní) jako typ Vaší proměnné, zobrazí se následující dialogové okno podrobností. TIP Pokud se nezobrazí, klepněte na Details (Podrobnosti) v horní části dialogového okna Tagname Dictionary (Databáze proměnných). 2. Klepněte na Initial Value (Počáteční hodnota), kterou chcete uložit do proměnné, když je databáze při běhu programu poprvé zavedena. (Off (Vypnuto) se rovná 0, On (Zapnuto) se rovná 1.) Tato hodnota se nezapíše do vstupního/výstupního zařízení. 3. Klepněte na Input Conversion (Vstupní konverze), kterou chcete použít pro hodnotu, když se databáze při běhu programu aktualizuje: Direct (Přímá) I/O vstupní hodnota se načte v nezměněné formě přímo ze serverového programu. Reverse (Obrácená) I/O vstupní hodnota se při načítání ze serverového programu obrátí. Jestliže například I/O vstupní hodnota v serverovém programu je 0, program InTouch ji automaticky obrátí, uloží a zobrazí hodnotu 1. 4. Pokud definujete diskrétní alarmový stav pro tuto proměnnou, která je "zapnuta", když hodnota proměnné je rovna 1 (zapnuto, pravda), napište zprávu do pole On Msg, kterou chcete zobrazit ve Vaší hodnotě alarmového okna/ve Vašem poli meze. 5. Pokud definujete diskrétní alarmový stav pro tuto proměnnou, která je "zapnuta", když hodnota proměnné je rovna 0 (vypnuto, nepravda), napište zprávu do pole Off Msg, kterou chcete zobrazit ve Vaší hodnotě alarmového okna/ve Vašem poli meze. 6. Klepněte na Access Name (Komunikační kanál) pro definici a volbu komunikačního kanálu, který chcete přiřadit k této proměnné. (Jestliže se komunikační kanál již objeví na pravé straně tlačítka a Vy nadefinujete nebo zvolíte jiný název, přiřadí se tento název k proměnné.) Více informací o přístupových názvech je uvedeno v kapitole 15 "I/O (vstupu/výstupu) komunikace". - 210 - 7. Do pole Item (Položka) napište platný název položky pro referenční bod v serverovém programu, ze kterého/do kterého proměnná bude načítat/zapisovat svoji hodnotu. Pokud chcete například načíst hodnotu z registru do PLC, zadejte platnou identifikaci pro tento registr jako název položky. TIP Názvy položek jsou automaticky indexovány. Jestliže například zadáte a uložíte název položky R4001, potom klepnete na New (Nový), název položky se automaticky indexuje na R4002. Pokud název položky obsahuje čísla oddělující znak, provede se automatické indexování při nalezení prvního celého čísla v programu InTouch. N7-0 bude například indexováno jako N7-1. Jsou dovoleny jen kladné změny. Například R4002 na R4003, R4003 na R4004 atd. 8. Zvolte možnost volby Use Tagname as Item Name (Použít proměnnou jako název položky), pokud chcete použít proměnnou pro název položky. 9. Pokud chcete definovat alarmové podmínky proměnné, klepněte buď na Alarms (Alarmy) nebo Details & Alarms (Detaily a alarmy) v horní části dialogového okna Tagname Dictionary (Databáze proměnných) pro zobrazení příslušného dialogového okna alarmových stavů pro typ proměnné, kterou definujete. Více informací o alarmových stavech najdete v části "Definice alarmových stavů proměnné". 10. Jakmile jste dokončili definici Vaší proměnné, klepněte na Close (Zavřít) pro uložení Vaší definice proměnné a zavření dialogových oken proměnné. Definice vlastností I/O analogové proměnné Všechny proměnné, které načítají nebo zapisují své hodnoty do nebo z jiného programu systému Windows jsou proměnné typu I/O (vstup/výstup). To zahrnuje všechny vstupy a výstupy z programovatelných ovládačů, počítačů pro řízení výroby, jiných programů systému Windows a dat ze síťových uzlů. Existují dva paměťové analogové typy: I/O Integer (I/O celočíselná) a I/O Real (I/O reálná). Proměnou typu I/O Integer (I/O celočíselná) definujete, když potřebujete I/O (vstupní/výstupní) proměnnou s celočíselnou hodnotou s 32-bitovými znaky v rozsahu od -2 147 483 648 do 2 147 483 647. Proměnou typu I/O Real (I/O reálná) definujete, když potřebujete I/O proměnnou s hodnotou s plovoucí desetinnou tečkou v rozsahu od -3.4e38 do 3.4e38. (Všechny výpočty s plovoucí desetinnou tečkou se provádějí s 64 bitovým rozlišením, ale výsledek je uložen ve 32 bitové formě.) ¾ Definice vlastností I/O analogové proměnné 1. Když zvolíte I/O Integer (I/O celočíselná) nebo I/O Real (I/O reálná) jako typ Vaší proměnné, zobrazí se následující dialogové okno podrobností. TIP Pokud se nezobrazí, klepněte na Details (Podrobnosti) v horní části dialogového okna Tagname Dictionary (Databáze proměnných). - 211 - 2. V poli Initial Value (Počáteční hodnota) napište hodnotu, kterou chcete uložit do proměnné, když je databáze při běhu programu poprvé zavedena. Tato hodnota se nezapíše do vstupního/výstupního zařízení. 3. V poli Deadband (Pásmo necitlivosti) zapište počet inženýrských jednotek proměnné, které se musí změnit předtím, než se zaktualizuje databáze. 4. V poli Min EU zapište hodnotu inženýrských jednotek pro proměnnou, když je přijata minimální hodnota prvotního počtu. 5. V poli Min Raw zapište minimální hodnotu dolní meze v prvotních vstupních/výstupních celočíselných hodnotách. 6. V poli Max EU zapište hodnotu inženýrských jednotek pro proměnnou, když je přijata maximální hodnota prvotního počtu. 7. V poli Max Raw zapište maximální hodnotu horní meze v prvotních vstupních/výstupních celočíselných hodnotách. TIP Hodnoty Min EU, Min Raw, Max EU a Max Raw můžete použít pro změnu rozlišení vstupních/výstupních proměnných. Další informace o změně velikosti proměnných najdete v části "Změna velikosti vstupních/výstupních proměnných". 8. V poli Eng Units zadejte označení, které chcete použít pro inženýrské jednotky proměnné. 9. Zvolte typ Conversion (Konverze), který chcete, aby databáze používala pro změnu rozlišení prvotních počtů, když počítáte inženýrské jednotky následujícím způsobem: Pokud zvolíte Linear (Lineární), výsledek se vypočítá pomocí lineární interpolace mezi koncovými body. Algoritmus pro lineární změnu rozlišení vstupu zní: EUValue = (RawValue - MinRaw) * ((MaxEU - MinEU) / (MaxRaw - MinRaw)) + MinEU Algoritmus pro lineární změnu rozlišení výstupu zní: RawValue = (EUValue - MinEU) * ((MaxRaw - MinRaw) / (MaxEU - MinEU)) + MinRaw Pokud zvolíte Square Root (Druhá odmocnina), použijí se hodnoty prvotních počtů pro interpolaci. To je vhodné pro změnu rozlišení vstupů z nelineárních zařízení, jako jsou např. tlaková čidla. Algoritmus pro změnu velikosti druhé odmocniny vstupu zní: EUValue = sqrt(RawValue - MinRaw) * ((MaxEU - MinEU) / sqrt(MaxRaw - MinRaw)) + MinEU Algoritmus pro změnu velikosti druhé odmocniny výstupu zní: RawValue = square((EUValue - MinEU) * (sqrt(MaxRaw – MinRaw) / (MaxEU -MinEU))) + MinRaw - 212 - 10. Klepněte na Access Name (Komunikační kanál) pro definici a volbu komunikačního kanálu, který chcete přiřadit k této proměnné. (Jestliže se komunikační kanál již objeví na pravé straně tlačítka a Vy nedefinujete nebo zvolíte jiný název, přiřadí se tento název k proměnné.) Více informací o přístupových názvech je uvedeno v kapitole 15 "I/O (vstupu/výstupu) komunikace". 11. Do pole Item (Položka) napište platný název položky pro referenční bod v serverovém programu, ze kterého/do kterého proměnná bude načítat/zapisovat svoji hodnotu. Pokud chcete například načíst hodnotu z registru do PLC, zadejte platnou identifikaci pro tento registr jako název položky. TIP Názvy položek jsou automaticky indexovány. Jestliže například zadáte a uložíte název položky R4001, potom klepnete na New (Nový), název položky se automaticky indexuje na R4002. Pokud název položky obsahuje čísla oddělující znak, provede se automatické indexování při nalezení prvního celého čísla v programu InTouch. N7-0 bude například indexováno jako N7-1. Jsou dovoleny jen kladné změny. Například R4002 na R4003, R4003 na R4004 atd. 12. Zvolte možnost volby Use Tagname as Item Name (Použít proměnnou jako název položky), pokud chcete použít proměnnou pro název položky. 13. Pokud chcete definovat alarmové podmínky proměnné, klepněte buď na Alarms (Alarmy) nebo Details & Alarms (Detaily a alarmy) v horní části dialogového okna Tagname Dictionary (Databáze proměnných) pro zobrazení příslušného dialogového okna alarmových stavů pro typ proměnné, kterou definujete. Více informací o alarmových stavech najdete v části "Definice alarmových stavů proměnné". 14. V poli Log Deadband (Pásmo necitlivosti ukládání) zapište počet inženýrských jednotek proměnné, které se musí změnit předtím, než se zaznamenají do protokolového souboru historických dat. Poznámka: Musíte zvolit Log Data (Ukládat data) pro proměnnou, jestliže chcete proměnnou zaznamenat na disk, když se její inženýrské jednotky změní více než hodnota Log Deadband (Pásma necitlivosti ukládání). Pokud změníte hodnotu Log Deadband (Pásma necitlivosti ukládání), když běží program WindowViewer, Vaše změny se neprojeví až do zastavení a opětovného spuštění ukládání historických dat. 15. Jakmile jste dokončili definici Vaší proměnné, klepněte na Close (Zavřít) pro uložení Vaší definice proměnné a zavření dialogových oken proměnné. - 213 - Definice vlastností I/O textové proměnné Všechny proměnné, které načítají nebo zapisují své hodnoty do nebo z jiného programu systému Windows jsou proměnné typu I/O (vstup/výstup). To zahrnuje všechny vstupy a výstupy z programovatelných ovládačů, počítačů pro řízení výroby, jiných programů systému Windows a dat ze síťových uzlů. Proměnnou typu I/O Message (I/O textová) definujete, když potřebujete shromažďovat textové řetězce ze vstupního/výstupního zařízení. I/O textové proměnné jsou omezeny délkou 131 znaků. ¾ Definice vlastnosí I/O textové proměnné 1. Když zvolíte I/O Message (I/O textová) jako typ Vaší proměnné, zobrazí se následující dialogové okno podrobností. TIP Pokud se nezobrazí, klepněte na Details (Podrobnosti) v horní části dialogového okna Tagname Dictionary (Databáze proměnných). 2. Do pole Maximum Length (Maximální délka) zapište maximální počet znaků povolený ve zprávě proměnné. (Program InTouch dovoluje maximálně délku 131 znaků, která je zobrazena implicitně.) 3. Do pole Initial Value (Počáteční hodnota) napište textový řetězec, který chcete zobrazit pro proměnnou, když se poprvé spustí program WindowViewer. Tato hodnota se nezapíše do vstupního/výstupního zařízení. 4. Klepněte na Access Name (Komunikační kanál) pro definici a volbu komunikačního kanálu, který chcete přiřadit k této proměnné. (Jestliže se komunikační kanál již objeví na pravé straně tlačítka a Vy nedefinujete nebo zvolíte jiný název, přiřadí se tento název k proměnné.) Více informací o přístupových názvech je uvedeno v kapitole 15 "I/O (vstupu/výstupu) komunikace". 5. Do pole Item (Položka) napište platný název položky pro referenční bod v serverovém programu, ze kterého/do kterého proměnná bude načítat/zapisovat svoji hodnotu. Pokud chcete například načíst hodnotu z registru PLC, zadejte platnou identifikaci pro tento registr jako název položky. TIP Názvy položek jsou automaticky indexovány. Jestliže například zadáte a uložíte název položky R4001, potom klepnete na New (Nový), název položky se automaticky indexuje na R4002. Pokud proměnná obsahuje čísla oddělená znakem, provede se automatické indexování prvního nalezeného celého čísla. N7-0 bude například indexováno jako N7-1. Jsou dovoleny jen kladné změny. Například R4002 na R4003, R4003 na R4004 atd. 6. Zvolte možnost volby Use Tagname as Item Name (Použít proměnnou jako název položky), pokud chcete použít proměnnou pro název položky. 7. Jakmile jste dokončili definici Vaší proměnné, klepněte na Close (Zavřít) pro uložení Vaší definice proměnné a zavření dialogových oken proměnné. - 214 - Definice alarmových stavů proměnné Alarmové stavy pro proměnné můžete definovat současně s definicí proměnné. Existují dva typy dialogových oken podrobností alarmu. Jeden typ pro proměnné diskrétního typu a jeden pro proměnné analogového (celočíselného nebo reálného) typu. Proměnné potlačení alarmu Ke každému alarmu (nebo alarmovému substavu) můžete volitelně přiřadit proměnnou, která může alarm potlačit. Pokud je proměnná PRAVDA (nerovná nule nebo nenulová), alarm je aktivně potlačen. Pokud podobně je proměnná NEPRAVDA (nula nebo nulová), alarm není potlačen. Alarm Inhibitor Tag (Proměnnou potlačení alarmu) přiřadíte pomocí databáze proměnných v programu WindowMaker. Alarm Inhibitor Tags (Proměnné potlačení alarmu) nelze při běhu programu měnit. Při běhu programu lze však měnit hodnotu Alarm Inhibitor Tag (Proměnné potlačení alarmu). Alarm lze potlačit. Je-li potlačen, je "vypnut". To znamená, že když se pokusíte aktivovat alarm, který je potlačen, alarm se "nezapne". Poznámka: Alarm Inhibitor Tags (Proměnné potlačení alarmu) jsou obvyklé proměnné, které jsou zahrnuty do počtu použití a licenčních omezení. Existují atributy proměnných pouze pro čtení, které můžete použít pro zjištění názvu Alarm Inhibitor Tag (Proměnné potlačení alarmu). Jedná se o tyto atributy: • AlarmDscInhibitor • AlarmLoLoInhibitor • AlarmLoInhibitor • AlarmHiHiInhibitor • AlarmHiInhibitor • AlarmMajDevInhibitor • AlarmMinDevInhibitor • AlarmRocInhibitor Tato pole vracejí název proměnné. Proto můžete použít název v odkazu na nepřímou proměnnou ve skriptu QuickScript programu InTouch pro zjištění aktuální hodnoty Alarm Inhibitor Tag (Proměnné potlačení alarmu) nebo změnu hodnoty Alarm Inhibitor Tag (Proměnné potlačení alarmu). Při provádění této činnosti můžete přinutit skupiny alarmů, aby se při běhu programu aktivovaly nebo potlačily. Potlačení alarmu je dvoustupňový proces: 1. Přiřazení proměnné potlačení. 2. Změna stavu proměnné potlačení ze stavu FALSE (NEPRAVDIVÝ) na stav TRUE (PRAVDIVÝ) nebo obráceně. Tak jako je tomu u deaktivace, pro alarm, který má substavy, lze každý substav potlačit jednotlivě. Každý substav může být potlačen rozdílnou proměnnou. Tak jako je tomu u deaktivace, alarm, který je potlačen (a pro který má proměnná hodnotu TRUE (PRAVDA)), nečeká na potvrzení. Pokud má alarm substavy, může pouze čekat na potvrzení v substavech, které jsou ještě dostupné. - 215 - Kdykoli alarm opustí stav potlačen, spustí se kontrolní logika pro určení, zda má být uveden do alarmovaného stavu. Stane-li se nějaký alarm potlačený, zatímco je v alarmovaném stavu, musí být převeden do odlišného (platného) stavu. Jaký to bude stav, závisí na tom, které stavy jsou dostupné a zda byly také deaktivovány nebo potlačeny. Tato aktivita je zpracována programem InTouch podle typu alarmu, mezních hodnot atd. Stane-li se nějaký alarm (nebo substav alarmu) potlačený, zatímco položka čeká na potvrzení, položka být musí být převedena do odlišného (platného) stavu. Jako je tomu v případě, zda položka je v alarmovaném stavu, program InTouch musí určit, jaký to má být stav. Více informací o alarmech je uvedeno v kapitole 9, "Alarmy a události". Definice alarmových stavů diskrétní proměnné Diskrétní alarm odpovídá diskrétní proměnné. Můžete nakonfigurovat, zda alarmový stav odpovídá TRUE (PRAVDIVÉMU) (zapnuto, ano, 1) stavu nebo FALSE (NEPRAVDIVÉMU) (Vypnuto, Ne, 0) stavu diskrétní proměnné a asociované prioritě alarmu. ¾ Definice alarmových stavů diskrétní proměnné 1. V nabídce Special (Speciální) klepněte na Tagname Dictionary (Databáze proměnných) nebo v Application Explorer (Aplikačním průzkumníku) klepněte dvakrát na Tagname Dictionary (Databáze proměnných). Objeví se dialogové okno Tagname Dictionary (Databáze proměnných). 2. Klepněte buď na Alarms (Alarmy) nebo Details & Alarms (Podrobnosti a alarmy) v horní části dialogového okna Tagname Dictionary (Databáze proměnných) pro zobrazení dialogového okna podrobností diskrétního alarmu: 3. Zvolte možnost volby ACK Model (Model potvrzení), který chcete použít. • Condition (Podmínka): Potvrzení se vztahuje na všechny přechody do alarmovaného stavu nebo substavu až do času potvrzení. (Toto je implicitní nastavení a funguje jako u předchozí verze.) • Event Oriented (Orientovaný na událost): Potvrzení je pouze pro jednotlivý přechod do alarmového stavu nebo substavu; potvrzení je akceptováno jen tehdy, jestliže se vztahuje k nejnovějšímu takovému přechodu. • Expanded Summary (Rozšířený typ potvrzování): Potvrzení je pouze pro jednotlivý přechod, ať do alarmového stavu, do substavu nebo návrat do normálního stavu. Každý přechod z normálního stavu označuje začátek nové skupiny RTN. Všechny přechody do skupiny RTN musí být potvrzeny jednotlivě předtím, než celková skupina RTN je považována za potvrzenou. Poznámka: Když definujete proměnnou s modelem potvrzení Expanded Summary (Rozšířený typ potvrzování), možnost volby RTN Implies Ack (RTN implikuje potvrzení) v dialogovém okně Alarm Properties (Vlastnosti alarmu) se pro tuto proměnnou nepoužije. - 216 - Jakýkoli jednotlivý alarm lze konfigurovat pro použití kteréhokoli z těchto modelů potvrzení. Více informací je uvedeno v oddíle "Modely potvrzení alarmů" kapitoly 7. 1. Do pole Alarm Comment (Komentář alarmu) zapište výchozí poznámky (až 131 znaků), které chcete použít pro atribut .AlarmComment. (Toto je volitelný atribut.) Další informace najdete v části "Poznámky alarmů proměnných". 2. Klepněte na Alarm State (Stav alarmu), který chcete, aby nastal, když je v alarmovém stavu. 3. V poli Priority (Priorita) napište hodnotu v rozsahu 1 až 999 (1 je nejvyšší a 999 je nejnižší priorita). Hodnotu priority můžete použít pro volbu alarmů, které chcete, aby se zobrazily v okně, zaznamenaly na disk nebo se vytiskly. 4. Pro provedení asociace proměnné potlačení s alarmovou podmínkou, klepněte na příslušné tlačítko Alarm Inhibitor Tag (Proměnná potlačení alarmu) alarmové podmínky. Objeví se dialogové okno Select Tag (Vybrat proměnnou). Poznámka: Každé tlačítko Alarm Inhibitor Tag (Proměnná potlačení alarmu) je aktivováno, když se zvolí příslušná alarmová podmínka. Do vstupního pole Alarm Inhibitor Tag (Proměnná potlačení alarmu) nelze zapisovat. 5. V dialogovém okně Select Tag (Vybrat proměnnou) klepněte dvakrát na proměnnou, kterou chcete použít pro potlačení alarmové podmínky. Dialogové okno se zavře a zvolená proměnná se objeví v poli Alarm Inhibitor Tag (Proměnná potlačení alarmu). Další informace najdete v části " Proměnné potlačení alarmů ". 6. Jakmile jste dokončili všechny vstupy, klepněte na Close (Zavřít) pro uložení Vaší definice proměnné a zavření dialogových oken proměnné. Definice alarmových stavů analogové proměnné Analogový alarm odpovídá analogové proměnné. Můžete konfigurovat, zda alarmovaný stav odpovídá některé analogové hodnotě proměnné a asociované prioritě tohoto alarmu. ¾ Definice alarmových stavů analogové proměnné 1. V nabídce Special (Speciální) klepněte na Tagname Dictionary (Databáze proměnných) nebo v Application Explorer (Aplikačním průzkumníku) klepněte dvakrát na Tagname Dictionary (Databáze proměnných). Objeví se dialogové okno Tagname Dictionary (Databáze proměnných). 2. Klepněte buď na Alarms (Alarmy) nebo Details & Alarms (Podrobnosti a alarmy) v horní části dialogového okna Tagname Dictionary (Databáze proměnných) pro zobrazení dialogového okna podrobností analogového alarmu: - 217 - 3. Zvolte možnost volby ACK Model (Model potvrzení), který chcete použít. • Condition (Podmínka): Potvrzení se vztahuje na všechny přechody do alarmovaného stavu nebo substavu až do času potvrzení. (Toto je implicitní nastavení a funguje jako u předchozí verze.) • Event Oriented (Orientovaný na událost): Potvrzení je pouze pro jednotlivý přechod do alarmového stavu nebo substavu; potvrzení je akceptováno jen tehdy, jestliže se vztahuje k nejnovějšímu takovému přechodu. • Expanded Summary (Rozšířený typ potvrzování): Potvrzení je pouze pro jednotlivý přechod, ať do alarmového stavu, do substavu nebo návrat do normálního stavu. Každý přechod z normálního stavu označuje začátek nové skupiny RTN. Všechny přechody do skupiny RTN musí být potvrzeny jednotlivě předtím, než celková skupina RTN je považována za potvrzenou. Poznámka: Když definujete proměnnou s modelem potvrzení Expanded Summary (Rozšířený typ potvrzování), možnost volby RTN Implies Ack (RTN implikuje potvrzení) v dialogovém okně Alarm Properties (Vlastnosti alarmu) se pro tuto proměnnou nepoužije. Jakoukoli jednotlivou proměnnou lze konfigurovat pro použití kteréhokoli z těchto modelů potvrzení. Zvolený model potvrzení se použije pro všechny typy alarmů této proměnné. 4. Do pole Alarm Comment (Komentář alarmu) zapište výchozí poznámky (až 131 znaků), které chcete použít pro atribut .AlarmComment. Další informace najdete v části "Poznámky alarmů proměnných". 5. Zvolte typy alarmů (LoLo (Velmi nízký), Low (Nízký), High (Vysoký), HiHi (Velmi vysoký)), které chcete použít pro zjištění, kdy hodnota proměnná analogového typu je pod absolutní mezí. 6. V poli Alarm Value (Hodnota alarmu) zapište mezní hodnotu alarmu. Například v případě alarmů LoLo a Low, existuje alarmová podmínka, kdykoli je hodnota proměnné menší než Alarm Value (Hodnota alarmu). Například v případě alarmů High a HiHi, existuje alarmová podmínka, kdykoli je hodnota proměnné větší než Alarm Value (Hodnota alarmu). Tato pole podporují použití reálných čísel (tj. 100,75). 7. Do pole Value Deadband (Hodnota pásma necitlivosti) zapište počet inženýrských jednotek, o který musí hodnota proměnné klesnout pod alarmovou mez než je vyjmuta z alarmu. Například pro návrat do normálního stavu z alarmové podmínky, hodnota proměnné se musí nejen vrátit v rozsahu její alarmové meze, ale také se vrátit přes Vámi stanovené Value Deadband (Hodnota pásma necitlivosti). Value Deadband (Hodnota pásma necitlivosti) zabraňuje nežádoucímu opakovanému ohlašováním - 218 - alarmu (kde hodnota proměnné kolísá okolo meze a neustále kmitá do a z alarmu). 8. Zvolte typy alarmů s odchylkou (Minor (Menší) a Major Deviation (Větší odchylka)), které chcete použít pro zjištění, kdy hodnota proměnné analogového typu má menší nebo větší odchylku od stanovené hodnoty Target (Cílové hodnoty). 9. V poli %Deviation (% odchylky) zapište procenta, o které se může analogová proměnná odchýlit od hodnoty Target (Cílové hodnoty) pro vytvoření alarmové podmínky menší nebo větší odchylky. Je vyjádřena jako procento rozsahu proměnné. Hodnoty MIN EU a MAX EU zadané v dialogovém okně podrobností proměnné definují rozsah. 10. Do pole Target (Cíl) zapište požadovanou nebo referenční hodnotu proměnné, na které jsou založena procenta menší a/nebo větší odchylky. Předpokládejme například následující nastavení pro celočíselnou proměnnou: Minimální hodnota = -1000 Maximální hodnota = 1000 Menší odchylka v % = 10 Větší odchylka v % = 15 Cíl = 500 Pro výpočet, při které hodnotě nastane alarm menší nebo větší odchylky, jestliže celkový rozsah proměnné je -1000 do +1000 nebo 2000, vynásobte hodnotu 2000 procentem buď menší nebo větší odchylky (2000 x .10 (Menší) =200). Pokud je cíl 500, menší odchylka nastane kdykoli, když hodnota proměnné klesne pod 300 nebo se zvýší nad 700. 11. Do pole Deviation Deadband % (Pásmo necitlivosti odchylky %) zapište procento odchylky, o které musí hodnota proměnné klesnout pod alarmovou mez než je vyjmuta z alarmu. 12. Zvolte Rate-of-Change (Rychlost změny), pokud chcete zjistit, kdy se hodnota alarmu změní o nadměrnou velikost za stanovený časový interval. Proměnná je testována na alarm Rate-of-Change (Rychlosti změny) kdykoli, když se její hodnota změní. V tomto okamžiku se rychlost změny počítá pomocí předchozí hodnoty, doby poslední aktualizace, aktuální hodnoty a aktuálního času. Toto se porovnává s rychlostí změny dovolené v definici alarmu. Je-li rychlost změny větší než mez alarmu, podmínka alarmu Rate-of-Change (Rychlost změny) je nastavena pro proměnnou. Alarm Rate-of-Change (Rychlost změny) zůstává účinný až do té doby, než následující změna v proměnné je menší než nadměrná velikost změny pro časový interval. 13. Do pole % per napište maximální dovolenou procentuální změnu. 14. Zvolte Sec, Min nebo Hr (vteřiny, minuty nebo hodiny) časové jednotky intervalu změny. 15. V příslušném poli Pri (priorita) napište číslo v rozsahu 1 až 999 (1 je nejvyšší a 999 je nejnižší priorita). Hodnotu priority můžete použít pro volbu alarmů, které chcete, aby se zobrazily v okně, zaznamenaly na disk nebo se vytiskly. 16. Pro provedení asociace Alarm Inhibitor Tag (Proměnné potlačení alarmu) s alarmovou podmínkou, klepněte na příslušné tlačítko Alarm Inhibitor Tag (Proměnná potlačení alarmu) alarmové podmínky. Objeví se dialogové okno Select Tag (Vybrat proměnnou). Poznámka: Každé tlačítko Alarm Inhibitor Tag (Proměnná potlačení alarmu) je aktivováno, když se zvolí příslušná alarmová podmínka. Do vstupního pole Alarm Inhibitor Tag (Proměnná potlačení alarmu) nelze zapisovat. - 219 - 17. V dialogovém okně Select Tag (Vybrat proměnnou) klepněte dvakrát na proměnnou, kterou chcete použít pro potlačení alarmové podmínky. Dialogové okno se zavře a zvolená proměnná se objeví v poli Alarm Inhibitor Tag (Proměnná potlačení alarmu). Další informace najdete v části " Proměnné potlačení alarmů ". 18. Jakmile jste dokončili všechny vstupy, klepněte na Close (Zavřít) pro uložení Vaší definice proměnné a zavření dialogových oken proměnné. Komentáře alarmu proměnné V minulosti Vám program InTouch umožňoval nastavit konfiguraci tak, že při vygenerování alarmu byl komentář proměnné připojena k alarmu. Tento komentář proměnné bylo možno zobrazit v předkonfigurovaných objektech alarmu nebo protokolu alarmu. Program InTouch také umožňoval nastavení konfigurace tak, že operátor mohl zadat komentář, když alarm potvrdil. Tento komentář potvrzení aktualizovala komentář proměnné v databázi proměnných. Pro zapracování dodatečných požadavků na distribuovaný alarmový systém bylo rozšířeno množství informací uložených pro každou proměnnou v databázi proměnných. V důsledku toho je nyní možné vytvořit nové pole komentáře specifické pro alarmy, prodloužit je a zcela je oddělit od komentáře proměnné. Komentář alarmu je nový atribut řetězcového typu, které lze nastavit nebo číst prostřednictvím skriptů QuickScript programu InTouch. Název atributu je .AlarmComment. Jako řetězec programu InTouch může obsahovat až 131 znaků. Dialogové okno komentáře alarmu umožňuje, aby uživatel zadával implicitní nastavení pro tento atribut. Funkční změna spočívá v tom, že výstražná signalizace již nepoužívá komentář proměnné jako komentář alarmu. Místo toho se používá .AlarmComment. Jestliže operátor také zadá nový komentář při potvrzování alarmu a aplikace je konfigurována pro kopírování tohoto komentáře do databáze proměnných, pole .AlarmComment se aktualizuje – NE však komentář proměnné. Poněvadž tyto změny zahrnují změnu do databáze proměnných, číslo verze v souboru proměnná.x zvýšilo úroveň verze. V důsledku toho, když program Window Maker zavede aplikaci s předchozí verzí databáze proměnných, automaticky zkonvertuje starou databázi proměnných na aktuální verzi. Jako část konverze se komentář proměnné zkopíruje do komentáře alarmu jako implicitní nastavení. Pro zápis změn při běhu programu do pole Alarm Comment (Komentář alarmu) v databázi proměnných, připojte do souboru INTOUCH.INI následující řádek pro aktuální aplikaci (umístěný v adresáři, kde je uložena aktuální aplikace): CommentRetentive=1 - 220 - Odkazy na vzdálené proměnné Program InTouch umožňuje skutečnou architekturu klient-server pro aplikace automatizace výrobních závodů. Klientské aplikace lze navrhnout bez použití jakýchkoli proměnných v lokální databázi proměnných. Toho lze dosáhnout pomocí funkce programu InTouch "Odkazy na vzdálené proměnné". Například: V tomto příkladu můžete vyhledat hodnotu proměnné "TempTag" v Node2 (Síťového uzlu2) dvěma způsoby: 1. Vytvořte proměnnou typu I/O v databázi proměnných Node1 (Síťového uzlu1), která používá "Node2 (Síťový uzel2)" jako Node Name (Název síťového uzlu) v komunikačním kanálu asociovaném s I/O proměnnou. 2. Použijte vzdálený odkaz přímo do "TempTag". Například PLC1:"TempTag" Jinými slovy, v okně nebo ve skriptu QuickScript můžete buď provést odkaz k lokální proměnné nebo použít AccessName:"item" (Komunikační kanál:"položka") pro provedení odkazu na vzdálené proměnné. Více informací o syntaxi odkazů vzdálených proměnných je uvedeno v oddíle "Syntaxe odkazů vzdálených proměnných". Pokud chcete provést přímo odkaz na vzdálenou proměnnou v jakékoli jiné aplikaci programu FactorySuite, je potřebný jen AccessName:"item"(Komunikační kanál:"položka"). Nemusíte definovat vzdálenou proměnnou ve Vaší lokální databázi proměnných. Vzdálené odkazy mohou také realizovat přístup k jakémukoliv I/O zdroji dat, jako je např. Wonderware I/O Server nebo Microsoft Excel. Navíc podporují proměnné typu SuperTag (SuperTags). Platná syntaxe pro Odkazy na vzdálené proměnné typu SuperTag zní Accessname:"ParentInstance\ChildMember\SubMember". Když také používáte Odkazy na vzdálené proměnné a importujete okno nebo skript QuickScript, vše co musíte udělat je zkonvertovat zástupné proměnné na Odkazy na vzdálené proměnné. Nemusíte definovat proměnné ve Vaší lokální databázi proměnných. Ke vzdáleným odkazům je možné provádět přístup z jakékoli aplikace programu FactorySuite v síti tak, jak znázorněno na následujícím obrázku: - 221 - Syntaxe odkazů vzdálených proměnných Platná syntaxe pro vzdálený odkaz proměnné zní AccessName:"item" (Komunikační kanál:"položka"). Znaky, které můžete použít ve vzdáleném odkazu jsou stejné znaky, které jsou platné pro proměnnou. Platné jsou tyto znaky: A-Z, a-z, 0-9, !, @, -, ?, #, $, %, _, \ a &. Pokud si jste jisti, že nepoužíváte žádný neplatný znak ve Vašem vzdáleném odkazu, nemusíte část item (položka) uzavřít do uvozovek. TIP Dotfields (atributy proměnných) proměnné lze také použít v části "item (položka)" odkazu na vzdálenou proměnnou. Například "MyAlarm.HiHi". Aby bylo možné použít jakékoli jiné znaky, musíte uzavřít "item (položku)" do uvozovek. Použijete-li například ~, *, /, +, =, ^, |, **, <, >, <=, =>, == a <>, musíte "item (položku)" uzavřít do uvozovek. Poněvadž však některé obecné ASCII I/O servery akceptují jakýkoli znak jako platný pro název položky, doporučujeme Vám důrazně, abyste vždy prováděli uzavření části "item (položka)" do uvozovek. Předpokládejme například, že chcete získat bit z celočíselného registru Allen-Bradley PLC a použijete N10:7/3 (třetí bit z celého čísla 10) jako název položky. Systém detekuje N10: jako komunikační kanál, protože dopředné lomítko (/) není platný znak. Jestliže však uzavřete název položky do uvozovek, "N10:7/3", systém přečte celý vstup jako název položky. Nelze také zřetězit názvy položek nebo názvy položek odkazu na vzdálené proměnné. Předpokládejme například, že jste vytvořili řetězcové výstupní propojení pomocí následující výrazu: Když systém provádí výše uvedený výraz, použije komunikační kanál PLC2 a prochází Allen-Bradley I/O server pro vyhledání řetězce uloženého v řetězcovém souboru ST10:1. Potom doplní řetězec 37 na konec řetězce, který vyhledal v ST10:1. Pokud je v ST10:1 uložen "Green Paint", řetězcový výstupní objekt propojený k výrazu zobrazí Green Paint37. Proto operátor neuvidí obsah ST10:137, jak předpokládal. Kdykoli použijete vzdálený odkaz (accessname:"item"), program InTouch zkontrolujte platnost komunikačního kanálu, které zadáte. Pokud určí, že komunikační kanál není definován, budete vyzváni k jeho definici. Zvolíte-li při výzvě Yes (Ano), objeví se dialogové okno Access Names (Komunikační kanály) a můžete přidat nový komunikační kanál. U komunikačního kanálu je provedeno ověření platnosti také tehdy, když se aktivuje vzdálená proměnná. Pokud jsou zjištěny chyby, budou zapsány do aplikace Log Viewer. Komunikační kanál, který se používá v odkazu na vzdálenou proměnnou, můžete vymazat, jakmile jej lokální proměnná nepoužívá. Více informací o definici přístupových názvů je uvedeno v kapitole 5 "Distribuované aplikace". - 222 - Vytvoření aplikace Tagname Server Vytvořením aplikace obsahující pouze proměnné a skripty, můžete vytvořit instanci WindowViewer s funkčností Tagname server (Server proměnných). Můžete vytvořit další aplikaci, která bude obsahovat pouze okna a paměťové proměnné (pro zpracování animační logiky oken). V případě, že tyto okna budou obsahovat pouze vzdálenné proměnné, tato aplikace může sloužit jako úložiště veškerých procesních oken. V tomto případě jsou nasměrovány vzdálené proměnné na jinou instanci WindowViewer, která má funkci Tagname server (Server proměnných). Instance WindowViewer směřující do vzdálené databáze proměnných, může sloužit jako operátorská stanice. Tato instance obsahující takto navázané proměnné, může zobrazit jakékoliv procesní okno a data z výroby. Například : - 223 - Vzdálené proměnné je možné použít: Položka Vstupní odkazy Diskrétní alarmové odkazy Analogové alarmní odkazy Výrazy Změnové scripty Ovládací prvky ActiveX Skripty Je možné použít Discrete User Input (Diskrétní uživatelský vstup), Analog User Input (Analogový uživatelský vstup), String User Input (Řetězcový uživatelský vstup), Vertical slider (Vertikální posuvník), Horizontal slider (Horizontální posuvník), Discrete Value Button (Tlačítko vstupu diskrétní hodnoty). Line Color (Barva čáry), Fill Color (Barva výplně) a Text Color (Barva textu) Line Color (Barva čáry), Fill Color (Barva výplně) a Text Color (Barva textu) Odkazy a skripty, kde diskrétní analogová nebo řetězcová proměnná, může být použita v předkonfigurovaném objektu. „Tagname(Proměnná)[dotfield (Atributy proměnné)]” Události, vlastnosti a metody. Všechny typy Vzdálené proměnné není možné použít: Položka Historický trend Potvrzování alarmu Je možné použít „Pen1 (Pero 1)“ až „Pen8 (Pero 8)“ (Na vzdálené referenci nelze definovat alarm tudíž ani není možné ho potvrdit) Poznámka: V případě implementace vzdálených proměnných do aplikace vytvořené v předchozí verzi programu InTouch, který nepodporuje vzdálené proměnné, není nutné aplikaci konvertovat. Pakliže budou vzdálenné proměnné do aplikace implementovány, není již aplikace zpětně kompaktibilní a není možné ji ve starší verzi programu InTouch otevřít. Názvy vzdálených proměnných mohou být dlouhé maximálně 95 znaků. Funkce IOSetAccessName (do verze InTouch 7.0 známe také jako SetDdeTopic ), je při práci se vzdálenými proměnnými podporovaná a je možné s ní pracovat stejným způsobem jako v případě práce s lokálními proměnnými. - 224 - Dynamická změna adresování (DRA) Dynamická změna adresování Vám umožňuje, aby jediná proměnná adresovala různé datové zdroje. Přiřazením platného odkazu do pole .Reference proměnné typu I/O, můžete dynamicky změnit adresu datového zdroje pro proměnnou. Každá proměnná typu I/O má odkaz asociovaný s adresou jejího datového zdroje. Platná syntaxe pro pole .Reference zahrnuje: Platná syntaxe Tagname.Reference="accessname.item" Tagname.Reference="[.]item" Tagname.Reference="accessname" Tagname.Reference="" Popis Změní komunikační kanál a položku. Stejný komunikační kanál, rozdílná položka. Změní komunikační kanál. Deaktivuje proměnnou. Pokud není specifikován komunikační kanál nebo položka, aktuální hodnota tohoto pole je předpokládána. Poznámka: Dynamická změna adresování není platná pro Odkazy na vzdálené proměnné. Použití dynamických odkazů Dynamické odkazy se používají pro zobrazení datových bodů, jejichž hodnoty jsou potřebné jen dočasně, jako je tomu v diagnostických aplikacích. Poněvadž datový zdroj proměnné lze změnit, dynamické odkazy by se neměly použít pro kterákoli data, u kterých je třeba, aby byly trvale uloženy nebo byly nepřetržitě monitorovány z hlediska alarmových stavů. Dobrým příkladem tradičního použití dynamických odkazů je diagnostická aplikace. V této aplikaci se používá jediná proměnná pro zobrazení vstupní hodnoty jakéhokoli analogového bodu v PLC. Pracovník údržby tak může okamžitě vidět stav jakéhokoli bodu za účelem odstranění závady. ¾ Vytvoření diagnostické aplikace 1. Vytvořte celočíselnou I/O proměnnou. V tomto příkladu se proměnná nazývá "AnalogSpy". Má počáteční odkaz na PLC1 pro komunikační kanál a WX001 pro název položky. 2. Vytvořte textový objekt zapsáním znaku #. 3. Klepněte dvakrát na znak # pro otevření dialogového okna animačních propojení. 4. Klepněte na String (Řetězec) v oddíle User Inputs (Uživatelské vstupy). Objeví se dialogové okno Input -> String Tagname (Vstup -> Řetězcová proměnná). 5. Do pole Tagname (Proměnná) napište AnalogSpy.Reference. 6. Klepněte na OK. 7. Spusťte program WindowViewer pro kompilaci a chod aplikace. - 225 - 8. Klepněte na textový objekt a zadejte novou hodnotu komunikačního kanálu a název položky přiřazený k proměnné. Například pro zobrazení položky WX031 z komunikačního kanálu PLC6 zadejte jako odkaz PLC6.WX031. 9. Pokud chcete potvrdit, že nový odkaz je platný, použijte pole .ReferenceComplete popsané v následujícím oddíle. Použití funkce IOSetItem pro změnu odkazů Funkce IOSetItem (SetDdeItem ve verzích programu InTouch před verzí 7.0) se používá pro nastavení pole .Reference proměnné typu I/O. Základní formát této funkce je: IOSetItem(TagName, AccessName, Item) Proměnná, komunikační kanál a hodnoty položek lze specifikovat jako textové řetězce nebo to mohou být textové hodnoty poskytované jinými proměnnými nebo funkcemi programu InTouch. Například pole .Reference proměnné "MyTag1" lze změnit tak, aby směřovalo k přístupovému názvu "Excel" a k položce "R1C1" pomocí: IOSetItem("MyTag1", "Excel", "R1C1"); nebo pomocí Number = 1; TagNameString = "MyTag" + Text(Number, "#"); IOSetItem(TagNameString, "Excel", "R1C1"); Zadá-li se prázdný řetězec ("") jak pro komunikační kanál, tak pro hodnoty položky, pak se proměnná deaktivuje. Například proměnná "MyTag2" se deaktivuje pomocí: IOSetItem("MyTag2", "", ""); Pokud se zadá prázdný řetězec jen pro hodnotu komunikačního kanálu, potom aktuální hodnota položky proměnné je zachována a její hodnota komunikačního kanálu se aktualizuje. Například následující zadání změní komunikační kanál pro proměnnou "MyTag3" na "Excel2" bez ovlivnění její aktuální hodnoty položky: IOSetItem("MyTag3", "Excel2", ""); Podobně když se zadá prázdný řetězec jen pro položku, potom aktuální hodnota položky proměnné je zachována a její hodnota komunikačního kanálu se aktualizuje. Například následující zadání změní položku pro proměnnou "MyTag3" na "R1C2" bez ovlivnění její aktuální hodnoty komunikačního kanálu: IOSetItem("MyTag4", "", "R1C2"); Použití pole .ReferenceComplete pro ověření odkazů Každá proměnná typu I/O má pole .ReferenceComplete. Toto diskrétní pole poskytuje potvrzení, že položka požadovaná v poli odkazu odpovídá poli .Value. Pole .ReferenceComplete se inicializuje na hodnotě false (nepravda) (0) při spuštění programu WindowViewer. Pokud se provede potvrzení, že pole .Value se aktualizovalo zdrojem stanoveným v poli .Reference, hodnota .ReferenceComplete se nastaví na true (pravda) (1). Jestliže se změní pole .Reference, pole .ReferenceComplete se automaticky nastaví na false (nepravda) (0) a potom se aktualizuje na true (pravda) (1), když se aktualizuje nová hodnota. - 226 - Použití nepřímých proměnných s lokáními proměnnými Tento oddíl popisuje, jak se obvykle používají nepřímé proměnné s odkazy lokální databáze proměnných. Nepřímé proměnné Vám umožní vytvořit "obecné" proměnné, které použijete s různými soubory dat. Můžete například použít obecnou šablonu obrazovky pro modifikaci mezí alarmu, které jsou propojeny k několika lokálním proměnným. Můžete mít mnoho rozdílných proměnných, které používají Vaši šablonu obrazovky pro meze alarmů. Pro přesměrování šablony obrazovky na příslušnou proměnnou, provedete následující skript QuickScript: IndirectTagname.dotfield = "tagname"; Kde tagname je aktuální proměnná definovaná v lokální databázi proměnných. Když se provádějí skripty, ke všem dotfields (atributům proměnných) asociovaným s lokální proměnnou je umožněn přístup prostřednictvím nepřímé proměnné. - 227 - Tag Browser (Prohlížeč proměnných) Funkce Tag Browser (Prohlížeč proměnných) je Váš výchozí nástroj pro zobrazení a volbu lokálních a vzdálených proměnných a dotfields (atributů proměnných) proměnné z aplikací FactorySuite nebo jakéhokoli jiného zdroje proměnných, který podporuje rozhraní databáze proměnných programu InTouch. Umožní Vám zvolit existující proměnné, přidat nové proměnné a zobrazit základní informace o databázi proměnných. Funkci Tag Browser použijete také pro přístup k dialogovým oknům, které Vám umožní editaci proměnné, kopírování a výběr proměnných (vzdálené odkazy) ve vzdálených zdrojích proměnných. Pokud poprvé provádíte přístup k funkci Tag Browser, implicitně se pro zdroj proměnné zvolí <local> (<lokální>). To znamená, že se zobrazí proměnné v lokální databázi proměnných aplikace. Příště se zobrazí proměnné zdroje proměnných, ke kterým byl naposled proveden přístup. Funkce Tag Browser pracuje ve dvou režimech; "Filtered Selection Mode (Režim filtrovaného výběru)" a "Unlimited Selection Mode (Režim neomezeného výběru)". Režim pro funkci Tag Browser je určen použitou metodou přístupu. V následující části jsou uvedeny primární metody, které můžete použít pro přístup k funkci Tag Browser v každém režimu: Režim neomezeného výběru • Dvojité klepnutí na proměnnou animačního propojení nebo vstupní pole výrazu. • Dvojité klepnutí na proměnnou ActiveX nebo předkonfigurovaného objektu nebo vstupní pole výrazu. • Dvojité klepnutí do prázdné plochy v kterémkoli okně skriptu QuickScript programu InTouch. • V editoru skriptů QuickScript programu InTouch zvolení příkazu Tagname (Proměnná) v nabídce Insert (Vložit). • Stisknutí kláves Alt+N v editoru skriptů QuickScript programu InTouch. • Dvojité klepnutí na prázdné pole New Name (Nový název) v dialogovém okně Substitute Tagnames (Nahradit proměnné). • Dvojité klepnutí do vstupního pole TagnamedotfieldsName v dialogovém okně SQL Access Bind List Configuration (Spojit konfiguraci seznamu). Režim filtrovaného výběru • Klepnutí na tlačítko Select (Vybrat) v databázi proměnných. • Při běhu programu WindowMaker dvojité klepnutí na buňku ve sloupci Unit# (Jednotka#) v definici jednotky Recipe Manager (Správa receptur). • Při běhu programu klepnutí na jakékoli tlačítko Pen# (Pero#) v dialogovém okně Historical Trend Setup (Nastavení historického trendu). V této instanci funkce Tag Browser pouze zobrazí proměnné, které jsou definovány v možnosti volby Log Data (Zaznamenat data) v databázi proměnných. TIP Tato funkce je podporována pouze tehdy, když byla zvolena možnost volby Allow Runtime Changes (Povolit změny při běhu programu) pro historický trend během vývoje. - 228 - • Při běhu programu klepnutí na jakýkoli objekt propojený s funkcí HTSelectTag(). Více informací o režimech funkce Tag Browser (Prohlížeč proměnných) je uvedeno v oddíle "Režimy výběru funkce Tag Browser". Stavový řádek funkce Tag Browser poskytuje stav následujících položek pro aktuálně zobrazený zdroj proměnných: • Celkový počet položek v aplikaci. • Název aktuálně zvolené položky. • Zvolená dotfields (atributy proměnných) proměnné, pokud nějaká existují. • Komunikační kanál asociovaný se zdrojem proměnných. Režimy výběru funkce Tag Browser Funkce Tag Browser (Prohlížeč proměnných) pracuje ve dvou režimech výběru: režim filtrovaného výběru a režim neomezeného výběru. Režim filtrovaného výběru Tento režim se aktivuje klepnutím na Select (Vybrat) v dialogovém okně Tagname Dictionary (Databáze proměnných) nebo při běhu programu (když je dovoleno operátorovi provádět změny historického trendu při běhu programu), když zvolíte novou proměnnou pro pero historického trendu. Zobrazené proměnné (a dostupné pro výběr) budou omezeny na aktuální aplikaci programu InTouch. Například: TIP Když provádíte přístup k funkci Tag Browser (Prohlížeč proměnných) z databáze proměnných a zvolíte proměnnou v tomto zobrazení, objeví se po klepnutí na OK její definice v databázi proměnných. Poznámka: Dotfields (atributy proměnných) proměnné nelze v tomto režimu zvolit. - 229 - Režim neomezeného výběru K režimu neomezeného výběru se provádí přístup dvojitým klepnutím na prázdnou plochu v jakémkoli okně skriptu QuickScript programu InTouch, na proměnnou animačního propojení nebo v poli výrazu nebo na prázdné pole New Name (Nový název) v dialogovém okně Substitute Tagnames (Nahradit proměnné). Proměnné definované v lokálním nebo vzdáleném zdroji proměnných lze v tomto režimu zobrazit a vybrat. Dotfields (atributy proměnných) proměnné lze pro proměnnou v tomto režimu zvolit. Když zvolíte proměnnou a/nebo dotfield (atribut proměnné) proměnné v tomto režimu, zadá se automaticky do skriptu QuickScript programu InTouch, proměnné animačního propojení nebo pole výrazu nebo do jiného umístění, ze kterého provádíte přístup k funkci Tag Browser. Například: ¾ Volba dotfields (atributů proměnných) proměnné 1. Klepněte na šipku Dot Field (atribut proměnné) pro otevření seznamu atributů, které můžete asociovat s typem aktuálně zvolené proměnné. TIP Implicitně se na počátku zobrazí <none> (<žádné>) pro všechny typy proměnných. Poznámka: Pole Dot Field (atribut proměnné) není dostupné, když provádíte přístup k funkci Tag Browser z databáze proměnných nebo při běhu programu, pokud volíte proměnnou pro pero historického trendu z dialogového okna Historical Trend Setup (Nastavení historického trendu). (Historický trend musí být konfigurován se zvolenou možností volby Allow runtime changes (Povolit změny při běhu programu).) 2. Klepněte na dotfields (atributy proměnných), která chcete připojit ke zvolené proměnné. TIP Ne každý typ proměnné má stejná dotfields (atributy proměnných). Například proměnná typu Discrete (Diskrétní) má .OnMessage, zatímco analogová proměnná nemá. Pokud zvolíte typ proměnné Discrete (Diskrétní) a přiřadíte k ní .OnMessage a potom zvolíte jinou proměnnou typu Discrete (Diskrétní), zobrazený seznam dotfields (atributů proměnných) se nezmění. - 230 - Když však zvolíte jiný typ proměnné v seznamu, například analogovou proměnnou, zobrazená dotfields (atributy proměnných) přejdou zpět na <none> (<žádné>). Zobrazení funkce Tag Browser Funkce Tag Browser podporuje tři režimy zobrazení; seznamu proměnných, podrobnosti proměnných a zobrazení stromu proměnných. Zobrazení seznamu Zobrazení seznamu se používá pro zobrazení a výběr proměnných v rámci aktuálního režimu výběru (popsáno výše). Zobrazení seznamu proměnných zobrazuje proměnné ve dvou zobrazeních v závislosti na stavu tlačítek List View (Zobrazení seznamu) a Details View (Zobrazení podrobností): Když zvolíte zobrazení seznamu, zobrazí se malé ikony vedle proměnných společně s ikonami zobrazenými podle typu každé proměnné. V zobrazení seznamu se nezobrazí žádná jiná pole. Například: TIP Pro obnovení zobrazení v dialogovém okně Select Tag (Zvolit proměnnou) stiskněte klávesu F5. Zobrazení podrobností Zvolíte-li zobrazení podrobností, proměnné a jejich podrobnosti se zobrazí ve vícesloupcovém formátu. Zobrazené podrobnosti jsou Tagname Name (Název proměnné), Tagname Type (Typ proměnné), Access Name (Komunikační kanál), Alarm Group (Alarmová skupina) a Comment (Poznámka). Seznam můžete roztřídit podle každého typu podrobnosti klepnutím na název záhlaví sloupce. Položku lze zvolit klepnutím na jakoukoli část jejího zobrazení, ne pouze na proměnnou. (Zvýrazní se celý řádek.) Například: - 231 - TIP Když přepnete zobrazení, zvolená proměnná zůstane v novém zobrazení viditelná a zvýrazněná. Zobrazení stromu Zobrazení stromu zobrazuje proměnné ve dvou zobrazeních v závislosti na stavu tlačítek List View (Zobrazení seznamu) a Details View (Zobrazení podrobností). Když zvolíte zobrazení stromu, zobrazí se na levé straně dialogového okna pole. Pomocí zobrazení stromu můžete také provádět přístup k proměnným prvků v jakékoli šabloně proměnné typu SuperTag. Pokud je aktivní režim Details View (Zobrazení podrobností), když zvolíte zobrazení stromu, funkce Tag Browser se znázorní následujícím způsobem: - 232 - TIP Pro rozvinutí seznamu v zobrazení stromu klepněte dvakrát na název aplikace nebo klepněte na . Pro svinutí seznamu klepněte dvakrát na název aplikace nebo klepněte na . Dvojité klepnutí na aplikaci v poli zobrazení stromu je stejné jako zvolení v seznamu Tag Source (Zdroj proměnných). Poznámka: Když "procházíte řádky dolů" přes různé úrovně ve funkci Tag Browser, můžete použít klávesu BACKSPACE pro "přechod zpět" k předchozí úrovni. Definice filtrů funkce Tag Browser Postupy popsané v tomto oddíle použijete pro definici filtrů (kritéria hledání), které chcete použít pro zobrazení ve funkci Tag Browser. Při vytváření filtrů, můžete setřídit jakýkoli seznam proměnných a zobrazit pouze ty proměnné, které splňují zadaná kritéria. Proměnné můžete setřídit podle Tagname (Proměnné), Tagname Type (Typu proměnné), Access Name (Komunikačního kanálu), Alarm Groups (Alarmových skupin) a Comments (Poznámek) proměnné. Můžete použít jednu položku nebo kombinaci kterýchkoli těchto položek pro nastavení kritérií zobrazení. Můžete také každou instanci filtru uložit a znovu ji kdykoli použít. TIP Jestliže máte například 40 000 proměnných definovaných ve Vaší databázi proměnných a potřebujete se pouze zabývat asi 20, které jsou přiřazeny ke konkrétnímu přístupovému názvu nebo alarmové skupině, můžete vytvořit filtr a specifikovat komunikační kanál a/nebo alarmovou skupinu jako kritéria, která musí proměnné splnit, aby se zobrazily v prohlížeči proměnných. Definice filtru vyhledávání ¾ 1. TIP Klepněte na tlačítko Define Filter (Definovat filtr). Objeví se dialogové okno Define Tag Filter (Definovat filtr proměnné). Klepnete-li pravým tlačítkem myši na vstupní textová pole, objeví se nabídka s příkazy, které lze aplikovat na zvolený text. - 233 - 2. V poli Filter Name (Název filtru) napište jedinečný název pro identifikaci filtru, který definujete, nebo klepněte na šipku Filter Name (Název filtru) pro zvolení dříve definovaného názvu filtru ze seznamu. (Když definujete filtry, název filtru se zapíše do seznamu.) TIP Všechny ovládací prvky Filter Option (Možnosti filtru) (Tagname (Proměnná), Tagname Type (Typ proměnné), Access Name (Komunikační kanál), Alarm Group (Alarmová skupina) a Comment (Poznámka)) Vám umožňuje zadat výraz se zástupným znakem pro omezení rozsahu hledání. Pokud se nepoužije žádný filtr, zobrazí se všechny proměnné v aktuálně zobrazeném zdroji proměnných. Vícenásobný zástupný znak je hvězdička (*). Například "Asyn*" vyhledá všechny proměnné, které začínají znaky "Asyn". Zástupný znak jednoho znaku je otazník (?). Například filtr "Tag?" vyhledá všechny proměnné se čtyřmi znaky, které začínají znaky "Tag". Filtr "Tag??" vyhledá všechny proměnné s pěti znaky, které začínají znaky "Tag". Jakýkoli sled platných znaků proměnné programu InTouch společně se dvěma zástupnými znaky je ve filtru akceptovatelný. Platné jsou tyto znaky proměnné: A-Z, a-z, 0-9, !, @, -, ?, #, $, %, _, \ a &. 3. V poli Tagname (Proměnná) napište výraz proměnné, který chcete použít jako filtr. Necháte-li pole prázdné, bude ho systém v definici filtru ignorovat. 4. V poli Access Name (Komunikační kanál) napište výraz komunikačního kanálu, který chcete použít jako filtr. Necháte-li pole prázdné, bude ho systém v definici filtru ignorovat. 5. V poli Alarm Group (Alarmová skupina) napište výraz alarmové skupiny, který chcete použít jako filtr. Necháte-li pole prázdné, bude ho systém v definici filtru ignorovat. 6. V poli Comment (Poznámka) napište výraz poznámky, který chcete použít jako filtr. Necháte-li pole prázdné, bude ho systém v definici filtru ignorovat. 7. Klepněte na OK pro zavření dialogového okna. TIP ¾ Název filtru se nyní objeví v seznamu Filter (Filtr) v prohlížeči proměnných a můžete jej zvolit pro zobrazení pouze proměnných, které splňují kritéria specifikovaná ve filtru. Vymazání filtru vyhledávání 1. Klepněte na šipku Filter (Filtr) a zvolte název filtru v seznamu, který chcete vymazat. 2. Klepněte na Delete (Vymazat). Filtr se okamžitě vymaže. Přesměrování vzdálených odkazů pomocí skriptu Odkazy na objekty typu ArchestrA nebo vzdálené odkazy na proměnné programu InTouch můžete při běhu programu přesměrovat pomocí skriptu. Můžete přepnout instance objektů pro grafický symbol v závislosti na tom, zda jsou splněny určité podmínky nebo přímou interakcí uživatele, jako např. klepnutím na tlačítko. Tuto novou funkci lze ve skriptu použít pro všechny objekty, nejen pouze pro SmartSymboly. Nová skriptová funkce, která se používá pro přesměrování vzdálených odkazů při běhu programu se jmenuje IOSetRemoteReferences(). - 234 - Funkce IOSetRemoteReferences() najde všechny vzdálené odkazy v databázi vytvářené při běhu programu, které odpovídají zadanému vzoru a tyto odkazy změní podle svých parametrů. Databáze vytvářená při běhu programu se skládá z několika položek, mezi které také patří proměnné a vzdálené odkazy. Proměnné jsou stálou součástí aplikace. Definujeme je v programu WindowMaker a zapisujeme je do databáze proměnných. V případě, že se spustí program WindowViewer, načte všechny proměnné z databáze proměnných a vytvoří odpovídající vstupy do databáze vytvářené při běhu programu. Vzdálené odkazy jsou však jen dočasnou částí aplikace. Program WindowMaker je vytváří dle potřeby a ruší je, když nejsou déle třeba. Například když otevřete okno aplikace, které obsahuje určitý vzdálený odkaz, program WindowViewer zkontroluje, zda již není tento odkaz definován v databázi vytvářené při běhu programu. Pokud je, použije se stávající již definovaný vzdálený odkaz. Pokud není, vytvoří se v databázi vytvářené při běhu programu nový vstup. Když se otevře druhé okno aplikace, které obsahuje tentýž vzdálený odkaz, program WindowViewer nahlédne do databáze vytvářené při běhu programu, zjistí, že odkaz již existuje a zvýší čítač jeho použití. V případě,že zavřete všechna okna aplikace, která daný odkaz používají, je vzdálený odkaz z databáze odstraněn. Pokud se potom otevře další okno aplikace, které používá stejný odkaz, vytvoří se v databázi opět nový vstup, jakoby se stejný vzdálený odkaz nikdy předtím nepoužil. Pokud máte jedno okno aplikace, které obsahuje vzdálený odkaz otevřené a zavoláte funkci IOSetRemoteReferences(), abyste změnili to, na co tento odkaz ukazuje, pak otevřete další okno, které obsahuje stejný vzdálený odkaz a uvidíte, že toto druhé okno najde vzdálený odkaz, který je již v databázi vytvářené při běhu programu a použije ho. Vyvolání funkce IOSetRemoteReferences() nemá žádný vliv na daný vzdálený odkaz, pokud neexistují otevřená okna nebo skripty, které se na něj aktivně odkazují. IOSetRemoteReferences() Mění odkaz na objekt při běhu programu Kategorie Data Change Syntaxe IOSetRemoteReferences(BaseAccess, NewAccess, MatchString, SubstituteString, Mode); Parametr Popis BaseAccess String (Text), obsahuje jméno původního parametru Access Name (Komunikační kanál), pro který se vyhledají všechny odkazy NewAccess String (Text) - nový parametr Access Name (Komunikační kanál). Použije se pro všechny odkazy, u kterých se původní parametr Access Name (Komunikační kanál) shoduje s výše uvedeným parametrem BaseAccess a jejichž původní Item Name (Název položky) se shoduje s parametrem MatchString (pokud je zadán). MatchString String (Text) - parametr, který se má shodovat s původním konfigurovaným Item Name (Názvem položky) v prohledávaném odkazu (odkazech). Pokud je zadán prázdný řetězec (žádný text), pracuje se s - 235 - ním jako s podmínkou, kterou splňuje jakýkoliv Item Name (Název položky). Příklad(y) SubstituteString String (Text) - parametr, kterým se nahradí původní konfigurovaný Item Name (Název položky), nahrazující parametr MatchString, aby se vytvořil aktivní Item Name (Název položky) k danému odkazu (odkazům). Pokud je parametr SubstituteString prázdný řetězec (žádný text), neprovede se žádná náhrada. Mode 0 nebo 1 - určuje způsob, jakým se má parametr MatchString shodovat s původním konfigurovaným Item Name (Názvem položky). Porovnávání shody začíná vždy od začátku Item Name (Názvu položky), nikdy ne od prostředku. 0 znamená, že shoda musí být úplná pro celý Item Name (Název položky) až po znak “.” 1 znamená, že shoda může být jen částečná, i když posledním znakem, který se ještě shoduje není “.” IOSetRemoteReferences("Galaxy", "", "pumpX", "pump001", 0); IOSetRemoteReferences("Galaxy", "TagServer1", "pumpX", "p2", 0); IOSetRemoteReferences("TagServer1", "TagServer2", "pumpX", "backpump3", 0) IOSetRemoteReferences("TagServer1", "", "Tank", "Plant", 1) Přesměrování odkazů • Funkce IOSetRemoteReferences mění pouze vzdálené odkazy. Má vliv pouze na ty vzdálené odkazy, u kterých se původní, konfigurovaný Access Name (Komunikační kanál) shoduje se zadaným parametrem BaseAccess a u kterých text Item Name (Název položky) začíná shodně, jako zadaný parametr MatchString. • Jediné volání funkce IOSetRemoteReferences má vliv na všechny vzdálené odkazy v oknech, která jsou v paměti, u kterých se původní, konfigurované texty názvů shodují s parametry BaseAccess a MatchString. • Pokud ponecháte parametr BaseAccess prázdný (tj. ""), funkce IOSetRemoteReferences nevykoná žádnou činnost. • Pokud je parametr MatchString prázdný (tj. “”), funkce IOSetRemoteReferences ovlivní všechny vzdálené odkazy, u kterých se původní AccessName (Komunikační kanál) shoduje s parametrem BaseAccess. • Nový, aktivní název vzdáleného odkazu se získá použitím parametru NewAccess jako „aktivního“ Access Name (názvu Komunikačního kanálu), zkopírováním Item Name (Názvu položky) a nahrazením parametru SubstituteString parametrem NewString. • Pokud je nastaven parametr Match Mode na '0', náhrada Item Name (Názvu položky) se provede pouze pro úplné názvy objektů (nebo proměnných), nebo pro úplná jména atributů (nebo Dot Fields (atributů proměnných)). Parametr MatchString se musí - 236 - shodovat s celým Item Name (Názvem položky) nebo až po znak, po kterém následuje tečka (“.”). • Pokud je nastaven parametr MatchMode na '1', je povolena částečná náhrada textu názvu položky, pokud text názvu položky začíná stejným textem, jaký je uveden v parametru MatchString. To znamená, že parametr MatchString se musí shodovat s určitou částí textu původního názvu položky, ale tento “pododdíl” textu musí začínat od začátku textu názvu položky a za posledním znakem shodujícího se textu nemusí následovat “.” • Původní konfigurované názvy vzdálených odkazů zůstávají beze změny. Každé následující volání funkce IOSetRemoteReferences() nemusí rozlišovat současně aktivní název. Funkce IOSetRemoteReferences() je možné volat v libovolném pořadí. • Pokud potřebujete, aby se dvě nebo více oken odkazovaly na jeden vzdálený odkaz, vzdálený odkaz funguje jako proměnná typu I/O (vstup/výstup). Když jej přesměrujete, všechna okna zobrazí stejnou věc. Nepoužívejte jednotlivý název jako odkaz zároveň na dva oddělené cíle. Obnovení odkazů • Pokud je parametr NewAccess prázdný (tj. “”), funkce IOSetRemoteReferences vrátí aktivní Access Name (Komunikační kanál) na původní základní Access Name (Komunikační kanál). • Pokud je parametr MatchString prázdný (tj. “”), funkce IOSetRemoteReferences vrátí aktivní Item Name (Názvu položky) na původní Item Name (Název položky). Poznámka: dokonce i když není prázdný parametr SubstituteString a když je parametr MatchString prázdný, nastavení Item Name (Názvu položky) bude obnoveno na původní Item name (Název položky). Vkládání textu na začátek názvu není povoleno. Například skript IOSetRemoteReferences(“Access1”, “”, “”,”Valve”,0) po spuštění nepřipojí text “Valve” na začátek nebo na konec všech původních názvů položek. • Pokud je parametr SubstituteString prázdný (tj. “”), funkce IOSetRemoteReferences obnoví nastavení aktivního Item Name (Názvu položky) na původní Item Name (Název položky). Použití funkce s parametrem MatchString, který není prázdný a s prázdným parametrem SubstituteString Vám umožňuje vybrat podmnožinu vzdálených odkazů s původním uvedeným parametrem BaseAccess a obnovit jejich nastavení na původní Item names (Názvy položek). Funkce IOSetRemoteReferences a okna programu InTouch Funkce IOSetRemoteReferences má vliv jen na propojení v oknech, která jsou v paměti – jsou v databázi vytvářené při běhu programu. Následující scénáře vysvětlují chování funkce IOSetRemoteReferences, když se použije na propojení v nově otevřených oknech. Scénář 1 1. V programu InTouch vytvořte dvě okna Window1 a Window2. 2. Do okna Window2 vložte propojení xxx:TankLevel.Value. Toto okno se otevře jen pomocí akčního tlačítka. - 237 - 3. V okně Window1, přidejte nové textové propojení xxx:TankLevel.Value a přidejte druhé tlačítko, které volá funkci IOSetRemoteReferences(“xxx”,”TagServer1”,“”,””,”“,0); 4. V programu WindowMaker, klepněte na Runtime (Běh programu). 5. Spusťte skriptovou funkci. Propojení v okně Window1 se aktualizuje na hodnotu TagServer1:TankLevel.Value. 6. Klepněte na tlačítko, abyste otevřeli v programu InTouch okno Window2. Propojení v okně Window2 nezobrazuje hodnotu TagServer1:TankLevel.Value, protože skript má vliv jen na propojení v oknech, která jsou již v paměti. Poznámka: Pokud odstraníte zatržení volby "Always Load Windows from Disk" (Okna nahrávat vždy z disku) v dialogovém panelu Properties (Vlastnosti) programu WindowViewer, program WindowMaker uchovává zavřená okna v paměti, což ve výsledku způsobí, že funkce IOSetRemoteReference() přesměruje vzdálené odkazy v těchto oknech, ačkoliv jsou zavřená. Scénář 2 1. V okně Window1 programu InTouch, konfigurujte skript akce tak, aby vykonal následující příkazy: Show "Window2"; IOSetRemoteReferences("xxx","TagServer1","","",0); 2. V programu WindowMaker, klepněte na Runtime (Běh programu). Může se zdát, že propojení v okně Window2 by se aktualizovala správně, protože skriptová funkce se spustí až po otevření okna. Avšak skriptová funkce se spustí ještě předtím, než je okno plně inicializováno. Odkazy v okně se proto nepřesměrují. Abyste tento problém vyřešili, mohli byste použít pro nastavení hodnot proměnných, které by představovali parametry skriptové funkce použít akční tlačítko a otevřít „vyskakovací“ (Pop-up) okno. Můžete konfigurovat skript okna na cílovém okně pro událost OnShow, který by tyto proměnné použil pro volání funkce IOSetRemoteReferences. Například na akčním tlačítku byste mohli konfigurovat následující akce: NewAccessNameTag="Tagserver1" Show "Window2"; Ve skriptu události OnShow okna byste konfigurovali následující: IOSetRemoteReferences("xxx",NewAccessNameTag,"","",0); Změny způsobené skriptem v odkazech Animation Link (Animačního propojení) uvnitř aplikace Cílem změny způsobené voláním skriptové funkce má být změna všech souvisejících vzdálených odkazů v aplikaci. Je to proto, aby bylo možné zvládnout komplexní situace se symboly a vzdálenými odkazy, při kterých je možné přistupovat k velkému počtu odlišných atributů stejného objektu jako k jedné skupině. Například komplexní symbol Pump (Čerpadlo) by mohl přistupovat k rychlosti, objemovému průtoku a kvalitě údajů pro kterékoliv aktuálně vybrané čerpadlo. Jediným voláním skriptové funkce se aktualizují všechny související odkazy uvnitř celé aplikace tak, aby ukazovaly na správný cíl. - 238 - Volání jediné skriptové funkce by tudíž mohlo ovlivnit kterékoliv čerpadlo v následujících oknech, a to uvnitř jediné aplikace InTouch: • Individuální změna odkazu na Symbol: “Galaxy:pump.pv” • Skupina Related Symbols (souvisejících symbolů) s vícenásobnými souvisejícími odkazy, kde volání by mohlo přepnout atributy “.pv”, “.state”, and “.cmd” pro celou skupinu: “Galaxy:mainpump.pv”, “Galaxy:mainpump.state”, “Galaxy:mainpump.cmd” “Galaxy:fwdpump.pv”, “Galaxy:fwdpump.state”, “Galaxy:fwdpump.cmd” “Galaxy:rsvpump.pv”, “Galaxy:rsvpump.state”, “Galaxy:rsvpump.cmd” “Galaxy:bckpump.pv”, “Galaxy:bckpump.state”, “Galaxy:bckpump.cmd” “Galaxy:altpump.pv”, “Galaxy:altpump.state”, “Galaxy:altpump.cmd” • Odkazy uvnitř Contained Symbols (Obsažených Symbolů) v Contained Objects (Obsažených objektech), kde jedno volání za účelem změny jména objektu vyšší úrovně “tank” na další instanci, jako např. “tank1” má vliv na odkaz ve všech obsažených objektech: “Galaxy:tank.pump1.pv”, “Galaxy:tank1.pump1.pv” “Galaxy:tank.invalve1.pv”, “Galaxy:tank1.invalve1.pv” “Galaxy:tank.invalve2.pv”, “Galaxy:tank1.invalve2.pv” “Galaxy:tank.outvalve.pv”, “Galaxy:tank1.outvalve.pv” “Galaxy:tank.level.pv”, “Galaxy:tank1.level.pv” “Galaxy:tank.mixer.pv”, “Galaxy:tank1.mixer.pv” Utilita Křížové odkazy programu InTouch Utilita Tagname Cross Referencing (Křížové odkazy) Vám umožňuje vyhledat Vaši proměnnou, vzdálenou proměnnou a použití proměnné typu SuperTag v animačních propojeních, předkonfigurovaných objektech, skriptech QuickScript programu InTouch, funkcích typu QuickFunction, ovládacích prvcích ActiveX, skriptech a následujících dodatečných programech programu InTouch: SPC Pro, SQL Access Manager a Recipe Manager. Pro všechny objekty, jako jsou například předkonfigurované objekty, ovládací prvky ActiveX a animační propojení, zobrazuje název okna a souřadnice všech objektů propojených s proměnnou. Dovoluje Vám také zobrazit jakýkoli skript QuickScript nebo funkci QuickFunction, kde se nalezne proměnná. TIP Pro usnadnění může utilita Tagname Cross Reference (Křížové odkazy) zůstat v programu WindowMaker otevřená, zatímco provádíte jiné úkoly. ¾ Použití utility Cross Reference (Křížové odkazy) programu InTouch - 239 - 1. V nabídce Special (Speciální) klepněte na Cross Reference (Křížové odkazy) nebo v Application Explorer (Aplikačním průzkumníku) klepněte dvakrát na Cross Reference (Křížové odkazy). Objeví se dialogové okno InTouch Cross Reference Search Criteria (Kritéria vyhledávání pro křížové odkazy). 2. Skupina Search Criteria (Kritéria vyhledávání) Vám umožňuje omezit rozsah hledání. Rozsah můžete snadným způsobem určit volbou pouze potřebných možností volby. - 240 - Search for all occurrences (Hledat všechny výskyty) Vyhledávání všech použití proměnné nebo proměnné typu SuperTag v animačních propojeních, skriptech QuickScript programu InTouch a všech dodatečných programech, jako je SPC, SQL Access Manager, Recipe Manager atd. Search for specific occurrences (Hledat specifické výskyty) Vyhledávání pouze proměnné nebo proměnné typu SuperTag jen ve specifických možnostech volby. Pokud například chcete vyhledat použití ve skriptech okna, zvolte pouze Usage in window scripts (Použití ve skriptech okna). 3. V poli Filter (Filtr) napište jedinečný název pro identifikaci filtru, který definujete, nebo klepněte na šipku Filter (Filtr) pro zvolení dříve definovaného názvu filtru ze seznamu. (Když definujete filtry, zapsaný název se zapíše do seznamu Filter (Filtr).) TIP Ovládací prvek editoru filtru Vám umožní zadat výraz se zástupným znakem pro omezení rozsahu proměnných ve Vašem hledání. Pokud se nepoužije žádný filtr, získají se informace všech proměnných v aktuální aplikaci. Vícenásobný zástupný znak je symbol hvězdičky (*). Například "Asyn*" vyhledá všechny proměnné začínající znaky "Asyn". Zástupný znak jednoho znaku je symbol otazníku (?). Například "Tag?" vyhledá všechny proměnné se čtyřmi znaky, které začínají znaky "Tag". Filtr "Tag??" vyhledá všechny proměnné s pěti znaky, které začínají znaky "Tag". Jakýkoli sled platných znaků proměnné programu InTouch společně se dvěma zástupnými znaky je ve filtru akceptovatelný. Platné jsou tyto znaky proměnné: A-Z, a-z, 0-9, !, @, -, ?, #, $, %, _, \ a &. Klepnete-li pravým tlačítkem myši na pole Filter (Filtr), objeví se nabídka s příkazy, které lze aplikovat na zvolený text. 4. Klepněte na Search (Vyhledat) pro zahájení vyhledávání pomocí křížových odkazů založených na stanovených kritériích zobrazení. - 241 - Zobrazení výsledků hledání křížových odkazů Když provádíte vyhledávání pomocí křížových odkazů, zobrazí se dialogové okno InTouch Cross Reference Utility (Utilita Křížové odkazy programu InTouch) obsahující seznam všech instancí použití nalezených pro Filtr, který jste specifikovali. Pokud se nepoužije žádný filtr, zobrazí se všechny proměnné v databázi proměnných aktuální aplikace. Například: - 242 - Ikony utility Křížové odkazy Následující tabulka stručně popisuje různé ikony, které se mohou objevit v utilitě Cross Reference (Křížové odkazy) programu InTouch: Ikona Popis Proměnná nebo proměnná typu SuperTag je přiřazena k objektu programu InTouch nebo se používá k uložení hodnoty ve skriptu QuickScript programu InTouch, předkonfigurovaném objektu nebo dodatečném programu. Klepněte pro rozvinutí zobrazení úrovně. Klepněte pro svinutí zobrazení rozvinuté úrovně. Zobrazená proměnná nebo proměnná typu SuperTag je definována v databázi proměnných aplikace, ale není přiřazena k objektu. Zobrazená proměnná nebo proměnná typu SuperTag se používá jak v animačním propojení, tak ve skriptu QuickScript programu InTouch. Dvojitým klepnutím nebo klepnutím na se zobrazení rozvine. Zobrazená proměnná nebo proměnná typu SuperTag je přiřazena k animačnímu propojení. Dvojitým klepnutím nebo klepnutím na se zobrazí název okna a souřadnice objektu (objektů) v okně přiřazeném k animačnímu propojení. Zobrazená proměnná nebo proměnná typu SuperTag je použita ve skriptu Application (Aplikace). Dvojitým klepnutím nebo klepnutím na se rozvine zobrazení a zobrazí se typ aplikačního skriptu , který používá proměnnou nebo proměnnou typu SuperTag. Zobrazeno pro všechny aplikační skripty On Startup (Při spuštění), While Running (Při běhu) a On Shutdown (Při vypnutí); skriptech okna On Show (Při zobrazení), While Showing (Při zobrazení) a On Hide (Při skrytí) a skriptech kláves On Key Down (Při stisknutí klávesy), While Down (Ve stisknuté poloze) a On Key Up (Při uvolnění klávesy). Klepněte dvakrát na skript pro jeho zobrazení. Zobrazená proměnná nebo proměnná typu SuperTag je použita ve skriptu Window (Okno). Dvojitým klepnutím nebo klepnutím na se rozvine zobrazení a zobrazí se název okna se skriptem. Klepněte dvakrát na uvedený název okna pro zobrazení skriptu. Zobrazená proměnná nebo proměnná typu SuperTag je použita ve změnovém skriptu. Dvojitým klepnutím nebo klepnutím na se rozvine zobrazení a potom dvakrát klepněte na jakýkoli uvedený skript pro jeho zobrazení. Zobrazená proměnná nebo proměnná typu SuperTag je použita v podmínkovém skriptu. Dvojitým klepnutím nebo klepnutím na se rozvine zobrazení a zobrazí se podmínka skriptu a jeho typ. Například $Hour==12 On True. Klepněte dvakrát na jakýkoli uvedený skript pro jeho zobrazení. Zobrazená proměnná nebo proměnná typu SuperTag je použita v klávesovém skriptu. Dvojitým klepnutím nebo klepnutím na se rozvine zobrazení a zobrazí se klávesa přiřazená ke skriptu a typ skriptu. Například F2 On Key Down. Klepněte dvakrát na jakýkoli uvedený skript pro jeho zobrazení. - 243 - Zobrazená proměnná nebo proměnná typu SuperTag je použita ve funkci typu QuickFunction. Dvojitým klepnutím nebo klepnutím na se rozvine zobrazení a zobrazí se skripty QuickFunction, která používá proměnnou nebo proměnnou typu SuperTag. Klepnutím se rozvine zobrazení a zobrazí se název (názvy) funkcí typu QuickFunction, ve kterých se používá proměnná nebo proměnná typu SuperTag. Klepněte dvakrát na jakýkoli uvedený skript pro jeho zobrazení. Zobrazená proměnná nebo proměnná typu SuperTag je použita ve skriptu ActiveX Event. Dvojitým klepnutím nebo klepnutím na se rozvine zobrazení a zobrazí se skript události ActiveX. Když se provádí křížové odkazy pomocí Window (Okna), tato ikona je předřazena před název okna, ve kterém je použita proměnná nebo proměnná typu SuperTag. Dvojitým klepnutím nebo klepnutím na se zobrazí všechny proměnné použité v okně. Zobrazená proměnná nebo proměnná typu SuperTag je použita v aplikaci SPC Pro. Dvojitým klepnutím nebo klepnutím na se zobrazí název souboru dat SPC, ve kterém se používá proměnná nebo proměnná typu SuperTag. Zobrazená proměnná nebo proměnná typu SuperTag je použita v aplikaci SQL. Dvojitým klepnutím nebo klepnutím na se zobrazí název seznamu SQL Bind List, ve kterém se používá proměnná nebo proměnná typu SuperTag. Zobrazená proměnná nebo proměnná typu SuperTag je použita v aplikaci Recipe Manager (Správa receptur). Zobrazená proměnná se používá jako potlačení alarmu. Dvojitým klepnutím nebo klepnutím na se zobrazí názvy všech proměnných, pro které se jedná o potlačení. Vymazání proměnných z databáze Program InTouch uchovává počet použití každé položky v databázi. Tento počet se neaktualizuje automaticky pro určité operace, jako je například mazání okna, změna proměnných v propojeních nebo skriptech atd. V těchto případech program InTouch považuje proměnnou stále za používanou v aplikaci a nedovolí Vám ji vymazat. Proto možná bude třeba aktualizovat Váš počet použití pro vymazání proměnné. ¾ Vymazání nepoužívané proměnné 1. Zavřete program WindowViewer, pokud běží. 2. V nabídce Special (Speciální) klepněte na Tagname Dictionary (Databáze proměnných). Objeví se dialogové okno Tagname Dictionary (Databáze proměnných). 3. Klepněte na Select (Vybrat). Objeví se okno Select Tagname (Vybrat proměnnou) (Tag Browser). 4. Vyberte proměnnou, kterou chcete vymazat, a potom klepněte na OK. Objeví se dialogové okno Tagname Dictionary (Databáze proměnných) zobrazující zvolenou definici proměnné. 5. Klepněte na Delete (Vymazat). - 244 - Poznámka: Tlačítko Delete (Vymazat) nebude dostupné, jestliže program WindowViewer běží nebo program InTouch považuje proměnnou za používanou v aplikaci. Můžete určit, kde se proměnná používá pomocí utility křížových odkazů programu InTouch, (V nabídce Special (Speciální) klepněte na Cross Reference (Křížové odkazy).) nebo můžete vytisknout zprávu všech propojení proměnných použitých v okně. (V nabídce File (Soubor) klepněte na Print (Tisk).) Aktualizace počtů použití Poněvadž program InTouch uchovává počet použití každé položky v databázi, bude možná třeba aktualizovat počty použití pro nastavení všech nepoužívaných proměnných na nulu předtím, než program InTouch Vám dovolí některou položku vymazat. ¾ Aktualizace počtu použití proměnné 1. Zavřete všechna Vaše okna. 2. V nabídce Special (Speciální) klepněte na Update Use Counts (Aktualizovat počet použití). TIP Objeví se okno se zprávou sdělující, že aktualizace počtu použití může trvat určitou dobu. Nyní můžete příkaz stornovat nebo pokračovat. 3. Klepněte na Yes (Ano) pro pokračování aktualizace počtu použití. Jakmile systém dokončil aktualizaci počtu použití, zobrazí se následující dialogové okno. 4. Klepněte na OK. Vymazání nepoužívaných proměnných Po provedení aktualizace počtu použití, program InTouch Vám umožní vymazat všechny nepoužívané proměnné. Můžete je buď vymazat jejich otevřením v dialogovém okně Tagname Dictionary (Databáze proměnných) klepnutím na Delete (Vymazat) nebo můžete vymazat jeden nebo více proměnných najednou pomocí příkazu Delete Unused Tags (Vymazat nepoužívané proměnné). ¾ Vymazání několika nepoužívaných proměnných 1. V nabídce Special (Speciální) klepněte na Delete Unused Tags (Vymazat nepoužívané proměnné). Objeví se dialogové okno Choose Names to Delete (Vybrat názvy k vymazání). - 245 - 2. Vyberte proměnné, které chcete vymazat, a potom klepněte na Delete (Vymazat). 3. Klepněte na All (Všechny) pro vymazání všech zobrazených proměnných. Proměnné, které jsou pouze alarmované, nemají žádný počet použití a lze je neúmyslně vymazat. Aby se zajistilo, že i pouze alarmované proměnné jsou zahrnuty do počtu použití, potřebujete je použít v okně nebo ve skriptu QuickScript. Zobrazení počtu použitých proměnných Počet místních proměnných, které jsou aktuálně definovány ve Vaší databázi proměnných, můžete zobrazit v panelu nabídky programu WindowMaker. (Počet proměnných nezahrnuje interní systémové proměnné nebo odkazy na vzdálené proměnné.) ¾ Zobrazení počtu proměnných 1. V nabídce Special (Speciální) ukažte na Configure (Konfigurovat) a pak klepněte na WindowMaker. Zobrazí se karta vlastností WindowMaker Properties – General (Vlastnosti WindowMaker – Standardní). TIP 2. Pro rychlý přístup do dialogového okna klepněte dvakrát v Application Explorer (Aplikačním průzkumníku) v položce Configure (Konfigurovat) na WindowMaker. Zvolte Show Tag Count (Zobrazit počet proměnných). - 246 - 3. Klepněte na OK. 4. Celkový počet lokálních proměnných definovaných ve Vaší databázi proměnných se nyní zobrazí na konci Vašeho panelu nabídky programu WindowMaker. TIP ¾ Aby se zobrazený počet proměnných aktualizoval, musí se načíst celá databáze proměnných. Proto tedy, když je tato možnost volby zapnutá, může se při provádění změn ve Vaší databázi proměnných snížit výkon. Je-li Vaše databáze proměnných velká, neměli byste tuto možnost volby aktivovat. Určení použití vzdálených proměnných 1. V nabídce Special (Speciální) klepněte na Update Use Counts (Aktualizovat počet použití). 2. Systém provede aktualizaci použití Vašich proměnných a potom zobrazí následující dialogové okno: TIP Aktualizace počtů použití může trvat určitou dobu. 3. Řádek Remote Tags (Vzdálené proměnné) zobrazí počet vzdálených proměnných použitých ve Vaší aplikaci. 4. Klepněte na OK. Nahrazování proměnných Když kopírujete objekt, je přesným duplikátem originálů včetně propojení, animace, skriptů atd. Jestliže však potřebujete použít rozdílnou proměnnou na objektu, který jste zkopírovali, musíte změnit proměnnou. V programu WindowMaker se tato operace nazývá "nahrazování proměnné". Můžete zvolit a změnit proměnné pro kterýkoli objekt a můžete zvolit několik objektů a změnit současně všechny jejich proměnné. TIP Pokud měníte proměnnou pro objekt a program WindowViewer běží, bude třeba program WindowViewer restartovat, aby se změny projevily. Jestliže Vaše licence systému podporuje omezený počet proměnných, můžete také Vaše lokální proměnné převést na Odkazy na vzdálené proměnné, aby se snížil počet proměnných definovaných ve Vaší lokální databázi proměnných. - 247 - ¾ Změna proměnné objektu na jinou lokální proměnnou 1. Zvolte objekt (objekty), jehož (jejichž) proměnnou chcete změnit, a potom v nabídce Special (Speciální) klepněte na Substitute Tags (Nahradit proměnné). Objeví se dialogové okno Substitute Tagnames (Nahradit proměnné). TIP Pro rychlý přístup do dialogového okna klepněte pravým tlačítkem myši na jeden ze zvolených objektů, ukažte na Substitute (Nahradit) a pak klepněte Substitute Tags (Nahradit proměnné). 2. V poli New Name (Nový název) zadejte novou proměnnou a potom klepněte na OK. Proměnná asociovaná ze zvoleným objektem (zvolenými objekty) se automaticky změní. TIP Pokud klepnete pravým tlačítkem myši na pole New Name (Nový název), objeví se nabídka zobrazující příkazy, které můžete použít pro Váš text. Jestliže dvakrát klepnete na proměnnou v poli New Name (Nový název), zobrazí se její definice v databázi proměnných. Vymažete-li proměnnou, pak dvakrát klepněte na prázdné pole New Name (Nový název), zobrazí se Tag Browser (Prohlížeč proměnných). Konverze zástupných proměnných Když provádíte indexování proměnných (pro jejich vyřazení z provozu) nebo importujete nebo exportujete okno nebo skript QuickScript do nebo z Vaší aktuální aplikace, všechny proměnné asociované s tímto oknem nebo skriptem QuickScript se převedou s oknem, ale nepřidají se do Vaší nové databáze aplikace. Místo toho se automaticky označí jako "zástupné" (indexové) proměnné. Tyto zástupné proměnné musíte zkonvertovat a podle potřeby je definovat ve Vaší nové databázi proměnných aplikace. Například: - 248 - V tomto příkladě pro konverzi zástupných proměnných na lokální proměnné klepněte na Convert (Konvertovat). TIP Jestliže při provádění importu okna nejsou jakékoli z proměnných (vyjma vzdálených proměnných) definovány ve Vaší lokální databázi proměnných, budete vyzváni k definici každé z těchto proměnných předtím, než je můžete zkonvertovat. Pokud se jedná o tento případ, klepněte na OK. Objeví se dialogové okno Tagname Dictionary (Databáze proměnných) a Vy můžete definovat proměnnou (proměnné). Všimněte si zástupných proměnných ?d:, ?i:, ?m: a ?r: umístěných před proměnnými. Označují typ, který byl původně definovaný pro proměnnou: TIP Symbol zástupné proměnné Typ proměnné d Diskrétní i Celočíselný m Textový r Reálný Vzdálené odkazy nebudou zobrazeny jako zástupné proměnné, ale jako odkazy na vzdálené proměnné, například PLC2:Temperature (PLC2:Teplota). Změna velikosti rozsahu I/O proměnných Všechny proměnné typu I/O (vstupní/výstupní) získávají své hodnoty z jiných aplikačních programů systému Windows, jako jsou např. Excel a I/O servery. Tato hodnota se týká "prvotní" hodnoty. Když definujete proměnnou v databázi proměnných, musíte zadat hodnoty pro "Min Raw" a "Max Raw". Tyto hodnoty se používají databází jako meze aktuální prvotní hodnoty ze vstupního/výstupního zařízení. Když například nastavíte hodnotu "Min Raw" na 50 a aktuální hodnota získaná ze I/O serveru je 0, databáze si vynutí hodnotu Raw rovnu 50. Program InTouch nezobrazuje prvotní hodnoty. Místo toho zobrazuje inženýrské jednotky (EU). Když definujete proměnnou typu I/O v databázi proměnných, musíte zadat hodnoty pro "Min EU" a "Max EU". Tyto hodnoty se používají pro změnu rozlišení prvotní hodnoty vůči zobrazené hodnotě. Pokud nechcete provádět změnu velikosti nebo Vaše vstupní/výstupní zařízení provede změnu velikosti samostatně, nastavte hodnoty Min/Max EU rovné hodnotám Min/Max Raw. Předpokládejme například, že snímač průtoku připojený k registru PLC generuje hodnotu nula při žádném průtoku a hodnotu 9999 při průtoku 100 %. Zadají se následující hodnoty: Min EU = 0 Min Raw=0 Max EU = 100 Max Raw = 9999 Prvotní hodnota 5000 se zobrazí jako 50. Předpokládejme také, že snímač průtoku připojený k registru PLC generuje hodnotu 6 400 při žádném průtoku a hodnotu 32 000 při průtoku 300 GPM (gallons per minute – galonů za minutu). Min EU = 0 Min Raw = 6400 Max EU = 300 Max Raw = 32000 - 249 - V tomto případě se zobrazí hodnota 12 800 jako 150. Prvotní hodnota 6 400 se zobrazí jako 0 a prvotní hodnota 0 se zobrazí jako 0 (všechny hodnoty mimo meze stanovené hodnotami Min Raw a Max Raw jsou v tomto intervalu). Výše uvedená změna velikosti funguje v opačném směru, když data proměnné typu I/O jsou zapsána z databáze proměnných programu InTouch do jiných aplikací systému Windows. Operátor může například zapsat zadanou hodnotu 0-300 GPM (gallons per minute – galonů za minutu) do okna vstupu dat a získá hodnotu 6 400-32 000 přenesenou do registru PLC. To platí vždy, když program InTouch pracuje jako klient (buď požadující data nebo zasílající data do jiných programů systému Windows). Když však program InTouch pracuje jako zdroj dat (jiný program systému Windows požaduje data z programu InTouch), vrátí hodnotu EU (inženýrských jednotek) do dotazovacího programu. Například, když buňka v tabulkovém procesoru Excel obsahuje vzorec vzdáleného odkazu: =view|tagname!speed Hodnota zobrazená v buňce bude aktuální hodnota EU pro rychlost proměnné. Monitorování závad zařízení Program InTouch od verze 7.0 podporuje tři dotfields (atributy proměnných) proměnné (.RawValue, .MinRaw a .MaxRaw), která můžete použít pro určení stavu mimo rozsah, mimo kalibraci nebo určení závady. Interní systémové $proměnné Program InTouch Vám poskytuje velký počet předdefinovaných interních systémových proměnných, které můžete použít pro provádění různých činností. Pokud například chcete zobrazit aktuální čas, můžete propojit systémovou proměnnou $TimeString s řetězcem zobrazení hodnoty. Před všemi interními proměnnými je umístěn znak měny ($). K interním systémovým proměnným se provádí přístup prostřednictvím funkce Tag Browser (Prohlížeče proměnných). Více informací je uvedeno v oddíle "Prohlížeč proměnných". V následujícím oddíle jsou stručně popsány interní systémové proměnné: SSystémová proměnná Popis $AccessLevel Celočíselná bezpečnostní proměnná pouze pro čtení používaná ve výrazech nebo skriptech pro ovládání schopnosti operátora provádět specifické funkce. $AlarmLogging Není již podporovaná v programu InTouch. $AlarmPrinterError Není již podporovaná v programu InTouch. $AlarmPrinterNoPaper Není již podporovaná v programu InTouch. $AlarmPrinterOffline Není již podporovaná v programu InTouch. $AlarmPrinterOverflow Není již podporovaná v programu InTouch. - 250 - $ApplicationChanged Diskrétní proměnná pouze pro čtení, která reflektuje skutečnosti, zda se vzdálená aplikace v distribuovaných systémech změnila nebo nezměnila. Toto číslo se zvýší vždy, když se zvolí příkaz Notify Clients (Oznámit klientům) v nabídce Special (Speciální) programu WindowViewer síťového uzlu serveru. $ApplicationVersion Reálná proměnná pouze pro čtení, která reflektuje aktuální číslo verze aplikace. Toto číslo se změní pokaždé, když se změní, přidá nebo vymaže proměnná nebo skript QuickScript. $ChangePassword Diskrétní bezpečnostní proměnná pouze pro zápis, která umožňuje operátorovi nastavit hodnotu proměnné $ChangePassword na 1, čímž se zobrazí operátorovi obecné dialogové okno Change Password (Změnit heslo). $ConfigureUsers Diskrétní bezpečnostní proměnná pouze pro zápis, kterou lze použít pro diskrétní tlačítko, aby operátor mohl nastavit hodnotu proměnné $ConfigureUsers na 1, čímž se zobrazí operátorovi obecné dialogové okno Configure Users (Konfigurovat uživatele) pro editaci seznamu bezpečnostních uživatelských hesel. $Date Celočíselná proměnná pouze pro čtení, která zobrazuje celý počet dní, který uplynul od 1.1.1970. $DateString Textová proměnná pouze pro čtení, která zobrazuje stejný formát, jako je nastavený v registru systému Windows, například 4/18/1992. (Tento formát data se nastavuje prostřednictvím ovládacích panelů systému Windows.) $DateTime Reálná proměnná pouze pro čtení, která zobrazuje zlomkový počet dní, který uplynul od 1.1.1970. $Day Celočíselná proměnná pouze pro čtení, která zobrazuje aktuální den (hodnota může být v rozsahu od 1 do 31). $HistoricalLogging Diskrétní proměnná pro čtení/zápis, která monitoruje/ovládá spouštění a zastavování ukládání historických dat. Jedná se o globální příkaz pro celou aplikaci. $Hour Celočíselná proměnná pouze pro čtení, která zobrazuje aktuální hodinu dne (hodnota může být v rozsahu od 0 do 23). $InactivityTimeout Diskrétní bezpečnostní proměnná pouze pro čtení, která se rovná 1, když uplynul čas nakonfigurovaný pro automatické odhlášení operátora. $InactivityWarning Diskrétní bezpečnostní proměnná pouze pro čtení, která se rovná 1, když uplynul čas nakonfigurovaný pro varování operátora, že dojde k odhlášení. - 251 - $LogicRunning Diskrétní proměnná pro čtení/zápis používaná pro monitorování a/nebo ovládání průběhu skriptů. Asynchronní skripty uživatelsky definovaných funkcí, které se právě provádějí, nelze zastavit. Můžete však zabránit tomu, aby se prováděly nové skripty. $Minute Celočíselná proměnná pouze pro čtení, která zobrazuje aktuální minutu (hodnota může být v rozsahu od 0 do 59). $Month Celočíselná proměnná pouze pro čtení, která zobrazuje aktuální měsíc (hodnota může být v rozsahu od 1 do 12). $Msec Celočíselná proměnná pouze pro čtení, která zobrazuje milisekundy (hodnota může být v rozsahu od 0 do 999). $NewAlarm Diskrétní proměnná pro čtení/zápis, která se rovná 1 vždy, když nastane nový alarm. $ObjHor Celočíselná proměnná pouze pro čtení používaná pro zobrazení horizontální umístění v pixelech středu zvoleného objektu. $ObjVer Celočíselná proměnná pouze pro čtení používaná pro zobrazení vertikálního umístění v pixelech středu zvoleného objektu. $Operator Celočíselná bezpečnostní textová proměnná pouze pro čtení používaná ve výrazu nebo skriptu QuickScript pro ovládání schopnosti operátora provádět specifické funkce. $OperatorEntered Bezpečnostní textová proměnná pro četní/zápis, která nastavuje "Uživatelské jméno" operátora. $PasswordEntered Bezpečnostní textová proměnná pouze pro zápis, která nastavuje "Heslo" operátora. $Second Celočíselná proměnná pouze pro čtení, která zobrazuje aktuální vteřiny (hodnota musí být v rozsahu od 0 do 59). $StartDdeConversations Diskrétní proměnná pro čtení/zápis používaná pro spouštění neiniciovaných konverzací při běhu programu, když byla deaktivována nabídka Special (Speciální). $Systém Proměnná alarmové skupiny pouze pro čtení pro alarmovou kořenovou skupinu. Pokud není proměnná přiřazena ke specifickému názvu alarmové skupiny, automaticky se standardně přiřadí k této kořenové skupině. Všechny definované alarmové skupiny jsou potomky proměnné $System. $Time Celočíselná proměnná pouze pro čtení, která zobrazuje čas v milisekundách od půlnoci. $TimeString Paměťová textová proměnná pouze pro čtení, která zobrazuje čas ve stejném formátu, jako je nastavený v registru systému Windows, např. 12:01:59 PM (odpoledne). (Formát času se nastavuje prostřednictvím ovládacích panelů systému - 252 - Windows.) $Year Celočíselná proměnná pouze pro čtení, která zobrazuje rok pomocí čtyř číslic. Například 2008. Atributy proměnné Většina úvah tykající se programu InTouch se vztahuje ke konceptu objektů. Koncept objektů je velmi rozsáhlý a komplexní. Pro účely naší úvahy omezíme naši definici objektu na sběr informací o grafickém objektu na obrazovce nebo informací o proměnné v databázi proměnných. Když se například nakreslí na obrazovce pravoúhelník, má určité "atributy", jako jsou šířka čáry, barva čáry a výplně, umístění na obrazovce v pixelech, asociovaná propojení atd. Proměnné pracují téměř zcela stejným způsobem. Jestliže se například vytvoří analogová alarmová proměnná s názvem "Analog_Tagname", bude mít asociované "atributy", jako jsou název proměnné, nastavená hodnota alarmu HiHi proměnné atd. K některým těmto "atributům" je možný přístup v rámci programu InTouch prostřednictvím skriptů, výrazů a uživatelských vstupů a jsou známé jako dotfields (atributy proměnných). Syntaxe požadovaná pro přístup k těmto datovým polím asociovaným s proměnnou je Tagname dotfields (atribut proměnné). Například pro umožnění změn meze alarmu HiHi proměnné "Analog_Tagname" při běhu programu, můžete vytvořit dotykové propojení Analog - User Input (Analogové – Uživatelský vstup) a použít je pro tlačítko, které je definováno výrazem Analog_Tagname.HiHiLimit. Při běhu programu operátor jednoduše klepne na tlačítko a napíše novou hodnotu pro mez alarmu HiHi, která se používá pro "Analog_Tagname". Tato dotfields (atributy proměnných) lze použít pro umožnění vstupu a výstupu dat asociovaných s proměnnou a můžete použít historická dotfields (atributy proměnných), aby uživatel měl možnost dynamicky modifikovat právě zobrazený historický trend. Můžete například povolit, aby uživatel ovládal posouvání, zamknutí nebo polohové posunutí "scooteru" v trendu nebo znovu přiřadil pera k novým proměnným. ¾ Přístup k atributům proměnných Napište proměnnou plus tečku (proměnná.) v jakémkoli skriptu QuickScript programu InTouch, v proměnné animačního propojení nebo do vstupní pole výrazu a potom dvakrát klepněte na pravé straně tečky (.). Objeví se prohlížeč Select Tag (Vybrat proměnnou) zobrazující proměnné definované pro aktuální zdroj proměnných: - 253 - ¾ Volba dotfields (atributů proměnných) proměnné 1. Klepněte na šipku Dot Field (atribut proměnné) pro otevření seznamu atributů proměnných, které můžete asociovat s typem aktuálně zvolené proměnné. TIP Implicitně se na počátku zobrazí <none> (<žádné>) pro všechny typy proměnných. Poznámka: Pole Dot Field (atribut proměnné) není dostupné, když provádíte přístup k funkci Tag Browser (Prohlížeč proměnných) z databáze proměnných nebo při běhu programu, pokud volíte proměnnou pro pero historického trendu z dialogového okna Historical Trend Setup (Nastavení historického trendu). (Historický trend musí být konfigurován se zvolenou možností volby Allow runtime changes (Povolit změny při běhu programu).) 2. Klepněte na dotfields (atributy proměnných), která chcete připojit ke zvolené proměnné. Poznámka: Ne každý typ proměnné má stejná dotfields (atributy proměnných). Například proměnná typu Discrete (Diskrétní) má .OnMessage, zatímco analogová proměnná nemá. Pokud zvolíte typ proměnné Discrete (Diskrétní) a přiřadíte k ní .OnMessage a potom zvolíte jinou proměnnou typu Discrete (Diskrétní), zobrazený seznam dotfields (atributů proměnných) se nezmění. Když však zvolíte jiný typ proměnné v seznamu, například analogovou proměnnou, zobrazená dotfields (atributy proměnných) přejdou zpět na <none> (<žádné>). Více informací o funkci Tag Browser (Prohlížeč proměnných) je uvedeno v oddíle "Prohlížeč proměnných". - 254 - V následujícím oddíle jsou stručně popsána dotfields (atributy proměnných) proměnné: Popis Dotfields (atributy proměnných) .Ack Dotfields (atributy proměnných) diskrétní proměnné pro čtení/zápis, která monitorují/ovládají aktuální stav potvrzení alarmu proměnných a alarmových skupin. .Ack má inverzní dotfields (atributy proměnných) proměnné nazývanou .Unack. Pokud dojde k nepotvrzenému alarmu, .Unack se nastaví na 1. .Unack lze pak použít v animačních propojeních nebo podmínkových skriptech pro spuštění indikací jakýchkoli nepotvrzených alarmů. .AckDev Monitoruje/ovládá aktuální stav potvrzení alarmů odchylkového typu na proměnné. .AckDsc Monitoruje/ovládá aktuální stav potvrzení alarmů na diskrétních proměnných. .AckROC Monitoruje/ovládá aktuální stav potvrzení alarmů typu rychlosti změny na proměnné. .AckValue Monitoruje/ovládá aktuální stav potvrzení alarmů hodnotového typu na proměnné. .Alarm Dotfields (atributy proměnných) diskrétní proměnné pouze pro čtení, která jsou rovna 1, když existuje podmínka alarmu pro specifikovanou proměnnou, Název alarmové skupiny. .AlarmAccess Vrací komunikační kanál proměnné asociované se zvoleným alarmem. Alarm se musí zvolit klepnutím na přehled Distributed Alarm Display (Distribuovaný alarmový objekt). .AlarmAckModel Monitoruje Ack Model (Model potvrzení) asociovaný s proměnnou následujícím způsobem: 0=podmínka (implicitní) 1=orientovaný na událost 2=rozšířený přehled Používá se pro diskrétní a analogové proměnné s alarmy. Pouze pro čtení, ale lze ji konfigurovat v programu WindowMaker. .AlarmClass Vrací třídu alarmu. .AlarmComment Textový řetězec pro čtení/zápis, který popisuje, co je to za alarm, ne co je to za proměnnou. Implicitně je tento textový řetězec v nové aplikaci prázdný. Když se však převede aplikace programu InTouch 7.1 na aplikaci verze 7.11, zkopíruje se pro zpětnou kompatibilitu poznámka proměnné do textového řetězce AlarmComment. .AlarmDate Vrací datum alarmu. .AlarmDev Signalizuje, že existuje alarm odchylkového typu. - 255 - Popis Dotfields (atributy proměnných) .AlarmDevCount Sleduje celkový počet odchylkových alarmů aktivních v dané skupině proměnných nebo alarmů. .AlarmDevDeadband Dotfields (atributy proměnných) analogové (platná pouze pro celočíselné nebo reálné proměnné) proměnné pro čtení/zápis, která monitorují/ovládají odchylkové pásmo necitlivosti v procentech pro alarmy jak menší, tak větší odchylky. .AlarmDevUnAckCount Sleduje celkový počet nepotvrzených odchylkových alarmů aktivních v dané skupině proměnných nebo alarmů. .AlarmDisabled Deaktivuje/aktivuje události a alarmy. Používá se pro diskrétní a analogové proměnné s alarmy nebo pro alarmové skupiny. Poznámka: Stejná jako .AlarmEnabled, ale opačné polarity. .AlarmDsc Udává, že diskrétní alarmová podmínka je aktuálně aktivní. .AlarmDscCount Sleduje celkový počet diskrétních alarmů aktivních v dané skupině proměnných nebo alarmů. .AlarmDscDisabled Udává, zda proměnná může nebo nemůže generovat diskrétní alarmy. Poznámka: Tento atribut je stejný jako .AlarmDisabled pro diskrétní proměnnou. .AlarmDscEnabled Udává, zda proměnná může nebo nemůže generovat diskrétní alarmy. Poznámka: Tento atribut je stejný jako .AlarmEnabled pro diskrétní proměnnou. .AlarmDscInhibitor Vrací název proměnné potlačení přiřazené k diskrétnímu alarmu (pokud nějaký existuje) pro tuto proměnnou. .AlarmDscUnAckCount Sleduje celkový počet nepotvrzených diskrétních alarmů aktivních v dané skupině proměnných nebo alarmů. .AlarmEnabled Dotfields (atributy proměnných) diskrétní proměnné pro čtení/zápis, která deaktivuje/aktivuje události a alarmy pro proměnnou a alarmovou skupinu. .AlarmGroup Obsahuje aktuální dotaz používaný pro distribuovaný alarmový objekt zobrazení . .AlarmGroupSel Vrací alarmovou skupinu alarmu. .AlarmHiDisabled Deaktivuje/aktivuje mez Hi (Vysoká) pro analogové proměnné s alarmy. .AlarmHiEnabled Deaktivuje/aktivuje mez Hi (Vysoká) pro analogové proměnné s alarmy. - 256 - Popis Dotfields (atributy proměnných) Poznámka: Stejná jako odpovídající deaktivovaný atribut, ale opačné polarity. .AlarmHiInhibitor Vrací odkaz Alarm Inhibitor Tag (Proměnná potlačení alarmu) pro mez Hi (Vysoká). Používá se pro analogové proměnné s alarmy. Pouze pro čtení, ale lze ji konfigurovat v programu Window Maker. .AlarmHiHiDisabled Deaktivuje/aktivuje mez HiHi (Velmi vysoká) pro analogové proměnné s alarmy. .AlarmHiHiEnabled Deaktivuje/aktivuje mez HiHi (Velmi vysoká) pro analogové proměnné s alarmy. Poznámka: Stejné jako odpovídající deaktivovaný atribut, ale opačné polarity. .AlarmHiHiInhibitor Vrací odkaz Alarm Inhibitor Tag (Proměnná potlačení alarmu) pro mez HiHi. Používá se pro analogové proměnné s alarmy. Pouze pro čtení, ale lze ji konfigurovat v programu Window Maker. .AlarmLimit Vrací limit alarmu. .AlarmLoDisabled Deaktivuje/aktivuje mez Lo (Nízká) pro analogové proměnné s alarmy. .AlarmLoEnabled Deaktivuje/aktivuje mez Lo (Nízká) pro analogové proměnné s alarmy. Poznámka: Stejné jako odpovídající deaktivovaný atribut, ale opačné polarity. .AlarmLoInhibitor Vrací odkaz Alarm Inhibitor Tag (Proměnná potlačení alarmu) pro mez Lo. Používá se pro analogové proměnné s alarmy. Pouze pro čtení, ale lze ji konfigurovat v programu Window Maker. .AlarmLoLoDisabled Deaktivuje/aktivuje mez LoLo (Velmi nízká) pro analogové proměnné s alarmy. .AlarmLoLoEnabled Deaktivuje/aktivuje mez LoLo (Velmi nízká) pro analogové proměnné s alarmy. Poznámka: Stejné jako odpovídající deaktivovaný atribut, ale opačné polarity. .AlarmLoLoInhibitor Vrací odkaz Alarm Inhibitor Tag (Proměnná potlačení alarmu) pro mez LoLo. Používá se pro analogové proměnné s alarmy. Pouze pro čtení, ale lze ji konfigurovat v programu Window Maker. .AlarmMajDevDisabled Deaktivuje/aktivuje mez Major Deviation (Větší odchylka) pro analogové proměnné s alarmy. - 257 - Popis Dotfields (atributy proměnných) .AlarmMajDevEnabled Deaktivuje/aktivuje mez Major Deviation (Větší odchylka) pro analogové proměnné s alarmy. Poznámka: Stejné jako odpovídající deaktivovaný atribut, ale opačné polarity. .AlarmMajDevInhibitor Vrací odkaz Alarm Inhibitor Tag (Proměnná potlačení alarmu) pro mez Major Deviation (Větší odchylka). Používá se pro analogové proměnné s alarmy. Pouze pro čtení, ale lze ji konfigurovat v programu Window Maker. .AlarmMinDevDisabled Deaktivuje/aktivuje mez Minor Deviation (Menší odchylka) pro analogové proměnné s alarmy. .AlarmMinDevEnabled Deaktivuje/aktivuje mez Minor Deviation (Menší odchylka) pro analogové proměnné s alarmy. Poznámka: Stejné jako odpovídající deaktivovaný atribut, ale opačné polarity. .AlarmMinDevInhibitor Vrací odkaz Alarm Inhibitor Tag (Proměnná potlačení alarmu) pro mez Minor Deviation (Menší odchylka). Používá se pro analogové proměnné s alarmy. Pouze pro čtení, ale lze ji konfigurovat v programu Window Maker. .AlarmName Vrací název alarmu. .AlarmOprName Vrací jméno operátora asociované s alarmem. .AlarmOprNode Vrací síťový uzel operátora asociovaný s alarmem. .AlarmPri Vrací hodnotu priority (1-999) alarmu. .AlarmProv Vrací poskytovatele alarmu. .AlarmROC Signalizuje, že existuje alarm typu rychlost změny. .AlarmROCCount Sleduje celkový počet alarmů rychlosti změny aktivních v dané skupině proměnných nebo alarmů. .AlarmROCDisabled Deaktivuje/aktivuje mez Rate-of-Change (Rychlost změny) pro analogové proměnné s alarmy. .AlarmROCEnabled Deaktivuje/aktivuje mez Rate-of-Change (Rychlost změny) pro analogové proměnné s alarmy. Poznámka: Stejné jako odpovídající deaktivovaný atribut, ale opačné polarity. .AlarmROCInhibitor Vrací odkaz proměnné potlačení alarmu pro mez Rateof-Change (Rychlost změny). Používá se pro analogové proměnné s alarmy. Pouze pro čtení, ale lze ji konfigurovat v programu Window Maker. - 258 - Popis Dotfields (atributy proměnných) .Alarm ROCUnAckCount Sleduje celkový počet nepotvrzených alarmů rychlosti změny aktivních v dané skupině proměnných nebo alarmů. .AlarmState Vrací aktuální stav alarmu. .AlarmTime Vrací čas alarmu. .AlarmTotalCount Sleduje celkový počet alarmů aktivních v dané skupině proměnných nebo alarmů. .AlarmType Vrací typ alarmu. .AlarmUnAckCount Sleduje celkový počet nepotvrzených alarmů aktivních v dané skupině proměnných nebo alarmů. .AlarmUserDefNum1 Reálná (plovoucí desetinná tečka) pro čtení/zápis, implicitně 0 a hodnota není nastavena. Používá se pro diskrétní proměnné s alarmy, pro analogové proměnné s alarmy nebo pro alarmové skupiny. Poznámka: Hodnota tohoto atributu je připojena k alarmu, ale POUZE tehdy, když byla hodnota nastavena například pomocí skriptu nebo funkce POKE (modifikace). .AlarmUserDefNum2 Reálná (plovoucí desetinná tečka) pro čtení/zápis, implicitně 0 a hodnota není nastavena. Používá se pro diskrétní proměnné s alarmy, pro analogové proměnné s alarmy nebo pro alarmové skupiny. Poznámka: Hodnota tohoto atributu je připojena k alarmu, ale POUZE tehdy, když byla hodnota nastavena například pomocí skriptu nebo funkce POKE (modifikace). .AlarmUserDefStr Textový řetězec pro čtení/zápis, implicitně „“ a hodnota není nastavena. Používá se pro diskrétní proměnné s alarmy, pro analogové proměnné s alarmy nebo pro alarmové skupiny. Poznámka: Hodnota tohoto atributu je připojena k alarmu, ale POUZE tehdy, když byla hodnota nastavena například pomocí skriptu nebo funkce POKE (modifikace). Poznámka: atributy proměnných .AlarmUserDefNum1, .AlarmUserDefNum2, a AlarmUserDefStr Vám umožňují přiřadit jednu nebo více hodnot, které se mají připojit k zápisu alarmu, když je hlášen. Tyto hodnoty se zapisují do databáze pomocí programu Alarm DB Logger. Existují tři položky, které můžete připojit k alarmu: dvě čísla a řetězec. Implicitně jsou prázdné (nula a ""). Aby se zjednodušilo zadávání uživatelských hodnot, můžete je nastavit v alarmové skupině a také ve specifické proměnné. Například program InBatch může nastavit číslo dávky v proměnné .AlarmUserDefNum1 až na úroveň alarmové skupiny $System což způsobí, že všechny alarmy mají připojené číslo dávky. Jestliže nastavíte .AlarmUserDefNum1 v alarmové skupině, použije se pro všechny alarmy ve skupině a pro všechny její podskupiny. - 259 - Popis Dotfields (atributy proměnných) Můžete také specificky nastavit hodnotu .AlarmUserDefNum1 v proměnné. V tomto případě se použije pouze pro tuto proměnnou a přepíše jakékoli nastavení .AlarmUserDefNum1 v alarmové skupině proměnné. .AlarmValDeadband Dotfields (atributy proměnných) analogové (platná pouze pro celočíselné nebo reálné proměnné) proměnné pro čtení/zápis, která monitorují/ovládají hodnotu pásma necitlivosti alarmu. Toto pole je platné pro alarmové skupiny a také obvyklé proměnné. .AlarmValue Vrací hodnotu alarmu. .AlarmValueCount Sleduje celkový počet hodnotových alarmů aktivních v dané skupině proměnných nebo alarmů. .AlarmValueUnAckCount Sleduje celkový počet nepotvrzených hodnotových alarmů aktivních v dané skupině proměnných nebo alarmů. .ChartLength Dotfields (atributy proměnných) celočíselné proměnné pro čtení/zápis používaná pro ovládání délky času zobrazeného v grafu historického trendu. .ChartLength zobrazuje délku grafu ve vteřinách. .ChartStart Dotfields (atributy proměnných) celočíselné proměnné pro čtení/zápis používaná pro ovládání počátečního času a/nebo posouvání v čase odpovídajícího grafu historického trendu. .ChartStart zobrazuje počet vteřin uplynulých od 12:00 dopoledne, 1.1.1970. .Comment Dotfields (atributy proměnných) textové proměnné pouze pro čtení se používají pro zobrazení pole komentáře proměnné v databázi proměnných. .DevTarget Dotfields (atributy proměnných) analogové (platné pouze pro celočíselné nebo reálné proměnné) proměnné pro čtení/zápis, která monitoruje a/nebo ovládá cíl alarmu menší a větší odchylky. .DisplayMode Dotfields (atributy proměnných) analogové proměnné pro čtení/zápis používaná pro určení metody, která se má použít při zobrazování hodnot na trendu. .EngUnits Dotfields (atributy proměnných) analogové proměnné používaná pro přístup k inženýrským jednotkám analogové proměnné, jak je specifikováno v databázi proměnných. Poznámka: Zápis do těchto hodnot není retentive. .Freeze Čte/zapisuje stav zmrazení distribuovaného alarmového objektu zobrazení. .HiLimit, .HiHiLimit, .LoLimit, .LoLoLimit Dotfields (atributy proměnných) analogové proměnné pro čtení/zápis, která monitorují/ovládají meze hodnotového alarmu. Tyto atributy jsou platné pouze pro celočíselné a reálné proměnné. .HiStatus, .HiHiStatus, .LoStatus, .LoLoStatus Dotfields (atributy proměnných) diskrétní proměnné pouze pro čtení, která určují, zda existuje alarm specifikovaného typu. - 260 - Popis Dotfields (atributy proměnných) .ListChanged Udává, zda existují nějaké nové alarmy nebo aktualizace pro objekt distribuovaného alarmu. .MajorDevPct Dotfields (atributy proměnných) reálné proměnné pro čtení/zápis, která monitorují nebo ovládají vyšší procento odchylky pro kontrolu alarmu. .MajorDevStatus Dotfields (atributy proměnných) diskrétní proměnné pouze pro čtení, která určují, zda existuje pro danou proměnnou alarm větší odchylky. .MaxEU, .MinEU Dotfields (atributy proměnných) celočíselné proměnné pouze pro čtení, která zobrazují maximální a minimální hodnoty proměnné. .MaxRange, .MinRange Dotfields (atributy proměnných) reálné proměnné pro čtení/zápis používaná pro znázornění procenta rozsahu inženýrských jednotek proměnné, který by měl být zobrazen pro každou proměnnou, u nichž se provádí trend. Meze pro .MaxRange a .MinRange jsou v rozsahu od 0 do 100 a .MinRange by měl být vždy menší než .MaxRange. Jestliže je hodnota menší než 0 nebo větší než 100 přiřazena k jednomu z těchto polí, hodnota bude omezena v rozsahu 0 až 100. Pokud .MinRange je větší nebo rovno .MaxRange, trend nezobrazí žádná data. .MaxRaw, .MinRaw Nastavení horní/dolní meze pro načtenou hodnotu z I/O serveru pomocí programu WindowViewer jako klienta. Hodnota dotfields (atributů proměnných) .MaxRaw/.MinRaw proměnné pochází z hodnotového pole Max/Min Raw v databázi proměnných pro specifikovanou proměnnou typu I/O. Jakákoli načtená hodnota, která překročí nebo klesne pod toto nastavení, je omezena touto hodnotou. .MinorDevPct Dotfields (atributy proměnných) reálné proměnné pro čtení/zápis používaná pro monitorování a/nebo ovládání menšího procenta odchylky pro kontrolu alarmu. .MinorDevStatus Dotfields (atributy proměnných) diskrétní proměnné pouze pro čtení používaná pro určení, zda existuje pro danou proměnnou alarm menší odchylky. .Name Dotfields (atributy proměnných) textové proměnné pro čtení/zápis používaná pro zobrazení aktuálního názvu proměnné. Například název proměnné TagID. Dotfields (atributy proměnných) diskrétní proměnné pouze pro čtení, která jsou rovna 1, když neexistují žádné alarmy pro specifikovaný název. Tento atribut je platný pro alarmové skupiny a proměnné. Dotfields (atributy proměnných) textové proměnné pro čtení/zápis používaná pro zobrazení zapnutí zprávy a vypnutí zprávy specifikované v databázi proměnných pro diskrétní proměnnou. .Normal .OffMsg, .OnMsg - 261 - Popis Dotfields (atributy proměnných) .Pen1 - .Pen8 Poznámka: Zápis do těchto hodnot není retentivní. Dotfields (atributy proměnných) proměnné typu TagID používaná pro přiřazení proměnných, které se budou vykreslovat v historickém trendu, pro každé pero zvlášť. Snadnější metoda dynamického přiřazení proměnných k perům je použít historické funkce HTSetPenName a HTGetPenName. Další informace o proměnné TagID najdete v oddílu "Typy proměnných". .Quality .QualityLimit .QualityLimitString .QualityStatus .QualityStatusString .QualitySubstatus .QualitySubstatusString .RawValue .Reference .ReferenceComplete Celočíselná proměnná pouze pro čtení zpřístupňuje uživateli kvalitu proměnné typu I/O, která je poskytována I/O serverem. Dotfields (atributy proměnných) celočíselné proměnné pouze pro čtení používaná pro zobrazení meze kvality I/O hodnoty poskytnuté zdrojem dat, když je I/O spojení platné. Dotfields (atributy proměnných) textové proměnné pouze pro čtení používaná pro zobrazení řetězce meze kvality I/O hodnoty poskytnuté I/O serverem, když je I/O spojení platné. Dotfields (atributy proměnných) celočíselné proměnné pouze pro čtení používaná pro zobrazení stavu kvality I/O hodnoty poskytnuté I/O serverem, když je I/O spojení platné. Dotfields (atributy proměnných) textové proměnné pouze pro čtení používaná pro zobrazení řetězce stavu kvality I/O hodnoty poskytnuté I/O serverem, když je I/O spojení platné. Dotfields (atributy proměnných) celočíselné proměnné pouze pro čtení používaná pro zobrazení substavu kvality I/O hodnoty poskytnuté I/O serverem, když je I/O spojení platné. Dotfields (atributy proměnných) textové proměnné pouze pro čtení používaná pro zobrazení řetězce substavu kvality I/O hodnoty poskytnuté I/O serverem, když je I/O spojení platné. Poznámka: Jestliže se I/O spojení stane neplatné, atributy kvality se automaticky vrátí k původní hodnotě nula. Příznak .ReferenceComplete se přitom také nastaví na nulu. Dotfields (atributy proměnných) jakéhokoli typu (reálný/diskrétní) proměnné, který se používá pro zobrazení aktuální diskrétní nebo analogové I/O hodnoty předtím, než program InTouch provede změnu velikosti. Dotfields (atributy proměnných) proměnné pro čtení/zápis používaná s proměnnými typu I/O pro dynamickou změnu adresy zdroje proměnné. Dotfields (atributy proměnných) diskrétní proměnné, která poskytují potvrzení, že požadovaná položka je - 262 - Popis Dotfields (atributy proměnných) stejná jako v poli .Value. .ROCPct .ROCStatus .ScooterLockLeft .ScooterLockRight .ScooterPosLeft .ScooterPosRight .SuppressRetain .TagID Další informace o atributech proměnných jsou uvedeny v oddíle "Dynamická změna adresování". Dotfields (atributy proměnných) proměnné pro čtení/zápis používaná pro monitorování a/nebo ovládání rychlosti změny kontroly alarmu. Dotfields (atributy proměnných) diskrétní proměnné pouze pro čtení používaná pro určení, zda existuje pro danou proměnnou alarm rychlosti změny. Dotfields (atributy proměnných) diskrétní proměnné pro čtení/zápis. Když hodnota tohoto pole je PRAVDA, PRAVÝ "scooter" se nemůže přesunout na levou stranu levého "scooteru". (0=NEPRAVDA, 1=PRAVDA). Dotfields (atributy proměnných) diskrétní proměnné pro čtení/zápis. Když hodnota tohoto pole je PRAVDA, LEVÝ "scooter" se nemůže přesunout na pravou stranu pravého "scooteru". (0=NEPRAVDA, 1=PRAVDA). Dotfields (atributy proměnných) reálné proměnné pro čtení/zápis, která představují polohu levého "scooteru" (rozsah od 0,0 do 1,0). Dotfields (atributy proměnných) reálné proměnné pro čtení/zápis, která představují polohu pravého "scooteru" (rozsah od 0,0 do 1,0). Čte/zapisuje stav uchování potlačení zobrazení distribuovaného alarmového objektu. Dotfields (atributy proměnných) proměnné TagID pouze pro čtení používaná ve spojení s proměnnými .Pen1-.Pen8 TagID historického trendu pro monitorování a/nebo ovládání proměnné vykreslované daným perem (viz předchozí popis dotfields proměnné "Pen"). - 263 - Následující obrázky znázorňují, jak níže uvedená pole .Time získávají svá data: Dotfields (atributy proměnných) Popis .TimeDate Dotfields (atributy proměnných) reálné celočíselné proměnné používaná pro zobrazení počtu dní, které uplynuly od poskytnutí I/O hodnoty prostřednictvím I/O serveru, když bylo I/O spojení platné. .TimeDateString Dotfields (atributy proměnných) textové proměnné pouze pro čtení používaná pro zobrazení data ve stejném formátu, jako je nastavený v registru systému Windows. Například 10/31/1997, když byla I/O hodnota poskytnuta I/O serverem při platném. .TimeDateTime Dotfields (atributy proměnných) reálné proměnné pouze pro čtení používaná pro zobrazení zlomkového počtu dní, které uplynuly od poskytnutí I/O hodnoty prostřednictvím I/O serveru, když bylo I/O spojení platné. .TimeDay Dotfields (atributy proměnných) celočíselné proměnné pouze pro čtení používaná pro zobrazení dne, kdy byla poskytnuta I/O hodnota prostřednictvím I/O serveru, když je I/O spojení platné (hodnota může být v rozsahu 1-31). .TimeHour Dotfields (atributy proměnných) celočíselné proměnné pouze pro čtení používaná pro zobrazení hodiny dne, kdy byla poskytnuta I/O hodnota prostřednictvím I/O serveru, když bylo I/O spojení platné (hodnota může být v rozsahu 0-23). .TimeMinute Dotfields (atributy proměnných) celočíselné proměnné pouze pro čtení používaná pro zobrazení minuty, kdy byla poskytnuta I/O hodnota prostřednictvím I/O serveru, když bylo I/O spojení platné (hodnota může být v rozsahu 0-59). .TimeMonth Dotfields (atributy proměnných) celočíselné proměnné pouze pro čtení používaná pro zobrazení měsíce, kdy byla poskytnuta I/O hodnota prostřednictvím I/O serveru, když bylo I/O spojení platné (hodnota může být v rozsahu 1-12). .TimeMsec Dotfields (atributy proměnných) celočíselné proměnné pouze pro čtení používaná pro zobrazení času v milisekundách, kdy - 264 - Dotfields (atributy proměnných) Popis byla poskytnuta I/O hodnota prostřednictvím I/O serveru, když bylo I/O spojení platné. .TimeSecond Dotfields (atributy proměnných) celočíselné proměnné pouze pro čtení používaná pro zobrazení času ve vteřinách, kdy byla poskytnuta I/O hodnota prostřednictvím I/O serveru, když bylo I/O spojení platné (hodnota může být v rozsahu 0-59). .TimeTime Dotfields (atributy proměnných) celočíselné proměnné pouze pro čtení používaná pro zobrazení času v milisekundách (od půlnoci), kdy byla poskytnuta I/O hodnota prostřednictvím I/O serveru, když bylo I/O spojení platné. .TimeTimeString Dotfields (atributy proměnných) textové proměnné pouze pro čtení používaná pro zobrazení času a dne I/O hodnoty poskytnuté I/O serverem, když je I/O spojení platné. .TimeYear Dotfields (atributy proměnných) celočíselné proměnné pouze pro čtení používaná pro zobrazení data ve stejném formátu, jako je nastavený v registru systému Windows (například 12:09:45), když I/O hodnota byla poskytnuta I/O serverem při platném spojení. (Tento formát času se nastavuje prostřednictvím ovládacích panelů systému Windows.) .Unack Dotfields (atributy proměnných) diskrétní proměnné pro čtení/zápis používaná pro ovládání stavu nepotvrzení alarmu lokálního alarmu (lokálních alarmů). .UpdateCount Dotfields (atributy proměnných) celočíselné proměnné pouze pro čtení, jejichž hodnota se zvýší, když se dokončí vyhledávání trendu. .UpdateInProgress Dotfields (atributy proměnných) diskrétní proměnné pouze pro čtení, která zobrazují stav vyhledávání historických dat (0 = neprobíhá žádné vyhledávání, 1 = probíhá vyhledávání). .UpdateTrend Dotfields (atributy proměnných) diskrétní proměnné pouze pro zápis, která lze nastavit na hodnotu 1 pro provedení aktualizace grafu historického trendu pomocí všech aktuálních hodnot. Historické trendy se samy automaticky neaktualizují. Musí být provedena změna buď začátku grafu nebo délky grafu atd., aby se v grafu aktualizovaly a zobrazily aktuální hodnoty pro dané proměnné. Použitím těchto atributů pod tlačítkem, skript QuickScript umožní operátorovi aktualizovat graf kdykoli podle potřeby při běhu programu. .Value Dotfields (atributy proměnných) analogové proměnné pro čtení nebo pro čtení/zápis, která zobrazují hodnotu dané proměnné. Některé atributy alarmu jsou asociována s alarmovým objektem, ne s proměnnou. .AlarmClass .AlarmAccess .AlarmDate .AlarmGroupSel .AlarmLimit .AlarmName .AlarmOprName .AlarmOprNode .AlarmPri .AlarmProv .AlarmState .AlarmTime .AlarmType .AlarmValue .Freeze .ListChanged .NumAlarm .PendingUpdates .SuppressRetain - 265 - K těmto atributuům alarmu je přístup pomocí funkce: GetPropertyM(ControlName.Property, MsgTag). Když se tato funkce vykoná při běhu programu, hodnota vlastnosti pro proměnnou ve zvoleném řádku je vložena do proměnné MsgTag. Zvolí-li se několik řádků, hodnota vlastnosti v proměnné MsgTag bude vztažena k prvnímu řádku vícenásobné volby. Adresování bitových polí analogových proměnných Jednotlivé bity v rámci celočíselné proměnné lze adresovat pomocí bitových atributů. Tato pole jsou považována za diskrétní (0/1) a jestliže je do nich zapsáno, analogová proměnná se okamžitě aktualizuje. Bitové atributy můžete použít kdekoli, kde lze použít diskrétní proměnnou. Například ve vstupu/výstupu, skriptech, výrazech atd. .00 .01 .02 . . . .31 Nejnižší platný bit další řádově vyšší platný bit atd. Nejvyšší platný bit v 32-bitovém celém čísle Níže je uveden příklad, jak používat bitová pole ve výrazu: Temperature.08 == 1; Níže je uveden příklad, jak používat bitová pole ve skriptu QuickScript: IF Temperature.29 THEN Temperature.29 =0; ENDIF; - 266 - Utility databáze proměnných Existují dva obslužné programy databáze proměnných - DBDump a DBLoad. Program DBDump se používá pro export databáze proměnných aplikace InTouch jako textový soubor, který lze zobrazit nebo editovat v jiném programu, jako je např. Microsoft Excel. Program DBLoad umožňuje zavést náležitě formátovaný soubor databáze proměnných (vytvořený v jiném programu, jako je např. Excel nebo programem DBDump z jiné aplikace InTouch) do existující aplikace InTouch. Pomocí těchto dvou programů lze databázi (databáze proměnných) kopírovat, modifikovat nebo vyvíjet v oddělených částech a potom spojit do jedné aplikace. Utilitu DBLoad lze také použít jako alternativu k InTouch TemplateMaker pro vytvoření instancí proměnných typu SuperTag. Více informací je uvedeno v oddílu "Vytváření instancí proměnných typu SuperTag". Poznámka: Jak utilita DBDump , tak utilita DBLoad se spouštějí z Application Manager (Správce aplikací) programu InTouch (INTOUCH.EXE). Aplikaci vytvořenou v předchozí verzi programu InTouch musíte tedy zkonvertovat předtím, než lze vyexportovat její databázi proměnných. Více informací o vytváření databázových souborů je uvedeno v oddílu "Vytvoření vstupního souboru databáze". Obslužný program DBDump Získání existující databáze proměnných aplikace programu InTouch ¾ 1. Zavřete programy WindowMaker a WindowViewer, pokud běží. 2. Spusťte program InTouch. Objeví se dialogové okno InTouch Application Manager (Správce aplikací programu InTouch). - 267 - 3. V nabídce File (Soubor) klepněte na DBDump nebo klepněte na nástroj DBDump. Objeví se dialogové okno CSV File to Dump To: (Soubor CSV vyexportovat do:). 4. V poli Name of CSV Dump file (Název CSV souboru) napište název souboru, který končí příponou .csv (Comma Separated Variable – proměnná oddělená čárkou). (Pokud název již existuje, zobrazí se chybová zpráva.) 5. Zvolte Group output by types (Seskupit výstup podle typů) pro seskupení získaných proměnných podle typu proměnné místo v abecedním pořádku podle proměnné (implicitní nastavení). Poznámka: Aby bylo možné získat položky databáze podle skupin, systém musí načíst celý soubor pro každý typ proměnné. Proto trvá získávání dat delší dobu. Když však je výstupní soubor otevřený v aplikaci podporující formát .csv, jako např. Microsoft Excel, rozdělení do skupin podstatně usnadní čtení a editaci. Zástupná proměnná pro každý typ proměnné je zahrnuta do vyexportovaného souboru bez ohledu na to, zda existují nebo neexistují proměnné pro daný typ. - 268 - 6. Klepněte na OK. Informace o databázi ze zvoleného adresáře aplikace se načtou do zadaného souboru. Otevřete-li soubor .csv v programu Microsoft Excel, tento program detekuje čárku jako oddělovač a automaticky oddělí datové záznamy do sloupců. Například: Otevřete-li soubor .csv v Poznámkovém bloku, každý datový záznam je oddělen čárkou. Například: - 269 - Obslužný program DBLoad Načtení/začlenění vstupního databázového souboru do existujícího programu InTouch ¾ 1. Zavřete programy WindowMaker a WindowViewer, pokud běží. 2. Spusťte program InTouch. Objeví se dialogové okno InTouch Application Manager (Správce aplikací programu InTouch). 3. V nabídce File (Soubor) klepněte na DBLoad nebo klepněte na nástroj DBLoad. Objeví se pole s dotazem, zda jste aplikaci zálohovali. Klepněte na Yes(Ano) pro pokračování. Objeví se dialogové okno CSV File to Load From: (Soubor CSV načíst z:). 4. V poli Name of CSV Load file (Název souboru CSV), napište cestu k souboru .csv, který chcete načíst nebo vyhledejte soubor pomocí seznamů Directories (Adresáře) a Drive (Jednotka). (Jakmile je soubor náležitým způsobem zvolen, jeho název se objeví v poli.) 5. Klepněte na OK. Informace o databázi obsažené ve zvoleném souboru začnou přesunovat do zvolené databáze proměnných aplikace. - 270 - Vytvoření vstupního souboru databáze Databázové utility DBDump a DBLoad jsou nástroje, které se používají pro provádění operací dávkového typu v databázi proměnných. Vstupní soubory databáze lze vytvořit v jakémkoli programu, který podporuje formát proměnné oddělené čárkou (.csv). (Vstupní soubor databáze musí být vytvořen ve formátu proměnné oddělené čárkou.) Např. WordPad, Notepad (Poznámkový blok) a Microsoft Excel. Jakmile je vstupní soubor vytvořen, program DBLoad se použije pro načtení/začlenění dat obsažených v souboru do existující databáze aplikace programu InTouch. Můžete vytvořit "šablonu" vstupního souboru databáze vytvořením nové aplikace programu InTouch a potom pomocí programu DBDump přenesením její databáze pro vytvoření správně formátovaného souboru .csv. Tím je zadávání Vašich modifikací snadnější než vytváření vstupního souboru z pracovního souboru. Formát vstupního souboru databáze První řádek vstupního souboru databáze by měl specifikovat pracovní :mode (režim) souboru, když se soubor načítá/začleňuje do aplikace pomocí programu DBLoad. TIP Pokud nespecifikujete režim, použije se :mode=test implicitně Ask. Více informací o platných klíčových slovech režimu je uvedeno v oddílu "Pracovní režimy vstupního souboru databáze". Všechny datové záznamy musí začínat platným klíčovým slovem pro :type (typ) proměnné a následně platným klíčovým slovem pro každý datový záznam (oddělený čárkami): :mode=test :IOMsg,Group,Comment,Logged,Event Logged,Event Logging Priority, . . . Pro každý typ proměnné a datový záznam existuje platné klíčové slovo. Více informací o platných typech proměnných a vstupech datových záznamů je uvedeno v oddílu "Typ a vstupy klíčových slov". Potom se zadá aktuální proměnná a následně se pro každý datový záznam uvedou hodnoty (oddělené čárkami): :mode=test :IOMsg,Group,Comment,Logged,EventLogged,EventLoggingPriority, . . . Ingredient_1,$System,"",No,No,999, . . . V následujícím příkladu IOMsg = Ingredient_1, Group = $System, Logged = No, EventLogged = No a EventLoggingPriority = 999. Datový záznam Comment (Komentář) bude prázdný, neboť bylo zadáno "". Před režimem a klíčovým slovem typu musí být uvedena dvojtečka (:). Aby řádek mohl pokračovat, vloží se na konci řádku zpětné lomítko (\). Komentáře se mohou vložit tak, že se před ně uvede středník (;). - 271 - Pracovní režimy vstupního souboru databáze V následujícím textu jsou uvedena platná klíčová slova pracovních režimů a akce, která nastane v každém režimu, když se během načítání objeví stejná proměnná: :MODE=REPLACE :MODE=UPDATE :MODE=ASK :MODE=IGNORE :MODE=TERMINATE :MODE=TEST :MODE=REPLACE Vymazat existující vstup a nahradit novým vstupem. :MODE=UPDATE Přepsat existující definici pouze poli, která jsou explicitně definována ve vstupním souboru. Pole jsou explicitně považována jako definovaná, jestliže je pole v záznamu a je zadáno Vámi nebo je nastaveno mechanismem ":KEYWORD=value" (":KLÍČOVÉ SLOVO=hodnota"). Pokud pole není specifikováno v záznamu a klíčové slovo bylo vynulováno prostřednictvím příkazu ":KEYWORD=" (":KLÍČOVÉ SLOVO="), aktuální hodnota pole se neaktualizuje. Následně je uveden příklad, který uvádí, co nastane, když se vstupní soubor v režimu aktualizace načte/začlení do databáze aplikace prostřednictvím utility DBLoad: :Mode=update :Group=Group1 :IODisc,Group,DConversion Tagname1,Group2, ; Group (skupina) Tagname1 aktualizována na Group2 Tagname2,, ; Group (skupina) Tagname2 aktualizována na Group1 a DConversion ponechána Tagname3,,Reverse ; Group (skupina) Tagname3 aktualizována na Group1 a DConversion na "Reverse" ("Obrácená") ; následující řádek "vrátí" pole Group (skupina) na jeho implicitní hodnotu :Group= ; Datové pole "Group" ("Skupina") se vrátí na jeho implicitní hodnotu Tagname4,, ; Tagname4 bude ponecháno samotné V souboru .csv jsou dovoleny komentáře. Musí být identifikovány úvodním středníkem (;). - 272 - Poznámka: Typy proměnných musí být kompatibilní, jestliže se typ mění nebo se používá. Například existující proměnnou historického trendu nelze změnit na celočíselnou I/O proměnnou, jestliže se proměnná v aplikaci používá. Také proměnnou nelze změnit na ReadOnly=yes (Pouze pro čtení=ano), jestliže se proměnná používá v aplikaci ve vstupním propojení. Z důvodů těchto omezení byste měli aktualizovat počty použitých proměnných cílové aplikace před spuštěním programu DBLoad. :MODE=ASK Změnit proměnnou vstupu nebo existujícího zápisu na Vámi specifikovanou proměnnou a potom vložit novou definici do databáze proměnných. Poznámka: Toto je implicitní vstupní režim, pokud není žádný režim specifikován. Pokaždé, když program DBLoad nalezne stejnou proměnnou, objeví se dialogové okno s dotazem, zda se existující proměnná má nahradit. Když je pracovní režim nastaven na ASK a proměnná ve vstupním souboru je stejná jako proměnná v databázi proměnných cílové aplikace, objeví se dialogové okno Duplicate Name (Duplikovaný název): Zvolte nějakou možnost volby, potom klepněte na OK. Po dokončení načtení se objeví textové okno potvrzení. Možnost volby Popis Change Name to (Změnit název na) Nahradí název dané proměnné novým názvem zapsaným v poli. Ignore this entry (Ignorovat zápis) Ignoruje zobrazenou proměnnou a pokračuje zpracování. Replace existing with new information (Nahradit existující informaci za novou) Nahradí existující záznam proměnné novým záznamem. Update existing with new information (Aktualizovat existující informaci za novou) Přepíše existující záznam proměnné pouze poli, která jsou explicitně definována ve vstupním souboru. - 273 - Přerušit načítání Stornuje funkci načítání. Poznámka: Pokud dojde k problému, který způsobí selhání načtení, objeví se okno se zprávou. Chybové zprávy se zapisují do tzv. Loggeru. :MODE=IGNORE Ignorovat nový záznam a pokračovat ve zpracování. :MODE=TERMINATE Ukončit zpracování. Neaktualizovat cílový soubor. :MODE=TEST V tomto režimu se bude program DBLoad chovat, jako by byl v režimu nahrazení, ale nebude modifikovat databázi. Nalezené chyby se zapíší tzv. Loggerem (uložené chyby se prohlíží v utilitě Log Viewer) a DBLoad bude pokračovat s načítáním. Toto je účelné pro ověření syntaxe vstupního souboru před jeho skutečným zpracováním. Poznámka: Jakmile je vstupní soubor nastaven do testovacího režimu, všechny ostatní režimy jsou ignorovány. Můžete zadat :mode=test jako první řádek souboru a nemusíte přemýšlet o jiných změnách režimu v souboru. Více informací o pracovních režimech je uvedeno v oddílu "Vytvoření vstupního souboru databáze". - 274 - K A P I T O L A 7 Vytváření animačních propojení Vytvořený grafický objekt nebo symbol, můžete "oživit" animováním. Přiřazením animačních propojení, můžete nastavit provádění změn objektu nebo symbolu, které budou odpovídat změně hodnoty proměnné nebo výrazu. Můžete například vytvořit symbol čerpadla, který je červený, když je čerpadlo vypnuté, a zelený, když je čerpadlo zapnuté. Můžete také vytvořit dotykové tlačítko symbolu čerpadla, na které operátor může klepnout myší nebo se dotknout (v případě použití dotykové obrazovky) pro zapnutí a vypnutí čerpadla. Můžete také použít tyto a mnoho jiných speciálních efektů definováním animačních propojení pro Vaše objekty nebo symboly. Program InTouch podporuje dva základní typy propojení: dotyková propojení a propojení zobrazení. Dotyková propojení umožňují operátorovi zadat informace do systému. Propojení zobrazení umožňují zobrazit informace k operátorovi. Příklady takových dotykových propojení jsou posuvníky hodnot nebo tlačítka. Příkladem propojení zobrazení jsou změna barevné výplně, umístění nebo blikání. Tato kapitola popisuje postupy, které použijete pro vytváření každého typu animačního propojení. Obsah • Společné vlastnosti animačních propojení • Vytváření dotykových propojení • Vytváření dotykových propojení vstupu uživatele • Vytváření propojení zobrazení • Vytváření propojení zobrazení hodnoty - 275 - Společné vlastnosti animačních propojení Mnoho animačních propojení sdílejí následující společné ovládací prvky: • Dialogové okno informující o typu objektu • Společná barevná paleta • Rychlý přístup k Tag Browser (prohlížeči proměnných) • Rychlý přístup k atributům proměnných (.Fields) • Podpora klávesových zkratek • Podpora klepnutí pravého tlačítka myši ve vstupních polích pro zadání Tagname (proměnná) nebo Expression (výraz) (zobrazuje nabídku s příkazy, které můžete použít pro vybraný text) Dialogové okno typu objektu Dialogové okno Object type (typ objektu) se objeví v horní části obrazovky nad dialogovým oknem zobrazujícím volby propojení. Jedná se o dialogové okno záhlaví, které je společné všem vytvořeným propojením. Zobrazuje popis typu objektu, který jste zvolili pro připojení animačního propojení. Například Button (Tlačítko). Pokud bylo připojeno k objektu několik propojení, můžete klepnout na Prev Link (Předchozí propojení) a Next Link (Následující propojení) pro rychlé listování vpřed a zpět v dialogových oknech propojení pro každé propojení připojené k objektu. TIP Propojení jsou uloženy v pořadí, ve kterém byly původně připojeny k objektu. - 276 - Dialogové okno výběru animačních propojení Pro Vaše objekty nebo symboly můžete definovat několik propojení. Kombinováním různých propojení můžete vytvořit téměř jakýkoli představitelný animační obrazovkový efekt. U objektů můžete provádět změnu barvy, velikosti, umístění, viditelnosti, úrovně výplně atd. Přiřazení klávesových zkratek Pro aktivaci některých animačních propojení můžete přiřadit určitou klávesu na klávesnici. Klávesová zkratka je funkční jen tehdy, když objekt s propojením je viditelný nebo zvolený. Pokud má objekt nastavenu viditelnost nebo deaktivační propojení, klávesová zkratka není aktivní, když je objekt neviditelný nebo deaktivovaný. Stejnou klávesu můžete definovat v několika oknech. Bude však aktivní definice v naposled otevřeném okně. V případě překrývajících oken bude klávesa aktivní v okně umístěném nahoře. Poznámka: Pokud je jakýkoli objekt nebo tlačítko akce v aktivním okně přiřazen ke stejné klávese používané pro Key Action Script (Skript akce klávesy), propojení klávesové zkratky ke klávese v aktivním okně bude mít přednost před prováděním Key Action Script (Skriptu akce klávesy). Více informací o skriptech akce klávesy je uvedeno v kapitole 8, "Vytváření skriptů QuickScript v programu InTouch". - 277 - Animační propojení, která podporují klávesové zkratky, zobrazí skupinu Key Equivalent (Klávesová zkratka) ve svých dialogových oknech propojení. Například: Poznámka: Propojení kláves s přímou volbou zobrazí pouze funkční klávesy 1-16. Pokud používáte uživatelskou klávesnici, která má více než 16 funkčních kláves, budete potřebovat získat od výrobce ovladač zařízení, který Vám umožní přistoupit rozšířené funkční klávesy ve Vašem systému. ¾ Přiřazení klávesy k propojení 1. Zvolte klávesu Ctrl a/nebo Shift, pokud chcete, aby operátor držel stisknutou jednu nebo obě tyto klávesy, když stiskne klávesovou zkratku. 2. Klepněte na Key (Klávesa). Objeví se dialogové okno Choose key (Zvolit klávesu). 3. Klepněte na klávesu, kterou chcete přiřadit k propojení. Dialogové okno se zavře a objeví se znovu dialogové okno propojení zobrazující název zvolené klávesy vedle tlačítka Key (Klávesa). - 278 - Použití propojení barvy Barvu můžete použít v dynamických vlastnostech čar, pravoúhelníků, zaoblených pravoúhelníků, elips, lomených čar, polygonů a textu. Pokud vytvoříte propojení barvy pro čáry, výplň nebo textové objekty, použijete barevnou paletu pro zvolení barev, které chcete propojit s hodnotou proměnné, alarmového stavu proměnné atd. Pro propojení barev čar a textu musíte použít plnou barvu. Můžete zvolit smíšenou barvu, program WindowMaker zvolí implicitně nejbližší plnou barvu. Můžete vytvořit uživatelské barevné palety a zavést je do standardní barevné palety programu WindowMaker. Když připojíte propojení barvy k nějakému objektu nebo symbolu a klepnete na barevné pole v dialogovém okně propojení, objeví se barevná paleta. Klepněte na barvu, kterou chcete použít pro propojení. Barevná paleta se automaticky zavře a zvolená barva se objeví v barevném poli dialogovém okně podrobností propojení. Více informací o přizpůsobení barevné palety je uvedeno v kapitole 1, "Prvky programu WindowMaker". Přístup k funkci Tag Browser (Prohlížeč proměnných) Všechny proměnné, které jsou definovány ve Vaší aplikaci při vytváření animačních propojení, můžete rychle zobrazit použitím funkce Tag Browser (Prohlížeč proměnných). Pokud zvolíte proměnnou, kterou chcete přiřadit k Vašemu propojení z prohlížeče proměnných, automaticky se vloží do pole Tagname (Proměnná) nebo Expression (Výraz). ¾ Přístup k funkci Tag Browser (Prohlížeč proměnných) 1. Proveďte dvojité klepnutí na jakékoli vstupní pole animačního propojení Tagname (Proměnná) nebo Expression (Výraz). Objeví se funkce Tag Browser (Prohlížeč proměnných). 2. Klepněte na nástroj zdrojů proměnných: pro zobrazení pole zobrazení stromu všech definovaných - 279 - TIP Pokud nepoužíváte režim zobrazení stromu, klepněte na šipku Tag Source (Zdroj proměnných) a zvolte název zdroje dat, který chcete zobrazit v seznamu. Prohlížeč proměnných se obnoví a zobrazí se zvolené proměnné zdroje proměnných. 3. Zvolte proměnnou, kterou chcete použít pro propojení, potom klepněte na OK nebo proveďte dvojité klepnutí na proměnnou pro její současné zvolení, uzavření Tag Browseru (prohlížeč proměnných) a vložení ji do pole Tagname (Proměnná) nebo Expression (Výraz). TIP Aby bylo možné použít .field (atribut proměnné) se zvolenou proměnnou, klepněte na šipku Dot Field a zvolte .field, které chcete použít v seznamu, a potom klepněte na OK. Pro zobrazení definice databáze proměnné napište proměnnou do pole Tagname (Proměnná) nebo Expression (Výraz), potom na ni dvakrát klepněte. Objeví se dialogové okno Tagname Dictionary (Databáze proměnných) zobrazující definici proměnné. Více informací o funkci Tag Browser (Prohlížeč proměnných) je uvedeno v kapitole 6 "Tagname Dictionary (Databáze proměnných)". - 280 - Přístup k Dotfields (atributům) proměnných Existují dvě metody, které můžete použít pro přístup k Dotfields (atributy) proměnné ze vstupního pole animačního propojení Tagname (Proměnná) nebo Expression (Výraz). Tyto dvě metody jsou popsány níže. ¾ Přístup k Dotfields (atributům) proměnné pomocí funkce Tag Browser (Prohlížeč proměnných) 1. Klepněte dvakrát na prázdné vstupní pole Tagname (Proměnná) nebo Expression (Výraz). Objeví se funkce Tag Browser (Prohlížeč proměnných) zobrazující proměnné definované pro aktuální zdroj proměnných: 2. Klepněte na šipku vedle Dot Field (atribut) pro otevření seznamu atributů, které můžete asociovat s typem aktuálně zvolené proměnné. Implicitně se na počátku zobrazí <none> (<žádné>) pro všechny typy proměnných. 3. Klepněte na atribut, který chcete připojit ke zvolené proměnné. Poznámka: Ne každý typ proměnné má stejná dotfields (atributy) proměnné. Například proměnná typu Discrete (Diskrétní) má .OnMessage, zatímco analogová proměnná nemá. Pokud zvolíte typ proměnné Discrete (Diskrétní) a přiřadíte k ní .OnMessage a potom zvolíte jinou proměnnou typu Discrete (Diskrétní), zobrazený seznam bodových polí se nezmění. Když však zvolíte jiný typ proměnné v kontrolním seznamu, například analogovou proměnnou, zobrazený atribut přejde zpět na <none> (<žádné>). Více informací o aplikaci Tag Browser (Prohlížeč proměnných) je uvedeno v kapitole 6 - Databáze proměnných. Další informace o dotfields (atributech) proměnné najdete v on-line příručce InTouch Reference Guide. - 281 - ¾ Přístup k .fields (.polím) proměnné pomocí dialogového okna Choose field name (Vybrat název pole) 1. Napište do kteréhokoli vstupního pole Tagname (Proměnná) nebo Expression (Výraz) proměnnou plus tečku (proměnná.) a potom klepněte dvakrát na pravé straně tečky, nebo napište pouze tečku a potom klepněte dvakrát na pravé straně tečky. Objeví se dialogové okno Choose field name (Vybrat název pole) zobrazující všechny atributy proměnné: 2. Zvolte dotfield (atribut), který chcete použít. Dialogové okno se zavře a zvolené bodové pole se automaticky vloží do vstupního pole Tagname (Proměnná) nebo Expression (Výraz). Animování objektů ¾ Animování objektu nebo symbolu 1. Vytvořte a zvolte objekt (čáru, tvar s výplní, text, tlačítko nebo symbol), který chcete animovat. 2. V nabídce Special (Speciální) klepněte na Animation Links (Animační propojení) nebo proveďte na objekt. Objeví se dialogové okno obsahující všechna animační propojení. TIP Můžete také klepnout pravým tlačítkem myši na objekt a potom klepněte na Animation Links (Animační propojení). - 282 - 3. Klepněte na tlačítko propojení, které chcete použít pro připojení zvoleného textu. TIP Pokud propojení nelze použít pro zvolený objekt, jeho tlačítko nebude aktivní. TIP Klepnutí na zaškrtávací políčko pouze zvolí propojení. Klepnutím na tlačítko názvu propojení se zvolí propojení a otevře se jeho dialogové okno s definicí parametrů propojení. Zaškrtávací políčko se zvolí automaticky, když klepnete na tlačítko názvu propojení a nastavíte parametry propojení. Jestliže však vymažete zaškrtávací políčko propojení, nastavené parametry propojení se ze zvoleného objektu odstraní. 4. Zadejte parametry definice propojení a potom klepněte na OK. Znovu se objeví dialogové okno Link Selection (Volba propojení) a v případě potřeby můžete vytvořit jiné propojení pro objekt. 5. Klepněte na OK pro přijetí všech propojení objektu a zavřete dialogové okno. TIP Když vytváříte animační propojení, proměnná, kterou napíšete do pole proměnné nebo výrazu animačního propojení, musí být definovaná v databázi proměnných předtím, než lze k ní propojení přiřadit. Pokud není proměnná definovaná, objeví se okno s dotazem, zda chcete proměnnou definovat nyní. Když klepnete na Yes (Ano), objeví se databáze proměnných a Vy můžete proměnnou definovat. - 283 - Vytváření dotykových propojení Touch Links (Dotyková propojení) můžete použít pro objekty nebo symboly, které chcete, aby byly při běhu programu "citlivé na dotyk". Umožňují operátorovi zadávat data do systému. Operátor může například zapnout nebo vypnout ventil, vložit nový parametr pro alarmovou hodnotu, provést komplexní logický skript nebo se přihlásit použitím textových řetězců atd. Dotyková propojení se snadno identifikují při běhu programu z důvodu "rámu" obklopujícího dotykově citlivý objekt, když přes něj přecházíte kurzorem nebo stisknete klávesu TAB pro přesun objektu k objektu. Pokud objekt nebo symbol dotykového propojení obsahuje textové objekty, které jsou umístěny na sobě, horní textový objekt se použije pro zobrazení hodnoty dat. Operátor aktivuje dotykově citlivé tlačítko klepnutím na něj, dotykem objektu (při použití dotykové obrazovky), stisknutí přiřazené klávesové zkratky nebo stisknutím klávesy Enter, když je objekt "orámovaný". Existuje devět typů dotykových propojení, které můžete vytvořit: Dotyková propojení Typy User Inputs (vstupy uživatele) Discrete (diskrétní), Analog (analogové),String (textové) Sliders (posuvníky) Vertical (Svislé), Horizontal (vodorovné) Touch pushbuttons (dotyková tlačítka) Discrete Value (diskrétní hodnota), Action (akce), Show Window (zobrazit okno), Hide Window (skrýt okno) Poznámka: Jestliže objekt nebo symbol používaný pro tato propojení (s výjimkou tlačítek 3D) obsahuje textové pole, použijí se všechny atributy aktuálně nastavené pro text, (zarovnání, styl, typ písma atd.), když se textový objekt zobrazí v programu WindowViewer. Když se používá textové pole pro zadání hodnoty, zobrazí se také výstupní hodnota, pokud není v dialogovém okně parametrů propojení příslušné proměnné aktivována možnost volby Input Only (Pouze vstup). Následující oddíly popisují, jak lze vytvořit jednotlivé typy dotykových propojení. - 284 - Vytváření dotykových propojení vstupu uživatele Dotyková propojení vstupu uživatele použijete při vytváření dotykově citlivých objektů, které umožňují vstup do systému. Například tlačítka pro změnu diskrétních stavů, analogových hodnot nebo bezpečnostních přihlášení. Existují tři typy dotykových propojení vstupu uživatele: Vstup uživatele Popis Discrete (diskrétní) Používá se pro ovládání hodnoty diskrétní proměnné. Když je toto propojení aktivováno, objeví se dialogové okno s výzvou, aby operátor provedl volbu. Analog (analogový) Používá se pro vkládání hodnoty analogové (celočíselné nebo reálné) proměnné. Když se propojení aktivuje, objeví se vstupní pole a hodnota může být zadána ze standardní klávesnice nebo volitelně z klávesnice na obrazovce. String (Text) Používaný pro vytvoření objektu, do kterého se může vložit textová zpráva. Poznámka: Při běhu programu, když je propojení aktivováno, objeví se vstupní pole pro zadání hodnoty nebo volitelně klávesnice na obrazovce. ¾ Vytvoření propojení diskrétního vstupu 1. Dvojitě klepněte na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP 2. Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). V oddílu User Inputs (Vstupy uživatele) klepněte na Discrete (Diskrétní). Objeví se dialogové okno Input -> Discrete Tagname (Vstup -> Diskrétní proměnná). 3. V poli Tagname (Proměnná) napište proměnnou diskrétního typu. TIP 4. Klepněte pravým tlačítkem myši na pole Tagname (Proměnná) pro přístup k příkazům, které můžete použít pro zvolený text. Klepněte na Key (Klávesa), pokud chcete přiřadit klávesovou zkratku k propojení. Více informací o přiřazování kláves je uvedeno v oddílu "Přiřazování klávesových zkratek". - 285 - 5. V poli Msg to User (Zpráva pro uživatele) napište zprávu, která se má objevit ve vstupním dialogovém okně, když se aktivuje propojení vstupu. 6. V polích Set Prompt (Výzva k nastavení) a Reset Prompt (Výzva k vynulování) napište zprávu, kterou chcete zobrazit na tlačítkách, na které operátor klepne ve vstupním dialogovém okně pro zapnutí a vypnutí diskrétní hodnoty. 7. V polích On Message (Zpráva při zapnutí) a Off Message (Zpráva při vypnutí) napište zprávy, které chcete, aby se objevily v textovém poli (pokud nějaké existuje) propojené s objektem, když je objekt zapnutý nebo vypnutý. 8. Zvolte Input Only (Pouze vstup), pokud chcete zabránit zobrazení vstupu v textovém poli propojeném s objektem. (Tato možnost volby se používá jen pro objekt, který má textové pole propojené s objektem.) 9. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. ¾ Vytvoření propojení analogového vstupu 1. Dvojitě klepněte na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP 2. Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). V oddílu User Inputs (Vstupy uživatele) klepněte na Analog (Analogové). Objeví se dialogové okno Input -> Analog Tagname (Vstup -> Analogová proměnná). Poznámka: Používá-li se pro toto propojení textové pole, musí být náležitým způsobem formátováno, aby se správně zobrazil výstup analogové (celočíselné nebo reálné) hodnoty. Více informací o formátování textových polí je uvedeno v kapitole 2, "Použití programu WindowMaker". 3. V poli Tagname (Proměnná) napište proměnnou analogového (celočíselného nebo reálného) typu. TIP Klepněte pravým tlačítkem myši na pole Tagname (Proměnná) pro přístup k příkazům, které můžete použít pro zvolený text. - 286 - 4. Pro přiřazení klávesy k propojení klepněte na Key (Klávesa). Více informací o přiřazování kláves je uvedeno v oddílu "Přiřazování klávesových zkratek". 5. Jestliže zobrazíte volitelnou klávesnici, když je toto propojení aktivováno, napište v poli Msg to User (Zpráva pro uživatele) zprávu s výzvou, která se má objevit v klávesnici. 6. Chcete-li pro zadání nové hodnoty řetězce zobrazit číselnou klávesnici na obrazovce, zvolte Yes (Ano). 7. V poli Min Value (Minimální hodnota) zapište minimální vstupní hodnotu proměnné. 8. V poli Max Value (Maximální hodnota) zapište maximální vstupní hodnotu proměnné. 9. Zvolte Input Only (Pouze výstup), pokud chcete zabránit zobrazení vstupu v textovém poli přiřazeného k objektu. (Tato možnost volby se používá jen pro objekt, který má textové pole přiřazené k objektu.) 10. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. ¾ Vytvoření propojení textového vstupu 1. Dvojitě klepněte na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP 2. Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). V oddílu User Inputs (vstupy uživatele) klepněte na String (Text). Objeví se dialogové okno Input -> String Tagname (Vstup -> Textová proměnná). 3. V poli Tagname (Proměnná) napište proměnnou zprávového typu. TIP 4. Klepněte pravým tlačítkem myši na pole Tagname (Proměnná) pro přístup k příkazům, které můžete použít pro zvolený text. Klepněte na Key (Klávesa), pokud chcete přiřadit klávesovou zkratku k propojení. - 287 - Více informací o přiřazování kláves je uvedeno v oddílu "Přiřazování klávesových zkratek". 5. Jestliže zobrazíte volitelnou klávesnici, když je toto propojení aktivováno, napište v poli Msg to User (Zpráva pro uživatele) zprávu s výzvou, která se má objevit v klávesnici. 6. Pokud chcete, aby se vstupní řetězec objevil na obrazovce, když je napsaný, zvolte Yes (Ano) pro možnost volby Echo Characters? (Odezva znaků?). Pokud se jedná o citlivá data (například heslo) a neměla by být viditelná na obrazovce, zvolte No (Ne). 7. Chcete-li pro zadání nové hodnoty řetězce zobrazit klávesnici na obrazovce, zvolte Yes (Ano) pro možnost volby Keypad? (Klávesnice). 8. Zvolte Input Only (Pouze výstup), pokud chcete zabránit zobrazení vstupu v textovém poli přiřazeného k objektu. (Tato možnost volby se používá jen pro objekt, který má textové pole přiřazené k objektu. ) Poznámka: Když se program WindowViewer spustí poprvé, textové pole zobrazí text, který jste napsali v poli Initial Value (Počáteční hodnota), když definujete proměnnou propojenou s objektem. 9. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. Vytváření dotykového propojení pro posuvník Dotyková propojení pro posuvník (slider) použijete pro vytváření objektů nebo symbolů, které lze přesunovat po okně pomocí myši nebo pomocí jiného ukazovacího zařízení, jako je třeba prst na dotykové obrazovce. Jakmile se objekt nebo symbol přesune, změní hodnotu proměnné propojené k tomuto objektu. Posuvník poskytuje schopnost vytvořit na obrazovce prvek pro nastavení hodnot v systému. Objekt může mít dotykové propojení typu posuvník směrem vodorovným nebo svislým nebo oběma. V případě použití obou typů propojení na jediném objektu lze měnit současně hodnotu dvou analogových proměnných. Poznámka: Propojení typu posuvník ve vodorovném i svislém směru se vytvářejí stejným způsobem. Tento postup popisuje propojení Horizontal Slider (VodorovnýPosuvník.) ¾ Vytvoření propojení slider (posuvník) ve vodorovném (nebo svislém) směru 1. Dvojitě klepněte na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). V oddílu Slider (Posuvník) klepněte na Horizontal (Vodorovný). Objeví se dialogové okno Horizontal Slider (Vodorovný posuvník). TIP 2. - 288 - 3. V poli Tagname (Proměnná) napište proměnnou analogového (celočíselného nebo reálného) typu. TIP Klepněte pravým tlačítkem myši na pole Tagname (Proměnná) pro přístup k příkazům, které můžete použít pro zvolený text. 4. V poli At Left End (Na levém konci) napište hodnotu proměnné, kdy je posuvník v poloze nejdále vlevo. 5. V poli At Right End (Na pravém konci) napište hodnotu proměnné, kdy je posuvník v poloze nejdále vpravo. 6. V poli To Left (Doleva) napište počet pixelů, o které se může posuvník přesunout doleva. TIP 7. V poloze nejdále vlevo bude hodnota proměnné rovna hodnotě zadané v poli At Left End (Na levém konci). V poli To Right (Doprava) napište počet pixelů, o které se může posuvník přesunout doprava. TIP V poloze nejdále vpravo bude hodnota proměnné rovna hodnotě zadané v poli At Right End (Na pravém konci). 8. Zvolte Reference Location (Výchozí umístění objektu) na objektu, který udává, jakým směrem se bude posuvník pohybovat. 9. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. - 289 - Vytváření propojení dotykově citlivých tlačítek Propojení dotykově citlivých tlačítek (Touch Pushbutons Touch Links) použijete pro vytvoření propojení objektu, která okamžitě provádějí operaci, když na ně klepnete myší nebo se jich dotknete (v případě, že se používá dotyková obrazovka). Tyto operace mohou být provedení Discrete Value Changes (Změny diskrétní hodnoty), Action Script (Skript akce), příkazy Show Window (Zobrazit okno) nebo Hide Window (Skrýt okno). Existují čtyři typy propojení dotykově citlivých tlačítek: Touch Pushbutons (Dotykově citlivá tlačítka) Popis Discrete Value (Diskrétní hodnota) Používaná pro vytvoření jakéhokoli objektu nebo symbolu jako tlačítka, které ovládá stav diskrétní proměnné. Akce tlačítka mohou být typu set (nastavení), reset (vynulování), toggle (přepnutí), direct (nastavení po dobu aktivace) a reverse (vynulování během aktivace). Action Dovolí, aby jakýkoli objekt, symbol nebo tlačítko měl až tři různé skripty akcí s ním propojené; On Down (Při stisknutí), While Down (Ve stisknuté poloze) a On Up (Při uvolnění). (Akce) Skripty akcí lze použít pro nastavené proměnné na specifické hodnoty, pro zobrazení a/nebo skrytí oken, pro spuštění a ovládání jiných aplikací, provádění funkcí atd. ¾ Show Window (Zobrazit okno) Používá se pro vytvoření objektu nebo symbolu jako tlačítka, které otvírá jedno nebo více oken, když na něj klepnete nebo se jej dotknete (na dotykové obrazovce). Hide Window (Skrýt okno) Používá se pro vytvoření objektu nebo symbolu jako tlačítka, které zavírá jedno nebo více oken, když na něj klepnete nebo se jej dotknete na (dotykové obrazovce). Vytvoření propojení dotykově citlivého tlačítka pro diskrétní hodnoty 1. Dvojitě klepněte na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP 2. Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). V oddílu Touch Pushbutton (Dotykově citlivé tlačítko) klepněte na Discrete Value (Diskrétní hodnota). Objeví se dialogové okno Pushbutton -> Discrete Value (Tlačítko -> Diskrétní hodnota). - 290 - 3. V poli Tagname (Proměnná) napište proměnnou diskrétního typu. TIP Klepněte pravým tlačítkem myši na pole Tagname (Proměnná) pro přístup k příkazům, které můžete použít pro zvolený text. 4. Klepněte na Key (Klávesa), pokud chcete přiřadit klávesovou zkratku k propojení. 5. Více informací o přiřazování kláves je uvedeno v oddílu "Přiřazování klávesy k animačnímu propojení". 6. Zvolte možnost volby Action (Akce), kterou chcete použít pro následující tlačítka: Akce Popis Direct (Nastavení po dobu aktivace) Nastaví hodnotu rovnou 1 (pravdivý, zapnuto, ano), jakmile se tlačítko stiskne a drží stisknuté. Hodnota se automaticky vrátí na 0 (nepravdivý, vypnuto, ne), když se tlačítko uvolní. Reverse (Vynulování po dobu aktivace) Nastaví hodnotu rovnou 0 (nepravdivý, vypnuto, ne), když se tlačítko stiskne a drží stisknuté. Hodnota se automaticky vrátí na 1 (pravdivý, zapnuto, ano), když se tlačítko uvolní. Toggle (Přepnutí) Obrátí stav diskrétní proměnné, když se tlačítko stiskne. Jestliže je proměnná například rovna 1 a stiskne se tlačítko, hodnota se nastaví na 0 a obráceně. Reset (Nulování) Nastaví hodnotu na 0 (nepravdivý, vypnuto, ne), když je tlačítko stisknuté. Set (Nastavení) Nastaví hodnotu na 1 (pravdivý, zapnuto, ano), když je tlačítko stisknuté. 7. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. ¾ Vytvoření propojení akce u dotykově citlivého tlačítka 1. Dvojitě klepněte na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). 2. V oddílu Touch Pushbutton (Dotykově citlivé tlačítko) klepněte na Action (Akce). Zobrazí se editor InTouch -> Action Script (InTouch -> Skript akce). - 291 - Více informací o psaní skriptů QuickScript je uvedeno v kapitole 8, "Vytváření skriptů QuickScript v programu InTouch". 3. Klepněte na šipku Condition Type (Typ podmínky) a zvolte typ skriptu, který chcete použít pro objekt. Pro stejnou klávesu můžete použít všechny tři typy skriptů: On Key Down (Při stisknutí klávesy) Provede skript jednou, když se klávesa poprvé stiskne. While Down (Ve stisknuté poloze) Provádí skript nepřetržitě po dobu, kdy se klávesa drží stisknutá. On Key Up (Při uvolnění klávesy) Provede skript jednou, když se klávesa uvolní. TIP Skript While Down (Ve stisknuté poloze) se začne provádět po uplynutí určitého počtu milisekund. Abyste dosáhli okamžitého provedení, vytvořte stejný skript On Key Down (Při stisknutí klávesy). Poznámka: Pokud je jakýkoli objekt nebo tlačítko akce v aktivním okně přiřazen ke stejné klávese používané pro Key Script (Klávesový skript), propojení klávesové zkratky ke klávese v aktivním okně bude mít přednost před prováděním Key Script (Klávesového skriptu). Více informací o skriptech je uvedeno v kapitole 8, "Vytváření skriptů QuickScript v programu InTouch". 4. Klepněte v okně editoru skriptů a napište skript, který chcete, aby se provedl, když se objekt aktivuje. - 292 - 5. Klepněte na OK pro připojení skriptu k objektu a vraťte se do dialogového okna animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. ¾ Vytvoření propojení dotykově citlivého tlačítka pro zobrazení (nebo skrytí) okna Poznámka: Propojení Show Window (Zobrazit okno) a Hide Window (Skrýt okno) se vytvářejí stejným způsobem. Tento postup popisuje propojení Show Window (Zobrazit okno). 1. Dvojitě klepněte na objekt nebo jej zvolte, v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP 2. Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). V oddílu Touch Pushbutton (Dotykově citlivé tlačítko) klepněte na Show Window (Zobrazit okno). Objeví se dialogové okno Windows to Show when touched (Okna, která se zobrazí při dotyku na tlačítko). 3. Zvolte okno, které chcete otevřít, když klepnete na objekt nebo se jej dotknete. 4. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. - 293 - TIP Když zobrazíte více než jedno okno, kde jedno z oken je typu Replace (Nahradit), jestliže protne jakákoli jiná okna, před zobrazením se zavřou (a tím se vytvoří dojem, že Vaše animační propojení Show Window (Zobrazit okno) není funkční). Pro změnu typu okna klepněte na prázdnou plochu otevřeného okna a potom klepněte na Window Properties (Vlastnosti okna). Objeví se dialogové okno Window Properties (Vlastnosti okna) a Vy můžete změnit jeho typ. (Pokud běží program WindowViewer, typ okna nelze změnit.) Více informací o vlastnostech okna je uvedeno v kapitole 2, "Použití programu WindowMaker". Vytváření propojení zobrazení Různá propojení zobrazení (Display Links) použijete pro umožnění výstupu k operátorovi. Existuje osm typů propojení zobrazení, které můžete vytvořit: Propojení zobrazení Typy Barva čáry, výplně a textu Diskrétní, analogové, diskrétní alarmové, analogové alarmové Velikost objektu Výška, šířka Umístění Vodorovné, svislé Procentuální výplň Vodorovná, svislá Smíšené Viditelnost, orientace, blikání, deaktivace Zobrazení hodnoty Diskrétní, analogové, řetězcové Následující oddíly popisují, jak lze vytvořit jednotlivé typy propojení zobrazení. Vytváření propojení barvy Propojení barvy použijte pro animování atributů Line Color (Barva čáry), Fill Color (Barva výplně) a Text Color (Barva textu) nějakého objekt. Poznámka: Pro propojení barev čar a textu musíte použít plnou barvu. Jestliže vyberete smíšenou barvu, program WindowMaker zvolí implicitně nejbližší plnou barvu. Aby se zabránilo smíšeným barvám, musí Váš zobrazovací adaptér mít minimálně 2 MB a nastavení hloubky barvy musí být vyšší než 256 barev, jako např. 32K nebo 65K (někdy nazývaná jako "high color".) Více informací o barevné paletě je uvedeno v oddílu "Použití propojení barvy". Každý z těchto atributů barvy může být vytvořen jako dynamický definováním propojení barvy pro atribut. Atribut barvy může být propojen s hodnotou diskrétního výrazu, analogového výrazu, stavu diskrétního alarmu nebo stavu analogového alarmu. Existují čtyři typy barvy čáry, výplně a textu: - 294 - Propojení barvy Popis Diskrétní Používá se pro ovládání barev výplně, čáry a textu objektu nebo symbolu, které jsou propojeny s hodnotou diskrétního výrazu. Analogové Barva čáry, výplně a textu nějakého objektu nebo symbolu mohou být propojeny s hodnotou analogové proměnné (celočíselné nebo reálné) nebo analogového výrazu. Určením čtyřech bodů přerušení se definuje pět rozsahů hodnoty. Lze zvolit pět rozdílných barev, které se zobrazí jako změny rozsahu hodnoty. Diskrétní alarmové Barva textu, čáry a výplně nějakého objektu lze propojit s alarmovým stavem proměnné, alarmové skupiny nebo skupinové proměnné. Toto propojení barvy umožňuje volbu dvou barev; jednu pro normální stav a jednu pro alarmový stav proměnné. Toto propojení lze použít jak pro analogové, tak pro diskrétní proměnné. Pokud se propojí s analogovou proměnnou, reaguje na jakoukoli alarmovou podmínku proměnné. Analogové alarmové Barva textu, čáry a výplně nějakého objektu lze popojit s alarmovým stavem analogové proměnné, alarmové skupiny nebo skupinové proměnné. Umožňuje nastavit určitou barvu pro normální stav a také samostatnou barvu pro každou alarmovou podmínku definovanou pro proměnnou. Poznámka: Objekty nepřejdou do alarmového stavu, když používají analogové alarmové animační propojení, zatímco animační propojení používá vzdálenou proměnnou, která provádí přístup k informacím proměnné z nezkonvertované aplikace vytvořené v programu InTouch verze nižší než 7.0. - 295 - ¾ Vytvoření diskrétního propojení barvy výplně Poznámka: Všechna propojení Line Color (Barva čáry) a Text Color (Barva textu) se vytvářejí stejným způsobem jako propojení Fill Color (Barva výplně). Následující postup popisuje vytváření propojení Fill Color (Barva výplně). 1. Dvojitě klepněte na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP 2. Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). V oddílu Fill Color (Barva výplně) (Line Color (Barva čáry) nebo Text Color (Barva textu)) klepněte na Discrete (Diskrétní). Objeví se dialogové okno Fill Color -> Discrete Expression (Barva výplně -> Diskrétní výraz). 3. V poli Expression (Výraz) napište diskrétní proměnnou nebo výraz, který je považován za pravdivý nebo nepravdivý. TIP Diskrétní výrazy mohou také obsahovat analogové proměnné. Například TankLevel >= 75. Když v tomto příkladu hodnota proměnné "TankLevel" je větší nebo rovna hodnotě "75", barva výplně objektu se změní. Klepněte pravým tlačítkem myši na pole Expression (Výraz) pro přístup k příkazům, které můžete použít pro zvolený text. Poznámka: Ve Vašem výrazu lze napsat až 256 znaků. Pokud potřebujete použít větší výraz, vytvořte funkci typu QuickFunction a potom ji vyvolejte ve Vašem výrazu. "Spouštěcí" proměnná se musí použít jako parametr pro funkci typu QuickFunction, aby se animační propojení aktualizovalo. Například použití proměnné $Second jako parametr pro funkci typu QuickFunction způsobí, že výraz pro animační propojení se vyhodnotí pokaždé, když $Second změní hodnotu, tudíž způsobí, že výraz se vyvolá ve funkci typu QuickFunction při každém druhém volání funkce. Více informací o funkcích typu QuickFunction je uvedeno v kapitole 8 "Vytváření skriptů QuickScript v programu InTouch". 4. Ve skupině Colors (Barvy) klepnutím na každé barevné pole se otevře barevná paleta. Klepněte na barvu v barevné paletě, kterou chcete použít pro každý stav proměnné. - 296 - Poznámka: Pro propojení barev čar a textu musíte použít plnou barvu. Jestliže zvolíte smíšenou barvu, program WindowMaker zvolí implicitně nejbližší plnou barvu. Aby se zabránilo smíšeným barvám, musí Váš zobrazovací adaptér mít minimálně 2 MB a nastavení hloubky barvy musí být vyšší než 256 barev, jako např. 32K nebo 65K (někdy nazývaná jako "high color".) Více informací o barevné paletě je uvedeno v oddílu "Použití propojení barvy". 5. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. ¾ Vytvoření propojení barvy analogového výrazu 1. Dvojitě klepněte na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP 2. Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). V oddílu Fill Color (Barva výplně) (Line Color (Barva čáry) nebo Text Color (Barva textu)) klepněte na Analog (Analogové). Objeví se dialogové okno Fill Color -> Analog Expression (Barva výplně -> Analogový výraz). 3. V poli Expression (Výraz) napište analogovou (celočíselnou nebo reálnou) proměnnou nebo výraz, který je považován za analogovou hodnotu. TIP Klepněte pravým tlačítkem myši na pole Expression (Výraz) pro přístup k příkazům, které můžete použít pro zvolený text. Poznámka: Ve Vašem výrazu lze napsat až 256 znaků. Pokud potřebujete použít větší výraz, vytvořte funkci typu QuickFunction a potom ji vyvolejte ve Vašem výrazu. "Spouštěcí" proměnná se musí použít jako parametr pro funkci typu QuickFunction, aby se provedla aktualizace animačního propojení. Například použití proměnné $Second jako parametr pro funkci typu QuickFunction způsobí, že výraz pro animační propojení se vyhodnotí pokaždé, když $Second změní hodnotu, což způsobí, že QuickFunction bude vyvolána každou sekundu. - 297 - Více informací o funkcích typu QuickFunction je uvedeno v kapitole 8, "Vytváření skriptů QuickScript v programu InTouch". 4. V každém poli Break Points (Body přerušení) můžete specifikovat hodnoty bodů přerušení (desetinná čísla jsou platná pro proměnné reálného typu) pro změnu barvy objektu. TIP 5. Nemusíte používat čtyři rozdílné hodnoty. Jestliže například chcete, aby objekt změnil barvu třikrát, napište tři hodnoty, pak použijte stejnou barvu pro třetí a čtvrté hodnoty. Ve skupině Colors (Barvy) klepnutím na každé barevné pole se otevře barevná paleta. Klepněte na barvu v barevné paletě, kterou chcete použít pro každý bod přerušení. Poznámka: Pro propojení barev čar a textu musíte použít plnou barvu. Jestliže zvolíte smíšenou barvu, program WindowMaker zvolí implicitně nejbližší plnou barvu. Aby se zabránilo smíšeným barvám, musí Váš zobrazovací adaptér mít minimálně 2 MB a nastavení hloubky barvy musí být vyšší než 256 barev, jako např. 32K nebo 65K (někdy nazývaná jako "high color".) Více informací o barevné paletě je uvedeno v oddílu "Použití propojení barvy". 6. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. ¾ Vytvoření propojení barvy alarmového stavu diskrétní proměnné 1. Dvojitě klepněte dvakrát na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). 2. V oddílu Fill Color (Barva výplně) (Line Color (Barva čáry) nebo Text Color (Barva textu)) klepněte na Discrete Alarm (alarmový stav diskrétní proměnné). Objeví se dialogové okno Fill Color -> Discrete Tagname Alarm Status (Barva výplně -> Alarmový stav diskrétní proměnné). 3. V poli Tagname (Proměnná) napište diskrétní proměnnou, jejíž alarmový stav chcete asociovat s objektem. TIP Klepněte pravým tlačítkem myši na pole Tagname (Proměnná) pro přístup k příkazům, které můžete použít pro zvolený text. - 298 - 4. Ve skupině Colors (Barvy) klepnutím na každé barevné pole se otevře barevná paleta. Klepněte na barvu v barevné paletě, kterou chcete použít pro každý stav barvy. Poznámka: Pro propojení barev čar a textu musíte použít plnou barvu. Jestliže zvolíte smíšenou barvu, program WindowMaker zvolí implicitně nejbližší plnou barvu. Aby se zabránilo smíšeným barvám, musí Váš zobrazovací adaptér mít minimálně 2 MB a nastavení hloubky barvy musí být vyšší než 256 barev, jako např. 32K nebo 65K (někdy nazývaná jako "high color".) Více informací o barevné paletě je uvedeno v oddílu "Použití propojení barvy". 5. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. ¾ Vytvoření propojení barvy alarmového stavu analogové proměnné 1. Dvojitě klepněte dvakrát na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). 2. V oddílu Fill Color (Barva výplně) (Line Color (Barva čáry) nebo Text Color (Barva textu)) klepněte na Analog Alarm (Alarmový stav analogové proměnné). Objeví se dialogové okno Fill Color -> Analog Tagname Alarm Status (Barva výplně -> Alarmový stav analogové proměnné). 3. V poli Tagname (Proměnná) napište analogovou (celočíselnou nebo reálnou) proměnnou, jejíž alarmový stav chcete asociovat s objektem. TIP Klepněte pravým tlačítkem myši na pole Tagname (Proměnná) pro přístup k příkazům, které můžete použít pro zvolený text. 4. Ve skupině Alarm Type (Typ alarmu) zvolte typ alarmu, který chcete asociovat s objektem. Existují tři vzájemně výhradní typy analogových barevných propojení, které můžete použít: - 299 - Typ alarmu Popis Value Alarm (Alarm od hodnoty) Deviation (Odchylka) Můžete zvolit až pět různých barev v závislosti na stavu hodnotových alarmů definovaných pro proměnnou (příklad výše). ROC (Rychlost změny) Můžete zvolit až tři různé barvy v závislosti na stavu odchylkových alarmů definovaných pro proměnnou (příklad výše). ROC (Rychlost změny) - Můžete zvolit dvě různé barvy v závislosti na stavu alarmu rychlosti změny definovaného pro proměnnou. 5. Ve skupině Colors (Barvy) klepnutím na každé barevné pole se otevře barevná paleta. Klepněte na barvu v barevné paletě, kterou chcete použít pro každý stav barvy. Poznámka: Pro propojení barev čar a textu musíte použít plnou barvu. Jestliže zvolíte smíšenou barvu, program WindowMaker zvolí implicitně nejbližší plnou barvu. Aby se zabránilo smíšeným barvám, musí Váš zobrazovací adaptér mít minimálně 2 MB a nastavení hloubky barvy musí být vyšší než 256 barev, jako např. 32K nebo 65K (někdy nazývaná jako "high color".) Více informací o barevné paletě je uvedeno v oddílu "Použití propojení barvy". 6. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Vytváření propojení velikosti objektu Propojení velikosti objektu použijete pro změnu výšky a/nebo šířky objektu podle hodnoty analogové (celočíselné nebo reálné) proměnné nebo analogového výrazu. Propojení velikosti poskytují možnost ovládání směru, ve kterém objekt zvětší výšku a/nebo šířku nastavením "kotevního bodu" propojení. Jak propojení výšky, tak propojení šířky lze připojit ke stejnému objektu. Poznámka: Propojení výšky a šířky se vytvářejí stejným způsobem. Tento postup popisuje propojení výšky. ¾ Vytvoření propojení výšky (nebo šířky) 1. Dvojitě klepněte na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP 2. Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). V oddílu Object Size (Velikost objektu) klepněte na Height (Výška). Objeví se dialogové okno Object Height -> Analog Value (Výška objektu -> Analogová hodnota). - 300 - 3. V poli Expression (Výraz) napište analogovou (celočíselnou nebo reálnou) proměnnou nebo výraz, který je považován za analogovou hodnotu. TIP Klepněte pravým tlačítkem myši na pole Expression (Výraz) pro přístup k příkazům, které můžete použít pro zvolený text. Poznámka: Ve Vašem výrazu lze napsat až 256 znaků. Pokud potřebujete použít větší výraz, vytvořte funkci typu QuickFunction a potom ji vyvolejte ve Vašem výrazu. "Spouštěcí" proměnná se musí použít jako parametr pro funkci typu QuickFunction, aby se animační propojení aktualizovalo. Například použití proměnné $Second jako parametr pro funkci typu QuickFunction způsobí, že výraz pro animační propojení se vyhodnotí pokaždé, když $Second změní hodnotu, což způsobí, že QuickFunction bude vyvolána každou sekundu. Více informací o funkcích typu QuickFunction je uvedeno v kapitole 8 "Vytváření skriptů QuickScript v programu InTouch". 4. V poli Value at Max Height (Hodnota při maximální výšce) napište hodnotu proměnné nebo výrazu, který způsobí, že objekt dosáhne maximální výšky. 5. V poli Value at Min Height (Hodnota při minimální výšce) napište hodnotu proměnné nebo výrazu, který způsobí, že objekt dosáhne minimální výšky. 6. V poli Max % Height (Max. % výšky) napište procento (0-100) výšky, kterou bude mít objekt, když proměnná nebo výraz dosáhne hodnoty nastavené v poli Value at Max Height (Hodnota při maximální výšce). 7. V poli Min % Height (Min. % výšky) napište procento (0-100) výšky, kterou bude mít objekt, když proměnná nebo výraz dosáhne hodnoty nastavené v poli Value at Min Height (Hodnota při minimální výšce). TIP 8. Zvolte Anchor (kotevní bod), ze kterého objekt zvětší svou výšku. TIP 9. Číslice procenta výšky jsou vyjádřeny jako procento aktuální "velikosti kreslení" objektu, který je 100 %. Zvolením Top (Horní) způsobí, že objekt se zvětší z jeho horní strany dolů. Zvolením Middle (Střední) způsobí, že objekt se zvětší z jeho středu ven oběma směry. Zvolením Bottom (Spodní) způsobí, že objekt se zvětší z jeho spodní strany nahoru. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. - 301 - Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. Vytváření propojení umístění Propojení umístění použijete k tomu, aby se objekt automaticky přesunul vodorovně, svisle nebo v obou směrech jako odezva na změny hodnoty analogové proměnné nebo výrazu. Poznámka: Propojení Horizontal a Vertical Location (Vodorovné a Svislé umístění) se vytvářejí stejným způsobem. Tento postup popisuje propojení Horizontal Location (Vodorovné umístění). ¾ Vytvoření propojení vodorovného umístění 1. Dvojitě klepněte na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP 2. Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). V oddílu Location (Umístění) klepněte na Horizontal (Vodorovné). Objeví se dialogové okno Horizontal Location (Vodorovné umístění). 3. V poli Expression (Výraz) napište analogovou (celočíselnou nebo reálnou) proměnnou nebo výraz, který je považován za analogovou hodnotu. TIP Klepněte pravým tlačítkem myši na pole Expression (Výraz) pro přístup k příkazům, které můžete použít pro zvolený text. Poznámka: Ve Vašem výrazu lze napsat až 256 znaků. Pokud potřebujete použít větší výraz, vytvořte funkci typu QuickFunction a potom ji vyvolejte ve Vašem výrazu. "Spouštěcí" proměnná se musí použít jako parametr pro funkci typu QuickFunction, aby se animační propojení aktualizovalo. Například použití proměnné $Second jako parametr pro funkci typu QuickFunction způsobí, že výraz pro animační propojení se vyhodnotí pokaždé, když $Second změní hodnotu, což způsobí, že QuickFunction bude vyvolána každou sekundu. Více informací o funkcích typu QuickFunction je uvedeno v kapitole 8 "Vytváření skriptů QuickScript v programu InTouch". - 302 - 4. V poli At Left End (Na levém konci) napište hodnotu proměnné, kdy je objekt umístěný v poloze nejdále vlevo. 5. V poli At Right End (Na pravém konci) napište hodnotu proměnné, kdy je objekt umístěný v poloze nejdále vpravo. 6. V poli To Left (Doleva) napište počet pixelů, o které se může objekt přesunout směrem doleva od jeho nakreslené polohy. TIP 7. V poli To Right (Doleva) napište počet pixelů, o které se může objekt přesunout směrem doprava od jeho nakreslené polohy. TIP 8. V poloze nejdále vlevo bude hodnota proměnné rovna hodnotě zadané v poli At Left End (Na levém konci). V poloze nejdále vpravo bude hodnota proměnné rovna hodnotě zadané v poli At Right End (Na pravém konci). Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. Vytváření propojení procentuální výplně Propojení procentuální výplně použijte pro umožnění měnit stupeň výplnění útvaru, který má výplň (nebo symbolu obsahujícího útvary s výplní) podle hodnoty analogové proměnné nebo výrazu, který se přepočítá na analogovou hodnotu. Toto propojení lze použít pro zobrazení úrovně kapalin v nádobě. Objekt nebo symbol může mít propojení vodorovné výplně, propojení svislé výplně nebo obojí. Poznámka: Propojení Horizontal (Vodorovná) a Vertical Percent Fill (Svislá procentuální výplň) se vytvářejí stejným způsobem. Tento postup popisuje propojení Vertical Percent Fill (Svislá procentuální výplň). ¾ Vytvoření propojení svislé procentuální výplně 1. Dvojitě klepněte na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP 2. Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). V oddíle Percent Fill (Procentuální výplň) klepněte na Vertical (Svislá). Objeví se dialogové okno Vertical Fill -> Analog Value (Svislá výplň -> Analogová hodnota). - 303 - 3. V poli Expression (Výraz) napište analogovou (celočíselnou nebo reálnou) proměnnou nebo výraz, který je považován za analogovou hodnotu. TIP Klepněte pravým tlačítkem myši na pole Expression (Výraz) pro přístup k příkazům, které můžete použít pro zvolený text. Poznámka: Ve Vašem výrazu lze napsat až 256 znaků. Pokud potřebujete použít větší výraz, vytvořte funkci typu QuickFunction a potom ji vyvolejte ve Vašem výrazu. "Spouštěcí" proměnná se musí použít jako parametr pro funkci typu QuickFunction, aby se animační propojení aktualizovalo. Například použití proměnné $Second jako parametr pro funkci typu QuickFunction způsobí, že výraz pro animační propojení se vyhodnotí pokaždé, když $Second změní hodnotu, což způsobí, že QuickFunction bude vyvolána každou sekundu. Více informací o funkcích typu QuickFunction je uvedeno v kapitole 8 "Vytváření skriptů QuickScript v programu InTouch". 4. V poli Value at Max Fill (Hodnota při maximálním výplnění) napište hodnotu výrazu, který se projeví v objektu vyplněném na maximální úroveň. 5. V poli Value at Min Fill (Hodnota při minimálním výplnění) napište hodnotu výrazu, který se projeví v objektu vyplněném na minimální úroveň. 6. V poli Max % Fill (Max. % výplně) napište procento (0-100), kterým bude objekt vyplněn, když výraz dosáhne hodnoty nastavené v poli Value at Max Fill (Hodnota při maximálním výplnění). TIP 7. V poli Min % Fill (Min. % výplně) napište procento (0-100), kterým bude objekt vyplněn, když výraz dosáhne hodnoty nastavené v poli Value at Min Fill (Hodnota při minimálním výplnění). TIP 8. Pokud hodnota bude větší než toto číslo, bude ignorována. Zvolte Direction (Směr), ve kterém chcete vyplňovat objekt. TIP 9. Pokud hodnota bude větší než toto číslo, bude ignorována. Je-li zvoleno Up (Nahoru), bude se vyplňovat ze spodní části směrem nahoru. Je-li zvoleno Down (Dolů), bude se vyplňovat ze horní části směrem dolů. Klepnutím v poli Background Color (Barva pozadí) se otevře barevná paleta. Klepněte na požadovanou barvu. Barevná paleta zmizí z obrazovky. - 304 - TIP Tato volba Background Color (Barva pozadí) je určena pro barvu nevyplněné části objektu. Aktuální barva výplně je barva, kterou zvolíte při kreslení objektu. Pokud propojíte obě propojení Vertical Percent Fill (Svislá procentuální výplň) a Horizontal Percent Fill (Vodorovná procentuální výplň) se stejným objektem, poslední zvolená barva v jednom z jejich dialogových oken propojení se použije jako barva pozadí. 10. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. Vytváření různých propojení Existují čtyři typy různých propojení: Různá propojení Popis Visibility (Viditelnost) Používané pro ovládání viditelnosti objektu založeném na hodnotě diskrétní proměnné nebo výrazu. Blink (Blikání) Používané pro vytvoření blikání objektu založeném na hodnotě diskrétní proměnné nebo výrazu. Orientation (Orientace) Používané pro vytvoření otáčení objektu založeném na hodnotě diskrétní proměnné nebo výrazu. Disable (Deaktivace) Používané pro deaktivaci dotykové funkce objektů založeném na hodnotě diskrétní proměnné nebo výrazu. Tooltip (Bublinová nápověda) Používané pro vytvoření bublinové nápovědy, která se zobrazuje po najetí kurzorem na daný objekt. TIP Často používané jako část bezpečnostní strategie. Více informací o použití bezpečnosti ve Vaší aplikaci je uvedeno v kapitole 5 "Distribuované aplikace". ¾ Vytvoření propojení viditelnosti 1. Dvojitě klepněte na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). 2. V oddílu Miscellaneous (Různé) klepněte na Visibility (Viditelnost). Objeví se dialogové okno Object Visibility -> Discrete Value (Viditelnost objektu -> Diskrétní hodnota). - 305 - 3. V poli Expression (Výraz) napište diskrétní proměnnou nebo výraz, který je považován za diskrétní hodnotu. TIP Diskrétní výrazy mohou také obsahovat analogové proměnné, například TankLevel >= 75. Když v tomto příkladu hodnota proměnné TankLevel je větší nebo rovna hodnotě 75, objekt se stane v okně viditelný. Klepněte pravým tlačítkem myši na pole Expression (Výraz) pro přístup k příkazům, které můžete použít pro zvolený text. Poznámka: Ve Vašem výrazu lze napsat až 256 znaků. Pokud potřebujete použít větší výraz, vytvořte funkci typu QuickFunction a potom ji vyvolejte ve Vašem výrazu. "Spouštěcí" proměnná se musí použít jako parametr pro funkci typu QuickFunction, aby se animační propojení aktualizovalo. Například použití proměnné $Second jako parametr pro funkci typu QuickFunction způsobí, že výraz pro animační propojení se vyhodnotí pokaždé, když $Second změní hodnotu, což způsobí, že QuickFunction bude vyvolána každou sekundu. Více informací o funkcích typu QuickFunction je uvedeno v kapitole 8 "Vytváření skriptů QuickScript v programu InTouch". 4. Zvolte pro objekt Visible State (Viditelný stav). Když zvolíte On (Zapnuto), objekt bude neviditelný, když hodnota výrazu je pravdivá. Když zvolíte Off (Vypnuto), objekt bude viditelný, když hodnota výrazu je pravdivá. 5. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. ¾ Vytvoření propojení blikání 1. Dvojitě klepněte na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). 2. V oddílu Miscellaneous (Různé) klepněte na Blink (Blikání). Objeví se dialogové okno Object Blinking -> Discrete Value (Blikání objektu -> Diskrétní hodnota). - 306 - 3. V poli Expression - Blink When (Výraz – Blikání, když) napište diskrétní proměnnou nebo výraz, který je považován za diskrétní hodnotu. TIP Diskrétní výrazy mohou také obsahovat analogové proměnné. Například TankLevel >= 75. Když v tomto příkladu hodnota proměnné "TankLevel" je větší nebo rovna hodnotě "75", objektu bude blikat. Klepněte pravým tlačítkem myši na pole Expression (Výraz) pro přístup k příkazům, které můžete použít pro zvolený text. Poznámka: Ve Vašem výrazu lze napsat až 256 znaků. Pokud potřebujete použít větší výraz, vytvořte funkci typu QuickFunction a potom ji vyvolejte ve Vašem výrazu. "Spouštěcí" proměnná se musí použít jako parametr pro funkci typu QuickFunction, aby se animační propojení aktualizovalo. Například použití proměnné $Second jako parametr pro funkci typu QuickFunction způsobí, že výraz pro animační propojení se vyhodnotí pokaždé, když $Second změní hodnotu, což způsobí, že QuickFunction bude vyvolána každou sekundu. Více informací o funkcích typu QuickFunction je uvedeno v kapitole 8 "Vytváření skriptů QuickScript v programu InTouch". 4. Zvolte Blinked Attributes (Atributy blikaní), které chcete použít pro objekt. Pokud zvolíte Blink Invisible (Neviditelné blikání), objekt/symbol bliká při skrytí a opětovném zobrazení v okně. Zvolíte-li Blink visible with these attributes (Blikání viditelné s těmito atributy), objekt/symbol zůstane viditelný v okně a změna zvolených atributů barvy vytvoří efekt blikání. Klepněte na pole Text Color (Barva textu), Line Color (Barva čáry) a Fill Color (Barva výplně) pro otevření barevné palety. Klepněte na požadovanou barvu. Barevná paleta zmizí z obrazovky. TIP Zvolením barvy "výplně" při blikání, která je stejná jako barva "výplně" objektu neumožní objektu "blikat". 5. Zvolte Blink Speed (Rychlost blikaní), kterou chcete použít pro rychlost blikání objektu. - 307 - TIP Pro konfiguraci rychlosti blikání úrovní Slow (Pomalá), Medium (Střední) a Fast (Rychlá) v nabídce Special (Speciální) ukažte na Configure (Konfigurovat) a potom klepněte na WindowViewer. Zobrazí se karta vlastností WindowMaker General (WindowMaker - Všeobecný). Ve skupině Blink Frequency (Frekvence blikání) napište počet milisekund, který chcete použít pro vaše rychlosti. Jakékoli změny provedené na těchto nastaveních jsou globální a budou mít vliv na rychlosti blikání všech propojení blikání v rámci celé aplikace. 6. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. ¾ Vytvoření propojení orientace 1. Dvojitě klepněte na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP 2. Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). V oddílu Miscellaneous (Různé) klepněte na Orientation (Orientace). Objeví se dialogové okno Orientation -> Analog Value (Orientace -> Analogová hodnota). 3. V poli Expression (Výraz) napište analogovou (celočíselnou nebo reálnou) proměnnou nebo výraz, který je považován za analogovou hodnotu. TIP Klepněte pravým tlačítkem myši na pole Expression (Výraz) pro přístup k příkazům, které můžete použít pro zvolený text. Poznámka: Ve Vašem výrazu lze napsat až 256 znaků. Pokud potřebujete použít větší výraz, vytvořte funkci typu QuickFunction a potom ji vyvolejte ve Vašem výrazu. "Spouštěcí" proměnná se musí použít jako parametr pro funkci typu QuickFunction, aby se animační propojení aktualizovalo. Například použití proměnné $Second jako parametr pro funkci typu QuickFunction způsobí, že výraz pro animační propojení se vyhodnotí - 308 - pokaždé, když $Second změní hodnotu, což způsobí, že QuickFunction bude vyvolána každou sekundu. Více informací o funkcích typu QuickFunction je uvedeno v kapitole 8 "Vytváření skriptů QuickScript v programu InTouch". 4. V poli Value at Max CCW (Hodnota při maximálním otočení ve směru proti chodu hodinových ručiček) napište hodnotu výrazu, která musí být zadána pro objekt, aby se otočil do maximální polohy ve směru proti chodu hodinových ručiček. TIP 5. Pokud hodnota bude větší než toto číslo, bude ignorována. V poli Value at Max CW (Hodnota při maximálním otočení ve směru chodu hodinových ručiček) napište hodnotu výrazu, která musí být zadána pro objekt, aby se otočil do maximální polohy ve směru chodu hodinových ručiček. TIP Pokud hodnota bude větší než toto číslo, bude ignorována. 6. V poli CCW Rotation (Otáčení ve směru proti chodu hodinových ručiček) napište stupně, o které se objekt otočí ve směru proti chodu hodinových ručiček, když se dosáhne hodnoty Value at Max CCW (Hodnota při maximálním otočení ve směru proti chodu hodinových ručiček). 7. V poli CW Rotation (Otáčení ve směru chodu hodinových ručiček) napište stupně, o které se objekt otočí ve směru chodu hodinových ručiček, když se dosáhne hodnoty Value at Max CW (Hodnota při maximálním otočení ve směru chodu hodinových ručiček). TIP Objekt se otočí ve směru chodu hodinových ručiček nebo proti chodu hodinových ručiček na základě jeho původní polohy při kreslení v programu WindowMaker. Aby se objekt, například čára, otočil do určitého úhlu, jednoduše nastavte hodnotu Value at Max CCW (Hodnota při maximálním otočení ve směru proti chodu hodinových ručiček) na 360 a hodnotu Value at Max CW (Hodnota při maximálním otočení ve směru chodu hodinových ručiček) na 0, CCW Rotation (Otáčení ve směru proti chodu hodinových ručiček) na 360 a CW Rotation (Otáčení ve směru chodu hodinových ručiček) na 0 a potom v poli Expression (Výraz) napište hodnotu úhlu, jako např. 90 (pro 90 stupňů). Pamatujte na to, že bez proměnné se výraz nikdy nezmění a objekt zachová vždy svou polohu v úhlu 90 stupňů. Do programu WindowMaker lze zadat text, ale ne otočený v programu WindowViewer o hodnotu proměnné. 8. V poli X Position (Poloha X) napište počet pixelů, o které se může střed otáčení přesunout vodorovně od středu objektu. (Kladné hodnoty jsou směrem doprava od středu.) TIP 9. Propojení orientace používá střed objektu nebo symbolu jako střed otáčení. V poli Y Position (Poloha Y) napište počet pixelů, o které se může střed otáčení přesunout svisle od středu objektu. (Kladné hodnoty jsou směrem dolů od středu.) 10. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. - 309 - ¾ Vytvoření propojení deaktivace TIP Propojení deaktivace je velmi účelné, když uplatňujete bezpečnost do Vaší aplikace. Můžete například deaktivovat objekty na základě úrovně přístupu a jména přihlášeného operátora. 1. Klepněte dvakrát na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). 2. V oddílu Miscellaneous (Různé) klepněte na Disable (Deaktivace). Objeví se dialogové okno Object Disabled -> Discrete Value (Deaktivovaný objekt -> Diskrétní hodnota). TIP 3. V poli Expression (Výraz) napište diskrétní proměnnou nebo výraz, který je považován za diskrétní hodnotu. TIP Použitím výše uvedeného výrazu, když nikdo není přihlášený, je objekt zabezpečen před poškozením. Diskrétní výrazy mohou také obsahovat analogové proměnné. Například TankLevel >= 75. Když v tomto příkladu hodnota proměnné "TankLevel" je větší nebo rovna hodnotě "75", objekt bude deaktivován. Klepněte pravým tlačítkem myši na pole Expression (Výraz) pro přístup k příkazům, které můžete použít pro zvolený text. Poznámka: Ve Vašem výrazu lze napsat až 256 znaků. Pokud potřebujete použít větší výraz, vytvořte funkci typu QuickFunction a potom ji vyvolejte ve Vašem výrazu. "Spouštěcí" proměnná se musí použít jako parametr pro funkci typu QuickFunction, aby se animační propojení aktualizovalo. Například použití proměnné $Second jako parametr pro funkci typu QuickFunction způsobí, že výraz pro animační propojení se vyhodnotí pokaždé, když $Second změní hodnotu, což způsobí, že QuickFunction bude vyvolána každou sekundu. Více informací o funkcích typu QuickFunction je uvedeno v kapitole 8 "Vytváření skriptů QuickScript v programu InTouch". 4. Zvolte Disabled State (Deaktivovaný stav), který vypne nebo zapne funkčnost objektu, když diskrétní proměnná nebo výraz je pravdivý. TIP Deaktivovaný stav v poloze "zapnuto" znamená, že dotyková funkce objektu nebo tlačítka je vypnutá a nelze na ně klepnout, pokud je výraz pravdivý. - 310 - 5. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. ¾ Vytvoření animačního propojení Tooltip (Bublinová nápověda) TIP Animační propojení dává uživateli možnost rozšířených informací o daném objektu. Bublinová nápověda bude zobrazena ve chvíli, kdy najedeme kurzorem myši na objekt na kterém je právě toto animační propojení zobrazeno. Doba jak dlouho bude tato bublinová nápověda zobrazena stejně tak vzhled této nápovědy je závislý na operačním systému. 1. Klepněte dvakrát na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). V oddílu Miscellaneous (Různé) klepněte na Tooltip (Bublinová nápověda). Objeví se dialogové okno Object Tooltip -> String tagname (Objekt bublinková nápověda -> Textový řetězec). TIP 2. 3. V poli Expression (Výraz) napište message proměnnou nebo výraz, který chcete v bublinové nápovědě zobrazit. 4. V případě, že se nejedná o dynamické zobrazení můžete text vepsat přímo do pole Static Text Poznámka: V případě,že dynamicky nastavujete Tooltip zde existuje určité omezení. V případě změny proměnné, ve které je reprezentována hodnota a v případě že je určité tooltip zobrazen nebude hned změna publikována. Tato hodnota bude aktualizována při příštím zobrazení bublinové nápovědi. - 311 - Vytváření propojení zobrazení hodnoty Propojení zobrazení hodnoty poskytuje schopnost použít textový objekt pro zobrazení hodnoty diskrétní, analogové nebo řetězcové proměnné. Existují tři typy: ¾ Typ zobrazení hodnoty Popis Discrete (Diskrétní) Používá hodnotu diskrétního výrazu pro zobrazení uživatelsky definované zprávy Zapnuto nebo Vypnuto v textovém objektu. Analog (Analogový) Zobrazuje hodnotu analogového výrazu v textovém objektu. String (Řetězcový) Zobrazuje hodnotu textového výrazu v textovém objektu. Vytvoření propojení zobrazení diskrétní hodnoty 1. Klepněte dvakrát na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). 2. V sekci Value Display (Zobrazení hodnoty) klepněte na Discrete (Diskrétní). Objeví se dialogové okno Output -> Discrete Expression (Výstup -> Diskrétní výraz). 3. V poli Expression (Výraz) napište diskrétní proměnnou nebo výraz, který je považován za diskrétní hodnotu. TIP Diskrétní výrazy mohou také obsahovat analogové proměnné. Například TankLevel >= 75. Když v tomto příkladu hodnota proměnné "TankLevel" je větší nebo rovna hodnotě "75", zobrazí se příslušná zpráva. Klepněte pravým tlačítkem myši na pole Expression (Výraz) pro přístup k příkazům, které můžete použít pro zvolený text. Poznámka: Ve Vašem výrazu lze napsat až 256 znaků. Pokud potřebujete použít větší výraz, vytvořte funkci typu QuickFunction a potom ji vyvolejte ve Vašem výrazu. "Spouštěcí" proměnná se musí použít jako parametr pro funkci typu QuickFunction, aby se animační propojení aktualizovalo. Například použití proměnné $Second jako parametr pro funkci typu QuickFunction způsobí, že výraz pro animační propojení se vyhodnotí - 312 - pokaždé, když $Second změní hodnotu, což způsobí, že QuickFunction bude vyvolána každou sekundu. Více informací o funkcích typu QuickFunction je uvedeno v kapitole 8 "Vytváření skriptů QuickScript v programu InTouch". 4. V poli On Message (Zpráva při zapnutí) napište zprávu, kterou chcete zobrazit, když hodnota diskrétního výrazu se rovná 1 (pravdivý, zapnuto, ano). 5. V poli Off Message (Zpráva při vypnutí) napište zprávu, kterou chcete zobrazit, když hodnota diskrétního výrazu se rovná 0 (nepravdivý, vypnuto, ne). TIP Tyto zprávy se zobrazí v místě původního textového objektu pomocí typu písma, velikosti, barvy a zarovnání a propojí atributy nastavené pro tento objekt. Původní obsah pole nemá žádný vliv na zobrazenou zprávu při běhu programu. 6. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. TIP Můžete také použít propojení Value Display Output -> String Expression (Výstup zobrazení hodnoty -> Textový výraz) pro zobrazení zprávy při zapnutí a vypnutí pro diskrétní proměnnou. Pro propojení byste zapsali následující výraz: DText (Pump, Pump.OnMsg, Pump.OffMsg); V tomto výrazu se získají řetězce .OnMsg a .OffMsg z definice databáze proměnných programu InTouch pro diskrétní proměnnou, která se jmenuje Pump (Čerpadlo). - 313 - ¾ Vytvoření propojení zobrazení analogové hodnoty 1. Klepněte dvakrát na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). 2. V sekci Value Display (Zobrazení hodnoty) klepněte na Analog (Analogové). Objeví se dialogové okno Output -> Analog Expression (Výstup -> Analogový výraz). 3. V poli Expression (Výraz) napište analogovou (celočíselnou nebo reálnou) proměnnou nebo výraz, který je považován za analogovou hodnotu. (V tomto výrazu můžete také použít proměnnou diskrétního typu. Jednoduše zobrazí 1 nebo 0.) TIP Klepněte pravým tlačítkem myši na pole Expression (Výraz) pro přístup k příkazům, které můžete použít pro zvolený text. Poznámka: Ve Vašem výrazu lze napsat až 256 znaků. Pokud potřebujete použít větší výraz, vytvořte funkci typu QuickFunction a potom ji vyvolejte ve Vašem výrazu. "Spouštěcí" proměnná se musí použít jako parametr pro funkci typu QuickFunction, aby se animační propojení aktualizovalo. Například použití proměnné $Second jako parametr pro funkci typu QuickFunction způsobí, že výraz pro animační propojení se vyhodnotí pokaždé, když $Second změní hodnotu, což způsobí, že QuickFunction bude vyvolána každou sekundu. Více informací o funkcích typu QuickFunction je uvedeno v kapitole 8 "Vytváření skriptů QuickScript v programu InTouch". 4. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. Více informací o formátování objektů analogového zobrazení je uvedeno v kapitole 2, "Použití programu WindowMaker". - 314 - ¾ Vytvořené propojení zobrazení textové hodnoty 1. Klepněte dvakrát na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno výběru propojení. TIP Pro rychlý přístup do dialogového okna výběru animačního propojení klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). 2. V sekci Value Display (Zobrazení hodnoty) klepněte na String (Text). Objeví se dialogové okno Output -> String Expression (Výstup -> Řetězcový výraz). 3. V poli Expression (Výraz) napište proměnnou typu text nebo výraz, jehož výsledkem je textová proměnná. TIP Ve výše uvedeném výrazu se funkce Text() používá pro převedení hodnoty celočíselné proměnné TankLevel na text. Klepněte pravým tlačítkem myši na pole Expression (Výraz) pro přístup k příkazům, které můžete použít pro zvolený text. Poznámka: Ve Vašem výrazu lze napsat až 256 znaků. Pokud potřebujete použít větší výraz, vytvořte funkci typu QuickFunction a potom ji vyvolejte ve Vašem výrazu. "Spouštěcí" proměnná se musí použít jako parametr pro funkci typu QuickFunction, aby se animační propojení aktualizovalo. Například použití proměnné $Second jako parametr pro funkci typu QuickFunction způsobí, že výraz pro animační propojení se vyhodnotí pokaždé, když $Second změní hodnotu, což způsobí, že QuickFunction bude vyvolána každou sekundu. Více informací o funkcích typu QuickFunction je uvedeno v kapitole 8 "Vytváření skriptů QuickScript v programu InTouch". 4. Klepněte na OK pro připojení propojení k objektu a zavřete dialogové okno animačních propojení. Podle potřeby můžete nyní připojit jiné propojení k objektu. Poznámka: Pokud zadáte proměnnou, která není definována v Tagname Dictionary (Databázi proměnných), budete vyzváni k její definici. - 315 - K A P I T O L A 8 Vytváření skriptů QuickScript v programu InTouch Skriptování programu InTouch je jednou z nejvýkonnějších funkcí aplikace programu InTouch. Schopnosti skriptů QuickScript programu InTouch Vám umožní provádět příkazy a logické operace na základě splnění určitých kritérií. Například při stisknutí klávesy, otevření okna, změně hodnoty atd. Skripty QuickFunction jsou skripty, které po vytvoření mohou být volány z jiných skriptů a výrazů animačního propojení. Použitý kód je uložen v jednom skriptu a v jednom umístění, takže při změně QuickFunction dojde k aktualizaci všech skriptových instancí, které se na tuto QuickFunction odkazují. Použitím skriptů lze vytvořit velké množství uživatelských a automatizovaných funkcí, které systém může využívat. Obsah • Skripty QuickScript programu InTouch • Použití editoru skriptů QuickScript v programu InTouch • Aplikační skripty • Skripty okna • Klávesové skripty • Skripty dotykově citlivých tlačítek • Podmínkové skripty • Změnové skripty • Skripty událostí ovládacích prvků ActiveX • Skripty QuickFunction • Použití lokálních proměnných • Vytváření skriptů s cykly FOR-NEXT • Styly a syntaxe skriptů • Import skriptů QuickScript • Tisk skriptů • Skriptové funkce • Chybové zprávy editoru skriptů - 316 - Skripty QuickScript programu InTouch Všechny skripty QuickScript programu InTouch jsou řízené událostmi. Takovou událostí může být změna hodnoty, podmínka, klepnutí myší, časovač atd. Pořadí zpracování je specifické podle aplikace. Ačkoli se může zdát, že existuje určité vnitřní pořadí ve způsobu, jak je několik skriptů inicializováno stejnou událostí, neexistuje žádná záruka specifického pořadí. Proto byste neměli vytvářet žádnou závislost v pořadí zpracování. V následujícím textu jsou stručně popsány typy skriptů, které můžete vytvořit: Typ skriptu Popis Application (Aplikační) Vztahuje se k celé aplikaci. Window (Skripty okna) Vztahuje se k určitému oknu. Key (Klávesový) Vztahuje se k určité klávese nebo kombinaci kláves na klávesnici. Condition (Podmínkový) Vztahuje se k diskrétní proměnné nebo výrazu (podmínce). Data Change (Změnový) Vztahuje se pouze ke změně hodnoty proměnné nebo atributu proměnné. QuickFunctions (Skripty QuickFunction) Skripty, které po vytvoření mohou být volány z jiných skriptů QuickScript nebo výrazů animačního propojení. Skripty QuickFunction mohou být jak synchronní, tak asynchronní, zatímco ostatní typy skriptů jsou pouze synchronní. Action Pushbutton (Skript dotykově citlivého tlačítka) Asociované s objektem, který je propojen přes Animation Link - Action Touch Pushbutton (Animační propojení – Skript dotykově citlivých tlačítek). ActiveX Event (skript události ovl. prvku ActiveX ) Provádí skript na základě vzniku události ovládacího prvku ActiveX. Wizard (Předkonfigurovaný objekt) Přístup na vlastnosti předkonfigurovaného objektu pro rozšířenou funkčnost při běhu programu. - 317 - Použití editoru skriptů QuickScript v programu InTouch Editor skriptů QuickScript programu InTouch je v podstatě stejný pro všechny typy skriptů QuickScript. Aby se tedy zabránilo zbytečnému opakování, jeho společné funkce a vlastnosti jsou popsány v tomto oddíle. Položky, které jsou jedinečné pro určitý typ skriptu QuickScript, jsou popsány později v této kapitole v příslušné části pro daný typ skriptu QuickScript. - 318 - Nástrojová lišta editoru skriptů QuickScript Nástrojová lišta editoru skriptů QuickScript Vám poskytuje rychlý přístup k funkcím editoru: Nástroj Popis Klepnutím se vyjme zvolený text ze skriptu QuickScript. Klepnutím se zkopíruje zvolený text ze skriptu QuickScript. Klepnutím se vloží zvolený text ze schránky do skriptu QuickScript. Klepnutím se otevře prohlížeč proměnných. Klepnutím se otevře seznam oken aktuální aplikace. Klepnutím se otevře prohlížeč ovládacích prvků ActiveX. Klepnutím se vytiskne požadovaný script. Společné postupy v editoru skriptů QuickScript Tento oddíl popisuje všeobecné postupy, které použijete při psaní skriptů v různých dialogových oknech editoru skriptů QuickScript programu InTouch. Postupy, které jsou jedinečné pro určitý typ skriptu, jsou popsány později v této kapitole v příslušném oddílu typu skriptu. Ve spodní části editoru skriptů QuickScript jsou umístěna tlačítka textu, logických a matematických operátorů, na které můžete klepnout pro rychlé vložení zobrazeného klíčového slova, funkce nebo symbolu do Vašeho skriptu v místě kurzoru. ¾ Odsazení/zrušení odsazení textu ve skriptu Umístěte kurzor na začátku řádku, který chcete odsadit, a potom stiskněte klávesu TAB. Pro odstranění odsazení držte stisknutou klávesu SHIFT a přitom stiskněte klávesu TAB. ¾ Vytvoření nového skriptu V nabídce Script (Skript) klepněte na příkaz New (Nový). Poznámka: Nabídka Script (Skript) neexistuje pro skripty Application (Aplikační), Window (skript Okna) nebo skripty Touch Pushbutton Action (skript dotykově citlivého tlačítka). Skripty QuickFunction, podmínkové skripty a změnové skripty se vytvoří s implicitními názvy. Proto musíte uložit (nebo stornovat pomocí klávesy <Esc>) aktuálně zobrazený skript předtím, než můžete zavést jiný skript do editoru. Když vytváříte skript, není možné deklarovat lokální proměnnou (local variable) se stejným názvem jako proměnnou, která byla definována dříve v databázi proměnných (Tagname Dictionary). - 319 - ¾ Vymazání skriptu z Vaší aplikace Zvolte skript, který chcete vymazat a potom v nabídce Script (Skript) klepněte na Erase (Vymazat). Skript se zcela vymaže z Vaší aplikace. ¾ Návrat poslední akce V nabídce Edit (Úpravy) klepněte na Undo (Zpět). Vaše poslední operace, například vložení, se vrátí zpět. TIP ¾ Pro rychlé provedení příkazu klepněte pravým tlačítkem myši na okno skriptu a potom klepněte na Undo (Zpět). Příkaz Undo (Zpět) nebude aktivní, pokud jste neprovedli akci, kterou lze vrátit zpět. Zvolení celého skriptu V nabídce Edit (Úpravy) klepněte na Select All (Vybrat vše). Zvolí se celý obsah skriptu. TIP ¾ Pro rychlé provedení příkazu klepněte pravým tlačítkem myši na okno skriptu a potom klepněte na Select All (Vybrat vše). Nyní můžete celý obsah skriptu kopírovat, vyjmout nebo vymazat. Vyjmutí zvoleného textu ze skriptu Zvolte text, který chcete vyjmout, a potom v nabídce Edit (Úpravy) klepněte na Cut (Vyjmout). Vyjmutý text se vymaže ze skriptu a zkopíruje se do schránky systému Windows. Nyní můžete vyjmutý text vložit na jiné místo v tomto skriptu nebo jej můžete vložit do jiného skriptu. TIP ¾ Pro rychlé provedení tohoto příkazu klepněte pravým tlačítkem myši na okno skriptu a potom klepněte na Cut (Vyjmout). Příkaz Cut (Vyjmout) nebude aktivní, pokud jste nezvolili text, který se má vyjmout. Zkopírování zvoleného textu ze skriptu Zvolte text, který chcete vyjmout, a potom v nabídce Edit (Úpravy) klepněte na Copy (Kopírovat). Zkopírovaný text se zapíše do schránky systému Windows. Nyní můžete vyjmutý text vložit na jiné místo v tomto skriptu nebo jej můžete vložit do jiného skriptu. TIP Pro rychlé provedení tohoto příkazu klepněte pravým tlačítkem myši na okno skriptu a potom klepněte na Copy (Kopírovat). Příkaz Copy (Kopírovat) nebude aktivní, pokud jste nezvolili text, který se má kopírovat. Poznámka: Když vyjímáte nebo kopírujete text, zapíše se automaticky do schránky systému Windows. Tato informace zůstane ve schránce, dokud neprovedete následující příkaz vyjmutí nebo kopírování. - 320 - ¾ Vložení textu do skriptu V nabídce Edit (Úpravy) klepněte na Paste (Vložit). Obsah schránky systému Windows se vloží do Vašeho skriptu v místě kurzoru. TIP ¾ Pro rychlé provedení příkazu Paste (Vložit) klepněte pravým tlačítkem myši na okno skriptu a potom klepněte na Paste (Vložit). (Příkaz Paste (Vložit) nebude aktivní, jestliže není ve schránce systému Windows žádná položka k vložení.) Vymazání textu ve skriptu V nabídce Edit (Úpravy) klepněte na Clear (Vymazat). Celý text se vymaže. Skript se však nevymaže z Vaší aplikace. Pokud zvolíte tento příkaz, potom zavřete editor skriptů a znovu jej otevřete, skript se opět objeví. Pokud chcete vymazat jen část skriptu, můžete zvýraznit text, který se má vymazat, klepnout pravým tlačítkem myši na prázdnou plochu okna skriptu a klepnout na Delete (Vymazat). TIP ¾ Pro úplné vymazání skriptu musíte použít příkaz Erase (Vymazat) v nabídce Script (Skript). Vložení funkce do skriptu 1. V nabídce Insert (Vložit) ukažte na Functions (Funkce) a potom klepněte na název kategorie funkce. Objeví se příslušné dialogové okno Choose function (Vybrat funkci). 2. Klepněte na funkci, kterou chcete použít. Dialogové okno se zavře a funkce se automaticky vloží do Vašeho skriptu v místě kurzoru. Jsou dostupné tyto typy funkcí: Funkce Popis All (Všechny) Objeví se dialogové okno Choose function (Vybrat funkci) zobrazující všechny dostupné funkce včetně funkcí pro každý instalovaný doplňkový program (Recipe Manager (Správa receptur), SPC Pro a SQL Access Manager (Správce přístupu SQL) nebo funkce instalované z KBCD). TIP Můžete také klepnout na tlačítko All (Všechny) ve skupině Functions (Funkce) pro přístup k těmto funkcím. Objeví se dialogové okno Choose function (Vybrat funkci) zobrazující všechny dostupné řetězcové funkce. TIP Můžete také klepnout na tlačítko String (Řetězcové) ve skupině Functions (Funkce) pro přístup k těmto funkcím. Objeví se dialogové okno Choose function (Vybrat funkci) zobrazující všechny dostupné matematické funkce. TIP Můžete také klepnout na tlačítko Math (Matematické) ve skupině Functions (Funkce) pro přístup k těmto funkcím. Objeví se dialogové okno Choose function (Vybrat funkci) zobrazující všechny dostupné systémové funkce. Například funkce pro spuštění a/nebo aktivaci jiné aplikace, čtení nebo zápis souboru, diskové informace atd. TIP Můžete také klepnout na tlačítko System (Systémové) ve skupině Functions (Funkce) pro přístup k těmto funkcím. String (Řetězcové) Math (Matematické) System (Systémové) - 321 - Add-ons (Doplňkové) Misc (Různé) Help (Nápověda) Quick Functions (Skript QuickFunction) Objeví se dialogové okno Choose function (Vybrat funkci) zobrazující všechny dostupné funkce pro každý instalovaný dodatečný program (Recipe Manager (Správa receptur), SPC Pro a SQL Access Manager (Správce přístupu SQL)). TIP Můžete také klepnout na tlačítko Add-ons (Doplňkové) ve skupině Functions (Funkce) pro přístup k těmto funkcím. Objeví se dialogové okno Choose function (Vybrat funkci) zobrazující všechny dostupné různé funkce nepatřící do výše uvedených typů s výjimkou All (Všechny). Například funkce pro alarmy, historické trendy, tisk, otevírání/zavírání oken aplikace atd. TIP Můžete také klepnout na tlačítko Misc (Různé) ve skupině Functions (Funkce) pro přístup k těmto funkcím. Objeví se dialogové okno Choose function to Obtain Help for (Vybrat funkci pro získaní nápovědy pro) uvádějící všechny dostupné funkce. Klepněte na funkci pro otevření jejího příslušného tématu nápovědy. TIP Můžete také klepnout na tlačítko Help (Nápověda) ve skupině Functions (Funkce) pro přístup k těmto funkcím. Objeví se dialogové okno Choose function (Vybrat funkci) uvádějící názvy všech skriptů QuickFunction dostupných pro volání z aktuálního skriptu. TIP Můžete také klepnout na tlačítko Quick (Skripty QuickFunction) ve skupině Functions (Funkce) pro přístup ke všem skriptům QuickFunction. Více informací o jednotlivých funkcích skriptů je uvedeno v oddílu "Skriptové funkce". ¾ Vložení proměnné do skriptu 1. V nabídce Insert (Vložit) klepněte na Tagname (Proměnná). Objeví se Prohlížeč proměnných v neomezeném výběrovém režimu. TIP Zobrazí se proměnné definované ve zdroji proměnných, ke kterému byl naposled proveden přístup prostřednictvím prohlížeče proměnných. Pro změnu zdroje proměnných klepněte na šipku Tag Source (Zdroj proměnných) a zvolte zdroj proměnných v seznamu. Klepněte na Define Tag Sources (Definovat zdroje proměnných) pro přidání nebo odstranění zdroje proměnných ze seznamu Tag Source (Zdroj proměnných). 2. Klepněte dvakrát na proměnnou, kterou chcete použít, nebo ji zvolte a potom klepněte na OK. Prohlížeč proměnných se zavře a proměnná se automaticky vloží do Vašeho skriptu QuickScript v místě kurzoru. TIP Pro rychlý přístup k prohlížeči proměnných klepněte dvakrát na volnou plochu v okně skriptu QuickScript. Pro přístup k definici určité proměnné v databázi proměnných napište proměnnou v okně skriptu QuickScript a potom na ni dvakrát klepněte. Více informací o aplikaci Tag Browser (Prohlížeč proměnných) je uvedeno v kapitole 6 "Tagname Dictionary (Databáze proměnných)". - 322 - ¾ Vložení atributu proměnné (.field) do skriptu 1. V nabídce Insert (Vložit) klepněte na Tagname (Proměnná). Objeví se Prohlížeč proměnných v neomezeném výběrovém režimu. TIP Zobrazí se proměnné definované ve zdroji proměnných, ke kterému byl naposled proveden přístup prostřednictvím prohlížeče proměnných. Pro změnu zdroje proměnných klepněte na šipku Tag Source (Zdroj proměnných) a zvolte zdroj proměnných v seznamu. Klepněte na Define Tag Sources (Definovat zdroje proměnných) pro přidání nebo odstranění zdroje proměnných ze seznamu Tag Source (Zdroj proměnných). 2. Zvolte proměnnou, kterou chcete použít a potom klepněte na šipku Dot Field (atributy). Zvolte .field (atribut), který chcete použít s proměnnou v seznamu. 3. Klepněte na OK. Zvolený .field (atribut) proměnné se vloží do Vašeho skriptu QuickScript v místě kurzoru. TIP Pro rychlé vložení .field (atributu) proměnné napište proměnnou následovanou tečkou (.) a potom klepněte dvakrát na pravé straně tečky. Objeví se dialogové okno Choose field name (Vybrat název atributu). Klepněte na .field (atribut), který chcete použít. Dialogové okno se zavře a .field (atribut) se automaticky vloží do Vašeho skriptu QuickScript v místě kurzoru. Více informací o aplikaci Tag Browser (Prohlížeč proměnných) je uvedeno v kapitole 6 "Tagname Dictionary (Databáze proměnných)". ¾ Nalezení nebo nahrazení proměnné v skriptu 1. V nabídce Edit (Úpravy) klepněte na Find (Najít). Objeví se dialogové okno Replace (Nahradit). 2. V poli Find what (Najít co) napište proměnnou, kterou chcete najít (nebo nahradit), a potom klepněte na Find Next (Najít další). 3. V poli Replace with (Nahradit čím) napište novou proměnnou, kterou chcete použít pro nahrazení staré proměnné, a potom klepněte na Replace (Nahradit) nebo Replace All (Nahradit vše). TIP 4. Pokud chcete pouze nahradit určité instance staré proměnné, klepněte na Find Next (Najít další). Program InTouch začne hledat starou proměnnou ve Vašem skriptu. Když se stará proměnná nalezne, zvýrazní se. Klepněte na Replace (Nahradit) pro nahrazení proměnné novou proměnnou nebo klepněte na Find Next (Najít další) pro přeskočení a pokračovaní hledání. Pokud chcete nahradit všechny výskyty určité proměnné, klepněte na Replace All (Nahradit vše) kdykoli během hledání. Zvolte možnost volby Match case (Rozlišovat malá a velká písmena), když potřebujete vyhledávat i podle velkých nebo malých písmen. - 323 - 5. ¾ Klepněte na Cancel (Storno) pro zavření dialogového okna. Vložení názvu okna do skriptu 1. V nabídce Insert (Vložit) klepněte na Window (Okno). Objeví se dialogové okno Window Name to Insert (Název okna pro vložení) zobrazující všechna okna ve Vaší aplikaci. 2. Klepněte na název okna, který chcete použít. Dialogové okno se zavře a název okna se automaticky vloží do Vašeho skriptu v místě kurzoru. ¾ Ověření platnosti skriptu Kdykoli během psaní skriptu klepněte na Validate (Ověřit platnost) pro ověření, zda syntaxe Vašeho skriptu je správná. TIP Ověření platnosti se provede automaticky, když klepnete na OK nebo Save (Uložit). Jakmile systém zjistí chyby při ověřování platnosti Vašeho skriptu, objeví se odpovídající okno s chybovou zprávou. Více informací o chybách skriptů je uvedeno v oddílu "Chybové zprávy editoru skriptů". ¾ Uložení skriptu Jestliže píšete několik skriptů, můžete po dokončení psaní jednoho klepnout na Save (Uložit) a potom v nabídce Script (Skript) klepnout na New (Nový) pro napsání jiného nového skriptu. Poznámka: Skripty Application (Aplikační) a Window (Skript okna) tuto funkci nepodporují. Jinak se funkce uložení provede automaticky, když klepnete na tlačítko OK. TIP ¾ Jakmile systém zjistí chyby při ukládání Vašeho skriptu, objeví se odpovídající okno s chybovou zprávou. Obnovení skriptu Pokud změníte skript a rozhodnete se vymazat Vaše změny a obnovit původní skript, klepněte na Restore (Obnovit). Poznámka: Jakmile jste skript uložili, nelze jej obnovit. Skripty Application (Aplikační) a Window (Skript okna) tuto funkci nepodporují. ¾ Odchod z editoru skriptů V nabídce Script (Skript) klepněte na příkaz Exit (Konec). Editor skriptů se zavře a skript se uloží, pokud nebyla zjištěna chyba. V Application Script (aplikačním skriptu) klepněte na File (Soubor) a na Exit (Konec). TIP Editor skriptů můžete také zavřít klepnutím na OK, jakmile jste dokončili psaní Vašeho skriptu. Poznámka: Když zvolíte Exit (Konec), OK nebo klepnete na tlačítko X v horním pravém rohu dialogového okna, systém automaticky ověří Váš skript z hlediska správnosti. Více informací o chybách skriptů je uvedeno v oddílu "Chybové zprávy editoru skriptů". - 324 - ¾ Stanovení frekvence provádění skriptu V polích While Running/Showing/Down - Every 0 Milliseconds (Při běhu/zobrazení/stisknutí - každých 0 milisekund napište počet milisekund, které mají uplynout před tím, než se skript provede. TIP Když vytváříte aplikační skript While Running (Při běhu), skript okna While Showing (Při zobrazení), podmínkový skript While On True/On False (Při hodnotě pravda/nepravda), klávesový skript a skript dotykově citlivých tlačítek While Down (Při stisknutí), musíte specifikovat frekvenci (v milisekundách), kdy se tyto skripty provedou. Poznámka: Program WindowViewer učiní každý možný pokus spustit tyto skripty tak rychle, jak jste stanovili čas. Výkonnost však nelze zaručit. Skripty také nemohou běžet rychleji, než je nastavení v položce Tick Interval (Interval časování) zadané při konfiguraci vlastností programu WindowViewer. Skripty se nemohou provést rychleji než každých 10 milisekund v operačním systému Windows NT nebo každých 50 milisekund v operačním systému Windows 2000 (nebo v pozdějších verzích). Více informací o nastavení intervalu časování (Tick Interval) je uvedeno v kapitole 2, "Použití programu WindowMaker". Aplikační skripty Aplikační skripty se vztahují na celou aplikaci. Aplikační skripty můžete použít pro spuštění jiných aplikací, vytvoření simulací procesu, kalkulaci proměnné atd. Existují tři typy aplikačního skriptu, které můžete použít v aplikaci: On Startup (Při spuštění) Provede se jednou, když se aplikace poprvé spustí. While Running (Při běhu) Provádí se neustále ve stanovené frekvenci při běhu aplikace. On Shutdown (Při vypnutí) Provede se jednou, když se aplikace ukončí. Poznámka: Aplikační skript On Startup (Při spuštění) se provede předtím, než se otevře jakékoli okno nebo dojde k jakékoli inicializaci při běhu programu. Proto se nemůžete v aplikačním skriptu On Startup (Při spuštění) odvolávat na metody, vlastnosti nebo události ActiveX. Podobně I/O (vstupní/výstupní) komunikace se inicializují až po provedení aplikačního skriptu On Startup (Při spuštění). Proto se nemůžete v aplikačním skriptu On Startup (Při spuštění) odvolávat na proměnné typu I/O nebo „odkazy na vzdálené proměnné“. Navíc se v aplikačním skriptu On Shutdown (Při vypnutí) neprovede aktualizace proměnných typu I/O nebo odkazů na vzdálené proměnné. Změnové skripty (Data Change) nebo podmínkové skripty (Condition) by se neměly spouštět (inicializovat) z aplikačního skriptu On Startup (Při spuštění). Aplikační skript On Shutdown (Při vypnutí) nelze použít pro spouštění jiných aplikací. - 325 - ¾ Přístup k editoru aplikačního skriptu V nabídce Special (Speciální) ukažte na Scripts (Skripty) a potom klepněte na Application Scripts (Aplikační skripty) nebo v Aplikačním průzkumníku ve složce Scripts (Skripty) klepněte dvakrát na Application (Aplikace). Zobrazí se editor Application Script (Aplikační skript) . V Application Explorer (Aplikačním průzkumníku) můžete také ve složce Scripts (Skripty) klepnout pravým tlačítkem myši na Application (Aplikace) a potom na Open (Otevřít). Když zvolíte skript While Running (Při běhu), zaktivuje se pole Every 0 Milliseconds (Každých 0 milisekund). Do pole napište počet milisekund, které mají uplynout před tím, než se skript provede. Pokud chcete, aby se skript provedl okamžitě, vytvořte stejný skript On Startup (Při spuštění). Jakmile je však splněna podmínka nebo událost pro skript While Running (Při běhu), skript se bude opakovaně vykonávat ve stanovené frekvenci. - 326 - Skripty okna Skripty okna se vztahují na jednotlivá okna vytvořená v aplikaci InTouch. Existují tři typy skriptu okna, které můžete použít: ¾ On Show (Při zobrazení) Provede se jednou, když se okno zobrazí. While Showing (Během zobrazování) Provádí se neustále ve stanovené frekvenci během zobrazování okna. On Hide (Při skrytí) Provede se jednou, když se okno skryje (zavře). Vytvoření skriptů okna V nabídce Special (Speciální) ukažte na Scripts (Skripty) a potom klepněte na položku Window Scripts (Skripty okna). Zobrazí se editor Window Script (Skript okna). TIP Pro rychlý přístup k editoru skriptu pro určité okno klepněte pravým tlačítkem myši v Aplikačním průzkumníku v položce Windows (Okna) na název okna a potom klepněte na Window Scripts (Skripty okna). Můžete také klepnout na prázdnou plochu otevřeného okna a potom klepnout na Window Scripts (Skripty okna). Pokud skript pro zvolené okno existuje, skript se zobrazí. - 327 - Když zvolíte While Showing (Během zobrazování), zaktivuje se pole Every 0 Milliseconds (Každých 0 milisekund). Do pole napište počet milisekund, které mají uplynout před tím, než se skript provede. Pokud chcete, aby se skript provedl okamžitě, vytvořte stejný skript On Show (Při zobrazení). Jakmile je však splněna podmínka nebo událost pro skript While Showing (Během zobrazování), skript While Showing se bude opakovaně vykonávat ve stanovené frekvenci. Poznámka: Připojíte-li nějaký skript okna k aktivnímu oknu a potom vytvoříte nové okno, skripty z aktivního okna se mohou zkopírovat do nového okna. Zobrazí se dialogové okno s dotazem, zda chcete zkopírovat skript(y). Klávesové skripty Klávesové skripty se vztahují k určité klávese nebo kombinaci kláves na klávesnici. Můžete je také použít pro vytvoření globálního ovládání aplikace pomocí kláves. Například návrat k oknu hlavní nabídky, odhlášení operátora atd. Existují tři typy klávesových skriptů, které můžete použít: ¾ On Key Down (Při stisknutí klávesy) Provede se jednou, když se klávesa stiskne. While Down (Ve stisknuté poloze) Provádí se neustále ve stanovené frekvenci, když se klávesa drží stisknutá. On Key Up (Při uvolnění klávesy) Provede se jednou, když se klávesa uvolní. Přístup k editoru klávesových skriptů V nabídce Special (Speciální) ukažte na Scripts (Skripty) a potom klepněte na Key Scripts (Klávesové skripty) nebo v Aplikačním průzkumníku ve složce Scripts (Skripty) klepněte dvakrát na Key (Klávesa). Zobrazí se editor Key Script (Klávesový skript). TIP V Aplikačním průzkumníku můžete také ve složce Scripts (Skripty) klepnout pravým tlačítkem myši na Key (Klávesa) a potom na Open (Otevřít). - 328 - Když zvolíte While Down (Ve stisknuté poloze), zaktivuje se pole Every 0 Milliseconds (Každých 0 milisekund). Do pole napište počet milisekund, které mají uplynout před tím, než se skript provede. Pokud chcete, aby se skript provedl okamžitě, vytvořte stejný skript On Key Down (Při stisknutí klávesy). Jakmile je však splněna podmínka nebo událost pro skript While Down (Ve stisknuté poloze), skript se bude opakovaně vykonávat ve stanovené frekvenci. Více informací o přiřazování klávesy ke skriptu je uvedeno v oddílu "Přiřazení klávesové zkratky ke skriptu". Poznámka: Klávesové zkratky, které se mohou používat ve skriptech dotykově citlivých tlačítek aktivního okna budou prioritní před globálními klávesovými skripty se stejnými klávesovými zkratkami. V systému Windows 2000 musí všechny skripty obsahující funkci SendKey a která používá klávesu ALT, přejít do skriptu On Key Up (Při uvolnění klávesy). Klávesa ALT se ve skriptu On Key Down (Při stisknutí klávesy) nevykonává. Skripty dotykově citlivých tlačítek Skripty dotykově citlivých tlačítek jsou podobné jako klávesové skripty kromě toho, že jsou asociovány s objektem, který propojíte přes Animation Link - Action Touch Pushbutton (Animační propojení – Skript dotykově citlivých tlačítek). (Přístup k editoru skriptů se provádí prostřednictvím dialogového okna Animační propojení.) Tyto skripty se provádějí tehdy, když operátor klepne na objekt nebo na tlačítko propojené se skriptem dotykově citlivých tlačítek nebo jej drží stisknuté. Existují tři typy skriptů dotykově citlivých tlačítek, které můžete použít pro objekt: Key Script Description Provede se jednou, když se klávesa stiskne On Left Click/Key Down (Při klepnutí levého tlačítka, popřípadě když se stiskne levé tlačítko. stisknutí klávesy) While Left/ Key Down (Při podržení levého tlačítka, podržení klávesy) Provádí se neustále ve stanovené frekvenci, když se klávesa drží stisknutá. Provede se jednou, když se klávesa uvolní. On Left/Key Up (Po uvolnění levého tlačítka, uvolnění klávesy) On Left Double Click (Při poklepání na levé tlačítko myši) Provede se jednou po dvojklepu na levé tlačítko myši. On Right Click (Při klepnutí pravého tlačítka) Provede se jednou v případě že klepneme na pravé tlačítko. - 329 - While Right Down (Při podržení pravého tlačítka) Probíhá periodicky v případě že máme stisknuto pravé tlačítko. Frekvenci opakování nastavíme ve skriptu) On Right Up (Při uvolnění pravého tlačítka) Provede se jednou, když se pravé tlačítko uvolní. On Right Double Click (Po Provede se jednou když poklepeme dvakrát na dvojklepu na pravé tlačítko) pravé tlačítko. On Center Click (Při klepnutí na prostřední tlačítko) Tato akce se provede po klepnutí na prostřední tlačítko myši. Provádí se periodicky skript v případě držení While Center Down (Při podržení středního tlačítka) prostředního tlačítka. Periodu nastavíme ve skriptu. On Center Up (Při uvolnění Provede se jednou v případě uvolnění prostředního tlačítka. prostředního tlačítka) ¾ On Center Double Click (Při poklepání na střední tlačítko) Provede se jednou, když se dvakrát poklepe na prostřední tlačítko. On Mouse Over (Po najetí na objekt) Provede se v případě že najedeme na objekt. V případě nutnosti je možné nastavit časovou periodu provádění skriptu. Vytvoření skriptu dotykově citlivého tlačítka 1. Nakreslete objekt nebo tlačítko, které chcete propojit se skriptem. 2. Klepněte dvakrát na objekt nebo jej zvolte a potom v nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). Objeví se dialogové okno s výběrem animačních propojení. TIP 3. Pro rychlý přístup do dialogového okna klepněte pravým tlačítkem myši na objekt a pak klepněte na Animation Links (Animační propojení). V oddílu Touch Pushbutton (Dotykově citlivé tlačítko) klepněte na Action (Skript (akce)). Zobrazí se editor InTouch -> Action Script (InTouch -> Skript akce). - 330 - Když zvolíte While Left / Key Down (Při stisknutí levého tlačítka, při stisknutí klávesy), zaktivuje se pole Every 0 Milliseconds (Každých 0 milisekund). Do pole napište počet milisekund, které mají uplynout před tím, než se skript provede. Pokud chcete, aby se skript provedl okamžitě, vytvořte stejný skript On left click / Key Down (Při klepnutí levým tlačítkem, stisknutí klávesy). Jakmile je však splněna podmínka nebo událost pro skript While Down (Ve stisknuté poloze), skript se bude opakovaně vykonávat ve stanovené frekvenci. Více informací o přiřazování klávesy ke skriptu je uvedeno v oddílu "Přiřazení klávesové zkratky ke skriptu". Poznámka: Klávesové zkratky používané ve skriptech dotykově citlivých tlačítek aktivního okna budou prioritní před globálními klávesovými skripty se stejnými klávesovými zkratkami. Klávesové zkratky jsou také aktivní pouze tehdy, když okno s objektem je aktivní (tzn. je otevřeno). Přiřazení klávesové zkratky ke skriptu Editory Key Script (klávesových skriptů) a Touch Action Script (skriptů dotykově citlivých tlačítek) jsou trochu odlišné od jiných editorů skriptů QuickScript. Poněvadž vytváříte skripty používajíci klávesy, musíte specifikovat klávesu (klávesy), kterou (které) má operátor stisknout pro provedení skriptu. ¾ Přiřazení klávesy ke klávesovému skriptu 1. Zvolte klávesu Ctrl a/nebo Shift, pokud chcete, aby operátor držel stisknutou klávesu Ctrl a/nebo Shift, když stiskne klávesu pro provedení skriptu. - 331 - 2. Klepněte na Key (Klávesa) pro zvolení klávesy, kterou chcete přiřadit ke skriptu. Objeví se dialogové okno Choose key (Zvolit klávesu). 3. Klepněte na požadovanou klávesu. Dialogové okno se automaticky zavře a Váš výběr se automaticky vloží do pole Key (Klávesa). Podmínkové skripty Podmínkové skripty se vztahují k diskrétní proměnné nebo výrazu (podmínce), který nabývá hodnot pravda nebo nepravda. Můžete také použít diskrétní výrazy, které obsahují analogové proměnné (viz níže uvedený příklad). Existují čtyři typy podmínkových skriptů, které můžete použít: ¾ On True (Při hodnotě pravda) Provede se jednou, když podmínka přejde na pravdivou hodnotu. On False (Při hodnotě nepravda) Provede se jednou, když podmínka přejde na nepravdivou hodnotu. While True (Během hodnoty pravda) Provádí se neustále, když je podmínka pravdivá. While False (Během hodnoty nepravda) Provádí se neustále, když je podmínka nepravdivá. Přístup k editoru podmínkových skriptů 1. V nabídce Special (Speciální) ukažte na Scripts (Skripty) a potom klepněte na Condition Scripts (Podmínkové skripty) nebo v Aplikačním průzkumníku ve složce Scripts (Skripty) klepněte dvakrát na Condition (Podmínka). Zobrazí se editor Condition Script (Podmínkový skript). TIP V Aplikačním průzkumníku můžete také ve složce Scripts (Skripty) klepnout - 332 - pravým tlačítkem myši na Condition (Podmínkový) a potom na Open (Otevřít). 2. Poněvadž podmínkové skripty se vykonávají na základě splnění a/nebo nesplnění podmínky, musíte specifikovat podmínku (diskrétní proměnná nebo výraz) v poli Condition (Podmínka). Poznámka: Pro jednu podmínku lze použít pouze jeden skript, který však může obsahovat všechny čtyři typy podmínkového skriptu (On True, On False, While True, While False). TIP Můžete také použít diskrétní výraz, v kterém analogová proměnná nabývá hodnoty pravda nebo nepravda. Například TankLevel >= 75. Když v tomto příkladu hodnota proměnné "TankLevel" je větší nebo rovna hodnotě "75", skript závislý na hodnotě pravda se provede. Hodnota podmínky se musí změnit, aby se stala pravdivou nebo nepravdivou předtím, než se skript On True nebo On False provede. Jestliže například počáteční hodnota při spuštění programu WindowViewer je pravda, hodnota se musí stát nepravdivou a potom znovu pravdivá, aby se provedl skript On True (Při hodnotě pravda). Pro stejnou podmínku můžete použít všechny čtyři typy skriptů: Jak skript While True (Během hodnoty pravda), tak skript While False (Během hodnoty nepravda) se začne provádět po uplynutí určitého počtu milisekund. - 333 - Abyste dosáhli okamžitého provedení, vytvořte stejné skripty On True (Při hodnotě pravda) a/nebo On False (Při hodnotě nepravda). Například: 3. Do pole Comment (Komentář) napište jakékoli různé komentáře týkající se skriptu. Změnové skripty Změnové skripty se vztahují ke změně hodnoty proměnné nebo atributu proměnné. Provádějí se jen jednou, když hodnota proměnné nebo jejího atributu (tagname.field) se změní o hodnotu větší, než je pásmo necitlivosti, které se definuje pro proměnnou v databázi proměnných. ¾ Přístup k editoru změnových skriptů 1. V nabídce Special (Speciální) ukažte na Scripts (Skripty) a potom klepněte na Data Change Scripts (Změnové skripty) nebo v Aplikačním průzkumníku ve složce Scripts (Skripty) klepněte dvakrát na Data Change (Změna dat). Zobrazí se editor Data Change Script (Změnový skript). TIP V Aplikačním průzkumníku můžete také ve složce Scripts (Skripty) klepnout pravým tlačítkem myši na Data Change (Změna dat) a potom na Open (Otevřít). - 334 - 2. Poněvadž se změnové skripty vykonávají na základě změny hodnoty dat, musíte v poli Tagname[.field] (Proměnná[.atribut]) specifikovat proměnnou, příp. i její atribut (tagname.field). 3. V nabídce Insert (Vložit) klepněte na Tagname (Proměnná) nebo dvakrát klepněte v okně skriptu. Objeví se dialogové okno Select Tag (Vybrat proměnnou). Pro zvolení proměnné bez .field (.atributu) dvakrát klepněte na proměnnou nebo ji zvolte a potom klepněte na OK. Zvolená proměnná se vloží do Vašeho skriptu v místě kurzoru. TIP Pro rychlý přístup k dialogovému oknu Select Tag (Vybrat proměnnou) klepněte dvakrát na volnou plochu v okně skriptu. Pro přístup k definici určité proměnné v databázi proměnných napište název proměnné a potom na ni dvakrát klepněte. Aby bylo možné zvolit .field (atribut), nejdříve zvolte proměnnou, kterou chcete použít, potom klepněte na šipku Dot Field (atribut) a zvolte .field (atribut), který chcete asociovat se zvolenou proměnnou. Klepněte na OK. Zvolený tagname.field (proměnná.atribut) se vloží do Vašeho skriptu v místě kurzoru. TIP Pro rychlé vložení .field (atributu) proměnné napište proměnnou následovanou tečkou (.) a potom klepněte dvakrát na pravé straně tečky. Objeví se dialogové okno Choose field name (Vybrat název atributu). Klepněte na .field (atribut), který chcete použít. Dialogové okno se zavře a zvolený .field (atribut) se automaticky vloží do Vašeho skriptu v místě kurzoru. Více informací o Tag Browser (Prohlížeči proměnných) je v kapitole 6 "Tagname Dictionary (Databáze proměnných)". - 335 - POZOR: Proměnné, jejichž hodnoty jsou modifikovány v podmínkovém nebo změnovém skriptu, by se neměly použít jako proměnné pro změnový skript nebo ve výrazu podmínkového skriptu. Například: Script1 vyvolá Script2, který vyvolá Script3, který se pokusí vyvolat Script1 (jež je stále aktivní). Poslední volání se neprovede. Aby se zabránilo této situaci, nepoužívejte proměnné, jejichž hodnoty jsou modifikovány v podmínkovém nebo změnovém skriptu jako proměnné pro změnový skript nebo ve výrazu podmínkového skriptu. Skripty událostí ovládacích prvků ActiveX Většina ovládacích prvků ActiveX (ActiveX objektů) má asociované události. Například klepnutí, dvojité klepnutí, stisknuté tlačítko myši a stisknutí klávesy jsou typické události použité v mnoha ovládacích prvcích ActiveX. Skripty ActiveX Event programu InTouch jsou určeny pro podporu reakce na vznik události. Na každou událost určitého ovládacího prvku ActiveX můžete asociovat jeden skript. Události ovládacího prvku ActiveX se vykonávají při běhu programu (WindowViewer). ¾ Přístup k editoru skriptů události ActiveX 1. V dialogovém okně Properties (Vlastnosti) ovládacího prvku ActiveX klepněte na záložku Events (Události), zobrazí se karta vlastností Events (Události): Například: 2. Klepněte dvakrát na prázdnou buňku ve sloupci Script (Skript) nebo napište název skriptu pro událost ActiveX objektu a klepněte na OK. 3. Jestliže napsaný název skriptu události ActiveX objektu neexistuje, objeví se pole s dotazem, zda jej chcete nyní vytvořit. Klepněte na OK. Zobrazí se editor ActiveX Event Scripts (Skripty událostí ActiveX objektů). - 336 - 4. Do pole Name (Název) napište název, který chcete použít pro pojmenování skriptu události ActiveX objektu. 5. Metody ovládacího prvku ActiveX jsou podobné jako vlastnosti ovládacího prvku ActiveX. Vlastnosti jsou datové prvky asociované s objektem, zatímco metody jsou datové funkce, které ovládají objekt. Pro přístup k metodám a vlastnostem ovládacího prvku ActiveX klepněte v nabídce Insert (Vložit) na ActiveX. Zobrazí se ActiveX Control Browser (Prohlížeč ovládacích prvků ActiveX). - 337 - ActiveX Control Browser (Prohlížeč ovládacích prvků ActiveX) zobrazí názvy všech ovládacích prvků ActiveX, které se používají ve Vaší aplikaci. Když zvolíte název ovládacího prvku, zobrazí se jeho příslušné metody a vlastnosti. Vyberte metodu nebo vlastnost, kterou chcete vložit do Vašeho skriptu a potom klepněte na OK. Skripty QuickFunction Skripty QuickFunction jsou skripty, které mohou být volány z jiných skriptů QuickScript nebo výrazů animačního propojení. Jsou uloženy v aplikaci, ve které byly vytvořeny. Volání skriptů QuickFunction z jiných skriptů nebo výrazů animačního propojení Vám umožní vytvořit skript QuickFunction jednou a potom jej znovu použít. Opětovné použití těchto skriptů vylepšuje údržbu Vaší aplikace zmenšením velikosti duplicitního kódu, který se znovu a znovu kopíruje a vkládá do různých skriptů. Použitý kód je uložen v jednom skriptu a v jednom umístění, takže při změně QuickFunction dojde k aktualizaci všech skriptových instancí, které se na tuto QuickFunction odkazují. Skripty QuickFunction lze definovat jako asynchronní, takže při provádění budou běžet v pozadí hlavního procesu (běhu) programu WindowViewer. Tato funkce umožňuje programu WindowViewer oddělit déle trvající operace jako např. vykonávání cyklu FOR NEXT od běhu hlavního programu. Když je třeba provádět tyto déle trvající operace, vytvořením asynchronního skriptu QuickFunction umožníte ,aby všechna animační propojení a jiné funkce programu InTouch zůstaly aktivní a nebyly ovlivněny vykonáváním takové operace. Předpokládejme například, že potřebujete provést kalkulaci v cyklu FOR NEXT. Můžete použít asynchronní skript QuickFunction, takže provádění kalkulace nebude zpožďovat jinou funkčnost programu InTouch. Můžete použít funkci IsAnyAsyncFunctionBusy() pro zjištění, kdy je kalkulace dokončena, a zobrazení výsledku operátorovi. If IsAnyAsyncFunctionBusy(120) ==1 then Show "Calculation running Window"; Endif; - 338 - Poznámka: Nedoporučujeme vykonávání příkazů SQL v asynchronním skriptu QuickFunction, neboť chyby v jakémkoli příkazu SQL mohou způsobit nestabilitu systému. Další informace o asynchronních skriptech najdete v oddílu "Asynchronní skripty QuickFunction". TIP Pole výrazů animačních propojení jsou omezeny na 255 znaků. Můžete však vytvořit komplexnější skript QuickFunction a potom jej vyvolat z pole výrazu animačního propojení. Tato vlastnost vám umožní použít příkaz CALL pro vyvolání komplexního skriptu QuickFunction. Taková QuickFunction musí obsahovat příkaz RETURN, který vrátí výsledek zpět do výrazu. Když se například sečte dohromady několik proměnných každá s 30 znaky (pomocí "&" a ":"), můžete ve výrazu použít pouze 8 proměnných (plus mezery). Avšak použitím příkazu CALL MYSCRIPT($SECOND) ve výrazu můžete volat skript QuickFunction, který může obsahovat stovky proměnných s 30 znaky. Tento skript QuickFunction použije příkaz RETURN pro poskytnutí hodnoty zpět do výrazu. Poznámka: "Spouštěcí" proměnná se musí použít jako parametr pro funkci typu QuickFunction, aby se animační propojení aktualizovalo. Například použití proměnné $Second jako parametr pro funkci typu QuickFunction způsobí, že výraz pro animační propojení se vyhodnotí pokaždé, když $Second změní hodnotu, což způsobí, že skript QuickFunction se volá každou sekundu. Příkaz RETURN ve skriptu QuickFunction nelze použít pro návrat hodnot typu text (Message, String). Jakmile vytvoříte skript QuickFunction a uložíte jej, můžete jej okamžitě volat z jiného skriptu nebo výrazu pomocí jeho názvu. ¾ Vytvoření skriptu QuickFunction 1. V nabídce Special (Speciální) ukažte na Scripts (Skripty) a potom klepněte na QuickFunctions (Skripty QuickFunction) nebo v Aplikačním průzkumníku ve složce Scripts (Skripty) klepněte dvakrát na QuickFunctions (skripty QuickFunction). Zobrazí se editor skriptů QuickFunction. TIP V Application Explorer (Aplikačním průzkumníku) můžete také ve složce Scripts (Skripty) klepnout pravým tlačítkem myši na QuickFunctions (Skripty QuickFunction) a potom na Open (Otevřít). - 339 - 2. Do pole Function (Funkce) napište název skriptu QuickFunction. TIP Název může mít délku až 31 znaků (znaky mezery a duplicitní názvy nelze použít). Tento název budou ostatní skripty nebo výrazy používat pro volání skriptu QuickFunction. Tento název se také objeví v dialogovém okně Choose function (Vybrat funkci), když klepnete buď tlačítko All (Všechny) nebo tlačítko Quick v editoru skriptů QuickScript nebo když klepnete v nabídce Insert (Vložit) v položce Functions (Funkce) buď na příkaz All (Všechny) nebo příkaz Quick Functions (Skripty Quick Functions). 3. Do polí Arguments (Argumenty) napište jednotlivé názvy argumentů pro Váš skript QuickFunction a potom klepněte na šipku argumentu a zvolte v seznamu jeho typ dat. Platné jsou tyto typy dat: Typ dat Popis Integer (celočíselný) Používaný pro předání hodnoty celočíselné proměnné nebo konkrétní celočíselné hodnoty. Real (reálný) Používaný pro předání hodnoty reálné proměnné nebo konkrétní reálné hodnoty. Discrete (diskrétní) Používaný pro předání hodnoty diskrétní proměnné nebo konkrétní diskrétní hodnoty. Message (textový) Používaný pro předání hodnoty textové proměnné nebo konkrétního textu. - 340 - V následujícím seznamu jsou uvedena vyhrazená klíčová slova, která by se neměla používat jako názvy argumentů: Return Integer Call Real Dim Discrete As Message RetVal Názvy argumentů jsou lokální proměnné (local variable), které existují pouze v rámci skriptu QuickFunction, ve kterém jsou definovány. Pro jeden skript QuickFunction můžete použít až 16 argumentů. Názvy argumentů mohou mít délku až 31 znaků a nelze používat mezery. Názvy argumentů musí také začínat abecedním znakem (A-Z). Duplicitní názvy nelze použít. Nepoužívejte názvy proměnných (tagname) pro názvy argumentů. Proměnné mají přednost před názvy argumentů se stejným názvem a Váš skript QuickScript se neprovede náležitým způsobem. Používání argumentů nezvyšuje počet proměnných (tagname) použitých v aplikaci, protože se s nimi zachází jako s lokálními proměnnými (local variable), tzn. nezapočítávají se do celkového počtu proměnných (tagname) v aplikaci. 4. Jakmile jste zapsali názvy argumentů a zvolili jejich typ, jste připraveni napsat Váš skript QuickFunction. Výrazy argumentů skriptu QuickFunction Definované argumenty se při volání QuickFunction zobrazují jako parametry QuickFunction. Parametry skriptů QuickFunction se předávají pomocí hodnoty. V parametru může být jakýkoli výraz skriptu, který nabývá hodnot typu celočíselných, reálných, diskrétních a textových. Všechny hodnoty parametrů se „vypočítají“ při volání skriptu QuickFunction, tzn. ještě před vlastním vykonáním skriptu QuickFunction. Příklady: CALL Stuff (5.6, 237, "PI"); V tomto výrazu je reálná konstanta 5.6 jako argument 1, celočíselná konstanta 237 jako argument 2, textová konstanta "PI" jako argument 3. CALL Temp (IntegerTag); Hodnota celočíselné proměnné se předá do hodnoty argumentu. CALL ValveOpen (Tag.MaxEU -5); Vypočítaná hodnota (Tag.MaxEU -5) se předá do hodnoty argumentu. Shoda typu dat argumentu Při volání skriptu QuickFunction musí existovat přesná shoda (zleva doprava) mezi typy dat jednotlivých použitých parametrů a definovaných argumentů. Musí se také přesně shodovat počet parametrů s počtem argumentů v uloženém skriptu QuickFunction. V případě potřeby lze však použít reálné hodnoty pro celočíselné argumenty (hodnoty za desetinnou čárkou se tím pádem „ztratí“) a celočíselné hodnoty pro reálné argumenty. Tato možnost záměny typu dat umožňuje předat jakoukoli analogovou hodnotu do jakéhokoliv analogového argumentu. Například když zapíšete reálnou hodnotu 1.23 do celočíselného argumentu, použije se pouze číslo 1 a .23 se ztratí. Pokud podobně zapíšete celočíselnou hodnotu 1 do reálného argumentu, rozšíří se číslo 1 na 1.0. Přestože se hodnoty předají, vzhledem k možné ztrátě - 341 - dat při předávání reálné hodnoty do celočíselného (integer) argumentu Vám doporučujeme, abyste zachovali přesnou shodu typů argumentů skriptu QuickFunction. Platná syntaxe skriptu QuickFunction Skripty QuickFunction vrací hodnotu. Syntaxe a forma příkazu pro volání skriptu QuickFunction je následující: CALLQuickFunctionName ( [arg1, ... arg16] ); Kde: CALL QuickFunctionName ( [arg1, ...arg16] ) Je požadované klíčové slovo ve všech skriptech QuickScript a animačních propojeních (výrazech) pro volání skriptu QuickFunction. Je název skriptu QuickFunction (text obsahující 1 až 31 znaků), Jsou parametry (výrazy argumentů 1 až 16) oddělené čárkami a uzavřené v závorkách. Použití příkazu Return Skript QuickFunction je skript, který lze volat z jiného skriptu (volání skriptu). Níže je uveden příklad skriptu, který volá skript QuickFunction: RETURNRESULT = CALL MyFunction( StartHour, EndHour); Příkaz RETURN se používá ve skriptu QuickFunction, aby se 'výsledná' hodnota 'zaslala' zpět do skriptu, odkud byla QuickFunction volána. Když se zjistí příkaz RETURN, dojde k okamžitému zastavení provádění skriptu QuickFunction. V tomto místě skript QuickFunction zašle hodnotu zpět do skriptu, odkud byla QuickFunction volána. Odeslaný typ dat může být diskrétní, celočíselný nebo reálný. Ve výše uvedeném příkladu musí být proměnná RETURNRESULT proměnná diskrétního, celočíselného nebo reálného typu, aby získala přenesenou hodnotu. Když se zjistí příkaz RETURN, neprovádí se žádné další zpracování skriptu QuickFunction. V níže uvedeném příkladu pokud proměnná ConvertType je rovna 0, výraz abs( (Max / Maxprogress) * 100 ) se vypočítá a tento výsledek reálného typu dat se odešle do skriptu, odkud byla QuickFunction volána. Pokud není rovna 0, vrátí hodnotu 0. IF ConvertType == 0 THEN RETURN abs( (Max / Maxprogress) * 100 ); ELSE RETURN 0; ENDIF; Datový typ zaslané hodnoty se určuje dynamicky podle výsledné hodnoty. Např: RETURN AnalogTag; Pokud je proměnná AnalogTag definována jako paměťová celočíselná, příkaz RETURN odešle analogovou (celočíselnou) hodnotu zpět k místu vyvolání. Lze zaslat jen jednu hodnotu. - 342 - Asynchronní skripty QuickFunction Skripty QuickFunction můžete definovat jako asynchronní. (Skripty QuickFunction jsou jediný typ skriptů programu InTouch, který podporuje asynchronní funkčnost.) Když program WindowViewer zjistí volání asynchronního skriptu QuickFunction, vytvoří se samostatné programové vlákno (thread). Jakmile je vytvořeno, program WindowViewer je schopen pokračovat ve volání dalších skriptů (včetně dalších asynchronních skriptů QuickFunction), čekat na ukončení asynchronního skripty, nebo provádět aktualizace grafického zobrazení oken. Toto chování je umožněno tím, že asynchronní skript QuickFunction se vykonává samostatně v nově vytvořeném programovém vláknu. Jakmile se asynchronní skript dokončí, nově vytvořené programové vlákno se ukončí a zanikne. Poznámka: Asynchronní skripty QuickFunction nemohou vracet hodnotu pomocí příkazu RETURN. Proto se asynchronní skripty QuickFunctions nemohou používat ve výrazech animačních propojení. Navíc neexistuje žádné omezení počtu asynchronních skriptů QuickFunction, které se mohou vykonávat současně. Aby se však zajistila dostatečná výkonnost systému, důrazně Vám doporučujeme, abyste nespouštěli současně více než tři skripty. Navíc není možné, aby jakýkoli asynchronní skript QuickFunction souběžně běžel více než jednou. ¾ Vytvoření asynchronního skriptu QuickFunction 1. Vytvořte skript QuickFunction. 2. V nabídce Options (Možnosti) klepněte na Asynchronní. Například: - 343 - Poznámka: Při běhu programu nelze asynchronní skripty QuickFunction zastavit, pokud byly spuštěny. Jestliže však operátor zastaví běh všech skriptů (prostřednictvím příkazu Halt Logic (Zastavit logiku) v nabídce Logic (Logika) nebo stisknutím tlačítka propojeného k proměnné $LogicRunning), nezahájí se vykonávání žádných nových asynchronních skriptů QuickFunction. - 344 - Dohled nad asynchronními skripty Funkce IsAnyAsyncFunctionBusy() umožňuje zjistit, zda běží nějaké asynchronní skripty QuickFunction. Tuto funkci lze použít k tomu, aby skript, který volá asynchronní skript QuickFunction, počkal na dokončení všech ostatních asynchronních skriptů QuickFunction. Tím se umožní synchronizace skriptů. Platná syntaxe této funkce zní: DiscreteTag = IsAnyAsyncFunctionBusy(timeout); Kde: DiscreteTag Je proměnná diskrétního typu, do které se zapíše hodnota následujícím způsobem: Pokud vyprší čas nastavený v parametru Timeout a stále běží nějaká asynchronní funkce QuickFunction, zapíše se do DiscreteTag hodnota 1 (pravda) . timeout Neběží-li žádné asynchronní skripty QuickFunction, okamžitě se zapíše hodnota 0 (nepravda), jinak skript QuickFunction bude čekat až do uplynutí času nastaveného v parametru Timeout. Jakmile se během tohoto času zjistí, že už neběží žádný asynchronní skript QuickFunction, zapíše se do DiscreteTag hodnota 0 (nepravda) . Je celočíselná hodnota představující počet vteřin čekání, během kterých se testuje, zda běží nějaké asynchronní skripty QuickFunction. Předpokládejme například, že se chcete připojit k několika databázím SQL pomocí asynchronních skriptů QuickFunction a víte, že vytvoření těchto spojení bude trvat 2 minuty. Nejdříve spustíte asynchronní skripty QuickFunction pro spojení s databázemi SQL. Dále spustíte funkci IsAnyAsyncFunctionBusy(120) aby bylo dostatek času pro navázání spojení s databází SQL před dokončením skriptu QuickFunction. Pokud však po 2 minutách nebyla vytvořena spojení a asynchronní skripty QuickFunction se stále aktivně snaží vytvořit spojení, odešle se pomocí funkce IsAnyAsyncFunctionBusy() hodnota 1 (pravda). Nyní můžete zobrazit operátorovi chybovou zprávu se sdělením, že navázání spojení s databází SQL bylo neúspěšné. Můžete například použít následující skript: IF IsAnyAsyncFunctionBusy(120) == 1 THEN SHOW "SQL Connection Error Dialog"; ENDIF; - 345 - Použití lokálních proměnných V rámci skriptu můžete deklarovat lokální proměnné (local variable) pro uložení dočasných výsledků. Lze tak vytvořit komplexní výpočty s mezivýsledky, aniž by to ovlivnilo nebo snížilo počet Vašich licencovaných proměnných (tagnames) nebo výkon. Lokální proměnné (local variable) nebo proměnné (tagnames) lze použít vzájemně zaměnitelným způsobem v rámci stejného skriptu. Lokální proměnné ztrácí svoji hodnotu a význam, jakmile se skript dokončí, zatímco proměnné (tagnames) jsou globální a zachovají svoje hodnoty. Na rozdíl od proměnných (tagnames) jsou lokální proměnné deklarovány v rámci těla skriptu. Počet lokálních proměnných skriptu, které můžete deklarovat v rámci daného těla skriptu je omezen pouze pamětí, kterou máte k dispozici. Jakmile jste deklarovali lokální proměnnou, můžete ji vložit do jednoho nebo více výrazů v rámci stejného těla skriptu. Pravidla použití a syntaxe pro umístění názvu lokálních proměnných v rámci těla skriptu jsou stejná jako pravidla pro proměnné (tagnames) s jednou výjimkou – lokální proměnné nepodporují .field (atributy). Tak jako proměnné (tagnames) lze lokální proměnné použít jak na levé, tak na pravé straně příkazů a výrazů, které obsahují jiné lokální proměnné a proměnné (tagnames) odlišných typů dat. Poznámka: Nelze definovat lokální proměnnou (local variable) se stejným názvem jako existující proměnná (tagname). Je však možné vytvořit proměnnou se stejným názvem jako již definovaná lokální proměnná. Pokud dojde k této situaci, lokální proměnná bude mít přednost před globální proměnnou (tagname). Platná syntaxe lokální proměnné Každá lokální proměnná musí být jednotlivě deklarována v rámci skriptu pomocí příkazu DIM. (Deklarace více lokálních proměnných přes jeden příkaz DIM není dovolena.) Syntaxe a forma příkazu DIM je následující: DIM LocalVarName [ AS data-type ]; Kde: DIM LocalVarName Je požadované klíčové slovo. Je název lokální proměnné (local variable), který je v souladu s formátem a omezeními globální proměnné (tagname). Tzn. že názvy lokálních proměnných mohou mít délku až 32 znaků a musí začínat A-Z nebo a-z. Zbývající znaky mohou být: A-Z, a-z, 0-9, !, @, -, ?, #, $, %, _, \ a &. Jestliže existuje konflikt ve Vašem skriptu mezi deklarovaným názvem lokální proměnné a názvem proměnné (tagname), tzn. obě mají stejný název, název lokální proměnné má přednost před proměnnou (tagname). Předpokládejme například, že máte proměnnou definovanou ve Vaší databázi jako "Temp" a Vy deklarujete "DIM Temp AS Integer;". V rámci takového skriptu se výrazy používající "Temp" budou vztahovat k hodnotě asociované s lokální proměnnou "Temp" spíše než s globální proměnnou (tagname) - 346 - "Temp". AS Je volitelné klíčové slovo. Jestliže vynecháte klíčové slovo AS v příkazu DIM, implicitně se deklaruje lokální proměnná jako celočíselný typ dat (integer). Například: DIM LocVar1; je ekvivalentní s: data-type DIM LocVar1 AS Integer; Určuje datový typ lokální proměnné. Může nabývat jedno z následujících čtyřech klíčových slov: Celočíselný DIM LocVar1 AS Integer; Reálný DIM LocVar2 AS Real; Diskrétní DIM LocVar3 AS Discrete; Textový DIM LocVar4 AS Message; Příkaz DIM programu InTouch nelze řadit do kaskády. Kupříkladu následující příklady jsou chybné a nelze je použít: DIM LocVar1 AS Integer, LocVar2 AS Real; DIM LocVar3, LocVar4, LocVar5, AS Message; Pro deklarování několika lokálních proměnných v programu InTouch, musíte zadat samostatný příkaz DIM pro každou lokální proměnnou. Například následující příklady jsou platné: DIM LocVar1 AS Integer; DIM LocVar2 AS Real; Poznámka: U klíčových slov nezáleží na velikosti písmen. Řádek s příkazem DIM musí být ukončen středníkem (;). Příkazy DIM řazené do kaskády nejsou podporovány. Příkaz DIM lze umístit kdekoli v rámci těla skriptu. Musí však být předřazen před prvním použitím lokální proměnné ve skriptu. Jestliže se provádí odkaz na lokální proměnnou před příkazem DIM, editor skriptů ji bude považovat za globální proměnnou (tagname) a Vy budete požádáni o její definici (založení v databázi proměnných). - 347 - Vytváření skriptů s cykly FOR-NEXT Cyklus FOR-NEXT se používá pro provádění funkce (nebo souboru funkcí) v rámci skriptu několikrát během jediného provádění skriptu. Všeobecný formát cyklu FORNEXT je následující: FOR AnalogTag = start_expression TO end_expression [STEP change_expression] ...příkazy,funkce... IF (condition) THEN [EXIT FOR;] ENDIF; ... příkazy,funkce... NEXT; Kde: [ ] BOLDCASE italics AnalogTag start_expression end_expression change_expression Položky uzavřené v závorkách jsou volitelné parametry. Položky zapsané VELKÝMI PÍSMENY tučně označují klíčová slova rezervovaná pro skriptový jazyk. Položky zapsané malými písmeny kurzívou označují proměnné. Proměnná analogového typu. Platný výraz (nebo analogová proměnná) programu InTouch. Jeho hodnota se použije jako inicializační hodnota AnalogTag při provádění cyklu. Platný výraz (nebo analogová proměnná) programu InTouch. Jestliže hodnota AnalogTag je větší než end_expression, provádění skriptu přeskočí k příkazu, který bezprostředně následuje za příkazem NEXT. (Tento výraz udržuje hodnotu pravda, jestliže cyklus narůstá; v opačném případě, když se cyklus snižuje, dojde k ukončení cyklu, jestliže AnalogTag je menší než end_expression.) Platný výraz (nebo analogová proměnná) programu InTouch. Jeho hodnota se použije jako hodnota přírůstku nebo úbytku AnalogTag po provedení příkazu NEXT. Poznámka: Výraz change_expression může být buď kladný nebo záporný. Jestliže change_expression je kladný, start_expression musí být menší nebo roven end_expression jinak se výrazy v cyklu se neprovedou. Jestliže change_expression je záporný, start_expression musí být větší nebo roven end_expression, aby se provedlo tělo cyklu. Pokud není nastaven STEP change_expression, pak change_expression má implicitní hodnotu 1. - 348 - ...příkazy,funkce... FOR TO STEP EXIT FOR NEXT Jeden nebo více platných příkazů nebo funkcí skriptového jazyka programu InTouch. Tyto příkazy lze vložit do cyklů FOR. Vložené cykly vyžadují jiné change_expressions než vnější cykly. Signalizuje začátek cyklu "For". Signalizuje začátek příkazu end_expression. Signalizuje začátek příkazu change_expression. Okamžitě ukončí cyklus a provádění skriptu přeskočí k příkazu, který bezprostředně následuje za příkazem NEXT Signalizuje konec cyklu. Když provádíte cyklus FOR...LOOP, program InTouch: 1. Nastaví AnalogTag rovnou start_expression. 2. Testuje, zda AnalogTag je větší než end_expression. Pokud se jedná o tento případ, program InTouch ukončí cyklus. (Je-li change_expression záporný, program InTouch testuje, zda AnalogTag je menší než end_expression.) 3. Provádí příkazy. 4. Zvýší AnalogTag o 1 – nebo o change_expression, pokud je stanoveno. 5. Opakuje kroky 2 až 4. Vnořování cyklů FOR-NEXT Cykly FOR-NEXT lze vnořovat. Počet úrovní možného vnoření závisí na paměti a zdrojích systému, které jsou k dispozici. Aktualizace obrazovky a bariéry výkonu Během provádění cyklu FOR-NEXT, subsystém aktualizace obrazovky (grafiky v oknech) v programu InTouch se zastaví na dobu, dokud cyklus není dokončen. • Všechny animace na obrazovce se zastaví na dobu provádění cyklu FOR-NEXT. Proto nemůžete použít cyklus FOR-NEXT pro animaci posunu objektu po obrazovce, poněvadž ke všem pohybům dojde až po dokončení cyklu. • Reálné trendy se pozastaví. • Historické trendy se pozastaví, jestliže právě provádí "aktualizaci". • Zobrazené hodnoty se během provádění cyklu na obrazovce neaktualizují. Ačkoli mohou být přítomny nové hodnoty v rámci těchto proměnných, tyto nové hodnoty se zobrazí teprve po dokončení cyklu. • Hodnota jakékoli proměnné typu I/O modifikované v rámci těla cyklu FOR-NEXT se přenese do I/O serveru až po dokončení provádění cyklu. Proto, když provedete modifikaci hodnoty proměnné typu I/O během každé interakce cyklu FOR-NEXT, se přenese do PLC pouze konečná hodnota této proměnné typu I/O. - 349 - Poznámka: Cykly FOR-NEXT pozastaví všechny operace v programu InTouch. Při provádění se nekomunikují žádná data do nebo z programu WindowViewer, neaktualizují se žádná animační propojení a neprovádějí se žádné skripty včetně asynchronních skriptů QuickFunction. Nicméně cykly FOR-NEXT použité v asynchronních skriptech QuickFunction jiné operace nezastaví. Časový limit vykonávání cyklu Cykly FOR-NEXT musí implicitně dokončit vykonávání cyklu během 5 vteřin. Toto je bezpečnostní limit zabudovaný do subsystému cyklů FOR-NEXT. Časový limit se uplatňuje pro všechny cykly FOR-NEXT. Například: FOR X = 1 TO 1000000 FileWriteMessage("C:\LOG.TXT","Hello"); NEXT; Poznámka: Tento limit můžete zvětšit přidáním následujícího parametru do souboru intouch.ini, který je ve Vašem adresáři aplikace: LoopTimeout=20 kde 20 je počet vteřin před předčasným ukončením cyklu. Tento cyklus pravděpodobně překročí časový limit 5 vteřin. V programu Log Viewer se objeví zpráva, která má následující znění: 95/03/07 07:34:40.550/VIEW / Exceeded loop time limit of 5 seconds. 95/03/07 07:34:40.550/VIEW / FOR-NEXT Timeout at X = 65464 Tato chybová zpráva uvádí, že cyklus FOR-NEXT byl ukončen před splněním end_condition, poskytuje také hodnotu proměnné cyklu při ukončení cyklu. Tyto informace Vám umožní zjisti, který cyklus FOR-NEXT má problémy. Poznámka: Časový limit 5 vteřin se vyhodnocuje jen tehdy, když se v rámci cyklu FOR-NEXT dosáhne příkazu NEXT;. Jestliže jste například prováděli následující skript: FOR Index = 1 to 10 SQLInsert(ConnectionID,"ORG","list1"); SQLInsert(ConnectionID,"ORG","list2"); SQLInsert(ConnectionID,"ORG","list3"); SQLInsert(ConnectionID,"ORG","list4"); NEXT; Pokud každý příkaz SQLInsert() se dokončí za 12 vteřin, všechny čtyři funkce by se měly vykonat tak, aby se dokončily před ukončením cyklu, protože časový limit pěti vteřin se vyhodnocuje tehdy, když se dosáhne příkazu NEXT;. - 350 - Hodnota proměnné cyklu po dokončení cyklu Tak jako je tomu v programu Visual Basic (a ve většině jiných populárních programovacích jazycích Basic), je hodnota proměnné cyklu na konci vykonání cyklu definována následujícím způsobem: Index pokračuje ve zvyšování hodnoty počínaje u Start_Condition, zvyšovaná každou iterací o hodnotu Step_Expression, dokud se nedosáhne poslední iterace, ve které hodnota Index překročí hodnotu End_Expression. Proto, jestliže jste měli následující cyklus: FOR Index = 2 TO 25 STEP 7 { Několik skriptových příkazů } NEXT; hodnota Index se bude vyvíjet následovně: Iterace Hodnota Výpočet 1 2 2 9 2+7 3 16 2+7+7 4 23 2+7+7+7 5 30 2+7+7+7+7 V tomto místě, když hodnota dosáhla 30, cyklus zastaví provádění, protože překročil End_Expression. Koncová hodnota Index bude 30. Vnořené cykly FOR-NEXT Cykly FOR-NEXT lze umístit uvnitř jiných cyklů (tak jako podmínkový blok IF...THEN v rámci cyklu FOR...NEXT). Cyklus uvnitř jiného cyklu je znám jako vnořený. Příklad: FOR TagX = 1 TO 5 FOR TagY = 1 TO 10 ...příkazy... IF (condition) THEN [EXIT FOR;] ENDIF; ...příkazy... NEXT; NEXT; Kde: První NEXT uzavírá vnitřní cyklus FOR a poslední NEXT uzavírá vnější cyklus FOR. Podobně ve vnořených podmínkových příkazech IF, příkazy ENDIF se automaticky použijí pro nejbližší příkaz IF. - 351 - Ukončení cyklu Příkaz EXIT FOR Vám umožní provést ukončení přímo z cyklu FOR. Co se týká syntaxe, příkaz EXIT FOR je jednoduchý. Příkaz EXIT FOR se může objevit tolikrát, kolikrát je v cyklu FOR třeba. Například: FOR TagX = 1 TO 10; ...příkazy... IF (condition(podmínka)) THEN EXIT FOR; ENDIF; ...příkazy... NEXT; Níže jsou uvedeny některé příklady různých skriptů s cykly FOR-NEXT: Příklad 1 "Jednoduchý matematický" Tento cyklus umožňuje nakonfigurovat číslo, které se má umocňovat (NumberToRaise), a také mocninu (Power): Product = 1; NumberToRaise = 4; Power = 12; FOR Index = 1 TO Power Product = Product * NumberToRaise; NEXT; Jakmile výše uvedený skript dokončí provádění, hodnota Product bude 16,777,216. Příklad 2 "Komplexní FOR-NEXT využívající nepřímé proměnné" Tento cyklus FOR-NEXT využívá příkazy "EXIT FOR" a "STEP" pro provedení vyhledávání v souboru 100 proměnných a vyhledává proměnnou, která je ekvivalentní s proměnnou NumberEntered. Poznámka: Pro tento příklad se předpokládá, že již existuje 100 paměťových celočíselných (Integer) proměnných (TAG1 - TAG100). Operátor zadá číslo do proměnné NumberEntered a tento cyklus vyhledá TAG1 TAG100 se shodnou hodnotou. Navíc existuje vytvořená nepřímá analogová proměnná: IndirectTag Found = 0; FOR Index = 1 TO 100 IndirectTag.NAME = "TAG" + TEXT( Index, "#" ); IF (IndirectTag.NAME == ("TAG"+ Text(NumberEntered,"#"))) THEN Found = 1; EXIT FOR; ENDIF; NEXT; IF (Found==1) THEN - 352 - Show "CisloNalezeno"; {okno oznamující, že vyhledávání bylo úspěšné} ELSE Show "CisloNenalezeno"; ENDIF; Jakmile skript dokončil vykonávání, zobrazí se okno udávající, zda bylo či nebylo číslo nalezeno. Poznámka: Všimněte si použití dalších dvou skriptových funkcí v rámci tohoto skriptu: Show() a TEXT(). Tento cyklus provádí neobvyklý výpočet, ale znázorňuje použití vnořených cyklů FORNEXT a také použití příkazu "STEP": MyTag = -1; FOR Index = 1000 TO -1000 STEP -5 IF (MyTag > Index) THEN FOR Index2 = 1 TO 10 STEP 2 MyTag = MyTag * (Index + 11); NEXT; ENDIF; NEXT; Jakmile skript dokončí provádění, hodnoty budou následující: MyTag = -7776, Index = -1005 a Index2 = 11. Styly a syntaxe skriptů Editor skriptů programu InTouch podporuje dva "styly" skriptů: "jednoduchý" a "komplexní". Jednoduché skripty umožňují přiřazování, porovnávání, jednoduché matematické funkce atd. Komplexní skripty umožňují provádět logické operace ve formě podmínkových příkazů typu IF-THEN-ELSE. Navíc program InTouch podporuje také použití integrovaných komplexních funkcí a také skriptů QuickFunction. Příkladem funkce může být funkce StartApp(ApplicationName) spouštějící aplikaci systému Windows identifikovanou argumentem "(ApplicationName)". Funkce lze použít jak v jednoduchých, tak komplexních skriptech. Následující oddíl zahrnuje kompletní popisy každého stylu. Požadovaná syntaxe pro výrazy a skripty Syntaxe používaná v dialogových oknech skriptů QuickScript a výrazů animačních propojení je podobná algebraické syntaxi kalkulačky. Většina výrazů jsou příkazy přiřazení zapsané následující formou: a = (b - c) / (2 + x) * xyz; Tento příkaz způsobí, že se hodnota výrazu na pravé straně rovnítka (=) umístí do proměnné s názvem "a". Každý výraz musí končit středníkem (;). Operandy ve výrazu mohou být konstanty nebo proměnné. Na levé straně operátoru přiřazení (=) se musí objevit jediná proměnná. - 353 - Textové proměnné lze zřetězit pomocí operátoru plus (+). Například proměnné mohou být zřetězeny pro použití v nepřímých (Indirect) proměnných. Jestliže jste například vytvořili změnový skript jako níže uvedený, pokaždé, když změníte hodnotu "Number", nepřímá (Indirect) proměnná "Setpoint" se změní následujícím způsobem: Number=1; Setpoint.Name = "Setpoint" + Text(Number, "#" ); Kde: výsledek je "Setpoint1". Jednoduché skripty Jednoduché skripty umožňují implementovat logiku, jako jsou přiřazení, matematické operace a funkce. Níže je uveden příklad takového typu skriptování: React_temp = 150; ResultTag = (Sample1 + Sample2)/2; {toto je komentář} Show "Main Menu"; V tomto příkladu skript přiřadí hodnotu "150" do proměnné "React_temp". Hodnotu proměnné "Sample1" přičte k "Sample2" a výsledek bude vydělen číslem "2"a přiřazen do proměnné "ResultTag". Na obrazovce se objeví okno "Main Menu" (Hlavní nabídka). Poznámka: Všimněte si, že každý logický příkaz musí končit středníkem (;) a že do jednoho skriptu lze vložit několik logických příkazů. Všimněte si také, že v editoru skriptů jsou povoleny komentáře. Komentáře jsou určeny párem složených závorek {}. Byla použita také funkce Show (Zobrazit) s argumentem "Main Menu" (název okna), aby se otevřelo určité okno. Navíc k jednoduchým přiřazením, matematickým operátorům a funkcím podporuje program InTouch několik dalších "operací", které lze použít u "operandů", jako jsou proměnné, číselné konstanty atd. Diskrétní, celočíselné (integer) a reálné typy proměnných jsou podporovány u všech operací uvedených níže. Textové typy proměnných mohou být používány pouze u operací porovnání a přiřazení. V následujícím textu je uveden seznam operací podporovaných programem InTouch: Operace vyžadující 1 operand ~ Doplněk - Negace NOT Logické NOT Operace vyžadující 2 operandy * / + = MOD SHL Násobení Dělení Sčítání a řetězení Odčítání Přiřazení Modulo dělení Posuv vlevo - 354 - SHR & ^ | ** < > <= >= == <> AND OR Posuv vpravo Bitové AND Nonekvivalence Logický součet Mocnina Menší než Větší než Menší nebo roven Větší nebo roven Ekvivalence ("je ekvivalentní s") Nerovno Logické AND Logické OR Priorita operátorů Následující seznam znázorňuje pořadí priority pro vyhodnocování operátorů. První operátor v seznamu je hodnocen jako první, druhý operátor je vyhodnocován jako druhý atd. Operátory ve stejném řádku mají shodnou prioritu. Operátory jsou seřazeny v seznamu od nejvyšší k nejnižší prioritě. ( ) Nejvyšší priorita - , NOT, ~ ** * , /, MOD +, SHL, SHR <, >, <=, > = ==, <> & ^ | = AND OR Nejnižší priorita Příklady priority Poněvadž * má vyšší prioritu než +, B + C * D; je shodné s B + ( C * D ); Poněvadž * a / mají shodnou prioritu, B / C * D; je shodné s (B / C ) * D; Několik jiných příkladů k povšimnutí: B * - D; je shodné s B * ( -D ); B or C and D; je shodné s B or ( C and D ); - 355 - Popisy operátorů Argumenty pro výše uvedené operátory mohou být čísla a/nebo proměnné. Umístění argumentů do závorek je volitelné a u názvů operátorů nezáleží na velikosti písmen. Závorky ( ) Závorky se používají pro zajištění správného pořadí vyhodnocování operací. Usnadňují také čtení složitého výrazu. Operace v závorkách jsou vyhodnocovány jako první (předchází jiná pravidla priority, která se použijí v případě, že nejsou přítomny závorky). Jestliže záleží na prioritě nebo je třeba ji potlačit, použijte závorky. V níže uvedeném příkladu jsou použity závorky k tomu, aby se hodnoty B a C sečetly předtím, než se vynásobí pomocí hodnoty D: ( B + C ) * D; Negace ( - ) Negace je jednočlenný operátor, který převádí kladné celočíselné (Integer) nebo reálné číslo na záporné číslo. Doplněk ( ~ ) Tento operátor poskytuje jedničkový doplněk 32-bitového celého (Integer) čísla. Jinými slovy, převádí každý nulový bit na jedničkový bit a každý jedničkový bit na nulový bit. Operátor doplněk je jednočlenný operátor, který akceptuje pouze celočíselný (integer) operand. Mocnina ( ** ) Tento binární operátor vrací výsledek čísla (základu) umocněného druhým číslem (mocnitel). Základ a mocnitel mohou být reálná nebo celočíselná čísla podléhající následujícím omezením: Nulový základ a záporný mocnitel nejsou platné. Příklad: "0 ** - 2" a "0 ** -2.5" Záporný základ a zlomkový mocnitel nejsou platné. Příklad: "-2 ** 2.5" a "-2 ** -2.5" Při neplatných operandech je výsledek roven nule. Kromě toho výsledek operace by neměl být tak velký nebo tak malý, aby nemohl být reprezentován reálným číslem. Příklad: 1 ** 1 = 1.0 3 ** 2 = 9.0 10 ** 5 = 100000.0 - 356 - Násobení ( * ), dělení ( / ), sčítání ( + ), odčítání ( - ) Tyto operátory provádějí základní matematické operace. Plus (+) se také používá k řetězení textových proměnných. Například textové proměnné mohou být zřetězeny pro použití v nepřímých (Indirect) proměnných. Jestliže jste například vytvořili změnový skript jako níže uvedený, pokaždé, když změníte hodnotu "Number", nepřímá (Indirect) proměnná "Setpoint" se změní následujícím způsobem: Number=1; Setpoint.Name = "Setpoint" + Text(Number, "#" ); Kde: výsledek bude "Setpoint1". Modulo (MOD) MOD je operátor, který dělí celočíselnou (Integer) veličinu po jeho levé straně celočíselnou veličinou po jeho pravé straně. Výsledkem operace MOD je zbytek tohoto dělení. Příklad: 97 MOD 8 dává 1 63 MOD 5 dává 3 Posuv vlevo (SHL), posuv vpravo (SHR) SHL a SHR jsou binární operátory, které pracují pouze s celočíselnými (Integer) operandy. Binární obsah 32-bitového slova, na které se provádí odkaz veličinou na levé straně operátoru, se přesune (doprava nebo doleva) o počet bitových pozic specifikovaných ve veličině na pravé straně operátoru. Bity přesunuté mimo slovo se ztratí. Bitové pozice vyprázdněné posuvem jsou vyplněny nulami. (Posuv je posuv bez znaménka.) Bitové AND ( & ) Jedná se o bitový binární operátor, který navzájem porovnává 32-bitová celočíselná (Integer) slova bit za bitem. Obvyklé použití tohoto operátoru je maskovat soubor bitů. Operace v tomto příkladu "odmaskuje" (nastaví na nulu) horních 24 bitů 32-bitového slova. Například: result = name & 0xff; Nonekvivalence (^) a logický součet ( | ) Tyto operátory jsou bitové logické operátory, které navzájem porovnávají 32-bitová celočíselná (Integer) slova bit za bitem. Nonekvivalence vyhledává opačné bitové stavy v odpovídajících umístěních. Jsou-li odpovídající bity stejné, výsledkem je nula. Pokud se odpovídající bity odlišují, výsledkem je jednička. Příklad: 0 ^ 0 dává 0 0 ^ 1 dává 1 1 ^ 0 dává 1 1 ^ 1 dává 0 Logický součet prověřuje odpovídající bity z hlediska jedničkového stavu. Jestliže oba bity jsou jednička, výsledkem je jednička. Pouze v případě, že odpovídající bity jsou nuly, výsledkem je nula. Například: 0 | 0 dává 0 0 | 1 dává 1 1 | 0 dává 1 1 | 1 dává 1 Přiřazení ( = ) Každý příkaz může obsahovat pouze jeden operátor přiřazení. Na levé straně operátoru přiřazení může být pouze jeden název. Rovnítko (=) operátoru přiřazení čtěte jako "je přiřazena k" nebo "je nastavena na". - 357 - Poznámka: Nezaměňujte rovnítko se znaménkem ekvivalence (==) používané v podmínkách IF-THEN-ELSE a v relačních spojeních. Porovnání ( <, >, <=, >=, ==, <> ) Tyto operátory se používají v porovnávacích příkazech IF-THEN-ELSE pro provádění různých instrukcí založených na stavu výrazu. AND, OR a NOT Tyto operátory jsou funkční pouze u diskrétních proměnných nebo výrazů. Pokud jsou tyto operátory použity u celočíselných (Integer) nebo reálných proměnných, zkonvertují se následujícím způsobem: Reálné na diskrétní: Jestliže je reálná proměnná 0.0, diskrétní je 0, jinak je diskrétní 1. Celočíselné (Integer) na diskrétní: Jestliže je celočíselná proměnná 0, diskrétní je 0, jinak je diskrétní 1. Tedy, jestliže příkaz byl: "Disc1 = Real1 AND Real2;" a Real1 byla 23.7 a Real2 byla 0.0, Disc1 bude mít přiřazenu 0, poněvadž Real1 se zkonvertuje na 1 a Real2 se zkonvertuje na 0. Komplexní skripty Komplexní skripty umožňují provádět logické operace ve formě skriptů typu IF-THENELSE a cyklů FOR-NEXT. V následujícím textu je uveden příklad skriptu IF-THENELSE: IF React_temp > 200 THEN React_temp_sp = 150; PRValve = 1; PlaySound("c:\alert.wav",1); ELSE PRValve = 0; PlaySound("c:\All_Ok.wav",1); ENDIF; V tomto příkladu skript kontroluje, zda teplota reaktoru je vyšší než "200". Pokud tomu tak je, pak se proměnná "React_temp_sp" přiřadí k hodnotě "150", zapne se "PRValve"(PRVentil)a přehraje se zvukový soubor "alert.wav" vyvoláním funkce Playsound().Pokud tomu tak není (teplota reaktoru je nižší než "200"), "PRValve" je vypnutý a přehraje se zvukový soubor "All_Ok.wav". Poznámka: Všimněte si, že příkaz IF vyžaduje příkaz ENDIF (ukončení podmínky). Buďte si také vědomi toho, že příkaz ELSE se nemusí používat, pokud to není nezbytné pro funkčnost skriptu. Všimněte si použití funkce PlaySound(path_text,number) v tomto komplexním skriptu. - 358 - Jednoduchá matematika Tento cyklus provádí jednoduchý opakovaný matematický výpočet. Když se provede, proměnná Product se rovná hodnotě NumberToRaise umocněné na 10, to je Product=NumberToRaise10. Product = 1; NumberToRaise = 4; FOR Index = 1 TO 10 Product = Product * NumberToRaise; NEXT; Jakmile se skript provede, hodnota "Product" bude "1048576". Poznámka: Cykly FOR-NEXT pozastaví všechny operace v programu InTouch. Při provádění se nekomunikují žádná data do nebo z programu WindowViewer, neaktualizují se žádná animační propojení a neprovádějí se žádné skripty včetně asynchronních skriptů QuickFunction. Nicméně cykly FOR-NEXT použité v asynchronních skriptech QuickFunction jiné operace nezastaví. IF-THEN-ELSE a porovnání ve skriptech Příkaz IF-THEN-ELSE se používá pro podmíněné provádění různých instrukcí založených na stavu výrazu. Pro nastavení podmínek v příkazu IF-THEN-ELSE se používají následující srovnávací operátory: < Menší než > Větší než <= Menší nebo roven >= Větší nebo roven == Ekvivalence ("je ekvivalentní s", "je roven s" ) <> Nerovno Níže jsou uvedeny některé příklady různých komplexních skriptů: Příkaz IF-THEN s žádnou podmínkou ELSE: IF a <> 0 THEN a = a + 100; ENDIF; Příkaz IF-THEN-ELSE s jednou podmínkou ELSE: IF temp > 500 THEN Disc = 1; Real = 43.7; ELSE Disc = 0; Real = 93.4; ENDIF; Příkaz IF-THEN-ELSE s jednou podmínkou ELSE IF a žádnou podmínkou ELSE: IF temp > 500 THEN Disc = Disc * 10; ELSE IF temp > 250 THEN x = y / z; a = abc + def; - 359 - ENDIF; ENDIF; Příkaz IF-THEN-ELSE s jednou podmínkou ELSE IF a jednou podmínkou ELSE: IF temp > 500 THEN Disc = Disc - 10; ELSE IF temp Disc ELSE Disc Real ENDIF; < 250 THEN = Disc + 10; = Disc + 50; = 100; ENDIF; Poznámka: Každé IF musí mít odpovídající ENDIF a na konci každého příkazového řádku se musí vložit středník. Příkaz IF-THEN-ELSE s několika podmínkami ELSE IF a jednou podmínkou ELSE: IF temp > 100 THEN temphihi = 1 Disc = 50; ELSE IF temp > 80 THEN temphi = 1; ELSE IF temp < 10 THEN templo = 1; ELSE IF temp < 30 THEN templolo = 1; ELSE tempok = l; ENDIF; ENDIF; ENDIF; ENDIF; Příkaz IF-THEN-ELSE, který testuje Podmínku 1 nebo Podmínku 2: IF (pump1 < 50.0) OR (pump2 < 50.0) THEN alarm-1 = 1; ELSE alarm-1 = 0; ENDIF; Příkaz IF-THEN-ELSE, který testuje Podmínku 1 a zároveň Podmínku 2: IF (pump1 < 50.0) AND (pump2 < 50.0) THEN alarm-2 = 1; ELSE alarm-2 = 0; - 360 - ENDIF; Příkaz IF-THEN-ELSE , který testuje ekvivalenci (rovnost): IF a > 50 THEN IF b == 100 THEN c = 0; ENDIF; ENDIF; Import skriptů QuickScript Import skriptů QuickScript z jedné aplikace programu InTouch do Vaší aktuální aplikace Vám může ušetřit spousty času při vývoji aplikace. Poskytuje Vám také rychlou a snadnou metodu pro tvorbu „odkazů na vzdálené proměnné“. Umožní Vám znovu použít dříve vytvořené skripty QuickScript. Když přesouváte skripty QuickScript z jedné aplikace InTouch do druhé, musíte použít příkaz Import v nabídce File (Soubor). Více informací o odkazech vzdálených proměnných je uvedeno v kapitole 6 "Tagname Dictionary (Databáze proměnných)". ¾ Import skriptu QuickScript 1. Zavřete všechna okna ve Vaší aktuální aplikaci. 2. V nabídce File (Soubor) klepněte na Import. Objeví se dialogové okno Browse for Folder (Procházet složky). 3. Najděte a zvolte adresář (složku) aplikace obsahující skript (skripty) QuickScript, který (které) chcete importovat. 4. Klepněte na OK. Objeví se následující dialogové okno. - 361 - 5. Zvolte typ skriptu (typy skriptů) QuickScript, který (které) chcete importovat. 6. Klepněte na Select (Vybrat). Objeví se dialogové okno Select a ScriptType Script (Vybrat skript ScriptType). 7. Zvolte skript (skripty) QuickScript, který (které) chcete importovat, a potom klepněte na OK pro zavření dialogového okna. Poznámka: Když importujete skripty událostí ActiveX objektů z jedné aplikace do druhé, importují se všechny skripty událostí ActiveX objektů. Navíc, aby importovaný skript události ActiveX v nové aplikaci správně fungoval, musí se v nové aplikaci použít stejný ovládací prvek ActiveX a stejná událost, pro kterou byl skript původně vytvořen a musí být nataženy do paměti. Jestliže se okno obsahující ovládací prvek ActiveX zavře, jeho skripty událostí ActiveX objektů nebo jakékoli jiné skripty QuickScript programu InTouch obsahující skriptové funkce asociované s tímto ovládacím prvkem ActiveX se neprovedou správným způsobem. 8. Klepněte na Import. Systém automaticky zahájí import vybraného skriptu (vybraných skriptů) QuickScript do Vaší aktuální aplikace. - 362 - Poznámka: Když importujete skript QuickScript do nové aplikace, se skriptem se importují také všechny proměnné ve skriptu QuickScript, ale nepřidají se do Vaší databáze proměnných. Místo toho se automaticky převedou na "zástupné" proměnné. Zástupné proměnné musíte zkonvertovat, aby je bylo možné použít, a jestliže nejsou aktuálně definované v databázi proměnných nové aplikace, budete vyzváni k jejich definici. Když se proměnné v importovaném skriptu QuickScript převedou na zástupné proměnné, připojí se tři znaky na začátek každé proměnné. Když se například importuje diskrétní proměnná, proměnná má předponu se třemi znaky ?d:. Importuje-li se proměnná s délkou 30, 31 nebo 32 znaků, vždy se přidají tři znaky na začátek každé proměnné. Přidání těchto tří znaků však nezkrátí délku existující proměnné. Například u proměnné s názvem dlouhým 32 znaků se délka zástupné proměnné zvýší na 35 znaků. Tato tři dodatečná místa jsou vyhrazena pouze pro zástupné proměnné. Toto zvětšení délky proměnné není podporováno pro standardní proměnné. ¾ Konverze zástupných proměnných v importovaném skriptu 1. V nabídce Special (Speciální) ukažte na Scripts (Skripty) a potom klepněte na typ skriptu QuickScript nebo v Aplikačním průzkumníku ve složce Scripts (Skripty) klepněte dvakrát na typ skriptu QuickScript, který jste importovali. Objeví se editor skriptů QuickScript zobrazující první skript QuickScript ve zvoleném typu skriptů. Pokud jste například importovali skript QuickFunction, objeví se editor skriptů QuickFunction. TIP Pro rychlé otevření importovaného skriptu QuickScript klepněte dvakrát v Aplikačním průzkumníku na Scripts (Skripty) a potom klepněte dvakrát na typ skriptu QuickScript. - 363 - 2. Klepněte na Convert (Konvertovat). Objeví se dialogové okno Convert (Konvertovat). 3. Klepněte na Local (Lokální) pro provedení konverze proměnných ve skriptu QuickScript na lokální proměnné (tagname). 4. Po zkonvertování proměnných klepněte v editoru skriptů QuickScript na OK. Více informací o konverzi odkazů vzdálených proměnných je uvedeno v kapitole 6 "Tagname Dictionary (Databáze proměnných)". Tisk skriptů Všechny skripty v každé kategorii skriptů QuickScript programu InTouch můžete vytisknout. ¾ Tisk skriptu 1. V nabídce File (Soubor) klepněte na Print (Tisk). Objeví se dialogové okno WindowMaker Printout (Tisk WindowMaker) . 2. Pro tisk skriptů okna zvolte Windows (Okna) a potom zvolte Window Scripts (Skripty okna). Ve skupině Which Windows? (Která okna?) zvolte All (Všechna) - 364 - pro tisk skriptů všech oken v aplikaci. Pro tisk skriptu určitého okna zvolte Selected (Vybraná). Objeví se dialogové okno Windows to Print (Okna pro tisk). Zvolte okno (okna), jehož skript chcete vytisknout, a potom klepněte na OK. TIP Pokud zvolíte okno, které neobsahuje Window skript (skript okna), vytiskne se následující text: "Window Scripts for Window Name: none " ("Skripty okna pro název okna: žádný). 3. Pro tisk všech skriptů QuickScript zvolte typ skriptu QuickScript a potom klepněte na OK. Skriptové funkce Program InTouch Vám poskytuje množství vestavěných funkcí, které mohou být propojeny s objekty nebo tlačítky nebo použity ve skriptech a mohou tak vykonávat mnoho úkolů. Například potvrzovat alarmy, otevírat/zavírat okna, měnit zobrazované proměnné v historickém trendu atd. Přístup k těmto funkcím je možný v editoru skriptů prostřednictvím nabídky Insert (Vložit) nebo klepnutím na různá tlačítka v oddílu Functions (Funkce). Jakmile jste zvolili funkci v jejím příslušném dialogovém okně, funkce a její požadované argumenty se automaticky vloží do Vašeho skriptu v místě kurzoru. Po vložení funkce do Vašeho skriptu zvýrazníte argument, který chcete modifikovat, a napíšete novou hodnotu. Řetězcové funkce Řetězcové funkce se používají pro práci s textem, tzn. využívají textové proměnné. V následujícím části je stručně popsána každá řetězcová skriptová funkce. Funkce Popis DText Změní hodnotu textové proměnné na základě hodnoty diskrétní proměnné. StringASCII Vrátí ASCII hodnotu prvního textového znaku do specifikované celočíselné (Integer) proměnné. StringChar Vrátí znak odpovídající specifikovanému kódu ASCII. StringFromIntg Zkonvertuje celočíselnou (Integer) hodnotu na text podle specifikovaného základu (binární, hexa aj.). StringFromReal Zkonvertuje reálnou hodnotu na text buď jako číslo s plovoucí desetinnou tečkou nebo na exponenciální zápis. StringFromTime Zkonvertuje časovou hodnotu (ve vteřinách od 1. ledna 1970) na specifikovanou řetězcovou interpretaci. StringInString Vrací pozici v textu, kde najde první výskyt vyhledávaného řetězce (znak nebo znaky). StringLeft Vrací znaky specifikovaného řetězce odleva, počet vrácených znaků je dán hodnotou argumentu Chars. StringLen Vrací délku textu jako celočíselný (Integer) výsledek. StringLower Zkonvertuje všechny znaky s velkými písmeny na znaky s malými písmeny. - 365 - StringMid Vrací znaky specifikovaného řetězce. Vyjme z textu stanovený počet znaků specifikovaný hodnotou Chars počínaje pozicí StartChar. Tato funkce je nepatrně odlišná od funkce StringLeft() nebo StringRight(), protože umožňuje uživateli specifikovat jak počátek, tak konec řetězce, který je třeba vyjmout z textové proměnné. StringReplace Nahradí nebo změní určité části specifikovaného řetězce. StringRight Vrací znaky specifikovaného řetězce odprava, počet vrácených znaků je dán hodnotou argumentu Chars StringSpace Generuje specifikovaný počet mezer buď v textové proměnné nebo ve výrazu. StringTest Testuje první znak textu pro určení, zda je určitého typu. StringToIntg Zkonvertuje číselnou hodnotu textové proměnné na celočíselnou (Integer) hodnotu, kterou lze použít pro matematické výpočty. StringToReal Zkonvertuje číselnou hodnotu textové proměnné na reálnou hodnotu (plovoucí desetinná tečka), kterou lze použít pro matematické výpočty. . StringTrim Odstraní nežádoucí mezery z textu. StringUpper Zkonvertuje v textu všechny znaky s malými písmeny na znaky s velkými písmeny. Text Způsobí, že textová proměnná zobrazí hodnotu analogové (celočíselné nebo reálné) proměnné podle specifikovaného formátu Format_Text (počet celých a desetinných míst). Další informace o platné syntaxi používané pro každou funkci a příklady použití každé funkce najdete v on-line příručce InTouch Reference Guide. Matematické funkce Matematické funkce se používají u celočíselných (Integer) nebo reálných proměnných. V následujících matematických funkcích může být ResultNumericTags a InputNumericTags buď reálný nebo celočíselný (Integer), příp. smíšené (jeden reálný a druhý celočíselný). Mějte však na paměti, že neceločíselný výsledek funkce zapsaný do celočíselné proměnné bude mít za následek „oříznutí“ výsledku. (Část napravo od desetinné tečky se ztratí.) Následující příklady předpokládají, že proměnná ResultNumericTag byla definována buď jako paměťová reálná nebo I/O reálná. V následujícím části je stručně popsána každá matematická skriptová funkce. Funkce Popis Abs Vrací absolutní hodnotu (ekvivalent bez znaménka) specifikovaného čísla. ArcCos Jestliže číslo je v rozsahu -1 až 1 (včetně), vrací úhel v rozsahu 0 až 180 stupňů, jehož cosinus se rovná tomuto číslu. ArcSin Jestliže číslo je v rozsahu -1 až 1 (včetně), vrací úhel v rozsahu -90 až 90 stupňů, jehož sinus se rovná tomuto - 366 - číslu. ArcTan Jestliže číslo je v rozsahu -1 až 1 (včetně), vrací úhel v rozsahu -90 až 90 stupňů, jehož tangens se rovná tomuto číslu. Cos Vrací cosinus úhlu daného ve stupních. Exp Vrací základ přirozeného logaritmu umocněný na zadané číslo. Int Vrací následující celé číslo, které je menší nebo rovno specifikovanému číslu. Log Vrací přirozený logaritmus čísla. LogN Vrací hodnoty logaritmu čísla X při základu N. Pi Vrací hodnotu Pí (Ludolfovo číslo). Round Zaokrouhlí specifikované číslo podle stanovené přesnosti. Sgn Určí znaménko hodnoty (zda je kladná, rovna nule nebo záporná). Sin Vrací sinus úhlu daného ve stupních. Sqrt Vrací druhou mocninu čísla. Tan Vrací tangens úhlu daného ve stupních. Trunc „Ořízné“ reálné číslo (s plovoucí desetinnou tečkou) jednoduchým vypuštěním desetinné části (na pravé straně od tečky). Úplné podrobnosti o platné syntaxi pro každou funkci a příklady použití každé funkce najdete v on-line příručce InTouch Reference Guide. Systémové funkce Systémové funkce se používají pro provádění akcí ve Vašem systému, jako je např. aktivace jiné aplikace systému Windows, kopírovaní, mazání nebo přesunování souborů a vyhledávání informací týkající se Vaší aplikace. Existují dva typy systémových funkcí: souborové a informační. Systémové souborové funkce se používají pro čtení a zápis dat ze/do souborů. Každá z nich má dva společné parametry, Filename a FileOffset. Filename se vztahuje k názvu souboru, ze kterého se provádí čtení nebo do kterého se provádí zápis. Tento název souboru musí obsahovat celou cestu. FileOffset se vztahuje k poloze v souboru, kde začne operace čtení nebo zápisu (měřeno v bajtech od začátku souboru). Pro první bajt souboru je FileOffset 0. Při dokončení operace každá funkce vrací polohu v bajtech, která přímo následuje za daty právě přečtenými nebo zapsánými do souboru. Jestliže například funkce načte 5 bajtů dat počínaje od polohy 10 v bajtech, funkce vrátí 15. Proměnnou FileOffset lze použít jednak jako parametr pro funkce, tak i jako proměnnou pro vracenou hodnotu. Tím se usnadní plynulé operace. - 367 - Příklad: FileOffset=FileReadMessage(Filename,FileOffset,Message_Tagname,0); V tomto příkladě se ze souboru uvedeného v parametru Filename čte řádek textu. Počáteční umístění je specifikováno původní hodnotou FileOffset (například 0, představující začátek souboru). Pozice, kde začne další čtení, se zapíše do FileOffset a tato hodnota se může použít pro další volání funkce FileReadMessage(). Pokaždé, když se zavolá tato funkce, FileOffset se vždy zvětší, tak jak FileReadMessage() čte postupně soubor. V následujícím textu je stručně popsána každá systémová skriptová funkce. Funkce Popis ActivateApp Aktivuje jinou, aktuálně běžící aplikaci systému Windows. FileCopy Zkopíruje soubor SourceFile do DestFile, podobně jako u příkazu Copy (Kopírovat) systému DOS nebo u funkce Copy (Kopírovat) systému Windows. FileDelete Vymaže specifikované soubory. FileMove Tato funkce je podobná funkci FileCopy() vyjma toho, že místo vytváření kopie se přesunuje soubor z jednoho umístění (adresáře) na druhé. FileReadFields Přečte záznam ze specifikovaného souboru CSV (Comma Separated Variable – proměnné oddělené čárkou). FileReadMessage Přečte zadaný počet bajtů (nebo celý řádek) ze specifikovaného textového souboru. FileWriteFields Zapíše záznam do specifikovaného souboru CSV (Comma Separated Variable – proměnné oddělené čárkou). FileWriteMessage Zapíše zadaný počet bajtů (nebo celý řádek) do specifikovaného textového souboru. InfoAppActive Testuje, zda-li je aplikace aktivní (zda-li běží). InfoAppTitle Vrací celý název běžící aplikace (tzn. název úlohy ve Windows) na základě specifikovaného názvu EXE souboru. InfoDisk Vrací informace o určité místní (nebo síťové) diskové jednotce (velikost disku, volné místo na disku). InfoFile Vrací informace o určitém souboru nebo podadresáři (velikost souboru, datum atd). InfoInTouchAppDir Vrací aktuální adresář spuštěné aplikace InTouch. InfoResources Vrací různé hodnoty systémových zdrojů následujícím způsobem: Parametr 1 a 2: V operačním systému Windows NT (a vyšším) - 368 - jsou hodnoty systémových zdrojů GDI (Rozhraní grafických zařízení) a USER (Uživatelské) tvrdě kódované na 50 %. Parametr 3: V operačním systému Windows NT (a vyšším) vrací "volné bajty stránkovacího souboru". Parametr 4: V operačním systému Windows NT (a vyšším) vrací výsledek hledání všech oken nejvyšší úrovně. Počítá pouze okna, která jsou viditelná a nemají žádné vlastníky. Tato hodnota není aktuální počet právě běžících úkolů v systému. Přibližná hodnota by měla odpovídat počtu položek v záložce Applications (Aplikace) v programu Správce úloh systému Windows NT. IsAnyAsyncFunctionBusy Umožňuje zjistit, zda běží nějaké asynchronní skripty QuickFunction. Tuto funkci lze použít k tomu, aby skript, který volá asynchronní skript QuickFunction, počkal na dokončení všech ostatních asynchronních skriptů QuickFunction. Tím se umožní synchronizace skriptů. StartApp Spustí jinou aplikaci Windows. Další informace o platné syntaxi používané pro každou funkci a příklady použití každé funkce najdete v on-line příručce InTouch Reference Guide. Různé (Misc) funkce Tato skupina obsahuje všechny dostupné různé funkce nepatřící do výše uvedených skupin. Různé funkce se používají pro provádění různých akcí, jako je např. otevírání/zavírání oken, práce s historickými trendy, tisk, potvrzování alarmů atd. V následující části je stručně popsána každá skriptová funkce ze skupiny „různé“. Seznam nových alarmových funkcí je uveden v kapitole 9, "Alarmy a události". TIP Názvy funkcí, které začínají na "alm" se používají pouze pro distribuované alarmové systémy. Názvy funkcí začínající na "wc" se používají pro objekty ovládacích prvků Window Controls (seznamy, textová pole atd.). Názvy funkcí začínající na "HT" se používají pouze pro objekty historických trendů. Funkce Popis Ack Potvrzuje jakýkoli nepotvrzený alarm. Tuto funkci lze použít pro proměnnou nebo alarmovou skupinu. almAckAll Potvrzuje všechny alarmy v aktuálním dotazu. Poněvadž alarmový objekt má omezenou zobrazovací plochu (zobrazuje pouze jednu stránku alarmů), funkce almAckAll může potvrdit i alarmy, které nejsou v aktuálním zobrazení viditelné. almAckDisplay Potvrzuje pouze ty alarmy, které jsou aktuálně zobrazeny - 369 - v alarmovém objektu. almAckRecent Potvrzuje pouze poslední (nejnovější) alarm, který vznikl a odpovídá aktuálnímu dotazu. almAckSelect V objektu pro distribuované alarmy je možné za běhu programu vybrat alarmy, např. pomocí myši. Funkce almAckSelect potvrzuje pouze tyto vybrané (označené) alarmy. almDefQuery Provede dotaz s parametry alarmového objektu zadanými v konfiguračním dialogu vývojového prostředí. Tzn. aktualizuje alarmový objekt na výchozí nastavení. almMoveWindow Volá příkazy manipulující s instancí okna alarmového objektu, který zobrazuje alarmy. Např. posuv o stránku/řádek nahoru/dolů. almQuery Provádí dotaz pro aktualizaci zobrazení alarmového objektu. V této funkci jsou předávány všechny parametry dotazu (alarmové skupiny, rozsah priorit, stavy alarmů, typ alarmů aktuální/historické). almSelectAll Přepíná výběr (označení) všech alarmů v alarmovém objektu. almSelectItem Přepíná výběr položky, která je vybrána v alarmovém objektu. almShowStats Zobrazí dialogové okno statistiky zobrazení alarmů v alarmovém objektu. ChangePassword Zobrazí dialogové okno Change Password (Změnit heslo) umožňující přihlášenému operátorovi změnit své heslo. DialogStringEntry Zobrazí na obrazovce alfanumerickou klávesnici umožňující operátorovi změnit aktuální hodnotu textové proměnné. DialogValueEntry Zobrazí na obrazovce numerickou klávesnici umožňující operátorovi změnit aktuální hodnotu diskrétní, celočíselné nebo reálné proměnné. GetNodeName Vrací název uzlu (počítače) do textové proměnné. GetPropertyD Vrací při běhu programu diskrétní hodnotu specifikované vlastnosti. GetPropertyI Vrací při běhu programu celočíselnou hodnotu specifikované vlastnosti. GetPropertyM Vrací při běhu programu textovou hodnotu specifikované vlastnosti. Hide Zavře (skryje) specifikované okno ze skriptu. Funkce Hide musí být umístěna před názvem okna, které se má skrýt. HideSelf Zavře (skryje) okno, z kterého je tato funkce volána. HTGetLastError Určuje, zda došlo k nějaké chybě během posledního zobrazení specifikovaného pera. HTGetPenName Vrací název proměnné, která se aktuálně používá pro specifikované pero # specifikovaného trendu. HTGetTimeAtScoo Vrací čas ve vteřinách od 1. ledna 1970 00:00:00 hodin - 370 - ter (GMT), pro vzorek v místě "scooteru" specifikovaného pomocí ScootNum a ScootLoc. HTGetTimeString AtScooter Vrací řetězec obsahující čas/datum pro vzorek v místě "scooteru" specifikovaného pomocí ScootNum a ScootLoc. HTGetValue Vrací hodnotu požadovaného typu (průměr, maximum, minimum, směrodatná odchylka) pro specifikované pero celého trendu. HTGetValueAtSco oter Vrací hodnotu požadovaného typu (hodnota proměnné/platnost vzorku) pro vzorek ve specifikované pozici "scooteru", trend a pero. HTGetValueAtZon e Vrací hodnotu požadovaného typu (průměr, maximum, minimum, směrodatná odchylka) pro data obsažená mezi pravými a levými pozicemi "scooteru" pro specifikované pero trendu. HTScrollLeft Nastaví počáteční čas trendu na hodnotu starší než aktuální počáteční čas o specifikovaný počet procent z šířky trendu. Účinkem je posun datumu/času diagramu doleva o dané procento. HTScrollRight Nastaví počáteční čas trendu na hodnotu novější než aktuální počáteční čas o specifikovaný počet procent z šířky trendu. Účinkem je posun data/času diagramu doprava o dané procento. HTSelectTag Zobrazí dialogové okno Select Tag (Vybrat proměnnou), v kterém operátor může zvolit proměnnou pro specifikované pero. (Dialogové okno zobrazuje pouze ty proměnné, které byly v databázi proměnných definovány pro záznam historických dat (zvolena možnost Log Data)) HTSetPenName Přiřadí jinou proměnnou do pera v trendu. HTUpdateToCurre ntTime Způsobí, že se načtou a zobrazí data s konečným časem rovným aktuálnímu času. Počáteční čas bude roven EndTime (konečný aktuální čas) mínus šířka grafu. HTZoomIn Vypočítá novou šířku a počáteční čas grafu. Jestliže .ScooterPosLeft trendu je 0.0 a .ScooterPosRight je 1.0, potom nová šířka grafu se rovná staré šířce grafu vydělené dvěma. HTZoomOut Vypočítá novou šířku a počáteční čas grafu. Nová šířka grafu je stará šířka grafu vynásobená dvěma. IOReinitialize Zavře všechny existující I/O konverzace a znovu spustí celý proces navazování I/O konverzací. Když se provádí tato funkce, jsou ovlivněny všechny I/O proměnné. IOGetApplication Vrací do specifikované textové proměnné název aplikace ve specifikovaném komunikačním kanálu (Access Name). IOGetNode Vrací do specifikované textové proměnné název uzlu (počítače) ve specifikovaném komunikačním kanálu (Access Name). IOGetTopic Vrací do specifikované textové proměnné název topiku (Topic) ve specifikovaném komunikačním kanálu (Access Name). IOReinitialize Zavře všechny existující I/O konverzace a znovu spustí celý - 371 - proces navazování I/O konverzací. Když se provádí tato funkce, jsou ovlivněny všechny I/O proměnné. IOSetAccessName Modifikuje název uzlu, aplikace nebo topiku ve specifikovaném komunikačním kanálu (Access Name) při běhu programu, což umožňuje implementovat strategii tzv. horké zálohy programu InTouch. IOSetItem Změní komunikační kanál (Access Name) a/nebo položku (item) u proměnné typu I/O. LogMessage Zapíše uživatelem definovanou zprávu do tzv. Loggeru (zprávy lze prohlížet v utilitě Log Viewer). PlaySound Přehraje zvuk ve formátu WAV specifikovaný názvem souboru .wav nebo zadáním názvu zvuku z oddílu [sounds] registrů Windows. Funkce vyžaduje, aby v systému Windows bylo nainstalováno zvukové zařízení. PrintHT Lze použít pro tisk grafu historických trendů, který je asociován se specifikovanou proměnnou typu Hist Trend. Při používání této funkce musí být historický trend viditelný na obrazovce. PrintScreen Vytiskne všechny okna viditelné na obrazovce. PrintWindow Vytiskne specifikované okno. ReloadWindowVie wer Umožňuje dynamické načtení změn z vývojového uzlu (adresáře) za běhu aplikace InTouch. Používá se u funkčnosti „síťový vývoj aplikace“ (NAD). RestartWindowVie wer Umožňuje vypnutí a opětovné spuštění (restart) programu WindowViewer. Většinou se používá u funkčnosti „síťový vývoj aplikace“ (NAD). SendKeys Posílá sekvence „stisknutých“ kláves do aktivní aplikace Windows. SetPropertyD Nastavuje při běhu programu diskrétní hodnotu specifikované vlastnosti. SetPropertyI Nastavuje při běhu programu celočíselnou (Integer) hodnotu specifikované vlastnosti. SetPropertyM Nastavuje při běhu programu textovou hodnotu specifikované vlastnosti. Show Zobrazí specifikované okno. (Název okna musí být uveden v uvozovkách.) ShowAt Zobrazí specifikované okno v poloze, kterou udávají hodnoty vodorovného a svislého umístění okna v pixelech. Když se okno otevře, bude vystředěné na specifikovaných vodorovných a svislých souřadnicích. ShowHome Zobrazí "domovské (domovská)" okno (okna). Domovská okna jsou ta okna, která jste zvolili, aby se automaticky otvírala při spuštění programu WindowViewer. (Domovská okna se volí v konfiguraci vlastností WindowViewer Properties – záložka Home Windows (Vlastnosti WindowViewer – Domovská okna).) Více informací o domovských oknech je uvedeno v kapitole 2 - Použití programu WindowMaker. ShowTopLeftAt Zobrazí specifikované okno v poloze, kterou udávají hodnoty - 372 - vodorovného a svislého umístění horního levého rohu okna v pixelech. Když se okno otevře, jeho horní levý roh bude umístěné tam, kde se setkávají vodorovné a svislé souřadnice. wcAddItem Přidá textovou položku do ovládacích prvků seznam (list box) nebo pole se seznamem (combo box). wcClear Odstraní všechny položky z ovládacích prvků seznam (list box) nebo pole se seznamem (combo box). wcDeleteItem Vymaže položku, jejíž index je specifikován, z ovládacích prvků seznam (list box) nebo pole se seznamem (combo box). wcDeleteSelection Vymaže aktuálně zvolenou položku ze seznamu. Používá se pro ovládací prvky seznam (list box) nebo pole se seznamem (combo box). wcErrorMessage Jestliže nastane chyba, funkce wcErrorMessage() zobrazí textovou zprávu popisující chybu. Používá se pro ovládací prvky seznam (list box), pole se seznamem (combo box), textová pole (text box), radiová tlačítka (radio button) a zaškrtávací políčka (check box). wcFindItem Určuje odpovídající index první položky v ovládacích prvcích seznam (list box) nebo pole se seznamem (combo box), který se shoduje se specifikovaným textem. wcGetItem Vrací název položky, jejíž index je specifikován, z ovládacích prvků seznam (list box) nebo pole se seznamem (combo box). wcGetItemData Vrací celočíselnou hodnotu vlastnosti položky, jejíž index je specifikován, z ovládacích prvků seznam (list box) nebo pole se seznamem (combo box). wcInsertItem Vloží na specifikovanou pozici text (řetězec) do ovládacích prvků seznam (list box) nebo pole se seznamem (combo box). wcLoadlist Nahradí obsah ovládacích prvků seznam (list box) nebo pole se seznamem (combo box) novými položkami ze specifikovaného souboru. wcLoadText Nahradí obsah ovládacího prvku textového pole (text box) novým textem ze specifikovaného souboru. wcSavelist Nahradí obsah specifikovaného souboru položkami z ovládacích prvků seznam (list box) nebo pole se seznamem (combo box). Pokud soubor neexistuje, bude vytvořen. wcSaveText Uloží text obsažený v ovládacím prvku textové pole do specifikovaného souboru. Pokud soubor neexistuje, bude vytvořen. wcSetItemData Přiřadí celočíselnou hodnotu do vlastnosti položky, jejíž index je specifikován, v ovládacím prvku seznam (list box) nebo pole se seznamem (combo box). Úplné podrobnosti o platné syntaxi pro každou funkci a příklady použití každé funkce najdete v on-line příručce InTouch Reference Guide. - 373 - Funkce WW DDE Funkce WW DDE by se neměly používat jako náhrada normálních DDE komunikací programu InTouch. Kdekoli je to možné, měli byste pro získání a zasílání dat z/do externí aplikace vytvořit proměnnou typu I/O (DDE). Funkce WW DDE jsou určeny pro podporu aplikací, které nemohou komunikovat pomocí DDE Advises (DDE hot link) podporovaných programem InTouch. Některé aplikace podporují například jen DDE Execute nebo Poke. Funkce WWExecute(), WWPoke() a WWRequest() používají stejné funkce systému Windows jako program MS Visual Basic (DDEML). Jediná funkce ve skutečnosti provádí několik věcí. Například funkce WWPoke() provede funkci DDE Initiate (Iniciovat DDE), DDE Poke (Zapsat přes DDE) a DDE Terminate (Ukončit DDE) v jediné funkci. Tím jsou funkce WW DDE méně náchylné na chyby, ale jsou také méně účinné při komunikaci většího počtu DDE zpráv. Jako všeobecná pravidla při používání těchto funkcí byste nikdy neměli: Cyklovat tyto funkce (stále znovu je vyvolávat). Vyvolávat několik funkcí DDE v řadě a ve stejném skriptu. Používat je pro vyvolávání delších úloh v jiné aplikaci DDE. Jestliže příkaz DDE spustí dlouhý úkol v jiné aplikaci, může tento úkol využít všechen dostupný čas procesoru. Přesto, i když dojde k potížím s komunikací, nedojde k žádné ztrátě dat. Dokonce když I/O server nemůže poslat DDE zprávy do programu InTouch, bude se o to stále snažit. V následujícím textu je stručně popsána každá skriptová funkce. Podrobnosti o platné syntaxi pro každou funkci a příklady použití každé funkce najdete v on-line příručce InTouch Reference Guide. Funkce Popis WWControl Umožní Vám obnovit, minimalizovat, maximalizovat nebo zavřít aplikaci Windows z programu InTouch. WWExecute Zašle příkaz (pomocí DDE Execute) do specifikované aplikace a topiku (Topic). WWPoke Pošle (zapíše) hodnotu (pomocí DDE Poke) do specifikované aplikace, topiku a položky. WWRequest Provede jednorázový požadavek na načtení hodnoty (pomocí DDE Request) ze specifikované aplikace, topiku a položky. - 374 - Chybové zprávy editoru skriptů Pokud editor skriptů zjistí jakékoli chyby ve skriptu při ověřování jeho platnosti (správnosti syntaxe), zobrazí se odpovídající okno se zprávou. Například: TIP Ve většině případů při zjištění chyby umístí program InTouch kurzor na místo ve skriptu, kde došlo k chybě. Avšak v některých případech, jako je např. chybějící ENDIF, kurzor bude na konci skriptu. Předtím, než systém skript akceptuje, musí být všechny chyby opraveny. Chybová zpráva Definice Can only compare alarm groups for equality (Lze pouze porovnat alarmové skupiny z hlediska rovnosti) Nelze porovnat alarmové skupiny pomocí <, >, <=, >=. Cannot add, subtract, multiply or divide with strings (Nelze sčítat, odečítat, násobit nebo dělit s řetězci (texty) ) Tyto operace nejsou pro řetězce (texty) podporovány. Cannot mix another type with alarm group (Nelze směšovat jiný typ s alarmovou skupinou) Pokus porovnat alarmovou skupinu s jiným datovým typem (např. celočíselnou hodnotou) nebo pokus použít něco jiného než alarmovou skupinu někde, kde se očekává alarmová skupina. Cannot mix another type with string (Nelze směšovat jiný typ s řetězcem (textem) ) Pokus porovnat řetězec (text) s jiným datovým typem (např. celočíselnou hodnotou) nebo pokus použít něco jiného než řetězec někde, kde se očekává řetězec (text). Cannot negate alarm groups (Nelze negovat alarmové skupiny) Bylo použito znaménko mínus (-). Cannot negate Access Name (Nelze negovat název komunikačního kanálu) Před názvem komunikačního kanálu (Access Name) není dovoleno "-" nebo "~". Cannot negate strings (Nelze negovat texty) Bylo použito znaménko mínus (-). Cannot negate TagID (Nelze negovat proměnnou typu TagID) Bylo použito znaménko mínus (-). Cannot negate window (Nelze negovat okno) Před názvem okna není dovoleno "-" nebo "~". - 375 - Cannot use Access Name in this manner (Nelze použít název komunikačního kanálu tímto způsobem) Název komunikačního kanálu nelze použít v tomto kontextu. Cannot use HistTrendTag in this manner (Nelze použít proměnnou typu HistTrend tímto způsobem) Pokus porovnat řetězec (text) s jiným datovým typem (např. celočíselnou hodnotou) nebo pokus použít něco jiného než řetězec někde, kde se očekává řetězec (text). Cannot use TagID in this manner (Nelze použít proměnnou typu TagID tímto způsobem) Proměnnou typu TagID nelze použít v tomto kontextu. Cannot use window name in this manner (Nelze použít název okna tímto způsobem) Název okna nelze použít v tomto kontextu. E Format must be between -38 and +38 (Formát E musí být v rozsahu -38 až +38) Maximální číslo formátu "e" je v rozsahu e-38 až e+38. E format must have digit following E (Formát E musí mít za E číslici) Platný formát "e" je n.nnen, 1.e není dovoleno. Expecting ")" after function arguments (Za argumenty funkce očekáváno ")") Je potřebná odpovídající pravá závorka, aby byla v souladu s levou závorkou následující za názvem funkce. Expecting "(" after function name (Za názvem funkce očekáváno "(") Za tímto názvem funkce je potřebná levá závorka. Expecting a number after 0x (Za 0x očekáváno číslo) Do programu InTouch lze zadat hexadecimální čísla (základ 16). Při použití hexadecimálního čísla začněte s 0x a pokračujte s číslicemi. Expecting an expression after IF (Za IF očekáván výraz) Chybí diskrétní výraz, resp. podmínka. Expecting analog argument for function (Očekáván analogový argument funkce) Tento argument pro tuto funkci vyžaduje analogovou hodnotu. Expecting another argument (Očekáván další argument) Tato funkce vyžaduje více argumentů než je uvedeno. Expecting another operand (Očekáván další operand) Jestliže se zadá "a + ", program InTouch zobrazí tuto chybovou zprávu. Expecting assignment (Očekáváno přiřazení) Ve skriptu byla použita proměnná a následující logická operace by měla být přiřazení " = ". Expecting comma and other argument(s) to function (Očekávána čárka a další Tato funkce vyžaduje více argumentů. - 376 - argument(y) k funkci) Expecting DLL Name (Očekáván název DLL) V tomto kontextu se musí použít název DLL. Expecting ENDIF (Očekáváno ENDIF) Každé IF musí mít ENDIF. Expecting ENDIF or ELSE (Očekáváno ENDIF nebo ELSE) Každé IF/THEN musí být spárováno s ENDIF nebo ELSE. Expecting an expression after assignment (=) (Za přiřazením (=) očekáván výraz) Ve skriptu byly zadány proměnná a přiřazení a po přiřazení nebyla zadána žádná hodnota. Toto se může také stát tehdy, když se zadá => místo >=. Expecting Function Name (Očekáván název funkce) V tomto kontextu se musí použít název funkce. Expecting right parentheses (Očekávány pravé závorky) Nebyla nalezena odpovídající závorka ")". Expecting name (Očekáván název) Pro tento argument se očekává proměnná. Expecting name in statement (V příkazu očekáván název) Chybějící název v příkazu. Expecting semicolon (Očekáván středník) Na konci řádku (příkazu) chybí středník. Expecting string (Očekáván text (řetězec) ) Daný argument musí být textový výraz (název textové proměnné nebo text ohraničený dvojitými uvozovkami (")). Expecting THEN (Očekáváno THEN) Za příkazem IF chybí THEN. Expecting window name - must be string expression (Očekáván název okna – musí být textový výraz) Daný argument musí být textový výraz (název textové proměnné nebo text ohraničený dvojitými uvozovkami (")). Extra expressions (Nepovolené výrazy) Například výraz "a b" není dovolený, "a + b" je v pořádku. Function only legal in action scripts or logic (Funkce je dovolená pouze ve skriptech nebo logice) Některé funkce jsou dovolené jen ve skriptech, ne ve výrazech (v animačních propojeních). IF expression must be discrete (use == instead of =) (Výraz IF musí být diskrétní (použijte == místo =)) Je generována chyba z důvodu použití přiřazení (=) místo porovnání (==). Například "IF a = b THEN ..." by měl být "IF a == b THEN ...". Tato chybová zpráva může být také generována v případě, že se použije "IF x THEN..." a x není diskrétní proměnná. Invalid or missing operand (Neplatný nebo chybějící operand) Operand požadovaný pro operátor je buď neplatný nebo chybí. Invalid placeholder name - must have chars follow ?x: (Neplatný název zástupné proměnné – Popisné znaky musí následovat za ?x: v názvu zástupné proměnné. - 377 - znaky musí mít za ?x:) Invalid placeholder name second char must be d, i, a, r, m, v, g, h, t (Neplatný název zástupné proměnné – druhý znak musí být d, i, a, r, m, v, g, h, t) V názvu zástupné proměnné je druhý popisný číselný znak neplatný. Invalid placeholder name - third char must be ":" (Neplatný název zástupné proměnné – třetí znak musí být ":") V názvu zástupné proměnné je třetí popisný číselný znak neplatný. Logical AND/OR must use discrete (Logické AND/OR musí používat diskrétní výraz) Při použití operátorů AND/OR jsou třeba diskrétní výrazy. Tedy "x AND y" je v pořádku, jestliže x a y jsou diskrétní proměnné, jsou-li jiného typu, generuje se tato chybová zpráva. Logical NOT must use discrete (Logické NOT musí používat diskrétní výraz) Při použití operátoru NOT jsou třeba diskrétní výrazy. Tedy "NOT x" je v pořádku, jestliže x je diskrétní proměnná, je-li jiného typu než diskrétní, objeví se tato chybová zpráva. Maximum string 131 characters (Maximální délka textu je 131 znaků) Text (řetězec) je delší než maximální dovolená délka. Must assign the return value of function (Musí se přiřadit proměnná pro vrácení hodnoty funkce) Určité funkce vyžadují, aby se jejich funkční vyhodnocení přiřadilo do nějaké proměnné (vrací výsledek své operace). Must have a digit after decimal point (Za desetinnou tečkou musí být číslice) Syntaxe "1." není dovolená. Must have hist trend variable for this argument (Pro tento argument se musí použít proměnná typu historický trend) V tomto kontextu se musí použít proměnná typu HistTrend. Must have writeable analog variable or name.field for this argument .field (Tento argument musí mít zapisovatelnou analogovou proměnnou nebo atribut) Argument musí být celočíselná nebo reálná proměnná, do které lze zapsat, nesmí být pouze pro čtení. Must have writeable discrete variable for this argument (Tento argument musí mít zapisovatelnou diskrétní proměnnou) Argument pro tuto funkci musí být proměnná, jejíž typ je diskrétní a u které NENÍ zaškrtnuta volba "pouze pro čtení" (Read Only). Must have writeable integer variable for this argument (Tento argument musí mít zapisovatelnou celočíselnou proměnnou) Argument pro tuto funkci musí být proměnná, jejíž typ je celočíselný a u které NENÍ zaškrtnuta volba "pouze pro čtení" (Read Only). - 378 - Must have writeable message variable for this argument (Tento argument musí mít zapisovatelnou textovou proměnnou) Argument pro tuto funkci musí být proměnná, jejíž typ je textový a u které NENÍ zaškrtnuta volba "pouze pro čtení" (Read Only). Must have writeable real variable for this argument (Tento argument musí mít zapisovatelnou reálnou proměnnou) Argument pro tuto funkci musí být proměnná, jejíž typ je reálný a u které NENÍ zaškrtnuta volba "pouze pro čtení" (Read Only). Must have writeable variable for this argument (Tento argument musí mít zapisovatelnou proměnnou) Argument pro tuto funkci musí být proměnná, u které NENÍ zaškrtnuta volba "pouze pro čtení" (Read Only). Must not assign the return value of function (Nelze přiřadit proměnnou pro vrácení hodnoty funkce) Určité funkce nevrací žádnou hodnotu a nelze je tedy přiřadit pro vrácení hodnoty do proměnné. Name too long (Název příliš dlouhý) Název musí mít <= 32 znaků. No closing comment (Komentář není uzavřen) Znaky ohraničující začátek komentáře ({) musí být spárovány se znaky ohraničující konec komentáře (}). No closing quote (Chybí uzavírající uvozovky) Chybí uzavírající uvozovky ("). Not enough room in display buffer (Nedostatek místa v zobrazovací vyrovnávací paměti) Nedostatek paměti pro tuto operaci. Vyčistěte paměť a tato operace se dokončí. Not enough room in expression buffer (Nedostatek místa ve vyrovnávací paměti výrazu) V současné době není pro tuto operaci dostatek paměti. Vyčistěte paměť a tato operace se může dokončit. Only 8 digits allowed after 0x (Za 0x je dovoleno pouze 8 číslic) Při zadávání hexadecimálního čísla je dovoleno jen 8 číslic. Number too large (Číslo příliš velké) Absolutní hodnota čísel musí být < 2e38. Number too small (Číslo příliš malé) Absolutní hodnota čísel musí být > 2e-38. Too many arguments (Příliš mnoho argumentů) Bylo zadáno více argumentů k této funkci než je potřeba. Trying to assign to a read-only name (Pokus o přiřazení hodnoty do proměnné „pouze pro čtení“) Není dovoleno přiřazovat hodnotu do proměnné, u které JE zaškrtnuta volba "pouze pro čtení" (Read Only). Undefined field name (Nedefinovaný atribut) Název .field (atributu) není definován, pravděpodobně kvůli chybě při psaní. Unrecognized character (Nepřípustný znak) Zvýrazněný znak není dovolený ve výrazech nebo skriptech. - 379 - Using a reserved field name (e.g., SP) for normal tagname (Použití vyhrazeného názvu pole (např. SP) pro normální proměnnou) Pro proměnnou nelze použít takový název, protože je vyhrazený pro systém InTouch. Chybové zprávy pro ovládací prvky a distribuované alarmy Skriptové funkce ovládacích prvků a distribuovaných alarmů vrací hodnotu založenou na výsledku zpracování funkce skriptu QuickScript. Vrácenou hodnotu používanou pro diagnostiku chyb lze přiřadit k celočíselné proměnné. Například: ErrorNumber = wcGetItem("ControlName", Number, Tagname); Kde: ErrorNumber je celočíselný (Integer) typ proměnné, která uchovává vrácenou chybovou hodnotu. Tuto hodnotu funkce lze zapsat do wcErrorMessage(). Funkce wcErrorMessage() vrátí textový popis chyby. Například: ErrorMsg = wcErrorMessge(ErrorNumber); Kde: ErrorMsg je proměnná textového typu, která uchovává popis vrácené chyby. Následující tabulka udává numerickou hodnotu a její popis: Chybová zpráva Definice 0 Úspěch -1 Všeobecná chyba -2 Nedostatek paměti -3 Vlastnost je pouze pro čtení -4 Specifikovaná položka je již přítomna -5 Neznámý název objektu -6 Neznámý název vlastnosti -x* Neznámá chyba * -x představuje jakékoli jiné číslo. - 380 - K A P I T O L A 9 Alarmy a události Program InTouch je vybaven systémem výstražných hlášení (alarmů), který informuje operátory o stavu výrobního procesu a řídicího systému. Tento systém umožňuje zobrazování, ukládání a tisk procesních alarmů a systémových událostí. Alarmy představují varovná hlášení o stavu sledovaných podmínek procesu, naproti tomu události představují běžné zprávy o stavu systému. Program InTouch podporuje distribuovaný alarmový systém,který umožňuje zobrazovat jak alarmy a události generované lokální aplikací programu InTouch tak i alarmovými systémy jiných aplikací programu InTouch pracujících v síti. Alarmy lze potvrzovat z místní InTouch aplikace nebo ze vzdáleného uzlu v síti. Tato kapitola popisuje distribuovaný alarmový systém, různé typy alarmů a hierarchii alarmových skupin. Specifické oddíly obsahují návody jak přidávat, modifikovat a mazat alarmové skupiny, přiřazovat proměnné k alarmovým skupinám, definovat stavy alarmů pro proměnnou, zobrazovat, ukládat a tisknout alarmy a jak konfigurovat alarmový systém. Obsah • • • • • • • • • • • • • • • • • • • Úvod Všeobecný základ o alarmech Alarmy a události Aktuální alarmy v porovnání s historickými alarmy Typy alarmů Priority alarmů Alarmové skupiny Vytvoření alarmové skupiny Seznamy distribuovaných alarmových poskytovatelů Modely potvrzování alarmů Systém poskytování a spotřeby alarmů Ukládání alarmových dat Konfigurace alarmů v databázi proměnných Alarmové atributy proměnné Řízení vzniku a viditelnosti alarmů Nastavení alarmového systému Potvrzování lokálních alarmů Horká záloha a synchronizace Vzorové architektury - 381 - Úvod Distribuovaný alarmový systém tvoří sada softwarových komponentů, které pracují nezávisle na programu WindowViewer. Tyto komponenty umožňují programu InTouch a jiným programům z FactorySuite předávat informace o alarmech v síti. Program z integrované rodiny FactorySuite působící jako poskytovatel alarmů provádí aktuální detekci stavu alarmu. Poskytovatelé alarmů zapisují alarmová hlášení do distribuovaného alarmového systému prostřednictvím funkcí API. Na druhé straně program z rodiny FactorySuite působící jako spotřebitel alarmů vyhledává alarmová hlášení v distribuovaném alarmovém systému voláním funkcí API a získané informace o alarmu poté zobrazuje a případně tiskne a/nebo ukládá. V předchozích verzích programu InTouch byl distribuovaný alarmový systém soustředěn na komunikaci mezi spotřebiteli alarmů, tj. mezi aplikacemi, které podporovaly základní flexibilní funkce: zobrazování alarmů v okně programu InTouch View, ukládání historie alarmů, potvrzování alarmů a tisk alarmů. Nový distribuovaný alarmový systém má vyšší výkonnost a dále rozšiřuje alarmový systém o následující vlastnosti: • Deaktivace a potlačení vzniku alarmu • Potlačení zobrazení alarmu • Ukládání alarmů do databáze SQL Distribuovaný alarmový systém nadále poskytuje služby pro zobrazování, ukládání, tisk a potvrzování procesních alarmů i systémových událostí. Pracuje s alarmy a událostmi generovanými lokální aplikací programu InTouch i aplikacemi programu InTouch běžícími na jiných síťových uzlech. Ve skutečnosti lze pracovat i s poskytovateli alarmů jinými než je program InTouch, pokud jsou zkonfigurováni pro použití v distribuovaném alarmovém systému. K vlastnostem a součástem distribuovaného alarmového systému patří: • Schopnost zobrazovat a potvrzovat alarmy z libovolného síťového uzlu, na kterém běží program InTouch. • Alarmový objekt, který je vybaven vestavěnými posuvníky, sloupci s měnitelnou šířkou, možností označit více alarmů, signalizací stavu, dynamickým systémem zobrazování, možností barevného rozlišení podle priority alarmů atd. • Početná sada skriptových funkcí umožňujících dynamické řízení zobrazení, potvrzování a potlačování alarmů. • Mechanizmus seskupování, který umožňuje, aby více alarmových skupin z rozdílných aplikací bylo obsluhováno pomocí jediného jména. • Možnost přiřadit k alarmům komentář při jejich potvrzení. - 382 - Všeobecný základ o alarmech Existuje velké množství pojmů a koncepcí, které se alarmů týkají všeobecně, bez ohledu na konkrétní systém, ve kterém jsou používány nebo jak jsou implementovány. Následovně budou obecně vysvětleny základní pojmy: • Alarmy: Všeobecně vzato je alarm specifický typ obecnějšího konceptu stavu – alarm je především vyjímečný stav. Cílem generování alarmu je signalizovat, že cosi neprobíhá správně nebo že bylo dosaženo určitého stádia zpracování. Alarm může například indikovat, že ohřívač vody (bojler) překročil bezpečný limit teploty nebo může prostě signalizovat ukončení pracovní směny. • Priorita: Úroveň závažnosti neboli priority alarmu označuje, jak "kritická" je situace nebo jak "důležitý" je stav. V případě překročení limitu teploty ohřívače může být stav kategorizován jako "velmi závažný" nebo "velmi důležitý" vyžadující okamžitou pozornost a nutnost zasáhnout za účelem zachovaní zdraví a majetku. Na druhé straně stav ukončení směny bude mít minimální závažnost. Závažnost alarmu obvykle závisí na okolnostech – na aplikaci ve výrobním závodu, charakteru vybavení, systému zabezpečení, dostupnosti záložních systémů, na potenciálních nákladech na opravu systému nebo jeho součástí, na pravděpodobnosti způsobení prostoje atd. Poznámka: Pro kategorizaci závažnosti alarmů používá program InTouch stupnici priorit, kde úroveň 1 označuje nejdůležitější a 999 nejméně důležité alarmy. Další informace o prioritách najdete v oddílu "Priority alarmů". • Substavy: Alarm může mít rovněž definovány substavy. V takovém případě se jedná o vícestavový alarm. Například alarm od analogové proměnné má obvykle několik limitů, limity "High (Vysoký)" a "Low (Nízký)" vymezující normální provozní rozsah a limity "HiHi (Velmi vysoký)" a "LoLo (Velmi nízký)" označující extrémní odchylky od normálu. Výše zmiňovaná teplota ohřívače by byla v alarmovém stavu pro jakýkoli z těchto substavů. Může také přecházet mezi dvěma substavy, přičemž stále zůstává v celkovém alarmovém stavu. • Události: Událost představuje detekovatelnou změnu stavu, který může nebo nemusí být asociován s alarmem. Přechod do nebo z alarmového stavu představuje samozřejmě rovněž událost. Událost může také označit činnost operátora, změnu v konfiguraci systému nebo nějaký druh systémové chyby. Je důležité rozlišovat mezi stavem a událostí. Stav může trvat minuty, hodiny, dny nebo týdny. Událost je přechod; uskuteční se a okamžitě zaniká. Alarm je stav; upozornění na alarm je událost. • Potvrzení: Hlavním účelem alarmu je upozornit obsluhu nebo jinou součást systému na určitý stav. Obsluha nebo systém by měl potom alarm potvrdit a tím oznámit, že alarm byl vzat na vědomí. Tato činnost nesouvisí s problematikou provedení nápravného opatření, které nemusí nastat okamžitě. Neznamená rovněž, že alarm se vrátil do normálního stavu, což může učinit sám od sebe dokonce bez jakéhokoli vnějšího zásahu. Potvrzení pouze indikuje, že si někdo všimnul vzniku alarmu. Alarm vysoké nebo střední priority obvykle vyžaduje potvrzení, zatímco alarm velmi nízké priority nemusí. Ačkoli podmínka, na jejímž základě byl vygenerován alarm může zaniknout (například teplota se zvýší na příliš vysokou hodnotu a potom se opět sníží), sám alarm není považován za "vyřízený", dokud není potvrzen. - 383 - Další informace o potvrzování najdete v části "Modely potvrzování alarmů". • Skupiny: Alarmy mohou být organizovány do alarmových skupin pro usnadnění sledování a správy. Tyto skupiny mohou představovat různé oblasti výrobního závodu, části vybavení, okruhy odpovědnosti operátorů nebo specifickou funkci. Skupiny mohou být také organizovány hierarchicky do nadřazených skupin a podskupin. Další informace o skupinách najdete v oddílu "Alarmové skupiny". • Oblasti: Výrobní závody jsou všeobecně organizovány do oblastí definujících fyzické umístění zařízení, odpovědnost operátorů, fáze technologického procesu, typy vybavení atd. Stejně jako alarmové skupiny mohou být i oblasti hierarchické – rozdělené do hlavních oblastí a podoblastí. Oblasti však je třeba zmiňovat odděleně od skupin, protože některé výrobní závody činí mezi těmito pojmy rozdíl. Distribuovaný alarmový systém neposkytuje žádnou explicitní podporu pro oblasti. K rozlišení oblastí je však možné použít vhodně hierarchicky definované alarmové skupiny. Alarmy a události Program InTouch obsahuje dva typy upozornění, které informují operátory o stavu systému: alarmy a události. Alarmy představují výstražná hlášení o stavech sledovaných procesů, které by mohly způsobit problémy a vyžadují odezvu operátora. Typický alarm je aktivován, když některá hodnota přesáhne uživatelem stanovenou mez; např. analogová hodnota přesáhne svůj horní limit. Tím se spustí alarmový stav typu unacknowledged (nepotvrzený alarm), který má upozornit operátora na vzniklý problém. Jakmile operátor alarm potvrdí, alarm přejde do stavu acknowledged (potvrzený alarm). Program InTouch lze nakonfigurovat tak, aby vyžadoval potvrzení alarmu dokonce i v případě, kdy stav způsobující alarm zanikl. Tím se zaručí informovanost operátora o tom, že v systému došlo k přechodnému alarmovému stavu, ale podmínky pro vyhodnocení tohoto stavu již pominuly. Události představují běžné zprávy o změnách stavu systému a nevyžadují reakci operátora. Typická událost je generována tehdy, dojde-li v systému k určité změně, např. k přihlášení operátora do programu InTouch. Program InTouch může tuto událost i zapsat do databáze alarmů a vytisknout na tiskárně. Při definování proměnné v databázi proměnných systému InTouch můžete pro kteroukoli proměnnou zvolit, aby prováděla monitorování událostí. Pokud je proměnná nastavena pro monitorování událostí, zaznamená se do alarmového systému zpráva o vzniku události vždy, když se změní hodnota této proměnné. Zpráva o události obsahuje informace o tom, že se změnila hodnota a zda změnu inicioval operátor, systém vstupů/výstupů, skript nebo nějaký jiný systém. Více informací o konfiguraci proměnné pro monitorování události je uvedeno v kapitole 6 - Databáze proměnných. Aktuální alarmy v porovnání s historickými alarmy Program InTouch používá pojem aktuální alarmy pro označení alarmů, které jsou "aktuálně aktivní" a pojem historické alarmy pro označení alarmů, které již zanikly. Záměrem je, aby operátor mohl vidět na obrazovce odděleně "souhrn" všech aktuálních alarmů, které čekají na potvrzení, a v jiné obrazovce informace o alarmech, které jsou zajímavé až z hlediska historie a jejich analýza je tedy méně naléhavá. Tyto dva druhy - 384 - záznamů o alarmech jsou uchovávány uvnitř distribuovaného alarmového systému v oddělených paměťových oblastech. - 385 - Typy alarmů Program InTouch třídí alarmy podle jejich charakteristických rysů do několika obecných kategorií. Tyto kategorie jsou označovány jako třída a typ. Distribuovaný alarmový systém dále třídí všechny alarmy podle obecných podmínek vzniku: Discrete (diskrétní stav), Deviation (odchylka), Rate-of-Change (rychlost změny), Value (hodnota) a SPC (SPC - statistické řízení procesu). Následující tabulka shrnuje kategorizaci alarmů v obou systémech: Podmínka vzniku Distribuovaná třída (Class) Distribuovaný typ (Type) Logický stav DSC DSC Odchylka – velká DEV MAJDEV Odchylka – malá DEV MINDEV Rychlost změny ROC ROC SPC SPC SPC Hodnota - velmi nízká VALUE LOLO Hodnota - nízká VALUE LO Hodnota - vysoká VALUE HI Hodnota - velmi vysoká VALUE HIHI Každé proměnné programu InTouch můžete přiřadit alarm. V závislosti na typu proměnné pro ni můžete definovat jeden nebo více alarmů různých tříd nebo typů. Alarmy je možné definovat v databázi proměnných. Více informací o definování alarmových stavů je uvedeno v kapitole 6 "Tagname Dictionary (Databáze proměnných)". Objekt pro zobrazování distribuovaných alarmů je možné nakonfigurovat tak, aby zobrazoval třídu (Class) alarmů a/nebo typ alarmů (Type). - 386 - Typy událostí Také události jsou v programu InTouch tříděny do obecných kategorií podle jejich charakteristik. Těmto kategoriím se říká Event Types (typy událostí). Níže uvedená tabulka shrnuje klasifikaci událostí: Událost Stav ACK Alarm byl potvrzen. ALM Vznikl alarm. EVT Vyskytla se událost. RTN Proměnná se vrátila ze stavu Alarm do normálního stavu. SYS Vyskytla se systémová událost. USER Změna proměnné $Operator. (Nějaký operátor se přihlásil nebo odhlásil.) DDE Hodnota proměnné byla změněna DDE klientem. LGC Hodnota proměnné byla změněna skriptem. OPR Hodnotu proměnné změnil operátor. Prvních šest typů událostí uvedených v seznamu je generováno automaticky, pokud je povoleno ukládání událostí. Zbývající tři typy událostí musí uživatelé povolit v databázi proměnných jednotlivě pro každou proměnnou. Další informace o událostech najdete v oddílu "Alarmy a události". Priority alarmů Každý alarm zkonfigurovaný v programu InTouch má přiřazenu určitou hodnotu priority. Tato hodnota vyjadřuje závažnost alarmu a může mít rozsah od 1 do 999, přičemž hodnota 1 označuje nejzávažnější alarm. Definováním rozsahů priorit a vhodným přiřazením konkrétních alarmů těmto rozsahům je možné snadno odlišit kritické alarmy od nekritických. S rozsahem priorit je možné pracovat v animačních propojeních, ve skriptech pro potvrzování alarmů, podle zvoleného rozsahu lze filtrovat pohledy na alarmy i tisk alarmů. Pokud například zpracovatelský závod v zadání určil, že potřebuje definovat čtyři stupně závažnosti alarmů, lze tyto stupně stanovit dle níže uvedené tabulky: Závažnost alarmu Rozsah priority Kritický 1 – 249 Závažný 250 – 499 Podružný 500 – 749 Informativní 750 – 999 - 387 - Poznámka: Provozní inženýři, kteří vytvářejí proměnné programu InTouch a definují alarmové stavy, mohou každý alarmový stav nebo substav přiřadit do jedné z výše uvedených skupin závažnosti tak, že zvolí hodnotu priority v daném rozsahu. Na základě takto nastavených rozsahů mohou operátoři závodu snadno zobrazovat a tisknout pouze alarmová hlášení zvoleného stupně závažnosti. Alarmové skupiny Každý definovaný alarm náleží k určité alarmové skupině (Alarm Group). Tyto skupiny jsou uživatelsky definovatelné a lze je uspořádat do hierarchie až s 32 úrovněmi. Skupiny umožňují kategorizaci alarmů podle organizace, geografické struktury podniku nebo podle jiného zvoleného systému. Alarmové skupiny jsou užitečné např. při filtrování obsahu alarmových objektů, při filtrování alarmů určených pro tisk, při vytváření skriptů pro potvrzování alarmů apod. Každá proměnná s definovaným alarmem je propojena s určitou alarmovou skupinou. Pokud nebylo při vývoji aplikace přiřazení proměnné k alarmové skupině provedeno, program InTouch standardně přiřadí proměnnou ke kmenové skupině $System. Alarmová skupina může obsahovat jak proměnné, tak i další alarmové skupiny. Alarmové skupiny jsou organizovány do hierarchické stromové struktury s hlavní kmenovou skupinou $System na vrcholu stromu. Všechny definované alarmové skupiny se stávají automaticky podskupinami této kmenové skupiny. Strom vytvořený z alarmových skupin může mít až 32 úrovní. Každá alarmová skupina může mít maximálně 32 podskupin. Každá podskupina může mít maximálně 32 dalších podskupin atd. až do dosažení maximálně 32 úrovní. Tento obrázek neznázorňuje proměnné přiřazené ke každé skupině, ale pouze jednotlivé alarmové skupiny. Naznačený princip stromové struktury je podobný adresářové struktuře systému Windows, ve které může složka obsahovat další složky (analogické skupinám) a názvy souborů (analogické proměnným). Další informace najdete v oddílu "Seznamy distribuovaných alarmových skupin". Alarmové skupiny nejsou započítávány jako licencované proměnné, ale jsou započítávány jako proměnné v databázi proměnných. Proto součet celkového počtu alarmových skupin a počtu proměnných definovaných v databázi proměnných aplikace InTouch nesmí překročit 61 405. Varování: Velké počty alarmových skupin (stovky/tisíce) mohou mít nepříznivý vliv na výkonnost aplikace. - 388 - ¾ Vytvoření alarmové skupiny 1. V nabídce Special zvolte Alarm Groups (Alarmové skupiny). Objeví se dialogové okno Alarm Groups (Alarmové skupiny). TIP Alarmové skupiny můžete také vytvořit a asociovat proměnné se skupinami při definici proměnných v databázi proměnných. 2. Klepněte na Add (Přidat). Objeví se dialogové okno Add Alarm Group (Přidat alarmovou skupinu). TIP Tlačítka Modify (Modifikovat) a Delete (Vymazat) nejsou dostupná, dokud není definována nějaká alarmová skupina. Alarmovou skupinu $System nelze modifikovat ani vymazat. TIP Klepnete-li pravým tlačítkem myši na textové pole v libovolném dialogovém okně konfigurace alarmu, objeví se nabídka s příkazy, které lze použít pro zvolený text. 3. Do pole Group Name (Název skupiny) zapište název nové alarmové skupiny. Protože se jedná o první alarmovou skupinu, kterou jste vytvořili, jde automaticky o podskupinu nadřazené skupiny $System. TIP Poté, co jste vytvořili alarmovou skupinu, lze ji použít jako nadřazenou skupinu. 4. Použijte tlačítko Parent Group (Nadřazená skupina) pro přiřazení alarmové skupiny k určité nadřazené alarmové skupině. Objeví se dialogové okno Alarm Group Selection (Výběr alarmové skupiny). - 389 - 5. V seznamu Select Alarm Group (Vybrat alarmovou skupinu) klepněte dvakrát na název alarmové skupiny, kterou chcete použít jako nadřazenou skupinu (nebo ji zvolte, potom klepněte na OK) pro novou alarmovou skupinu. Objeví se znovu dialogové okno Add Alarm Group (Přidat alarmovou skupinu) zobrazující zvolenou nadřazenou skupinu. Například: 6. Do pole Comment (Komentář) je možné zapsat komentář pro novou alarmovou skupinu. 7. Klepněte na OK. Objeví se dialogové okno Alarm Groups (Alarmové skupiny) zobrazující aktuální hierarchii alarmových skupin: 8. Klepněte na Close (Zavřít). - 390 - ¾ Modifikace alarmové skupiny 1. V nabídce Special (Speciální) zvolte Alarm Groups (Alarmové skupiny). Objeví se dialogové okno Alarm Groups (Alarmové skupiny). TIP Alarmové skupiny můžete také modifikovat při definici proměnných v databázi proměnných. 2. Zvolte v seznamu alarmovou skupinu, kterou chcete modifikovat, a potom klepněte na Modify (Modifikovat). Objeví se dialogové okno Modify Alarm Group (Modifikovat alarmovou skupinu). Proveďte potřebné změny. Pokud chcete změnit nadřazenou skupinu pro alarmovou skupinu, klepněte na Parent Group (Nadřazená skupina). Objeví se dialogové okno Alarm Groups (Alarmové skupiny). - 391 - Zvolte novou nadřazenou skupinu a potom klepněte na Close (Zavřít). Objeví se znovu dialogové okno Modify Alarm Group (Modifikovat alarmovou skupinu) zobrazující novou nadřazenou skupinu. 3. Klepněte na OK. ¾ Vymazání alarmové skupiny 1. V nabídce Special (Speciální) zvolte Alarm Groups (Alarmové skupiny). Objeví se dialogové okno Alarm Groups (Alarmové skupiny). TIP Alarmové skupiny můžete také mazat při definici proměnných v databázi proměnných. 2. Zvolte v seznamu alarmovou skupinu, kterou chcete vymazat, a potom klepněte na Delete (Vymazat). Objeví se okno se zprávou požadující potvrzení vymazání. Klepněte na Yes (Ano) pro vymazání alarmové skupiny nebo klepněte na No (Ne) pro stornovaní mazání. 3. Klepněte na Close (Zavřít). - 392 - Seznamy distribuovaných alarmových poskytovatelů Distribuovaný alarmový systém využívá definice alarmových skupin k zařazení alarmů do lokální hierarchické stromové struktury, kterou může distribuovaný alarmový objekt využít k filtrování zobrazovaných alarmů. Distribuovaný alarmový systém také umožňuje zobrazit současně alarmové skupiny z více síťových uzlů s aplikacemi InTouch. Distribuovaný alarmový systém navíc umožňuje organizovat zobrazení alarmů založením seznamů poskytovatelů distribuovaných alarmů. Alarm Group List (Seznam poskytovatelů alarmů) je pojmenovaný seznam, který obsahuje záznamy se jmény síťových uzlů, na kterých běží aplikace InTouch, a alarmové skupiny definované v těchto aplikacích. Může obsahovat také názvy jiných seznamů distribuovaných alarmových poskytovatelů a lokální alarmové skupiny. Spotřebitel alarmů, jako je např. distribuovaný alarmový objekt, používá tento seznam pro dotazování alarmů. Pokud byste se například zajímali o všechny alarmy ohřívačů generované na několika síťových uzlech s aplikacemi InTouch, můžete vytvořit dotaz s názvem "BoilerAlarms". Seznam připojený k tomuto dotazu by obsahoval všechny alarmové skupiny, které odpovídají alarmům ohřívače, na všech síťových uzlech. ¾ Vytvoření seznamu alarmových poskytovatelů 1. V nabídce Special (Speciální) ukažte na Configure (Konfigurovat) a pak klepněte na Distributed Name Manager (Správce distribuovaných poskytovatelů). Objeví se dialogové okno Distributed Name Manager (Správce distribuovaných poskytovatelů) s aktivní kartou vlastností Distributed Alarms (Distribuované alarmy): TIP Pro rychlý přístup do dialogového okna klepněte dvakrát v Aplikačním průzkumníku na Distributed Name Manager (Správce distribuovaných poskytovatelů) ve složce Configure (Konfigurovat). TIP Klepnete-li pravým tlačítkem myši na textové pole v libovolném dialogovém okně konfiguračního dialogu, objeví se nabídka s příkazy, které lze použít pro zvolený text. - 393 - 2. V oddílu Group Properties (Vlastnosti skupiny) zapište název dotazu do pole Name (Název). 3. V poli Members (Položky) zapište seznam uzlů programu InTouch a alarmových skupin, které chcete zahrnout do Vašeho dotazu. V následující tabulce je uvedena platná syntaxe pro tyto seznamy: Standardní zápis položek seznamu: \\Node\InTouch!Group Plně vymezená cesta k alarmové skupině „Group“ definované v InTouch aplikaci běžící na síťovém uzlu „Node“ Stejné jako výše, ale předpokládá se místní \InTouch!Group aplikace Jiný seznam alarmových skupin GroupList Zkrácený zápis položek seznamu: Zkrácený zápis, který má stejný význam jako Node.Group \\Node\InTouch!Group Zkrácený zápis, který má stejný význam jako .Group \InTouch!Group Node (Uzel) identifikuje název vzdáleného síťového uzlu, na kterém běží aplikace InTouch a .Group (.Skupina) identifikuje alarmovou skupinu definovanou na tomto uzlu. Pro identifikaci alarmové skupiny definované v místní aplikaci, můžete zadat jen název alarmové skupiny s tečkou. Například .AlarmGroup. TIP Zkrácený zápis položek seznamu Vám poskytuje snadný způsob jak zadat informace o uzlu a alarmové skupině do dialogového okna. Je důležité si však uvědomit, že tyto informace se po uložení dotazu přeloží do formátu standardního zápisu. Poznámka: Syntaxe Node.Group a .Group lze použít výhradně v tomto dialogovém okně konfigurace. Syntaxe není platná v konfiguraci alarmového objektu ani v žádné skriptové funkci. - 394 - 3. Klepněte na Add (Přidat) pro přidání nové položky do seznamu distribuovaných poskytovatelů. Syntaxe položek zapsaných zkráceným způsobem je automaticky zkonvertována. Například .$System se zkonvertuje na \InTouch!$Systém, viz. obrázek: Node1.$System .$System Lokální alarmová skupina TIP 5. Klepnete-li pravým tlačítkem myši na textové pole v libovolném dialogovém okně konfiguračního dialogu, objeví se kontextová nabídka s příkazy, které lze pro dané textové pole použít. Klepněte na OK. Modely potvrzování alarmů Tento oddíl popisuje, jak jsou alarmy ohlašovány, sledovány a potvrzovány. Jakmile nějaká proměnná přejde z normálního stavu do alarmového stavu, generuje se nová instance alarmu. Pokud se jedná o alarm s několika stavy, jakýkoli přechod do nového substavu při současném setrvání v alarmovém stavu je pokládán za přechod v rámci stejné alarmové instance. Existence alarmové instance skončí, když se proměnná vrátí do normálního stavu – následný přechod do alarmového stavu tedy generuje novou alarmovou instanci. Distribuovaný alarmový systém programu InTouch monitoruje instanci alarmu od okamžiku jejího vzniku (proměnná přejde do alarmového stavu), monitoruje přechody do různých substavů, včetně čekání na potvrzení alarmu, potvrzení alarmu až po přechod do normálního stavu. K dispozici jsou tři modely potvrzování alarmů: • Podmínkový model potvrzování alarmů: Potvrzování je určeno pro instanci alarmu. Alarmová instance se nachází ve stavu čekání na ACK (potvrzení), jakmile poprvé vstoupí do alarmového stavu (tj. bezprostředně po vzniku). Pokud je alarm - 395 - potvrzen a následně přejde do nového alarmového substavu (např. z "Hi" do "HiHi"), zahájí se čekání na další ACK (potvrzení). Pokud je potvrzení přijato, je akceptováno a aplikuje se na všechny přechody alarmu, které doposud nastaly. Alarm je ovažován za potvrzený, pokud bylo potvrzení provedeno po přechodu do posledního substavu. • Událostní model potvrzování alarmů: Potvrzování je opět určeno pro instanci alarmu, ale musí být provedeno pro poslední přechod do alarmového stavu nebo substavu. Alarmová instance se nachází ve stavu čekání na ACK (potvrzení), jakmile poprvé vstoupí do alarmového stavu (tj. bezprostředně po vzniku). Každému následnému přechodu do jiného substavu je přiřazeno pořadové číslo a ACK (Potvrzení) musí být připojeno k pořadovému číslu odpovídajícího přechodu. ACK (Potvrzení) je akceptováno pouze tehdy, je-li určeno pro poslední přechod mezi substavy. Pokud je např. potvrzení provedeno pro substav Hi, je akceptováno pouze v případě, že instance mezitím nepřešla do jiného substavu (např. HiHi). Přijaté potvrzení se aplikuje na všechny přechody alarmu, které doposud nastaly. Alarm je považován za potvrzený, pokud poslední přechod byl úspěšně potvrzen. Odmítnuté potvrzení může být zaznamenáno pro diagnostické účely, ale jiným způsobem není v systému sledováno. Událostní model potvrzování alarmů zajišťuje, aby potvrzení ACK korespondovalo s aktuálním stavem alarmu. V systémech s krátkými čekacími dobami může tento model působit zdánlivě stejným dojmem jako podmínkový model, ale v jiných prostředích, např. v síti internet, nabývají vlastnosti událostního modelu na významu. • Rozšířený model potvrzování (Expanded Summary): Potvrzení je určeno pro každý přechod alarmu (nikoli tedy pro celou instanci). Vstup do alarmového stavu musí být zvlášť potvrzen stejně jako návrat do normálního stavu. Rovněž jakýkoli přechod do nového alarmového substavu je pokládán za novou událost, která musí být potvrzena. Jestliže se položka vrátí do normálního stavu a následně opět vstoupí do alarmového stavu, vytvoří se nová skupina alarmových záznamů. Každý přechod se musí jednotlivě a výlučně potvrdit; alarm se považuje za potvrzený pokud všechny přechody mezi všemi substavy byly potvrzeny. Poznámka: Tento model potvrzování alarmů je také znám v průmyslu pod označením "alarmy se zpětným vyzváněním". V souhrnu platí, že pro model potvrzování orientovaný na podmínku se potvrzení vztahuje ke všem přechodům mezi substavy alarmovaného stavu až do okamžiku potvrzení. Pro model potvrzování orientovaný na události (je definován ve specifikaci OPC) je potvrzení akceptováno pouze tehdy, pokud se vztahuje k poslední "aktivační události" (k poslednímu přechodu mezi substavy). Pro rozšířený model potvrzování (Expanded Summary) musí být potvrzeny všechny události spojené s konkrétním alarmem (aktivace alarmu, přechod do normálního stavu, přechod mezi odlišnými substavy), aby byl celkový alarm považován za potvrzený. - 396 - Systém poskytování a spotřeby alarmů V síti může existovat skupina poskytovatelů alarmů (vydavatelů) a spotřebitelů alarmů (odběratelů). Distribuovaný alarmový systém pracuje systémem poskytování a spotřeby, pomocí kterého jsou informace o alarmech předávány mezi síťovými uzly s aplikacemi InTouch. Poskytovatel alarmů Poskytovatel alarmů sleduje alarmované proměnné, tj. proměnné, které mohou přejít do alarmového stavu, a poskytuje distribuovanému alarmovému systému seznam těchto proměnných včetně informací o příslušnosti sledovaných proměnných k hierarchickém uskupení alarmových skupin. Informuje také distribuovaný alarmový systém o změně stavu sledovaných proměnných. Záznamy o změnách stavu obsahují informace o tom, zda položka je nebo není v alarmovém stavu a zda byl poslední alarm potvrzen. Poskytovatel alarmů navíc sleduje, zda alarm není deaktivován. Poznámka: V operačním systému Windows 2000 platí: Jestliže je poskytovatel alarmů přihlášen v odlišné doméně než spotřebitel alarmů, je třeba přesně specifikovat celý název počítače nebo IP adresy včetně domény poskytovatele. Poskytovatel alarmů v odlišné doméně může být například v dotazu specifikován jako: \\poskytovatel1.b3.wonderware.com\intouch!$system, kde "poskytovatel1" je název počítače a "b3.wonderware.com" je přípona primárního DNS pro doménu. Spotřebitel alarmů Spotřebitel alarmů zadává do distribuovaného alarmového systému dotazy identifikující skupiny alarmů, o kterých si přeje být informován. Dotaz zůstává aktivní, dokud jej spotřebitel alarmu nezmění nebo nestornuje. Kdykoli poskytovatel alarmů vydá upozornění o změně některé alarmovatelné položky, distribuovaný alarmový systém zkontroluje, zda alarm odpovídá některému z registrovaných dotazů a doručí aktualizace odpovídajícím spotřebitelům alarmů. Spotřebitel alarmů zobrazuje a zaznamenává informace týkající se stavu položek nebo jejich přechodů mezi substavy. Spotřebitel alarmů může také alarm potvrdit. To spočívá v zaslání oznámení o potvrzení s identifikací alarmu do distribuovaného alarmového systému. Oznámení o potvrzení je přijato poskytovatelem alarmů, který aktualizuje stav položky na potvrzený alarm a informuje o této skutečnosti distribuovaný alarmový systém, čímž je zaručeno, že aktualizaci zaznamenají všichni zainteresovaní spotřebitelé i poskytovatelé alarmů. Poznámka: Komunikace mezi poskytovateli a spotřebiteli alarmů v distribuovaném alarmovém systému spočívá v zadávání dotazů a předávání záznamů o alarmech mezi zúčastněnými síťovými uzly. Komunikované položky jsou ukládány ve vyrovnávacích pamětech alarmů na všech uzlech za účelem minimalizace síťového zatížení. - 397 - Ukládání alarmových dat Distribuovaný alarmový systém je schopen uchovávat alarmová data dvěma způsoby: • Ukládání alarmů v paměti : Informace o aktuálních a posledních alarmech jsou ukládány do paměti na všech síťových uzlech s aplikacemi InTouch. Původní alarmový systém programu InTouch používal dvě samostatné paměťové oblasti: jednu pro "aktuální" alarmy a druhou pro "historické" alarmy. Tento model je nadále zachován i v novém distribuovaném alarmovém systému. Velikost paměťové oblasti pro aktuální alarmy je dynamicky přizpůsobována podle potřeby s omezením spočívajícím pouze ve velikosti dostupné paměti na PC. Paměťový prostor pro historické alarmy se může zvětšovat jen po předem stanovený limit. Jakmile paměť dosáhne tohoto limitu, nejstarší záznamy o alarmech jsou z paměti vytlačovány nejnovějšími záznamy. • Ukládání alarmů do relační databáze: Program Alarm DB Logger sleduje změny v distribuovaném alarmovém systému a tyto změny ukládá do relační databáze. Vytváří tak trvalou historii alarmů. Distribuovaný alarmový systém umožňuje ukládání alarmů do databáze Microsoft SQL Server nebo MSDE. Tyto databáze poskytují přístup k alarmům prostřednictvím otevřeného, obecného rozhraní, které umožňuje přístup pomocí řady klientských aplikací a usnadňuje tak analýzu historie alarmů. Poznámka: Původní standardní alarmový systém programu InTouch ukládal historii alarmů do textového souboru ve formátu, který nelze konfigurovat uživatelem. Tento uzavřený způsob ukládání byl zrušen. • Distribuovaný alarmový systém umožňuje použít jeden síťový uzel s aplikací Alarm DB Logger pro ukládání alarmů z několika dalších uzlů. Konfigurace alarmů v databázi proměnných Program InTouch Vám umožňuje konfigurovat alarmy pro každou proměnnou typu discrete (dvoustavová), integer (celočíselná) nebo real (s pohyblivou desetinnou čárkou). (Bezprostředně po založení mají všechny proměnné své alarmy deaktivovány.) Jakoukoli proměnnou lze nakonfigurovat jako alarmovatelnou s možností určit typ alarmu a zvolit rozhodovací pravidla. Kdykoli se změní hodnota takto definované proměnné, je implicitně volána alarmová logika. Alarmová logika je interní podprogram v programu InTouch, který ověřuje typ alarmu, porovnává novou hodnotu se zadanými limitními hodnotami a vyhodnocuje, zda proměnná je nebo není v alarmovém stavu. Jakékoli přechody stavu jsou potom hlášeny do distribuovaného alarmového systému. Existují tři základní typy alarmů (nebo třídy alarmů), které jsou definovány v programu InTouch. Tyto základní typy jsou dále rozděleny do několika podtypů alarmů: • Logický (Discrete) : Alarm typu Discrete je možné definovat na dvoustavové (logické) proměnné (typ discrete). Můžete zvolit, zda alarmový stav bude odpovídat hodnotě TRUE (PRAVDA) nebo hodnotě FALSE (NEPRAVDA) dvoustavové proměnné a přiřadit prioritu alarmu. Konfigurační dialog pro dvoustavovou proměnnou (typ discrete) vypadá následovně: • - 398 - • Analogový: Analogový alarm je možné definovat buď pro celočíselnou proměnnou (typ Integer) nebo pro proměnnou s plovoucí desetinnou čárkou (typ Real). V rámci analogového typu existuje několik tříd alarmu: • Hodnotový: Aktuální hodnota se porovná s jedním nebo několika nastavenými limity. Pokud hodnota překročí některý definovaný limit, je vyhlášen alarmový stav. Jednotlivě je možné nakonfigurovat alarmy a priority pro limit "LoLo (Velmi nízký)", limit "Lo (Nízký)", limit "Hi (Vysoký)" a limit "HiHi (Velmi vysoký)". • Odchylkový: Aktuální hodnota se odečte od nastavené hodnoty a absolutní hodnota vypočteného rozdílu se porovnává s jedním nebo dvěma limitními hodnotami vyjádřenými jako procento rozsahu hodnoty proměnné. Můžete jednotlivě nakonfigurovat hodnoty a priority pro limit "Minor Deviation (Méně závažná odchylka)" a limit "Major Deviation (Závažná odchylka)" a určit, zda je nebo není třeba oba limity použít. Můžete rovněž nastavit parametr "Deviation Deadband (pásmo necitlivosti odchylky)" rovněž vyjádřený jako procento rozsahu proměnné. • Rychlost změny: V tomto výpočtu se započítává aktuální hodnota a předchozí hodnota společně s aktuálním časem a časem předchozí aktualizace. Pokud absolutní hodnota rychlosti změny překročí stanovený limit, alarmový stav je vyhlášen. Máte možnost stanovit mezní hodnotu (limit) rychlosti změny a prioritu. Limit je vyjádřen jako procento rozsahu hodnoty proměnné, která může být vyjádřena za sekundu, za minutu nebo za hodinu. Konfigurační dialog pro analogovou proměnnou vypadá následovně: • SPC: Program SPCPro může generovat statistický procesní alarm. Tento alarm se definuje mimo samotný program InTouch. Více informací o definici alarmových stavů najdete v části "Definice alarmových stavů proměnné". Alarmové atributy proměnné V následujícím oddíle jsou stručně popsány alarmové dotfields (atributy proměnných) proměnných. Například pro umožnění změn meze alarmu HiHi proměnné "Analog_Tagname" při běhu programu, můžete vytvořit dotykové propojení Analog - User Input (Analogové – Uživatelský vstup) a použít je pro tlačítko, které je definováno výrazem Analog_Tagname.HiHiLimit. Při běhu programu operátor jednoduše klepne na tlačítko a napíše novou hodnotu pro mez alarmu HiHi, která se používá pro "Analog_Tagname". Popis Dotfields (atributy proměnných) .Ack Dotfields (atributy proměnných) diskrétní proměnné - 399 - Popis Dotfields (atributy proměnných) pro čtení/zápis, která monitorují/ovládají aktuální stav potvrzení alarmu proměnných a alarmových skupin. .Ack má inverzní dotfields (atributy proměnných) proměnné nazývanou .Unack. Pokud dojde k nepotvrzenému alarmu, .Unack se nastaví na 1. .Unack lze pak použít v animačních propojeních nebo podmínkových skriptech pro spuštění indikací jakýchkoli nepotvrzených alarmů. .AckDev Monitoruje/ovládá aktuální stav potvrzení alarmů odchylkového typu na proměnné. .AckDsc Monitoruje/ovládá aktuální stav potvrzení alarmů na diskrétních proměnných. .AckROC Monitoruje/ovládá aktuální stav potvrzení alarmů typu rychlosti změny na proměnné. .AckValue Monitoruje/ovládá aktuální stav potvrzení alarmů hodnotového typu na proměnné. .Alarm Dotfields (atributy proměnných) diskrétní proměnné pouze pro čtení, která jsou rovna 1, když existuje podmínka alarmu pro specifikovanou proměnnou, Název alarmové skupiny. .AlarmAccess Vrací komunikační kanál proměnné asociované se zvoleným alarmem. Alarm se musí zvolit klepnutím na přehled Distributed Alarm Display (Distribuovaný alarmový objekt). .AlarmAckModel Monitoruje Ack Model (Model potvrzení) asociovaný s proměnnou následujícím způsobem: 0=podmínka (implicitní) 1=orientovaný na událost 2=rozšířený přehled Používá se pro diskrétní a analogové proměnné s alarmy. Pouze pro čtení, ale lze ji konfigurovat v programu WindowMaker. .AlarmClass Vrací třídu alarmu. .AlarmComment Textový řetězec pro čtení/zápis, který popisuje, co je to za alarm, ne co je to za proměnnou. Implicitně je tento textový řetězec v nové aplikaci prázdný. Když se však převede aplikace programu InTouch 7.1 na aplikaci verze 7.11, zkopíruje se pro zpětnou kompatibilitu poznámka proměnné do textového řetězce AlarmComment. .AlarmDate Vrací datum alarmu. .AlarmDev Signalizuje, že existuje alarm odchylkového typu. .AlarmDevCount Sleduje celkový počet odchylkových alarmů aktivních v dané skupině proměnných nebo alarmů. .AlarmDevDeadband Dotfields (atributy proměnných) analogové (platná pouze pro celočíselné nebo reálné proměnné) - 400 - Popis Dotfields (atributy proměnných) proměnné pro čtení/zápis, která monitorují/ovládají odchylkové pásmo necitlivosti v procentech pro alarmy jak menší, tak větší odchylky. .AlarmDevUnAckCount Sleduje celkový počet nepotvrzených odchylkových alarmů aktivních v dané skupině proměnných nebo alarmů. .AlarmDisabled Deaktivuje/aktivuje události a alarmy. Používá se pro diskrétní a analogové proměnné s alarmy nebo pro alarmové skupiny. Poznámka: Stejná jako .AlarmEnabled, ale opačné polarity. .AlarmDsc Udává, že diskrétní alarmová podmínka je aktuálně aktivní. .AlarmDscCount Sleduje celkový počet diskrétních alarmů aktivních v dané skupině proměnných nebo alarmů. .AlarmDscDisabled Udává, zda proměnná může nebo nemůže generovat diskrétní alarmy. Poznámka: Tento atribut je stejný jako .AlarmDisabled pro diskrétní proměnnou. .AlarmDscEnabled Udává, zda proměnná může nebo nemůže generovat diskrétní alarmy. Poznámka: Tento atribut je stejný jako .AlarmEnabled pro diskrétní proměnnou. .AlarmDscInhibitor Vrací název proměnné potlačení přiřazené k diskrétnímu alarmu (pokud nějaký existuje) pro tuto proměnnou. .AlarmDscUnAckCount Sleduje celkový počet nepotvrzených diskrétních alarmů aktivních v dané skupině proměnných nebo alarmů. .AlarmEnabled Dotfields (atributy proměnných) diskrétní proměnné pro čtení/zápis, která deaktivuje/aktivuje události a alarmy pro proměnnou a alarmovou skupinu. .AlarmGroup Obsahuje aktuální dotaz používaný pro distribuovaný alarmový objekt zobrazení . .AlarmGroupSel Vrací alarmovou skupinu alarmu. .AlarmHiDisabled Deaktivuje/aktivuje mez Hi (Vysoká) pro analogové proměnné s alarmy. .AlarmHiEnabled Deaktivuje/aktivuje mez Hi (Vysoká) pro analogové proměnné s alarmy. Poznámka: Stejná jako odpovídající deaktivovaný atribut, ale opačné polarity. .AlarmHiInhibitor Vrací odkaz Alarm Inhibitor Tag (Proměnná potlačení alarmu) pro mez Hi (Vysoká). Používá se pro analogové proměnné s alarmy. - 401 - Popis Dotfields (atributy proměnných) Pouze pro čtení, ale lze ji konfigurovat v programu Window Maker. .AlarmHiHiDisabled Deaktivuje/aktivuje mez HiHi (Velmi vysoká) pro analogové proměnné s alarmy. .AlarmHiHiEnabled Deaktivuje/aktivuje mez HiHi (Velmi vysoká) pro analogové proměnné s alarmy. Poznámka: Stejné jako odpovídající deaktivovaný atribut, ale opačné polarity. .AlarmHiHiInhibitor Vrací odkaz Alarm Inhibitor Tag (Proměnná potlačení alarmu) pro mez HiHi. Používá se pro analogové proměnné s alarmy. Pouze pro čtení, ale lze ji konfigurovat v programu Window Maker. .AlarmLimit Vrací limit alarmu. .AlarmLoDisabled Deaktivuje/aktivuje mez Lo (Nízká) pro analogové proměnné s alarmy. .AlarmLoEnabled Deaktivuje/aktivuje mez Lo (Nízká) pro analogové proměnné s alarmy. Poznámka: Stejné jako odpovídající deaktivovaný atribut, ale opačné polarity. .AlarmLoInhibitor Vrací odkaz Alarm Inhibitor Tag (Proměnná potlačení alarmu) pro mez Lo. Používá se pro analogové proměnné s alarmy. Pouze pro čtení, ale lze ji konfigurovat v programu Window Maker. .AlarmLoLoDisabled Deaktivuje/aktivuje mez LoLo (Velmi nízká) pro analogové proměnné s alarmy. .AlarmLoLoEnabled Deaktivuje/aktivuje mez LoLo (Velmi nízká) pro analogové proměnné s alarmy. Poznámka: Stejné jako odpovídající deaktivovaný atribut, ale opačné polarity. .AlarmLoLoInhibitor Vrací odkaz Alarm Inhibitor Tag (Proměnná potlačení alarmu) pro mez LoLo. Používá se pro analogové proměnné s alarmy. Pouze pro čtení, ale lze ji konfigurovat v programu Window Maker. .AlarmMajDevDisabled Deaktivuje/aktivuje mez Major Deviation (Větší odchylka) pro analogové proměnné s alarmy. .AlarmMajDevEnabled Deaktivuje/aktivuje mez Major Deviation (Větší odchylka) pro analogové proměnné s alarmy. Poznámka: Stejné jako odpovídající deaktivovaný atribut, ale opačné polarity. .AlarmMajDevInhibitor Vrací odkaz Alarm Inhibitor Tag (Proměnná - 402 - Popis Dotfields (atributy proměnných) potlačení alarmu) pro mez Major Deviation (Větší odchylka). Používá se pro analogové proměnné s alarmy. Pouze pro čtení, ale lze ji konfigurovat v programu Window Maker. .AlarmMinDevDisabled Deaktivuje/aktivuje mez Minor Deviation (Menší odchylka) pro analogové proměnné s alarmy. .AlarmMinDevEnabled Deaktivuje/aktivuje mez Minor Deviation (Menší odchylka) pro analogové proměnné s alarmy. Poznámka: Stejné jako odpovídající deaktivovaný atribut, ale opačné polarity. .AlarmMinDevInhibitor Vrací odkaz Alarm Inhibitor Tag (Proměnná potlačení alarmu) pro mez Minor Deviation (Menší odchylka). Používá se pro analogové proměnné s alarmy. Pouze pro čtení, ale lze ji konfigurovat v programu Window Maker. .AlarmName Vrací název alarmu. .AlarmOprName Vrací jméno operátora asociované s alarmem. .AlarmOprNode Vrací síťový uzel operátora asociovaný s alarmem. .AlarmPri Vrací hodnotu priority (1-999) alarmu. .AlarmProv Vrací poskytovatele alarmu. .AlarmROC Signalizuje, že existuje alarm typu rychlost změny. .AlarmROCCount Sleduje celkový počet alarmů rychlosti změny aktivních v dané skupině proměnných nebo alarmů. .AlarmROCDisabled Deaktivuje/aktivuje mez Rate-of-Change (Rychlost změny) pro analogové proměnné s alarmy. .AlarmROCEnabled Deaktivuje/aktivuje mez Rate-of-Change (Rychlost změny) pro analogové proměnné s alarmy. Poznámka: Stejné jako odpovídající deaktivovaný atribut, ale opačné polarity. .AlarmROCInhibitor Vrací odkaz proměnné potlačení alarmu pro mez Rateof-Change (Rychlost změny). Používá se pro analogové proměnné s alarmy. Pouze pro čtení, ale lze ji konfigurovat v programu Window Maker. .Alarm ROCUnAckCount Sleduje celkový počet nepotvrzených alarmů rychlosti změny aktivních v dané skupině proměnných nebo alarmů. .AlarmState Vrací aktuální stav alarmu. .AlarmTime Vrací čas alarmu. - 403 - Popis Dotfields (atributy proměnných) .AlarmTotalCount Sleduje celkový počet alarmů aktivních v dané skupině proměnných nebo alarmů. .AlarmType Vrací typ alarmu. .AlarmUnAckCount Sleduje celkový počet nepotvrzených alarmů aktivních v dané skupině proměnných nebo alarmů. .AlarmUserDefNum1 Reálná (plovoucí desetinná tečka) pro čtení/zápis, implicitně 0 a hodnota není nastavena. Používá se pro diskrétní proměnné s alarmy, pro analogové proměnné s alarmy nebo pro alarmové skupiny. Poznámka: Hodnota tohoto atributu je připojena k alarmu, ale POUZE tehdy, když byla hodnota nastavena například pomocí skriptu nebo funkce POKE (modifikace). .AlarmUserDefNum2 Reálná (plovoucí desetinná tečka) pro čtení/zápis, implicitně 0 a hodnota není nastavena. Používá se pro diskrétní proměnné s alarmy, pro analogové proměnné s alarmy nebo pro alarmové skupiny. Poznámka: Hodnota tohoto atributu je připojena k alarmu, ale POUZE tehdy, když byla hodnota nastavena například pomocí skriptu nebo funkce POKE (modifikace). .AlarmUserDefStr Textový řetězec pro čtení/zápis, implicitně „“ a hodnota není nastavena. Používá se pro diskrétní proměnné s alarmy, pro analogové proměnné s alarmy nebo pro alarmové skupiny. Poznámka: Hodnota tohoto atributu je připojena k alarmu, ale POUZE tehdy, když byla hodnota nastavena například pomocí skriptu nebo funkce POKE (modifikace). Poznámka: atributy proměnných .AlarmUserDefNum1, .AlarmUserDefNum2, a AlarmUserDefStr Vám umožňují přiřadit jednu nebo více hodnot, které se mají připojit k zápisu alarmu, když je hlášen. Tyto hodnoty se zapisují do databáze pomocí programu Alarm DB Logger. Existují tři položky, které můžete připojit k alarmu: dvě čísla a řetězec. Implicitně jsou prázdné (nula a ""). Aby se zjednodušilo zadávání uživatelských hodnot, můžete je nastavit v alarmové skupině a také ve specifické proměnné. Například program InBatch může nastavit číslo dávky v proměnné .AlarmUserDefNum1 až na úroveň alarmové skupiny $System což způsobí, že všechny alarmy mají připojené číslo dávky. Jestliže nastavíte .AlarmUserDefNum1 v alarmové skupině, použije se pro všechny alarmy ve skupině a pro všechny její podskupiny. Můžete také specificky nastavit hodnotu .AlarmUserDefNum1 v proměnné. V tomto případě se použije pouze pro tuto proměnnou a přepíše jakékoli nastavení .AlarmUserDefNum1 v alarmové skupině proměnné. .AlarmValDeadband Dotfields (atributy proměnných) analogové (platná pouze pro celočíselné nebo reálné proměnné) - 404 - Popis Dotfields (atributy proměnných) proměnné pro čtení/zápis, která monitorují/ovládají hodnotu pásma necitlivosti alarmu. Toto pole je platné pro alarmové skupiny a také obvyklé proměnné. .AlarmValue Vrací hodnotu alarmu. .AlarmValueCount Sleduje celkový počet hodnotových alarmů aktivních v dané skupině proměnných nebo alarmů. .AlarmValueUnAckCount Sleduje celkový počet nepotvrzených hodnotových alarmů aktivních v dané skupině proměnných nebo alarmů. .DevTarget Dotfields (atributy proměnných) analogové (platné pouze pro celočíselné nebo reálné proměnné) proměnné pro čtení/zápis, která monitoruje a/nebo ovládá cíl alarmu menší a větší odchylky. .Freeze Čte/zapisuje stav zmrazení distribuovaného alarmového objektu zobrazení. .HiLimit, .HiHiLimit, .LoLimit, .LoLoLimit Dotfields (atributy proměnných) analogové proměnné pro čtení/zápis, která monitorují/ovládají meze hodnotového alarmu. Tyto atributy jsou platné pouze pro celočíselné a reálné proměnné. .HiStatus, .HiHiStatus, .LoStatus, .LoLoStatus Dotfields (atributy proměnných) diskrétní proměnné pouze pro čtení, která určují, zda existuje alarm specifikovaného typu. .MajorDevPct Dotfields (atributy proměnných) reálné proměnné pro čtení/zápis, která monitorují nebo ovládají vyšší procento odchylky pro kontrolu alarmu. .MajorDevStatus Dotfields (atributy proměnných) diskrétní proměnné pouze pro čtení, která určují, zda existuje pro danou proměnnou alarm větší odchylky. .MinorDevPct Dotfields (atributy proměnných) reálné proměnné pro čtení/zápis používaná pro monitorování a/nebo ovládání menšího procenta odchylky pro kontrolu alarmu. .MinorDevStatus Dotfields (atributy proměnných) diskrétní proměnné pouze pro čtení používaná pro určení, zda existuje pro danou proměnnou alarm menší odchylky. .Name Dotfields (atributy proměnných) textové proměnné pro čtení/zápis používaná pro zobrazení aktuálního názvu proměnné. Například název proměnné TagID. Dotfields (atributy proměnných) diskrétní proměnné pouze pro čtení, která jsou rovna 1, když neexistují žádné alarmy pro specifikovaný název. Tento atribut je platný pro alarmové skupiny a proměnné. Zobrazuje počet alarmů načtených alarmovýn objektem Distributed Alarm Object. Signalizuje, že alarmový objekt právě aktualizuje zobrazované záznamy. Dotfields (atributy proměnných) proměnné pro čtení/zápis používaná pro monitorování a/nebo ovládání rychlosti změny kontroly alarmu. .Normal .NumAlarm .PendingUpdates .ROCPct - 405 - Popis Dotfields (atributy proměnných) .ROCStatus .SuppressRetain .Unack Dotfields (atributy proměnných) diskrétní proměnné pouze pro čtení používaná pro určení, zda existuje pro danou proměnnou alarm rychlosti změny. Čte/zapisuje stav uchování potlačení zobrazení distribuovaného alarmového objektu. Dotfields (atributy proměnných) diskrétní proměnné pro čtení/zápis používaná pro ovládání stavu nepotvrzení alarmu lokálního alarmu (lokálních alarmů). Některé atributy alarmu jsou asociována s alarmovým objektem, ne s proměnnou. .AlarmClass .AlarmAccess .AlarmDate .AlarmGroupSel .AlarmLimit .AlarmName .AlarmOprName .AlarmOprNode .AlarmPri .AlarmProv .AlarmState .AlarmTime .AlarmType .AlarmValue .Freeze .ListChanged .NumAlarm .PendingUpdates .SuppressRetain K těmto atributuům alarmu je přístup pomocí funkce: GetPropertyM(ControlName.Property, MsgTag). Když se tato funkce vykoná při běhu programu, hodnota vlastnosti pro proměnnou ve zvoleném řádku je vložena do proměnné MsgTag. Zvolí-li se několik řádků, hodnota vlastnosti v proměnné MsgTag bude vztažena k prvnímu řádku vícenásobné volby. Řízení vzniku a viditelnosti alarmu Z různých důvodů může být občas vhodné nebo i nezbytné "vypnout" některé alarmy, aniž by musely být odstraněny příslušné definice alarmů z databáze proměnných. Program InTouch podporuje tři základní typy řízení vzniku a viditelnosti alarmu: deaktivace alarmu, potlačení vzniku alarmu a potlačení zobrazení alarmu. Zde jsou popsány pojmy třístupňového alarmového modelu, který je zobrazen níže: • Alarmový podnět: Hodnota a stav alarmovatelné proměnné jsou sledovány. • Alarmový stav: Alarmovatelná položka je porovnávána s nastavenými limity a podmínkami, aby bylo možné určit, zda je nebo není v alarmovém stavu. Přechody stavu jsou sledovány a hlášeny. • Oznámení alarmu: Hlášení o změnách alarmového stavu jsou zobrazovány a/nebo ukládány prostřednictvím spotřebitelů alarmů V souladu s tímto modelem jsou uplatňována následující pravidla pro řízení vzniku a viditelnosti alarmu: • Deaktivace alarmu: Alarm lze v poskytovateli alarmů deaktivovat nastavením atributu proměnné, který označuje, že alarm je deaktivován. V konfiguraci alarmu v databázi proměnných není třeba provádět žádné změny. Je-li deaktivace zapnutá, ani splněná podmínka pro vznik alarmu nepřevede proměnnou do alarmového stavu. Proměnná se v podstatě nachází ve „vynuceném normálním stavu”. Deaktivace přeruší spojení mezi alarmovým podnětem a alarmovým stavem. • Deaktivace se uskutečňuje na straně poskytovatele alarmů. • Všichni spotřebitelé alarmů zjistí stejné výsledky. - 406 - • Je-li alarm deaktivován, nepodněcuje žádné zápisy do historie alarmů. • Potlačení vzniku alarmu: Alarmované proměnné lze přiřadit vyhrazenou proměnnou, jejíž hodnota může potlačit vznik alarmu. Tato proměnná se nazývá inhibitor. V konfiguraci alarmu se neprovádí kromě přiřazení inhibitoru žádná jiná změna. Nabyde-li inhibitor hodnoty NEPRAVDA (FALSE) nebo 0, alarm je vyhodnocován běžným způsobem: Nabyde-li ale inhibitor hodnoty PRAVDA (TRUE) nebo hodnoty různé od 0, vznik alarmu je potlačen. V podstatě to znamená totéž, jako kdyby byl alarm deaktivován, alarm je aktivně potlačen. Potlačení alarmu v tomto případě probíhá ve dvou fázích: • Přiřazení inhibitoru alarmovatelné proměnné. • Změna stavu inhibitoru ze stavu FALSE (NEPRAVDA) na stav TRUE (PRAVDA) nebo obráceně. Nenulová hodnota inhibitoru přeruší spojení mezi alarmovým podnětem a alarmovým stavem. V souladu s třístupňovým modelem řízení vzniku a viditelnosti alarmu je možné ovlivnit viditelnost i na straně spotřebitele alarmu následujícím způsobem: • Potlačení zobrazení alarmu: U spotřebitele alarmů lze potlačit zobrazení jednoho nebo více alarmů specifikací souboru vylučovacích kritérií. Pokud alarm splňuje vylučovací kritéria, nebude u spotřebitele alarmů viditelný. To znamená, že nebude zobrazen na obrazovce příslušného konkrétního spotřebitele alarmů. Generování alarmů není systémem potlačení zobrazení na straně spotřebitele nijak ovlivněno. Potlačení zobrazení alarmu v podstatě znamená, že konkrétní spotřebitel alarmů ignoruje (dočasně) určité alarmy. Potlačením zobrazení alarmu se přeruší spojení mezi alarmovým stavem a oznámením alarmu. • Připomínáme, že potlačení se uskuteční pouze u konkrétního spotřebitele alarmů. • Každý spotřebitel alarmů zjistí odlišné výsledky, neboť každý spotřebitel alarmů bude mít specifikován vlastní soubor vylučovacích kritérií. Potlačení zobrazení na straně spotřebitele je v podstatě upřesnění dotazu na databázi alarmů. • Aktuální generování alarmů není nijak ovlivněno, ani tehdy, když zobrazení alarmu zablokuje současně více spotřebitelů. • Tzv. Logger zapíše událost, kdykoli spotřebitel alarmů změní vylučovací kritéria. Poznámka: Poslední bod platí pouze tehdy, je-li řádek "SuppressionLog=1" přítomen v souboru alarmbuf.ini. Varianta “SuppressionLog=0” vypne ukládání informací o změně vylučovacích kritérií. Implicitně je zablokování vypnuto. Přechody stavů deaktivace a potlačení při běhu programu - 407 - Program InTouch umožňuje deaktivovat nebo aktivovat všechny alarmy proměnné najednou. U alarmu, který má definováno více substavů, může být každý substav deaktivován jednotlivě. Lze tedy deaktivovat všechny substavy naráz nebo lze deaktivovat pouze některé substavy, zatímco jiné zůstanou aktivované. Například alarm analogové hodnoty může mít limit "Hi (Vysoký)" aktivován a zárověň limit "HiHi (Velmi vysoký)" deaktivován. Podobně jako v případě deaktivace alarmu, který má substavy, můžete i inhibitory přiřadit jednotlivým substavům. Potlačení jednotlivých substavů lze ovládat prostřednictvím různých inhibitorů a ke zvoleným substavům nemusíte přiřazovat žádný inhibitor. Například alarm analogové hodnoty může mít potlačení limitu "Hi (Vysoký)" ovládáno jednou proměnnou, potlačení limitu "HiHi (Velmi vysoký)" druhou proměnnou a pro limity "Lo (Nízký)" a "LoLo (Velmi nízký)" nemít inhibitor přiřazen vůbec. Přiřazení inhibitoru konkrétnímu substavu je možné pouze v programu WindowMaker. Kdykoli za běhu programu WindowViewer dojde k přechodu alarmu ze stavu aktivně potlačen do stavu nepotlačen, je okamžitě aktivována alarmová logika pro vyhodnocení, zda se proměnná nachází v alarmovém stavu. Poskytovatel alarmů negeneruje alarmy pro proměnné a substavy, které jsou deaktivovány, ani pro proměnné nebo substavy, které jsou aktivně potlačeny. Změny stavu alarmu na deaktivovaný nebo aktivovaný lze provádět za běhu programu. Změny hodnot inhibitorů lze rovněž provádět za běhu programu, avšak přiřazování inhibitorů k alarmům a substavům lze nastavovat nebo měnit pouze v programu WindowMaker během vývoje aplikace. Alarm nebo substav lze nezávisle deaktivovat, potlačit nebo obojí. Je-li alarm buď aktuálně deaktivován nebo aktivně potlačen, znamená to, že alarm je "vypnut". Pouze v případě, že alarm je aktivován a zároveň není aktivně potlačen, je alarm schopen přejít do aktivního stavu. Pokud nemá alarm nebo substav přiřazen žádný inhibitor, je to stejné, jako kdyby měl přiřazen inhibitor, jehož hodnota by byla trvale NEPRAVDA, takže proměnná by nemohla být nikdy aktivně potlačena. Kdykoli alarm přejde ze stavu deaktivován do stavu aktivován, okamžitě je volána alarmová logika, která vyhodnotí, zda poskytovatel alarmu uvede proměnnou do stavu alarm. Přejde-li nějaký alarm do stavu deaktivován nebo aktivně potlačen, zatímco proměnná je v alarmovém stavu, proměnná okamžitě přejde do nově platného stavu. Jaký to bude stav, závisí na tom, které substavy jsou aktuální a zda jsou také deaktivovány. Alarm, který je deaktivován nebo aktivně potlačen, nečeká na potvrzení. Pokud má alarm definovány substavy, může alarm čekat na potvrzení pouze nachází-li se v substavech, které jsou stále dostupné. - 408 - Nastavení alarmového systému Vývojář aplikace může nastavit různé parametry ovlivňující chování alarmového systému jako celku, například, zda má být aktivován systém událostí, zda budou alarmy vyžadovat potvrzení i po návratu do normálního stavu atd. Poznámka: Konfigurační dialogové okno se chová jako jakákoli standardní karta vlastností systému Windows: žádná nastavení se nezaznamenají, dokud neklepnete na OK. Pokud klepnete na Cancel (Storno), ignorují se všechny vstupy a dialogové okno se uzavře. Standardní vlastnosti alarmů/událostí ¾ Nastavení standardních vlastností alarmů/událostí 1. TIP V nabídce Special (Speciální) ukažte na Configure (Konfigurovat) a potom klepněte na Alarms (Alarmy) nebo v Aplikačním průzkumníku ve složce Configure (Konfigurovat) klepněte dvakrát na Alarms (Alarmy). Objeví se dialogové okno Alarm Properties (Vlastnosti alarmů): Klepnete-li pravým tlačítkem myši na textové pole v libovolném dialogovém okně konfigurace alarmu, objeví se kontextová nabídka s příkazy, které lze použít pro zvolený text. 2. V poli Alarm Buffer Size (Velikost paměti pro historické alarmy), zapište počet alarmových událostí, které má program WindowViewer uchovávat v paměti. Poznámka: V objektu pro zobrazování distribuovaných alarmů nastaveném pro zobrazování historie alarmů lze zobrazit pouze alarmové záznamy uložené "v paměti". Pokud se alarmy v aplikaci nepoužívají, tato hodnota může být nastavena na 1, aby paměť nebyla zbytečně alokována. Pokud nastavíte tuto hodnotu příliš velkou, může to negativně ovlivnit výkon systému. Pro distribuovaný alarmový systém je doporučena hodnota 500. - 409 - 3. Zvolte RTN implies ACK (RTN zahrnuje potvrzení), pokud požadujete, aby alarmy, které se navrátily do "normálního" stavu (RTN), byly automaticky potvrzovány. Nevolte tuto možnost, je-li vyžadováno, aby i alarmy, které se navrátily do normálního stavu, byly potvrzovány operátorem. Poznámka: Při použití rozšířeného modelu potvrzování (Expanded Summary), nesmí být možnost RTN Implies ACK (RTN zahrnuje potvrzení) zvolena. 4. Zvolte Events Enabled (Události aktivovány), pokud chcete zapnout generování událostí vyvolaných operátorem, systémem vstupů/výstupů nebo skripty systému InTouch. (Bude se to týkat pouze proměnných, u kterých je v databázi proměnných nastavena volba Log Events (Ukládat události).) Další informace o událostech najdete v oddílu "Alarmy a události". 5. Zvolte Alarm Enable Retentive, pokud chcete uchovat stav atributů .AlarmEnabled, i po uzavření programu WindowViewer. 6. Zvolte Retain ACK Comment as Alarm Comment (Použít potvrzovací komentář jako komentář alarmu), pokud mají být použity uživatelské komentáře zadávané při potvrzování alarmů namísto alarmových komentářů zadaných v databázi proměnných. 7. Klepněte na OK pro uložení Vašich nastavení a zavření dialogového okna. Potvrzování lokálních alarmů Lokální alarmy můžete potvrzovat pomocí .Ack (atribut proměnné) ve skriptu akce, klávesovým skriptem nebo prostřednictvím kontextové nabídky aktivované pravým tlačítkem myši v objektu pro zobrazování distribuovaných alarmů. Poznámka: Tyto způsoby nejsou doporučeny při použití rozšířeného modelu potvrzování (Expanded Summary). ¾ Vytvoření tlačítka pro potvrzení lokálního alarmu 1. Vložte do okna objekt tlačítko a propojte jej se skriptem akce nebo s klávesovým skriptem. 2. Klepněte dvakrát na objekt nebo jej zvolte a potom v nabídce Special (Speciální) zvolte Animation Links (Animační propojení). 3. V oddílu Touch Pushbutton (Dotykově citlivé tlačítko) dialogového okna klepněte na tlačítko Action (Akce). Objeví se editor skriptů. Zapište některý z následujících příkazů: Příkaz Ack $System; Ack Group Name; Ack Tagname; $System.Ack=l; Group Name.Ack=l; Popis Potvrdí všechny lokální alarmy v systému. Potvrdí všechny lokální alarmy v určité alarmové skupině. Potvrdí alarmy určené proměnné. Potvrdí všechny lokální alarmy v systému. Potvrdí všechny lokální alarmy v určité alarmové skupině. - 410 - Tagname.Ack=l; Tagname.AckDev=1; Tagname.AckROC=1; Tagname.AckValue=1; 4. Potvrdí alarmy určené proměnné. Potvrdí alarm odvozený od odchylky určené proměnné. Potvrdí alarm odvozený od rychlosti změny určené proměnné. Potvrdí alarm odvozený od hodnoty určené proměnné. Klepněte na OK. Více informací o editoru skriptů a o jeho vlastnostech je uvedeno v kapitole 8 "Vytváření skriptů QuickScript v programu InTouch". Horká záloha a synchronizace Distribuovaný alarmový systém umožňuje poskytovatelům alarmů, jakým je např. program InTouch, vydávat upozornění a přijímat potvrzení alarmů v síti. Spotřebitelům alarmů (klientům) na vzdálených uzlech umožňuje zadávat dotazy na alarmy a zobrazovat a potvrzovat tyto alarmy. V distribuovaném alarmovém prostředí může existovat velký počet poskytovatelů alarmů a spotřebitelů alarmů komunikujících prostřednictvím sítě. V tomto systému je možné některé poskytovatele alarmů nakonfigurovat jako záložní pro jiné poskytovatele alarmů v systému. Účelem existence záložního poskytovatele alarmů je vytvořit systém odolný vůči selhání, který za určitých kritických okolností zajistí, že alarmy budou v případě selhání primárního poskytovatele generovány prostřednictvím sekundárního poskytovatele alarmů. Můžete např. zřídit dva samostatné počítačové uzly, na nichž poběží totožné aplikace programu InTouch a které budou propojeny s totožným zařízením, například s redundantním systémem vstupů a výstupů. Alternativně může být primárním poskytovatelem alarmů "plnohodnotná" aplikace, zatímco v roli sekundárního poskytovatele může být nasazen pouze "minimální" systém schopný obsloužit pouze ty nejkritičtější části zařízení, aby udržel zařízení funkční a zabránil jeho poškození. Pouze určité vybrané klíčové poskytovatele alarmů je nutné zálohovat sekundárními poskytovateli alarmů. Konfigurace horké zálohy spočívá založení pojmenovaného páru zálohovaných poskytovatelů (Hot Backup Pair), ve kterém je identifikován primární poskytovatel alarmů a sekundární poskytovatel alarmů. Poznámka: Alarmy od sekundárního poskytovatele alarmů spotřebitelé získají pouze v případě, kdy primární poskytovatel alarmů nebude v činnosti. Záměrem konfigurace je, aby spotřebitel alarmů (klient) používal dotaz na alarmy, který se odkazuje na jméno páru zálohovaných poskytovatelů (Hot Backup Pair). Od tohoto páru klient získá pouze jeden seznam alarmů: od primárního poskytovatele nebo v případě, že primární poskytovatel selhal, alarmy od sekundárního poskytovatele. Potvrzování alarmů u primárního a sekundárního poskytovatele je zcela synchronizováno. To znamená, že když dojde k potvrzení alarmu u primárního poskytovatele, dojde automaticky i k potvrzení u sekundárního poskytovatele. Systém horké zálohy a synchronizace potvrzování distribuovaného alarmového systému zahrnuje následující moduly a činnosti: • Konfigurační utilitu, která usnadňuje proces vytvoření páru zálohovaných poskytovatelů a umožňuje konfiguraci primárního a sekundárního poskytovatele alarmů. • Konfigurační utilitu pro provádění mapování alarmů. • Integrovanou synchronizaci potvrzování alarmů. - 411 - • Koordinaci mezi poskytovateli během spouštění/vypínání jednoho z poskytovatelů alarmů. Poznámky o párech zálohovaných poskytovatelů (Hot Backup Pairs) • Systém horké zálohy je podporován pouze aplikacemi InTouch 7.11 a novějšími. • Systém horké zálohy není podporován, je-li zvolen rozšířený model potvrzování alarmů (Expanded Summary) nebo model potvrzování orientovaný událostně (Event Oriented). • Pokud spotřebitel alarmů (objekt pro zobrazování distribuovaných alarmů) provede dotaz na aktuální zálohovací pár a potom ještě samostatně na jednoho poskytovatele páru, distribuovaný alarmový zobrazovací objekt zobrazí každý záznam o alarmu dvakrát. • Poskytovatel by neměl být součástí více než jednoho páru zálohovaných poskytovatelů. • Je-li záznam primárního poskytovatele potvrzen a sekundární poskytovatel (který nebyl v činnosti během potvrzování) vstoupí v činnost až později, časová značka potvrzení na sekundárním poskytovateli bude přiřazena s ohledem na aktuální čas sekundárního poskytovatele a nebude tedy stejná jako časová značka záznamu potvrzení alarmu u primárního poskytovatele. • Spotřebitel alarmů (resp.objekt pro zobrazování distribuovaných alarmů), který provádí dotaz na pár zálohovaných poskytovatelů, zobrazí ve sloupci „Poskytovatel“ jméno páru, nikoli jméno uzlu poskytovatele. • Pro mapování potvrzení mezi primárním a sekundárním poskytovatelem můžete zvolit jakoukoli kombinaci atributů Design-Time (zadané v průběhu vývoje) a Run-time (platné za běhu aplikace) alarmového záznamu. Je však důležité, aby mapování nemělo za následek vícenásobné odkazy. • Provádíte-li mapování podle atributů Value (Hodnota) a Limit, hodnoty se zaokrouhlí na čtyři desetinná místa a teprve poté probíhá mapování. • Záznam alarmu, který nemá určenu kombinaci atributů Design-Time (zadané v průběhu vývoje) ani Run-time (platné při běhu programu), použije implicitní mapování podle atributu Run-time (platné při běhu programu). - 412 - Konfigurace páru zálohovaných poskytovatelů Systém horké zálohy se konfiguruje prostřednictvím utility Alarm Hot Backup Manager, která je přístupná prostřednictvím Aplikačního průzkumníka programu WindowMaker bezprostředně po instalaci programu InTouch. ¾ Konfigurace systému horké zálohy 1. Spusťte program WindowMaker. 2. Klepněte dvakrát na položku Alarm Hot Backup Manager (Správce systému horké zálohy) v Aplikačním průzkumníku. Objeví se dialogové okno Alarm Hot Backup Manager (Správce systému horké zálohy). Poznámka: Utilita automaticky zkontroluje přítomnost souboru provacc.ini v naposled otevřené složce aplikace programu InTouch. Pokud je soubor k dispozici, utilita se sama nastaví na základě informací získaných z tohoto souboru. V opačném případě vytvoří utilita nový soubor v aktuální složce. - 413 - ¾ Změna výchozího souboru INI 1. Spusťte program WindowMaker. 2. Klepněte dvakrát na ikonu Správce systému horké zálohy (Alarm Hot Backup Manager) v Aplikačním průzkumníku. Objeví se dialogové okno Alarm Hot Backup Manager (Správce systému horké zálohy). 3. Zvolte příkaz Open (Otevřít) v nabídce File (Soubor). Objeví se dialogové okno Open (Otevřít) se seznamem dostupných souborů provacc.ini. (Toto dialogové okno Vám umožní zvolit jen soubor provacc.ini.) 4. Změňte podle potřeby cestu a potom klepněte na Open (Otevřít). (Doporučujeme umístit soubor provacc.ini v adresáři aplikace.) - 414 - ¾ Přidání nového páru zálohovaných poskytovatelů 1. Spusťte program WindowMaker. 2. Klepněte dvakrát na položku Alarm Hot Backup Manager (Správce systému horké zálohy) v Aplikačním průzkumníku. Objeví se dialogové okno Alarm Hot Backup Manager (Správce systému horké zálohy). 3. Klepněte na New Pair (Nový pár). Zobrazí se dialogové okno Add New Pair (Přidat nový pár). 4. V poli Hot Backup Pair Name (Název páru zálohovaných poskytovatelů) napište jedinečný název nového páru. Názvy párů mohou mít délku až 32 alfanumerických znaků. Poznámka: Stejné názvy párů nejsou povoleny. Jediným speciálním znakem, který je dovolen na začátku, uprostřed nebo na konci názvu páru aktuálního zálohování, je znak podtržítko. 5. V poli Name (Jméno) ve skupině Primary Node (Primární uzel) napište jméno uzlu (počítače), na kterém běží aplikace primárního poskytovatele alarmů. Názvy uzlů mohou mít délku až 32 alfanumerických znaků. Název uzlu : • Název uzlu musí začínat písmenem. • Pro pojmenování uzlu můžete použít jakékoliv alfanumerické znaky. • Jediný speciální znak, který je v názvu uzlu možné použít, je podtržítko (_). • Žádné jiné speciální znaky nejsou pro pojmenování uzlu povoleny. - 415 - Poznámka: Název uzlu pro konkrétní aplikaci musí být pro celý seznam systému horké zálohy jedinečný. V případě, že zadáte chybný nebo stejný název, zobrazí se okno s příslušnou chybovou zprávou.) Pevný název poskytovatele je slovo InTouch a není možné ho měnit. 6. V poli Group (Skupina) ve skupině Primary Node (Primární uzel) napište název alarmové skupiny pro dotazování alarmů z primárního poskytovatele, například $System. Názvy alarmových skupin mohou mít délku až 32 alfanumerických znaků. Název skupiny : • Všechny validní znaky jsou povoleny (A–Z, a–z,0–9, !, @, -, ?, #,$,_,&). • Název skupiny musí začínat písmenem A-Z popřípadě a-z. • Znak $ je jediný nealfanumerický znak, pomocí kterého je možné začít název skupiny. V případě použití znaku $ se musí alarmová skupina jmenovat $System. • Na konci názvu alarmové skupiny, není možné použít zpětné lomítko (\). Poznámka: Znak „\“ je možné použít na místo znaku „!“ pro oddělení názvu páru od názvu alarmové skupiny. • Dvojtá zpětná lomítka (\\) nejsou povolena. 7. V poli Name (Jméno) ve skupině Backup Node (Záložní uzel) napište jméno počítače, na kterém běží aplikace záložního poskytovatele. Názvy uzlů mohou mít délku až 32 alfanumerických znaků. 8. V poli Group (Skupina) ve skupině Backup Node (Záložní uzel) napište název alarmové skupiny pro provádění dotazů na alarmy ze záložního poskytovatele. Například $System. Názvy alarmových skupin mohou mít délku až 32 alfanumerických znaků. Poznámka: Název uzlu pro konkrétní aplikaci musí být pro celý seznam aktuálního zálohování jedinečný. V případě, že zadáte chybné nebo stejné vstupy, zobrazí se okno s příslušnou chybovou zprávou. 9. Klepněte na OK. Poznámka: Pro uložení všech změn v souborech INI musíte provést příkaz Save (Uložit) v nabídce File (Soubor). Před ukončením utility budete vyzváni k uložení změn. - 416 - ¾ Editace existujícího páru aktuálního zálohování Spusťte program WindowMaker. TIP Klepněte dvakrát na položku Alarm Hot Backup Manager (Správce systému horké zálohy) v Aplikačním průzkumníku. Objeví se dialogové okno Alarm Hot Backup Manager (Správce systému horké zálohy). Zvolte název páru zálohovaných poskytovatelů, který chcete modifikovat, a potom klepněte na Modify Pair (Modifikovat pár). Objeví se dialogové okno Configure Hot Backup Pair (Konfigurovat pár zálohovaných poskytovatelů). Poznámka: Název uzlu pro konkrétní aplikaci musí být pro celý seznam aktuálního zálohování jedinečný. V případě, že zadáte chybné nebo stejné vstupy, zobrazí se okno s příslušnou chybovou zprávou. Více informací o polích v tomto dialogovém okně je uvedeno v postupu "Přidání nového páru aktuálního zálohování". Proveďte potřebné úpravy polí a potom klepněte na OK. Poznámka: Pro uložení všech změn v souborech INI musíte provést příkaz Save (Uložit) v nabídce File (Soubor). Před ukončením utility budete vyzváni k uložení změn. - 417 - ¾ Vymazání existujícího páru aktuálního zálohování 1. Spusťte program WindowMaker. 2. Klepněte dvakrát na položku Alarm Hot Backup Manager (Správce systému horké zálohy) v Aplikačním průzkumníku. Objeví se dialogové okno Alarm Hot Backup Manager (Správce systému horké zálohy). 3. Zvolte pár zálohovaných poskytovatelů, který chcete vymazat, a potom klepněte na Delete Pair (Vymazat pár). Objeví se okno se zprávou požadující potvrdit vymazání. 4. Klepněte na Yes (Ano). Poznámka: Pro uložení všech změn v souborech INI musíte provést příkaz Save (Uložit) v nabídce File (Soubor). Před ukončením utility budete vyzváni k uložení změn. Vzorové architektury Tento dodatek uvádí příklady architektur programu InTouch. Samostatný systém V nejzákladnější konfiguraci provádí samostatný počítač několik úkolů: je svým vlastním poskytovatelem i spotřebitelem alarmů, může na něm probíhat vývoj aplikace, hostí I/O server(y) a zaznamenává vlastní historii alarmů a dat. V tomto uspořádání se používá objekt pro zobrazení distribuovaných alarmů v nastavení, které zobrazuje lokální alarmy. Utilita Alarm DB Logger může být použita pro ukládání historie alarmů do MSDE nebo MS SQL, pokud to uživatel vyžaduje nebo pokud aplikace vyžaduje modernější nástroje pro správu databáze, které nabízí MS SQL Server. MS SQL bude rovněž přítomen, jestliže historická data budou ukládána pomocí databáze IndustrialSQL Server, ačkoli v samostatných systémech postačí použít tradiční ukládání historických dat - 418 - prostřednictvím programu InTouch. Poznámka: V samostatných systémech je třeba věnovat obzvláštní pozornost volbě spolehlivého systému, který splňuje nebo překračuje minimální požadavky na rychlost procesoru a na velikost operační paměti. Ve větších víceuzlových systémech jsou výše zmíněné úkoly rozděleny mezi jednotlivá PC v systému. Náročné aplikace mohou použití víceuzlového systému vyžadovat. Máte-li v harwarové konfiguraci PC dva pevné disky a používáte-li MS SQL Server, doporučujeme nakonfigurovat systém tak, aby transakční protokol SQL Serveru byl ukládán na jinou diskovou jednotku než databáze alarmů. Pozitivně to ovlivní výkon systému. Základní víceuzlový systém Ve většině základních zesíťovaných systémů bude přítomen server (zdroj aktuálních dat a poskytovatel alarmů) a několik klientů - spotřebitelů alarmů. Vývoj aplikace obvykle probíhá na vyhrazeném uzlu v síti. Doporučení: • Použijte nejvýkonější systém pro server (zdroj aktuálních dat, poskytovatel alarmů), neboť bude provádět více úloh v porovnání s ostatními uzly. Pamatujte na rozšíření paměti tohoto PC, neboť bude obsluhovat více klientů. • Firma Wonderware vřele doporučuje použít samostatný server pro provoz databáze MS SQL Server a ukládání historie alarmů do této databáze. • Pro server použijte operační systém Windows 2000 Server nebo Windows 2000 Advanced Server. Klienty mohou být systémy Windows 2000 Professional nebo Windows XP. • V kritických aplikacích doporučujeme nasazení systému UPS (nepřetržitý zdroj napájení) pro všechny servery. (zdroj aktuálních dat, poskytovatel alarmů, server ukládající historická data). - 419 - • Objekty pro zobrazování distribuovaných alarmů na klientských počítačích by měly alarmy získávat ze serveru. • Navrhněte aplikaci tak, aby v pravidelných intervalech probíhala synchronizace času mezi počítači. To platí pro jakékoli síťové řešení s FactorySuite, kde je ukládán libovolný druh historických dat. Víceuzlový systém se systémem horké zálohy a synchronizací potvrzení Tato architektura naznačuje typickou konfiguraci potřebnou k realizaci systému horké zálohy. Uzly primárního a záložního poskytovatele alarmů jsou servery, na nichž běží aplikace InTouch a komunikační I/O servery. Obě aplikace programu InTouch na uzlech poskytovatelů alarmů nemusí být stejné, ale alarmy, mezi kterými bude probíhat mapování, musí být definovány na obou z nich. Systém horké zálohy alarmů a synchronizace se konfigurují na každém klientském uzlu spotřebitele alarmů. Klienti mohou použít distribuovaný alarmový objekt pro zobrazování aktuálních alarmů a ovládací prvek Alarm DB View ActiveX pro zobrazování historie alarmů uložené na uzlu (uzlech) MS SQL Server (případně i IndustrialSQL Server). V této konfiguraci může utilita Alarm DB Logger pracovat na jednom z klientů (spotřebitelů) s aktivním dotazem na pár zálohovaných poskytovatelů alarmů. Druhá stejně nakonfigurovaná utilita Alarm DB Logger může běžet na jiném klientském uzlu (Backup MS SQL) a rovněž ukládat historii alarmů za účelem zálohování. Poznámka: Firma Wonderware doporučuje použití systému MS SQL Server v distribuovaných aplikacích spíše než použití MSDE. Na uzlu MS SQL v této architektuře je typické rovněž provozovat IndustrialSQL Server a spravovat tak historii alarmů i historii dat na stejném počítači. (Ve velmi náročných aplikacích může vzniknout potřeba použít pro každou z těchto úloh samostatný počítač.) Aby systém byl dostatečně odolný vůči ztrátě dat, je možné historii alarmů ukládat i na druhý záložní uzel s MS SQL/IndustrialSQL. V páru zálohovaných poskytovatelů alarmů nemůže být zkonfigurován počítač, na kterém je nastaven systém horké zálohy. - 420 - K A P I T O L A 1 0 Klienti alarmů a událostí Program InTouch poskytuje ovládací prvek k zobrazení alarmů Alarm Viewer ActiveX s vestavěnými posuvníky, sloupci tabulky s nastavitelnou šířkou, možností výběru více alarmů, stavovým řádkem aktuálního stavu, dynamickými možnostmi zobrazování a možností barevného rozlišení alarmů podle jejich priorit. Ovládací prvek Alarm Viewer ActiveX je preferovaným nástrojem k zobrazení alarmů. Program InTouch rovněž zahrnuje starší objekt pro zobrazování alarmů, který umožňuje zobrazovat existující alarmy podobně jako ovládací prvek Alarm Viewer ActiveX, nicméně nemá tolik konfiguračních možností a jeho vzhled je mírně odlišný. Program InTouch také nabízí ovládací prvek Alarm DB View ActiveX, který umožňuje zobrazovat alarmová data z nové databáze alarmů uložená utilitou Alarm DB Logger. Tento ovládací prvek se používá k zobrazení všech informací o alarmech a událostech uložených v alarmové databázi. V InTouch můžeme použít ovládací prvek ovládací prvek Alarm Tree View ActiveX sloužící k zobrazení hierarchie alarmních skupin. Pomocí tohoto prvku můžete jednoduše dynamicky zobrazit strukturu alarmního systému. Pomocí ovládacího prvku Alarm Pareto ActiveX (Znázornění četnosti alarmových událostí ve formě Pareto grafu) můžete analyzovat, které alarmy a události nastávají nejčastěji v daném výrobním systému. Program InTouch rovněž poskytuje skriptové funkce QuickScript, které umožňují dynamické změny zobrazování alarmů a potvrzování alarmů. Použití funkcí QuickScript je popsáno pro každý ovládací prvek. Obsah • Ovládací prvek Alarm Viewer ActiveX • Objekt pro zobrazování alarmů distribuovaného alarmového systému • Ovládací prvek Alarm DB View ActiveX • Ovládací prvek Alarm Tree View ActiveX • Ovládací prvek Alarm Pareto ActiveX - 421 - Ovládací prvek Alarm Viewer ActiveX Program InTouch nabízí ovládací prvek Alarm Viewer ActiveX, který umožňuje zobrazit všechny lokální i vzdálené alarmy. Uživatel má možnost navrhovat vzhled ovládacích prvků ActiveX a vzhled zobrazených dat nastavením následujících atributů: • Vlastnosti kontextově citlivé nabídky • Režim zobrazení • Možnosti ovládání sestav a výpisů • Barvy pro různé vlastnosti • Typ písma, jeho styl a velikost • Výběr alarmů (filtry) • Specifikaci dotazů • Nastavení sloupců • Řazení záznamů Jakmile je nastaven formát ovládacího prvku, uživatel má možnost provádět následující nastavení, jež mu umožňují manipulovat se zobrazenými daty: • Seřadit záznamy podle určitých sloupců • Aktualizovat zobrazení • Vyvolávat dotazy • Měnit šířku sloupce Ovládací prvek Alarm Viewer ActiveX lze umístit do okna ve vývojovém prostředí WindowMaker, měnit jeho velikost a umístění. Konfigurace ovládacího prvku Alarm Viewer ActiveX se provádí pomocí karet Vlastností. Alarmové záznamy lze zobrazit v aktivní oblasti ovládacího prvku Alarm Viewer ActiveX. Zobrazování alarmů v ovládacím prvku Alarm Viewer ActiveX Ovládací prvek Alarm Viewer ActiveX (AlarmViewerCtrl1) je jeden z předkonfigurovaných objektů sloužících k zobrazení alarmů a událostí. Třebaže se vzhledem podobá starému standardnímu předkonfigurovanému objektu pro zobrazení alarmů, využívá stejných principů jako předkonfigurované objekty ovládacích prvků Window Controls. Tyto principy vyžadují dodržování určitých pravidel při používání objektu Alarm Viewer ActiveX. Tato pravidla jsou následující: Každý ovládacího prvek Alarm Viewer ActiveX musí mít jedinečný identifikátor, takže libovolná skriptová funkce QuickScript ví, který ovládacího prvek (alarmový objekt) modifikovat. Tento identifikátor zadaný jako Control Name (Název prvku) v dialogovém okně Alarm Viewer ActiveX Properties (Vlastnosti objektu ActiveX Alarm Viewer) musí být u každého objektu jednoznačný. Alarmové objekty by neměly překrývat jiné objekty InTouch (například ovládací prvky nebo grafické objekty). Uživatel může dodržování tohoto pravidla snadno zkontrolovat klepnutím na Alarm Viewer ActiveX v programu WindowMaker a následující vizuální kontrolou „úchytů“ prohlížeče. Tyto úchyty by se neměly dotýkat jiných grafických objektů na obrazovce. Alarmové objekty je třeba používat s rozvahou. Umístění velkého počtu alarmových objektů na jednu obrazovku může způsobit snížení výkonu systému. Je-li to možné, - 422 - omezte počet alarmových objektů v jednom okně a další objekty umístěte do jiných oken, které můžete podle potřeby volat. Instalace ovládacího prvku Alarm Viewer ActiveX Tento ovládací prvek Alarm Viewer ActiveX pro zobrazování alarmů a událostí se instaluje během instalace systému InTouch. ¾ Chcete-li vložit tento ovládací prvek do okna WindowMaker 1. Otevřete dialogové okno Wizard Selection (Výběr předkonfigurovaného objektu). 2. V položce ActiveX Controls (Ovládací prvky ActiveX) zvolte AlmViewerCtrl a klepněte na OK. 3. Vložte ovládací prvek do okna a změňte podle potřeby jeho velikost a umístění. Odinstalace ovládacího prvku Alarm Viewer ActiveX 1. Vymažte všechny ovládací prvky Alarm Viewer vložené v oknech aplikace InTouch. 2. Zvolte Configure (Konfigurovat) z nabídky Special (Speciální). 3. Zvolte Wizard/ActiveX Installation (Instalace předkonfigurovaného objektu/ActiveX), otevře se dialogové okno Wizard/ActiveX installation. 4. Zvolte kartu vlastností instalace ActiveX Control Installation (Instalace ovládacích prvků ActiveX). Název ovládacího prvku Wonderware Alarm Viewer se objeví v textovém poli Installed ActiveX Controls (Instalované ovládací prvky ActiveX). 5. Označte ovládací prvek Wonderware Alarm Viewer, potom klepněte na Remove (Odstranit). 6. Klepněte na Yes (Ano) v okně s varovnou hláškou. 7. Klepněte na Close (Zavřít). Použití ovládacího prvku Alarm Viewer ActiveX ¾ Chcete-li vložit Alarm Viewer ActiveX pro zobrazování alarmů 1. Klepněte na nástroj Wizard (Předkonfigurovaný objekt) na nástrojové liště Wizards/ActiveX (Předkonfigurované objekty/ActiveX). Objeví se dialogové okno Wizard Selection (Výběr předkonfigurovaného objektu). - 423 - 2. V seznamu předkonfigurovaných objektů vyberte kategorii ActiveX Controls (Ovládací prvky ActiveX). 3. Poklepejte na ovládací prvek AlarmViewerCtrl nebo ho vyberte a poté klepněte na OK. Dialogové okno se uzavře. Znovu se zobrazí vámi vytvářené okno s kurzorem v režimu vkládání. - 424 - 4.Klepněte do okna a vložte tak ovládací prvek Alarm Viewer pro prohlížení alarmů K nastavení velikosti předkonfigurovaného objektu ukažte na jeden z úchytů objektu a poté ho přetáhněte myší na požadovanou velikost. 5. Nyní jste připraveni objekt nakonfigurovat. Přístup k dialogovému oknu Vlastnosti prvku AlmViewerCtrl Dialogové okno AlmViewerCtrl Properties (Vlastnosti AlmViewerCtrl) lze vyvolat: • poklepáním na ovládací prvek nebo • klepnutím pravým tlačítkem myši na ovládací prvek a výběrem příkazu Properties (Vlastnosti) z kontextové nabídky. Konfigurace ovládacího prvku Alarm Viewer ActiveX Dialogové okno AlmViewerCtrl má osm karet s vlastnostmi. Karty vlastností jsou Control Name (Název ovládacího prvku), General (Obecné), Color (barvy), Time Format (formát času), Query (dotaz), Properties (vlastnosti) a Events (události). Poznámka: Dialogové okno konfigurace se chová jako kterékoliv standardní okno vlastností v systému Windows, takže se žádná nastavení nezaznamenají, dokud neklepnete na tlačítko OK nebo Apply (Použít). U zadaných voleb se zkontroluje správnost zadání při přechodu z jedné karty na druhou. Jestliže některá kontrola nevyhoví pravidlům správného použití, zobrazí se karta vlastností s nesprávnou položkou a zpráva ohlašující chybu. Pokud se přepnete z jedné karty vlastností na druhou, změny nastavené na předchozí kartě vlastností se automaticky použijí. Jestliže klepnete na tlačítko Cancel (Storno), všechny vstupy se ignorují a dialogové okno se uzavře. - 425 - Vlastnosti ovládacího prvku Alarm Viewer ActiveX ¾ Chcete-li konfigurovat prohlížeč alarmů Alarm Viewer ActiveX 1. Poklepejte na prohlížeč alarmů Alarm Viewer ActiveX nebo na něj klepněte pravým tlačítkem myši a vyberte příkaz Properties (Vlastnosti). Zobrazí se dialogové okno AlmViewerCtrl Properties s aktivní kartou vlastností Control Name (Název ovládacího prvku). TIP 2. Klepnete-li pravým tlačítkem myši na vstupní textová pole v libovolném konfiguračním dialogovém okně, objeví se nabídka s příkazy, které lze aplikovat na zvolený text. Klepněte na kartu vlastností, u které chcete nastavit konfiguraci. Konfigurace Control Name (názvu) a pozice ovládacího prvku ¾ Chcete-li konfigurovat název a pozici ovládacího prvku 1. Poklepejte na prohlížeč alarmů Alarm Viewer ActiveX nebo na něj klepněte pravým tlačítkem myši a vyberte příkaz Properties (Vlastnosti). Zobrazí se dialogové okno AlmViewerCtrl Properties s aktivní kartou vlastností Control Name (Název ovládacího prvku). - 426 - 2. Do pole ControlName (Název ovládacího prvku) zapište název prohlížeče alarmů. Tento název musí být jedinečný pro každé použití tohoto ovládacího prvku v rámci jedné aplikace InTouch. Poznámka: Výchozí jméno ovládacího prvku (ControlName) je určeno tzv. ProgID tohoto prvku. ProgID jsou názvy v registrech operačního systému. Tyto názvy jsou vloženy při instalaci objektu ActiveX na daném počítači. Jestliže je instance takového prvku vložena do aplikace InTouch, z registrů operačního systému se získá ProgID a k němu je připojeno číslo indexu (pořadové číslo prvku v aplikaci), čímž se získá jméno ovládacího prvku (Control Name), např. AlarmViewerCtrl1. TIP 3. Název, který sem zadáte, se bude používat v celé aplikaci InTouch k odkazování na tento objekt při vykonávání úloh jako je potvrzování alarmů, dotazování alarmů atd.. Zadejte číselné hodnoty do pole Left (Vlevo), Width (Šířka), Top (Nahoře) a Height (Výška) dialogu a nastavte tak velikost a pozici prohlížeče alarmů: Možnost Popis Left (Vlevo) Určuje vzdálenost mezi prohlížečem alarmů a levým okrajem okna. Nižší číslo posune prohlížeč blíž k levému okraji okna. Vyšší číslo posune prohlížeč dál od levého okraje okna. Width (Šířka) Určuje šířku prohlížeče alarmů. Top (Nahoře) Určuje vzdálenost mezi prohlížečem alarmů a horním okrajem okna. Nižší číslo posune prohlížeč blíž k hornímu okraji okna. Vyšší číslo posune prohlížeč dál od horního okraje okna. Height (Výška) Určuje výšku prohlížeče alarmů. - 427 - Visible (Viditelnost) Zrušíte-li zaškrtnutí políčka Visible (viditelnost), nebude ovládací prvek při běhu aplikace viditelný. GUID Zobrazuje jedinečné ID (identifikátor) tohoto ovládacího prvku ActiveX v operačním systému. 4. Klepněte na tlačítko Apply (Použít). Můžete pokračovat konfigurací na další kartě vlastností nebo klepněte na OK a uzavřete tak konfiguraci vlastností. Konfigurace obecných (General) vlastností ¾ Chcete-li konfigurovat obecné vlastnosti 1. Poklepejte na prohlížeč alarmů Alarm Viewer ActiveX nebo na něj klepněte pravým tlačítkem myši a vyberte příkaz Properties (Vlastnosti). Zobrazí se dialogové okno AlmViewerCtrl Properties s aktivní kartou vlastností Control Name (Název ovládacího prvku). 2. Klepněte na kartu General (Obecné) a vyvolejte tak kartu obecných vlastností General. Karta General (Obecné) je zobrazena s výchozím nastavením vlastností: - 428 - 3. Zaškrtáváním políček vyberte obecné možnosti prohlížeče alarmů. Pokud chcete, aby některé vlastnosti prohlížeče alarmů nebyly při provozu aplikace k dispozici, nezaškrtávejte je. Možnosti zaškrtávacích políček jsou uvedeny v následující tabulce Vlastnost Popis Je-li toto políčko zaškrtnuto, objekt Perform Query on Startup (Provedení dotazu při spuštění) automaticky začne aktualizovat zobrazení alarmů a událostí podle výchozích vlastností dotazu. Není-li zaškrtnuto, je třeba před aktualizací zobrazení vyvolat dotaz pomocí metod almDefQuery nebo almQuery. Možnost Requery (opakovaný dotaz) je k dispozici také v kontextové nabídce po klepnutí pravým tlačítkem myši. Show Context Sensitive Menu (Zobrazit kontextově citlivou nabídku) Povoluje aktivaci kontextové nabídky po klepnutí pravým tlačítkem myši. Pokud je tato možnost zaškrtnuta, je také aktivní tlačítko Configure Context Menus (Konfigurovat kontextové nabídky) a zaškrtávací políčko Use Default Ack Comment (Použít výchozí komentář při potvrzení). - 429 - Use Default Ack Comment (Použít výchozí komentář při potvrzení) Určuje, zda se při potvrzení alarmu operátorem přes pravé tlačítko myši použije výchozí komentář. Je-li toto políčko zaškrtnuté a zadáte text, daný text se při potvrzení alarmů použije jako výchozí komentář. Jestliže toto políčko není zaškrtnuté a operátor potvrdí alarm, zobrazí se dialogové okno, jež umožňuje operátorovi zadat komentář. Toto pole dialogu lze vyplnit nebo ponechat prázdné. Výběr uvedené možnosti aktivuje pole Ack Comment (Komentář potvrzení), do něhož se zadává komentář. Toto tlačítko je k dispozici jen v případě, že je zaškrtnuté políčko Show Context Sensitive Menu (Zobrazit kontextově citlivou nabídku). Show Status Bar (Zobrazit stavový řádek) Přepíná zobrazení stavového řádku. Show Heading (Zobrazit záhlaví) Přepíná zobrazení záhlaví. Row Selection (Výběr řádku) Vlastnost umožňuje vybírat (označovat) záznamy v prohlížeči alarmů. Tato možnost umožňuje vybrat více alarmů a nezruší dříve provedený výběr alarmů na základě nového výběru. Use Extended Selection (Používat rozšířený výběr) Umožňuje vybrat více alarmů přidržením kláves Ctrl nebo Shift spolu s ovládáním myší. Ve výchozím stavu se přepíná výběr alarmů jednoduchým klepnutím na alarm (volba je dostupná jen v případě, že je zaškrtnuto políčko Row Selection (Výběr řádku)). Silent Mode (Tichý režim) Je-li zaškrtnuto políčko Silent Mode (Tichý režim), prohlížeč alarmů nebude za běhu aplikace zobrazovat chybové zprávy (pokud se vyskytne). Není-li zaškrtnuto toto políčko, prohlížeč alarmů bude zobrazovat chybové zprávy dialogovým oknem typu Popup (vždy nahoře). Chybové zprávy se vždy zasílají aplikaci Log Viewer (prohlížeči záznamů). - 430 - 3. Resize Columns (Změna šířky sloupců) Je-li zaškrtnuté políčko Resize Columns (Změna šířky sloupců), za běhu aplikace lze měnit šířku sloupců. Jestliže toto políčko zaškrtnuté není, šířku sloupců nelze měnit za běhu aplikace. Show Grid (Zobrazit mřížku) Je-li zaškrtnuté políčko Show Grid (Zobrazit mřížku), prohlížeč alarmů zobrazuje mřížku. Není-li zaškrtnuté, mřížka se nezobrazuje. Klepněte na tlačítko Apply (Použít). Můžete pokračovat konfigurací na další kartě vlastností nebo klepněte na OK a uzavřete tak konfiguraci vlastností. Konfigurace kontextově citlivých nabídek ¾ Chcete-li konfigurovat kontextově citlivé nabídky 1. Poklepejte na prohlížeč alarmů Alarm Viewer ActiveX nebo na něj klepněte pravým tlačítkem myši a vyberte příkaz Properties (Vlastnosti). Zobrazí se dialogové okno AlmViewerCtrl Properties s aktivní kartou vlastností Control Name (Název ovládacího prvku). 2. Klepněte na kartu General (Obecné) a aktivujte tak kartu obecných vlastností General. 3. Klepněte na tlačítko Configure Context Menus (Konfigurovat kontextové nabídky) a vyberte možnosti zobrazení kontextových nabídek vyvolávaných klepnutím pravým tlačítkem myši za běhu aplikace. Objeví se obrazovka Context Sensitive Menus (Kontextově citlivé nabídky). - 431 - Poznámka: Tlačítko Configure Context Menus (Konfigurovat kontextové nabídky) je aktivní jen v případě, že je zaškrtnuta možnost Show Context Sensitive Menu (Zobrazit kontextově citlivé nabídky). 4. Nastavte položky, které se mají v kontextově citlivé nabídce zobrazovat a klepněte na tlačítko OK. Je-li zaškrtnuto políčko Show Context Sensitive Menu (Zobrazit kontextově citlivé nabídky), měla by být vybrána alespoň jedna položka kontextově citlivé nabídky. 5. Jednotlivé položky kontextově citlivé nabídky jsou popsány dále: Možnosti nabídky Popis Ack Selected (Potvrdit vybrané) Umožňuje uživateli potvrdit vybrané (označené) alarmy. Ack Others (Potvrdit jinak) Umožňuje uživateli potvrdit alarmy jinými způsoby. Uživatel může rozhodnout, které alarmy potvrdit z uvedených možností dále, jež nejsou tučně. Je-li zaškrtnuté políčko Ack Others, musíte vybrat nejméně jednu položku z podnabídky. Ack All (Potvrdit všechny) Umožňuje uživateli potvrdit všechny aktivní alarmy v prohlížeči alarmů. Ack Visible (Potvrdit viditelné) Umožňuje uživateli potvrdit pouze alarmy viditelné v prohlížeči alarmů. Ack Selected Groups (Potvrdit vybrané skupiny) Umožňuje uživateli potvrdit alarmy mající stejnou alarmovou skupinu a alarmového poskytovatele jako vybrané (označené) alarmy. - 432 - Ack Selected Tags (Potvrdit vybrané proměnné) Umožňuje uživateli potvrdit alarmy mající stejný název, alarmovou skupinu, prioritu alarmů a alarmového poskytovatele jako vybrané (označené) alarmy. Ack Selected Priorities (Potvrdit vybrané priority) Umožňuje uživateli potvrdit alarmy mající stejnou prioritu alarmů, alarmovou skupinu a alarmového poskytovatele jako vybrané (označené) alarmy. Suppress Selected (Potlačit jinak) Umožňuje uživateli potlačit zobrazení vybraných alarmů. Suppress Others (Potlačit jiné) Umožňuje uživateli potlačit zobrazení alarmů jinými způsoby. Uživatel může rozhodnout, které alarmy potlačit z uvedených možností dále, jež nejsou tučně. Je-li zaškrtnuté políčko Suppress Others, musíte vybrat nejméně jednu položku z podnabídky. Suppress All (Potlačit všechny) Umožňuje uživateli potlačit zobrazení všech alarmů zobrazených v prohlížeči alarmů. Suppress Visible (Potlačit viditelné) Umožňuje uživateli potlačit zobrazení alarmů viditelných v prohlížeči alarmů. Suppress Selected Groups (Potlačit vybrané skupiny) Umožňuje uživateli potlačit zobrazení alarmů majících stejnou alarmovou skupinu a alarmového poskytovatele jako vybrané (označené) alarmy. Suppress Selected Tags (Potlačit vybrané proměnné) Umožňuje uživateli potlačit zobrazení alarmů majících stejný název, alarmovou skupinu, prioritu alarmů a alarmového poskytovatele jako vybrané (označené) alarmy. Suppress Selected Priorities (Potlačit vybrané priority ) Umožňuje uživateli potlačit zobrazení alarmů majících stejnou prioritu alarmů, alarmovou skupinu a alarmového poskytovatele jako vybrané (označené) alarmy. - 433 - Unsuppress All (Zrušení všech potlačení) Umožňuje uživateli zrušit potlačení zobrazování všech potlačených alarmů. Query Favorites (Oblíbené dotazy) Umožňuje uživateli vyvolat dialog Query Favorites (Oblíbené dotazy). Stats (Statistiky) Umožňuje uživateli vyvolat a zobrazit dialogové okno statistiky alarmů. Klepněte za běhu aplikace pravým tlačítkem myši na prohlížeč alarmů a poté klepněte na příkaz Stats (Statistiky) v kontextové nabídce. Dialogové okno Alarm Statistics (Statistiky alarmů) má ve svém záhlaví uvedeno, ze kterého ovládacího prvku jsou statistiky alarmů zobrazeny. Suppression (Potlačení) Umožňuje uživateli vyvolat dialog Potlačení zobrazování. Freeze (Zmrazit) Umožňuje uživateli přepínat mezi zmrazeným / nezmrazeným režimem prohlížeče alarmů. Requery (Opakovat dotaz) Umožňuje uživateli znovu spustit dotaz na zobrazení alarmů. Sort (Řazení) Umožňuje uživateli vyvolat dialog Sort (řazení). Poznámka: Jsou-li položky Ack Selected (Potvrdit vybrané) a položky nabídky Ack Others (Potvrdit jinak) v konfiguračním dialogovém okně Context Sensitive Menus (Kontextově citlivá menu) nezaškrtnuté, potom je pole Default Ack Comment (Výchozí komentář potvrzení) a odpovídající textové pole neaktivní. Klepněte na tlačítko Apply (Použít). Můžete pokračovat konfigurací na další kartě vlastností nebo klepněte na OK a uzavřete tak konfiguraci vlastností. Konfigurace podrobností sloupců prohlížeče ¾ Chcete-li konfigurovat podrobnosti sloupců prohlížeče 1. Poklepejte na prohlížeč alarmů Alarm Viewer ActiveX nebo na něj klepněte pravým tlačítkem myši a vyberte příkaz Properties (Vlastnosti). Zobrazí se dialogové okno AlmViewerCtrl Properties s aktivní kartou vlastností Control Name (Název ovládacího prvku). 2. Klepněte na kartu General (Obecné) a aktivujte tak kartu obecných vlastností General. 3. Klepněte na tlačítko Column Details (Podrobnosti sloupců). Zobrazí se dialog Column Details (Podrobnosti sloupců) - 434 - 4. V dialogovém okně Column Details (Podrobnosti sloupců) zaškrtněte políčka u názvů sloupců Name (Název sloupce), které se mají zobrazovat v alarmovém objektu. Sloupce v dialogovém oknu Column Details (Podrobnosti sloupců) jsou Name (název), Width (šířka) a Original Name (původní název). Pole Original Name (Původní název) zobrazuje název sloupců před provedením změn. Původní názvy sloupců, které lze vybrat k zobrazení, jsou popsány dále. Poznámka: Musí být vybrán nejméně jeden sloupec. Název sloupce Popis Time (Čas) Zobrazuje čas (příp. i datum) ve formátu nastaveném v kartě vlastností Time Format (Formát času). State (Stav) Zobrazuje stav alarmu. Class (Třída) Zobrazuje třídu alarmu. - 435 - Type (Typ) Zobrazuje typ alarmu. Priority (Priorita) Zobrazuje prioritu alarmu. Name (Název) Zobrazuje název alarmu (proměnné). Group (Skupina) Zobrazuje název alarmové skupiny. Provider (Poskytovatel) Zobrazuje název alarmového poskytovatele. Value (Hodnota) Zobrazuje hodnotu proměnné při vzniku alarmu. Šířka sloupce by měla být dostatečně veliká, aby poskytla potřebnou úroveň přesnosti hodnoty. Limit Zobrazuje hodnotu alarmové meze dané proměnné. Šířka sloupce by měla být dostatečně veliká, aby poskytla potřebnou úroveň přesnosti hodnoty. Operator (Operátor) Zobrazuje jméno operátora, který je spojen s daným alarmovým záznamem. Alarm Comment (Alarmový komentář) Zobrazuje komentář proměnné. Tyto komentáře byly zadány do pole Alarm Comment (Alarmový komentář) při definici alarmu dané proměnné v databázi proměnných. Pokud se používají také komentáře při potvrzování alarmů, zobrazí se v tomto sloupci u potvrzených alarmů komentář zadaný při potvrzení. Operator Full Name (Celé jméno operátora) Zobrazuje celé jméno operátora, který je spojen s daným alarmovým záznamem. Operator Domain (Doména operátora) Zobrazuje doménu operátora, který je spojen s daným alarmovým záznamem. Operator Node (Název uzlu operátora) Zobrazuje název uzlu (PC), který je spojen s daným alarmovým záznamem. Tag Comment (Komentář proměnné) Zobrazuje komentář proměnné (ne alarmový komentář), který je spojen s daným alarmovým záznamem. Poznámka: Všechny sloupce jsou ve výchozí konfiguraci objektu zvoleny s výjimkou posledních čtyř sloupců. 5. Ke změně uspořádání sloupců (tzn. jejich pořadí) vyberte název sloupce a použijte tlačítka se šipkou nahoru a dolů. Sloupec, který je v dialogovém okně Column Details (Podrobnosti sloupců) nahoře, se v prohlížeči alarmů zobrazí zcela vlevo. 6. Pro změnu názvu a/nebo šířky sloupce poklepejte na název sloupce nebo vyberte název sloupce a klepněte na tlačítko Edit (Upravit). Zobrazí se dialogové okno Edit (Úpravy) pro daný sloupec. - 436 - 7. Chcete-li, aby byl sloupec nadepsán jiným než výchozím názvem, do textového pole New Name (Nový název) zadejte nový název. 8. Do textového pole New Width (Nová šířka) zadejte šířku sloupce. Šířka sloupce se měří v bodech obrazu (pixelech) a může dosahovat hodnot 1 až 999 pixelů. Výchozí šířka sloupce je 100 pixelů. 9. V dialogu Edit (Úpravy) klepněte na tlačítko OK. Poznámka: K návratu k výchozím nastavením sloupců klepněte na tlačítko Reset to Default (Znovu nastavit na výchozí hodnoty). 10. V dialogu Column Details (Podrobnosti sloupců) klepněte na tlačítko OK. 11. Klepněte na tlačítko Apply (Použít). Můžete pokračovat konfigurací na další kartě vlastností nebo klepněte na OK a uzavřete tak konfiguraci vlastností. - 437 - Konfigurace vlastností písma prohlížeče alarmů Alarm Viewer ActiveX ¾ Chcete-li konfigurovat vlastnosti písma 1. Poklepejte na prohlížeč alarmů Alarm Viewer ActiveX nebo na něj klepněte pravým tlačítkem myši a vyberte příkaz Properties (Vlastnosti). Zobrazí se dialogové okno AlmViewerCtrl Properties s aktivní kartou vlastností Control Name (Název ovládacího prvku). 2. Klepněte na kartu General (Obecné) a poté klepněte na tlačítko Font (Písmo). Zobrazí se dialogové okno Font (Písmo). 3. Prolistujte seznam písem a vyberte si požadovaný typ písma. 4. Prolistujte seznam Font Style (Styl písma) a vyberte si požadovaný řez písma. 5. Prolistujte seznam Size (Velikost) a zvolte velikost písma. 6. V poli Effects (Efekty) zaškrtněte políčko Strikeout (Přeškrtnout) nebo Underline (Podtrhnout) a vyberte tak přeškrtnutí nebo podtržení písma. 7. Klepněte na šipku u seznamu Script (Skript) a vyberte požadovaný typ skriptu. Poznámka: Pole Sample (Ukázka) zobrazuje na vzorku písma jeho vzhled podle vybraných atributů. 8. Klepněte na tlačítko OK. - 438 - Konfigurace barev prohlížeče alarmů Alarm Viewer ActiveX ¾ Chcete-li konfigurovat barvy prohlížeče alarmů 1. Poklepejte na prohlížeč alarmů Alarm Viewer ActiveX nebo na něj klepněte pravým tlačítkem myši a vyberte příkaz Properties (Vlastnosti). Zobrazí se dialogové okno AlmViewerCtrl Properties s aktivní kartou vlastností Control Name (Název ovládacího prvku). 2. Klepněte na kartu Color (Barvy) a aktivujte tak kartu vlastností barev Color. - 439 - 3. Klepněte na jednotlivá barevná pole a otevřete tak barevnou paletu. Klepněte na barvu v paletě, kterou chcete použít pro následující položky: Vlastnost Popis Window (Okno) Nastavuje barvu pozadí prohlížeče alarmů. Title Bar Text (Text v hlavičce) Nastavuje barvu textu v záhlaví prohlížeče alarmů (dostupné jen je-li vybrána možnost Show Heading (Zobrazit záhlaví)). Alarm Return (Návrat alarmu) Nastavuje barvu alarmů, které se vrátily do normálního stavu, aniž by byly předtím potvrzeny. Grid (Mřížka) Nastavuje barvu mřížky. Ve výchozím stavu se mřížka nezobrazuje. Výchozí barva mřížky je světle šedá. Title Bar Background (Pozadí titulkového řádku) Nastavuje barvu pozadí záhlaví prohlížeče alarmů (dostupné jen je-li vybrána možnost Show Heading (Zobrazit záhlaví)). Event (Událost) Nastavuje barvu událostí. 4. Do polí Alarm Priority (Priorita alarmu) zapište mezní hodnoty pro zobrazení barev alarmů. 5. Klepněte na barevná políčka UnAck Alarm (Nepotvrzené alarmy) a Ack Alarm (Potvrzené alarmy), čímž otevřete barevnou paletu. V paletě klepněte na barvu, kterou chcete použít. 6. Klepněte na tlačítko Apply (Použít). Můžete pokračovat konfigurací na další kartě vlastností nebo klepněte na OK a uzavřete tak konfiguraci vlastností. Konfigurace formátu času prohlížeče alarmů Alarm Viewer ¾ Chcete-li konfigurovat formát času prohlížeče alarmů 1. Poklepejte na prohlížeč alarmů Alarm Viewer ActiveX nebo na něj klepněte pravým tlačítkem myši a vyberte příkaz Properties (Vlastnosti). Zobrazí se dialogové okno AlmViewerCtrl Properties s aktivní kartou vlastností Control Name (Název ovládacího prvku). 2. Klepněte na kartu Time Format (Formát času) a aktivujte tak kartu nastavení formátu času Time Format. - 440 - Projděte si možnosti nastavení formátu času a vyberte požadovaný formát nebo si nakonfigurujte vlastní formátu času. Formátu času se skládá ze znaků oddělených symbolem %. Znaky formátu času jsou vysvětleny v následující tabulce: Znak formátu času Popis d datum o dvou číslicích – 09 b zkratka měsíce o 3 písmenech - Srp Y rok čtyřmi číslicemi – 2002 m měsíc dvěma číslicemi – 08 y rok dvěma číslicemi – 03 #x celý datum a den – Pátek, 09 srpna 2002 B celý název měsíce – srpen H hodiny ve 24-hodinovém formátu - 16:00 M minuty 00:41 p odp., dop. S sekundy – 16:41:07 s zlomky sekund – 16:41:07.390 I hodiny ve 12-hodinovém formátu, používá se v kombinaci se znakem "p" pro určení dop./odp.– 04:41 odp. 3. Některé příklady formátu času pro 9.srpna 2002 jsou uvedeny dále: - 441 - Formát času Zobrazeno %d %b 09 Srp %m/%d/%Y 08/09/2002 %#x Pátek, 09 srpna 2002 %Y-%m-%d 2002-08-09 %m/%d/%Y %H:%M %p 08/09/2002 16:56 odp. %m/%d/%Y %H:%M:%s %p 08/09/2002 16:56:38.07 odp. %I:%M %p 04:56 odp. Poznámka: Pokud je v operačním systému nastaveno české nebo slovenské národní prostředí, mohou se u některých položek (např. ’b’ , ’#x’) vyskytnout drobné odlišnosti. 4. Klepněte na šipku u pole Displayed Time (Zobrazený čas) a vyberte zobrazovaný čas. K dispozici jsou následující možnosti: OAT Original Alarm Time (Čas vzniku alarmu) – použije se časová značka přiřazená při vzniku alarmu. LCT Last Changed Time (Čas poslední změny) – použije se čas poslední změny stavu instance alarmu: počátek alarmu, změna substavu, návrat do normálního stavu nebo potvrzení. LCT But OAT on ACK (LCT, ale OAT při potvrzení) Čas poslední změny, ale původní čas vzniku alarmu při potvrzení – dokud bude alarm nepotvrzen, zobrazuje se čas poslední změny stavu instance alarmu; jakmile bude alarm potvrzen, bude se zobrazovat čas vzniku alarmu. 5. Klepněte na šipku u pole Displayed Time Zone (zobrazená časová zóna) a vyberte časovou zónu. K dispozici jsou následující možnosti: GMT Greenwich Mean Time, známý také jako koordinovaný univerzální čas UTC (Coordinated Universal Time) nebo Zulu. Local Time (Místní čas) Čas alarmu přizpůsobený místní časové zóně. Origin Time (Čas dle původu) Čas alarmu přizpůsobený časové zóně zdroje alarmu, tzn. zobrazí čas alarmového zdroje. 6. Klepněte na tlačítko Apply (Použít). Můžete pokračovat konfigurací na další kartě vlastností nebo klepněte na OK a uzavřete tak konfiguraci vlastností. - 442 - Konfigurace dotazu prohlížeče alarmu ¾ Chcete-li konfigurovat dotaz prohlížeče alarmu 1. Poklepejte na prohlížeč alarmů Alarm Viewer ActiveX nebo na něj klepněte pravým tlačítkem myši a vyberte příkaz Properties (Vlastnosti). Zobrazí se dialogové okno AlmViewerCtrl Properties s aktivní kartou vlastností Control Name (Název ovládacího prvku). 2. Klepněte na kartu Query (Dotaz) a aktivujte kartu vlastností dotazu Query. - 443 - 3. Vyberte požadované vlastnosti dotazu. Možnosti dotazů jsou popsány v následující tabulce: Vlastnost Popis From Priority (Od priority) Minimální priorita alarmu je ve výchozím stavu nastavena na hodnotu 1. Tato hodnota by vždy měla být menší než „Do priority“ a v rozsahu hodnot 1 až 999. To Priority (Do priority) Maximální priorita alarmu je ve výchozím stavu nastavena na hodnotu 999. Tato hodnota by vždy měla být větší než „Od priority“ a v rozsahu hodnot 1 až 999. Alarm State (Stav alarmu) Výchozí stav alarmu při dotazování je nastaven na All (Všechny). ALL (Všechny) znamená dotaz na všechny alarmy. UnAck znamená dotaz pouze na nepotvrzené alarmy. Ack znamená dotaz pouze na potvrzené alarmy. Query Type (Typ dotazu) Nastaví, zda objekt bude zobrazovat aktuální (Summary) nebo historické (Historical) alarmy. Alarm Query (Dotaz na alarmy) Nastavuje počáteční dotaz pro zobrazení alarmů. Do tohoto pole je možné zadat jen text; nelze zadávat proměnné. Výchozí dotaz alarmu je \intouch!$system Platná syntaxe položek dotazu zahrnuje: \\Node\InTouch!Group úplná cesta k alarmové skupině \InTouch!Group úplná cesta k lokální alarmové skupině GroupList Jméno seznamu poskytovatelů alarmů - 444 - Sort Column (Řazení podle sloupce) Pomocí šipky seznamu vyberte sloupec, podle kterého budou alarmy seřazeny. Systém umožňuje řadit alarmy podle času, stavu, třídy, typu, priority, názvu, skupiny, poskytovatele, limitu, operátora nebo komentáře. Query Favorites File (Soubor oblíbených dotazů) Ovládací prvek je schopen ukládat oblíbené dotazy pro zobrazování alarmů. Klepněte na tlačítko a najděte si soubor s oblíbenými dotazy, pokud existuje. Rozdíly mezi oblíbenými dotazy a dotazy na alarmy jsou: • Soubory oblíbených dotazů na alarmy jsou ve formátu XML. • Je třeba zadat název souboru se správným názvem složky, aby bylo možné vyvolávat za běhu aplikace oblíbené dotazy pomocí kontextově senzitivní nabídky. • Existující názvy souborů umožňují přístup k existujícím dotazům. Pokud soubor neexistuje, tzn. je tam nový název souboru, soubor se vytvoří při vytvoření nového dotazu. • Soubor dotazů může být uložen v libovolné složce, nemusí to být složka aplikace InTouch. Zobrazení alarmů se automaticky Auto Scroll to new Alarms (Automatický přechod posouvá směrem k novým alarmům. Toto zaškrtávací políčko je k dispozici na nové alarmy) jen v případě, že je vybrána možnost řazení alarmů podle času. Sort Direction (Směr řazení) Vyberte kritéria, podle nichž budou alarmy seřazeny a klepněte na možnost Ascending (Vzestupně) nebo Descending (Sestupně) k vytřídění výpisu ve vzestupném nebo sestupném pořadí. Ve výchozím stavu je prohlížeč alarmů setříděn podle času ve vzestupném pořadí. Poznámka: Pokud chcete vyvolat více dotazů najednou, oddělujte dotazy v Alarm Query (Dotaz na alarmy) mezerou. Například: \\Master\InTouch!MyGroup LocalGroupList 4. Klepněte na tlačítko Apply (Použít). Můžete pokračovat konfigurací na další kartě vlastností nebo klepněte na OK a uzavřete tak konfiguraci vlastností. - 445 - Přiřazení proměnných vlastnostem ovládacího prvku ActiveX ¾ Chcete-li přiřadit proměnné aplikace InTouch vlastnostem ovládacího prvku ActiveX 1. Poklepejte na prohlížeč alarmů Alarm Viewer ActiveX nebo na něj klepněte pravým tlačítkem myši a vyberte příkaz Properties (Vlastnosti). Zobrazí se dialogové okno AlmViewerCtrl Properties s aktivní kartou vlastností Control Name (Název ovládacího prvku). 2. Klepněte na kartu Properties (Vlastnosti) a aktivujte tak kartu vlastností Properties 3. Klepněte na vlastnost, které chcete přiřadit proměnnou. 4. Klepněte na tlačítko ve sloupci Associated Tag (Přiřazená proměnná) pro zobrazení proměnných aplikace InTouch. Zobrazí se okno Select Tag (Výběr proměnné). - 446 - 5. Označte proměnnou, kterou chcete přiřadit a klepněte na tlačítko OK. 6. Klepněte na tlačítko Apply (Použít). Můžete pokračovat konfigurací na další kartě vlastností nebo klepněte na OK a uzavřete tak konfiguraci vlastností. Vlastnosti prohlížeče alarmů Alarm Viewer K nastavení vlastností ve skriptu aplikace InTouch použijte syntaxi: #objekt.NazevVlastnosti = 1; nebo #objekt.NazevVlastnosti = tag1; kde objekt je název ovládacího prvku Alarm Viewer ActiveX a tag1 je diskrétní proměnná. K nastavení vlastnosti AckAllMenu zapište například příkaz #AlarmViewer.AckAllMenu = 1;. K načtení hodnoty vlastnosti ve skriptu aplikace InTouch použijte syntaxi: tag1 = #objekt.NazevVlastnosti; kde objekt je název ovládacího prvku Alarm Viewer ActiveX a tag1 je diskrétní proměnná. K načtení vlastnosti AckAllMenu zapište například příkaz tag1 = #AlarmViewer.AckAllMenu;. Aplikace InTouch akceptuje slova „True“ (Pravda) a „False“ (Nepravda) v uvozovkách jako hodnoty 1 a 0 (v uvedeném pořadí). Příkaz ve skriptu zapsaný například takto: #AlarmViewerCtrl2.SortMenu = "False"; zruší „Sort Menu“ (nabídku řazení) z kontextové nabídky vyvolávané klepnutím pravého tlačítka myši ovládacího prvku Alarm Viewer ActiveX. - 447 - Vlastnosti proměnných jsou následující: AckAllMenu Vlastnost: AckAllMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „AckAll“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Objekt.AckAllMenu [= discrete] AckAlmColorRange1 Vlastnost : AckAlmColorRange1 Účel: Typ: Nastavuje barvu zobrazení potvrzených alarmů s prioritou v intervalu 1 až ColorPriorityRange1. Výchozí rozsah priorit je 1 až 250. Integer (Celé číslo) Výchozí Černá nastavení : Syntaxe: Object.AckAlmColorRange1 [= Integer] - 448 - AckAlmColorRange2 Vlastnost: AckAlmColorRange2 Účel: Nastavuje barvu zobrazení potvrzených alarmů s prioritou v intervalu od ColorPriorityRange1 do ColorPriorityRange2. Výchozí rozsah priorit je 250 (včetně) až 500. Typ: Výchozí nastavení: Syntaxe: Integer (Celé číslo) Černá Object.AckAlmColorRange2 [= Integer] AckAlmColorRange3 Vlastnost: AckAlmColorRange3 Účel: Nastavuje barvu zobrazení potvrzených alarmů s prioritou v intervalu od ColorPriorityRange2 do ColorPriorityRange3. Výchozí rozsah priorit je 500 (včetně) až 750. Typ: Výchozí nastavení: Syntaxe: Integer (Celé číslo) Černá Object.AckAlmColorRange3 [= Integer] - 449 - AckAlmColorRange4 Vlastnost: AckAlmColorRange4 Účel: Nastavuje barvu zobrazení potvrzených alarmů s prioritou v intervalu ColorPriorityRange3 až 999. Výchozí rozsah priorit je 750 (včetně) až 999. Typ: Výchozí nastavení: Syntaxe: Integer (Celé číslo) Černá Object.AckAlmColorRange4 [= Integer] AckOthersMenu Vlastnost: AckOthersMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „AckOthers“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.AckOthersMenu [= discrete] - 450 - AckSelectedGroupsMenu Vlastnost: AckSelectedGroupsMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „AckSelected“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.AckSelectedGroupsMenu[= discrete] AckSelectedMenu Vlastnost: AckSelectedMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „AckSelected“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.AckSelectedMenu [= discrete] - 451 - AckSelectedPriorities Vlastnost: AckSelectedPriorities Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „AckSelectedPriorities“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.AckSelectedPriorities [= discrete] AckSelectedTags Vlastnost: AckSelectedTags Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „AckSelectedTags“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.AckSelectedTags [= discrete] - 452 - AckVisibleMenu Vlastnost: AckVisibleMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „AckVisible“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.AckVisibleMenu [= discrete] AlarmQuery Vlastnost: AlarmQuery Nastavuje počáteční dotaz pro zobrazení alarmů. Do tohoto pole je možné zadat jen text; nelze zadávat proměnné. Platná syntaxe dotazu: \\Node\InTouch!Group úplná cesta k alarmové skupině \InTouch!Group úplná cesta k lokální alarmové skupině Účel: Typ: Výchozí nastavení: Syntaxe: GroupList Jméno seznamu poskytovatelů alarmů Message (Text) \intouch!$system Object.AlarmQuery [= message] - 453 - AlarmState Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: AlarmState Výchozí stav alarmů při dotazování (All, UnAck, Ack). Message (Text) All (Všechny) Object.AlarmState [= message] AlmRtnColor Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: AlmRtnColor Nastavuje barvu alarmů, které se vrátily do normálního stavu. Integer (Celé číslo) All (Všechny) Object.AlmRtnColor [= Integer] - 454 - AutoScroll Vlastnost: AutoScroll Účel: Zapíná /vypíná automatický posun zobrazení alarmů směrem k novým alarmům. Jestliže si uživatel prohlíží v seznamu alarmů starší záznamy a vyskytne se nový alarm, zobrazení automaticky přeskočí na nový alarm. Typ: Výchozí nastavení: Syntaxe: Diskrétní False (Nepravda) Object.Autoscroll [= discrete] ColorPriorityRange1 Vlastnost: ColorPriorityRange1 Účel: Nastavuje mez rozsahu priorit pro zobrazení barvy alarmů. Hodnota této vlastnosti musí být větší než jedna a menší než hodnota vlastnosti ColorPriorityRange2. Typ: Výchozí nastavení: Syntaxe: Integer (Celé číslo) 250 Object.ColorPriorityRange1 [= integer nebo priorita] - 455 - ColorPriorityRange2 Vlastnost: ColorPriorityRange2 Účel: Nastavuje mez rozsahu priorit pro zobrazení barvy alarmů. Hodnota této vlastnosti musí být větší než hodnota vlastnosti ColorPriorityRange1 a menší než hodnota vlastnosti ColorPriorityRange3. Typ: Výchozí nastavení: Syntaxe: Integer (Celé číslo) 500 Object.ColorPriorityRange2 [= integer nebo priorita] ColorPriorityRange3 Vlastnost: ColorPriorityRange3 Účel: Nastavuje mez rozsahu priorit pro zobrazení barvy alarmů. Hodnota této vlastnosti musí být větší než hodnota vlastnosti ColorPriorityRange2 a menší než 999. Typ: Výchozí nastavení: Syntaxe: Integer (Celé číslo) 750 Object.ColorPriorityRange3 [= integer nebo priorita] - 456 - ColumnResize Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: ColumnResize Povolí nebo zakáže možnost měnit šířku sloupců za běhu aplikace. Diskrétní True (Pravda) Object.ColumnResize [= discrete] DefaultAckComment Vlastnost: DefaultAckComment Účel: Tato textová vlastnost se používá jako komentář při potvrzování alarmu, je-li vlastnost „UseDefaultAckComment“ nastavena na hodnotu TRUE (Pravda); jinak systém vyzve uživatele k zadání komentáře. Typ: Výchozí nastavení: Syntaxe: Message (Text) žádné Object.DefaultAckComment [= message] - 457 - DisplayedTime Vlastnost: DisplayedTime Nastavuje typ zobrazení času alarmových záznamů (LCT, OAT, LCT but OAT on ACK). Účel: Typ: Výchozí nastavení: Syntaxe: Message (Text) LCT – Last Changed Time (čas poslední změny) Object.DisplayedTime [= message] DisplayedTimeZone Vlastnost: DisplayedTimeZone Účel: Textová vlastnost. Vrátí / nastaví hodnotu aktuálního časového pásma. Hodnoty mohou být jen „GMT“, „Origin Time“ (čas poskytovatele) nebo „Local Time“ (místní čas). Typ: Výchozí nastavení: Syntaxe: Message (Text) Local Time (Místní čas) Object.DisplayedTimeZone [= message] - 458 - EventColor Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: EventColor Nastavuje barvu událostí. Integer (Celé číslo) Červená Object EventColor [= color] ExtendedSelection Vlastnost: Extended Selection Účel: Umožňuje vybrat více alarmů přidržením kláves Ctrl nebo Shift spolu s ovládáním myší. Ve výchozím stavu se přepíná výběr alarmů jednoduchým klepnutím na alarm (dostupné jen v případě, že je zaškrtnuto políčko Row Selection (Výběr řádku)). Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.ExtendedSelection [= discrete] - 459 - Font Vlastnost: Font Účel: Obsahuje název písma pro zobrazení záznamů a záhlaví ovládacího prvku. Typ: Výchozí nastavení: Syntaxe: žádný Times New Roman Jen pro čtení FreezeMenu Vlastnost: FreezeMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „Freeze“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.FreezeMenu [= discrete] - 460 - FromPriority Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: FromPriority Nastavuje dolní hodnotu priority výchozího dotazu. Integer (Celé číslo) 1 Object.FromPriority [= integer] GridColor Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: GridColor Nastavuje barvu mřížky.. Integer (Celé číslo) šedá Object.GridColor [= color] - 461 - QueryFavoritesFile Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: QueryFavoritesFile Textová vlastnost. Vrací / nastavuje název souboru s oblíbenými dotazy. Message (Text) žádný Object.QueryFavoritesFile [= message] QueryFavoritesMenu Vlastnost: QueryFavoritesMenu Účel: Povoluje/zakazuje zobrazení příkazu „QueryFavorites“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.QueryFavoritesMenu [= discrete] - 462 - QueryName Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: QueryName Vrací název aktuálního dotazu. Text (jen ke čtení) žádné Object.QueryName [= String] QueryStartup Vlastnost: QueryStartup Účel: Je-li tato vlastnost nastavena na hodnotu True (Pravda), automaticky začne aktualizovat zobrazení alarmů a událostí podle výchozích vlastností dotazu. V opačném případě je třeba před aktualizací zobrazení vyvolat dotaz pomocí metod almDefQuery nebo almQuery. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.QueryStartup [= discrete] - 463 - QueryType Vlastnost: QueryType Účel: Nastavuje zobrazování aktuálních (Summary) nebo historických (Historical) alarmů. Typ: Výchozí nastavení: Syntaxe: Message (Text) Summary Object.QueryType [= message] RequeryMenu Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: RequeryMenu Povoluje/zakazuje zobrazení příkazu „Requery“ v kontextové nabídce. Diskrétní True (Pravda) Object.RequeryMenu [= discrete] - 464 - RetainSuppression Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: RetainSuppression Ponechává potlačení alarmů i když se změní dotaz na alarmy. Diskrétní True (Pravda) Object.RetainSuppression [= discrete] RowSelection Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: RowSelection Umožňuje uživateli za běhu aplikace vybrat (označovat) alarmy. Diskrétní True (Pravda) Object.RowSelection [= discrete] - 465 - SelectedCount Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: SelectedCount Vrací celkový počet vybraných (označených) alarmů. Integer (celé číslo, jen ke čtení) žádné Object.SelectedCount [= integer] ShowContextMenu Vlastnost: ShowContextMenu Účel: Povoluje aktivaci kontextové nabídky po klepnutí pravým tlačítkem myši. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.ShowContextMenu [= discrete] - 466 - ShowGrid Vlastnost: ShowGrid Účel: Vrátí nebo nastaví hodnotu, která určuje, zda se v ovládacím prvku zobrazí mřížka. Typ: Výchozí nastavení: Syntaxe: Diskrétní False (Nepravda) Object.ShowGrid [= discrete] ShowHeading Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: ShowHeading Zobrazí záhlaví ovládacího prvku. Diskrétní True (Pravda) Object.ShowHeading [= discrete] - 467 - ShowStatusBar Vlastnost: ShowStatusBar Vrátí nebo nastaví hodnotu, která určuje, zda se zobrazí stavový řádek. Stavový řádek obsahuje tři indikátory: Stavovou zprávu, jméno aktuálního dotazu na alarmy a průběžný stav zpracování dotazu. Tyto indikátory poskytují přehled o aktuálním stavu dotazu prohlížeče a nabízejí informace o potlačených alarmech. Je-li aktivní zmrazení, zobrazí se v levé části červená ikona STOP. Je-li aktivní potlačení, zobrazí se v levé části červený vykřičník. Účel: Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.ShowStatusBar [= discrete] SilentMode Vlastnost: SilentMode Účel: Vrátí nebo nastaví hodnotu, která určuje, zda bude ovládací prvek pracovat v tzv. tichém režimu. Typ: Výchozí nastavení: Syntaxe: Diskrétní False Object.SilentMode [= discrete] - 468 - SortColumn Vlastnost: SortColumn Účel: Textová vlastnost. Vrátí / nastaví jméno sloupce, podle kterého se provádí aktuální řazení záznamů. Typ: Výchozí nastavení: Syntaxe: Message (Text) Time (Čas) Object.SortColumn [= message] SortOrder Vlastnost: SortOrder Textová vlastnost. Vrátí / nastaví směr řazení. Možné hodnoty jsou „Ascending“ (Vzestupně) a „Descending“ (Sestupně) reprezentované hodnotou 0 a 1 v uvedeném pořadí. Účel: Typ: Výchozí nastavení: Syntaxe: Diskrétní False Object.SortOrder [= discrete] - 469 - SortMenu Vlastnost: SortMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „Sort“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.SortMenu [= discrete] StatsMenu Vlastnost: StatsMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „Stats“ (Statistiky) v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.StatsMenu [= discrete] - 470 - SuppressAllMenu Vlastnost: SuppressAllMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „SuppressAll“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.SuppressAllMenu [= discrete] SuppressedAlarms Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: SuppressedAlarms Vrací celkový počet potlačených alarmů. Integer (celé číslo, jen ke čtení) žádné Object.SuppressedAlarms [= integer] - 471 - SuppressionMenu Vlastnost: SuppressionMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „Suppression“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.SuppressionMenu [= discrete] SuppressOthersMenu Vlastnost: SuppressOthersMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „SuppressOthers“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.SuppressOthersMenu [= discrete] - 472 - SuppressSelectedGroupsMenu Vlastnost: SuppressSelectedGroupsMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „SuppressSelectedGroups“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.SuppressSelectedGroupsMenu [= discrete] SuppressSelectedMenu Vlastnost: SuppressSelectedMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu "SuppressSelected" v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.SuppressSelectedMenu [= discrete] - 473 - SuppressSelectedPriority Vlastnost: SuppressSelectedPriority Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „SuppressSelectedPriority“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.SuppressSelectedPriority [= discrete] SuppressSelectedTagsMenu Vlastnost: SuppressSelectedTagsMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu "SuppressSelectedTags" v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.SuppressSelectedTagsMenu [= discrete] - 474 - SuppressVisibleMenu Vlastnost: SuppressVisibleMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „SuppressVisible“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.SuppressVisibleMenu [= discrete] TimeFormat Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: TimeFormat Nastavuje formát času prohlížeče alarmu. Message (Text) %b%y (například 27 Srp) Object.TimeFormat [= message] - 475 - TitleBackColor Vlastnost: TitleBackColor Účel: Nastavuje barvu pozadí záhlaví (dostupné jen je-li vybrána možnost Show Titles (Zobrazit záhlaví)). Typ: Výchozí nastavení: Syntaxe: Integer (Celé číslo) šedá Object.TitleBackColor [= color] TitleForeColor Vlastnost: TitleForeColor Účel: Nastavuje barvu textu v záhlaví (dostupné jen je-li vybrána možnost Show Titles (Zobrazit záhlaví)). Typ: Výchozí nastavení: Syntaxe: Integer (Celé číslo) Černá Object.TitleForeColor [= color] - 476 - ToPriority Vlastnost: ToPriority Nastavuje horní hodnotu priority dotazu na alarmy. Účel: Integer (Celé číslo) Typ: 999 Výchozí nastavení: Object.ToPriority [= integer] Syntaxe: TotalAlarms Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: TotalAlarms Vrací celkový počet zobrazených (načtených) alarmů. Integer (celé číslo, jen ke čtení) žádné Object.TotalAlarms [= integer] - 477 - UnackAlarms Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: UnackAlarms Vrací celkový počet NEPOTVRZENÝCH alarmů. Integer (celé číslo, jen ke čtení) žádný Object.UnackAlarms [= integer] UnAckAlmColorRange1 Vlastnost: UnAckAlmColorRange1 Účel: Nastavuje barvu zobrazení nepotvrzených alarmů s prioritou v intervalu 1 až UnAckAlmColorRange1. Výchozí rozsah priorit je 1 až 250. Typ: Výchozí nastavení: Syntaxe: Integer (Celé číslo) Červená Object.UnAckAlmColorRange1 [= color] - 478 - UnAckAlmColorRange2 Vlastnost: UnAckAlmColorRange2 Účel: Nastavuje barvu zobrazení nepotvrzených alarmů s prioritou v intervalu od ColorPriorityRange1 do ColorPriorityRange2. Výchozí rozsah priorit je 250 (včetně) až 500. Typ: Výchozí nastavení: Syntaxe: Integer (Celé číslo) Červená Object.UnAckAlmColorRange2 [= color] UnAckAlmColorRange3 Vlastnost: UnAckAlmColorRange3 Účel: Nastavuje barvu zobrazení nepotvrzených alarmů s prioritou v intervalu od ColorPriorityRange2 do ColorPriorityRange3. Výchozí rozsah priorit je 500 (včetně) až 750. Typ: Výchozí nastavení: Syntaxe: Integer (Celé číslo) Červená Object.UnAckAlmColorRange3 [= color] - 479 - UnAckAlmColorRange3 Vlastnost: UnAckAlmColorRange3 Účel: Nastavuje barvu zobrazení nepotvrzených alarmů s prioritou v intervalu od ColorPriorityRange3 do 999. Výchozí rozsah priorit je 750 (včetně) až 999. Typ: Výchozí nastavení: Syntaxe: Integer (Celé číslo) Červená Object.UnAckAlmColorRange4 [= color] UnsuppressAllMenu Vlastnost: UnsuppressAllMenu Účel: Logická vlastnost. Povoluje/zakazuje zobrazení příkazu „UnsuppressAll“ v kontextové nabídce. Typ: Výchozí nastavení: Syntaxe: Diskrétní True (Pravda) Object.UnsuppressAllMenu [= discrete] - 480 - UseDefaultAckComment Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: UseDefaultAckComment Textová vlastnost. Je-li proměnná „UseDefaultAckComment“ nastavena na hodnotu TRUE (Pravda), při potvrzování alarmu se použije výchozí komentář potvrzení. Jinak systém uživatele vyzve k zadání komentáře. Diskrétní False (Nepravda) Object.UseDefaultAckComment [= discrete] WindowColor Vlastnost: Účel: Typ: Výchozí nastavení: Syntaxe: WindowColor Nastavuje barvu pozadí prohlížeče. Integer (Celé číslo) Bílá Object.WindowColor [= color] - 481 - Metody a události AboutBox Metoda: Účel: Syntaxe: AboutBox Zobrazuje dialogové okno „O aplikaci“ (About). Object.AboutBox #AlarmViewerCtrl1.AboutBox(); (kde název ovládacího prvku je Příklad: AlarmViewerCtrl1). AckSelected Metoda: AckSelected Účel: Prohlížeč alarmů umožňuje za běhu aplikace výběr (označení) alarmů klepnutím tlačítka myši na alarm(y). K potvrzení těchto alarmů pak lze použít funkci AckSelected. Syntaxe: Příklad: Object.AckSelected #AlarmViewerCtrl1.AckSelected(); - 482 - AckAll Metoda: AckAll Účel: Potvrzuje všechny alarmy v aktuálním dotazu prohlížeče alarmů. Protože prohlížeč alarmů má k dispozici k zobrazení jen omezenou oblast displeje, funkce almAckAll může potvrdit i alarmy, které jsou prohlížečem načteny, ale nejsou viditelné na displeji. Syntaxe: Příklad: Object.AckAll #AlarmViewerCtrl1.AckAll(); AckVisible Metoda: AckVisible Účel: Potvrzuje jen ty alarmy, které jsou v prohlížeči alarmů momentálně viditelné. Syntaxe: Příklad: Object.AckVisible #AlarmViewerCtrl1.AckVisible(); - 483 - AckSelectedGroup Metoda: AckSelectedGroup Účel: Potvrzuje všechny alarmy mající stejnou alarmovou skupinu a alarmového poskytovatele jako jeden nebo více vybraných (označených) alarmů. Syntaxe: Příklad: Object.AckSelectedGroup #AlarmViewerCtrl1.AckSelectedGroup(); AckSelectedTag Metoda: AckSelectedTag Účel: Potvrzuje všechny alarmy mající stejný název, alarmovou skupinu, prioritu alarmů a alarmového poskytovatele jako jeden nebo více vybraných (označených) alarmů. Syntaxe: Příklad: Object.AckSelectedTag #AlarmViewerCtrl1.AckSelectedTag(); - 484 - AckSelectedPriority Metoda: AckSelectedPriority Účel: Potvrzuje všechny alarmy mající stejnou prioritu alarmů, alarmovou skupinu a alarmového poskytovatele jako jeden nebo více vybraných (označených) alarmů. Syntaxe: Příklad: Object.AckSelectedPriority #AlarmViewerCtrl1.AckSelectedPriority(); ShowSuppression Metoda: ShowSuppression Účel: Zobrazuje dialogové okno potlačených alarmů, které obsahuje seznam všech potlačených alarmů. Syntaxe: Příklad: Object.ShowSuppression #AlarmViewerCtrl1.ShowSuppression(); - 485 - SuppressSelected Metoda: SuppressSelected Účel: Potlačuje zobrazení aktuálního a následujících výskytů vybraného (označeného) alarmu, resp. vybraných alarmů. Syntaxe: Příklad: Object.SuppressSelected #AlarmViewerCtrl1.SuppressSelected(); SuppressAll Metoda: SuppressAll Účel: Potlačuje zobrazení aktuálního a následujících výskytů všech alarmů momentálně načtených prohlížečem alarmů. Syntaxe: Příklad: Object.SuppressAll #AlarmViewerCtrl1.SuppressAll(); SuppressVisible Metoda: SuppressVisible Účel: Potlačuje zobrazení aktuálního a následujících výskytů všech momentálně viditelných alarmů. Syntaxe: Příklad: Object.SuppressVisible #AlarmViewerCtrl1.SuppressVisible(); - 486 - SuppressSelectedGroup Metoda: SuppressSelectedGroup Účel: Potlačuje zobrazení aktuálního a následujících výskytů alarmů majících stejnou alarmovou skupinu a obsahující stejného alarmového poskytovatele jako jeden nebo několik vybraných alarmů. Syntaxe: Příklad: Object.SuppressSelectedGroup #AlarmViewerCtrl1.SuppressSelectedGroup(); SuppressSelectedTag Metoda: SuppressSelectedTag Účel: Potlačuje zobrazení aktuálního a následujících výskytů alarmů majících stejný název proměnné a obsahujích stejnou alarmovou skupinu, prioritu alarmů a alarmového poskytovatele jako jeden nebo několik vybraných alarmů. Syntaxe: Příklad: Object.SuppressSelectedTag #AlarmViewerCtrl1.SuppressSelectedTag(); - 487 - SuppressSelectedPriority Metoda: SuppressSelectedPriority Účel: Potlačuje zobrazení aktuálního a následujících výskytů alarmů majících stejnou prioritu a obsahujích stejnou alarmovou skupinu a alarmového poskytovatele jako jeden nebo několik vybraných alarmů. Syntaxe: Příklad: Object.SuppressSelectedPriority #AlarmViewerCtrl1.SuppressSelectedPriority(); UnSuppressAll Metoda: Účel: Syntaxe: Příklad: UnSuppressAll Zruší všechna potlačování alarmů. Object.UnSuppressAll #AlarmViewerCtrl1.UnSuppressAll(); ShowQueryFavorites Metoda: Účel: Syntaxe: Příklad: ShowQueryFavorites Zobrazí dialog Query Favorites (Oblíbené dotazy). Object.ShowQueryFavorites #AlarmViewerCtrl1.ShowQueryFavorites(); - 488 - ShowStatistics Metoda: Účel: Syntaxe: Příklad: ShowStatistics Zobrazí dialog Statistics (Statistiky). Object.ShowStatistics #AlarmViewerCtrl1.ShowStatistics(); FreezeDisplay etoda: Účel: Syntaxe: Příklad: FreezeDisplay Zmrazí displej prohlížeče alarmů (nové alarmy se nebudou zobrazovat). Object.FreezeDisplay #AlarmViewerCtrl1.FreezeDisplay(); - 489 - Requery Metoda: Requery Účel: Znovu se dotáže alarmového poskytovatele na alarmy a načte je do prohlížeče alarmů. Syntaxe: Příklad: Object.Requery #AlarmViewerCtrl1.Requery(); AckGroup Metoda: AckGroup Účel: Potvrdí všechny alarmy načtené prohlížečem alarmů se zadaným názvem alarmové skupiny a od stejného alarmového poskytovatele. Syntaxe: Příklad: Object.AckGroup #AlarmViewerCtrl1.AckGroup(); - 490 - AckPriority Metoda: AckPriority Účel: Potvrdí všechny alarmy načtené prohlížečem alarmů v rámci zadaného rozsahu priorit a se stejným alarmovým poskytovatelem a názvem alarmové skupiny. Syntaxe: Příklad: Object.AckPriority #AlarmViewerCtrl1.AckPriority(); AckTag Metoda: AckTag Účel: Potvrdí všechny alarmy načtené prohlížečem alarmů se zadaným názvem proměnné v rámci určitého rozsahu priorit a se stejným alarmovým poskytovatelem a názvem alarmové skupiny. Syntaxe: Příklad: Object.AckTag #AlarmViewerCtrl1.AckTag(); - 491 - SuppressGroup Metoda: SuppressGroup Účel: Potlačuje zobrazení aktuálního a následujících výskytů alarmů se zadaným názvem alarmové skupiny a od stejného alarmového poskytovatele. Syntaxe: Příklad: Object.SuppressGroup #AlarmViewerCtrl1.SuppressGroup(); SuppressPriority Metoda: SuppressPriority Účel: Potlačuje zobrazení aktuálního a následujících výskytů alarmů v rámci zadaného rozsahu priorit a se stejným alarmovým poskytovatelem a názvem alarmové skupiny. Syntaxe: Příklad: Object.SuppressPriority #AlarmViewerCtrl1.SuppressPriority(); - 492 - SuppressTag Metoda: SuppressTag Účel: Potlačuje zobrazení aktuálního a následujících výskytů alarmů se zadaným názvem proměnné v rámci určitého rozsahu priorit a se stejným alarmovým poskytovatelem a názvem alarmové skupiny. Syntaxe: Příklad: Object.SuppressTag #AlarmViewerCtrl1.SuppressTag(); SelectGroup Metoda: SelectGroup Účel: Přepíná výběr (označení) všech alarmů načtených prohlížečem alarmů se zadaným názvem alarmové skupiny od zadaného alarmového poskytovatele. Syntaxe: Příklad: Object.SelectGroup #AlarmViewerCtrl1.SelectGroup(); - 493 - SelectPriority Metoda: SelectPriority Účel: Přepíná výběr (označení) všech alarmů načtených prohlížečem alarmů se zadaným rozsahem priorit v rámci dané alarmové skupiny a zadaným alarmovým poskytovatelem. Syntaxe: Příklad: Object.SelectPriority #AlarmViewerCtrl1.SelectPriority(); SelectTag Metoda: SelectTag Účel: Přepíná výběr (označení) všech alarmů načtených prohlížečem alarmů se zadanými jmény alarmového poskytovatele / skupiny / proměnné. Lze také stanovit rozsah priorit nebo zadat 1 – 999. Syntaxe: Příklad: Object.SelectTag #AlarmViewerCtrl1.SelectTag(); - 494 - ApplyQuery Metoda: ApplyQuery Účel: Vykoná dotaz na zobrazení aktuálních nebo historických alarmů a událostí. V této metodě jsou k dispozici všechny vlastnosti dotazu. Syntaxe: Příklad: Object.ApplyQuery #AlarmViewerCtrl1.ApplyQuery(); ApplyDefaultQuery Metoda: ApplyDefaultQuery Účel: Vykoná dotaz s využitím výchozích vlastností zadaných při konfiguraci objektu. Tyto vlastnosti zahrnují: Od priority, Do priority, Seznam alarmů a Typ dotazu. Výchozí vlastnosti lze změnit pouze při vývoji aplikace a jiné dotazy na alarmy za běhu aplikace tyto vlastnosti nepřepisují. Syntaxe: Příklad: Object.ApplyDefaultQuery #AlarmViewerCtrl1.ApplyDefaultQuery(); - 495 - SelectAll Metoda: SelectAll Účel: Přepíná výběr (označení) všech alarmů v prohlížeči. Protože prohlížeč alarmů má k dispozici k zobrazení jen omezenou oblast displeje, funkce SelectAll může vybrat i alarmy, které jsou prohlížečem načteny, ale nejsou viditelné na displeji. Syntaxe: Příklad: Object.SelectAll #AlarmViewerCtrl1.SelectAll(); SelectItem Metoda: Účel: Syntaxe: U n Příklad: e s SelectItem Vybere (označí) alarmový záznam na zadané pozici. Object.SelectItem #AlarmViewerCtrl1.SelectItem(); UnSelectAll Metoda: Účel: Syntaxe: Příklad: UnSelectAll Zruší výběr (označení) všech vybraných záznamů. Object.UnSelectAll #AlarmViewerCtrl1.UnSelectAll(); - 496 - SetQueryByName Metoda: SetQueryByName Účel: Spustí nový dotaz na alarmy pomocí názvu uživatelského "oblíbeného" dotazu. Tyto dotazy již mohou být předpřipraveny nebo si je uživatel může sám vytvářet. Syntaxe: Příklad: Object.SetQueryByName #AlarmViewerCtrl1.SetQueryByName(); MoveWindow Metoda: MoveWindow Účel: Nabízí příkazy k manipulaci s displejem prohlížeče alarmů. Tyto příkazy zahrnují: Předchozí stránka, Následující stránka, Posun doprava, Posun doleva, O řádek výš, O řádek níž, Na začátek, Na konec atd. Syntaxe: Příklad: Object.MoveWindow #AlarmViewerCtrl1.MoveWindow(); - 497 - GetItem Metoda: GetItem Účel: Vrátí v textové formě data (obsah buňky) podle zadaného čísla řádku a názvu sloupce. Syntaxe: Příklad: Object.GetItem(Integer, message) Integer (Celé číslo) Celočíselný výraz, který specifikuje určitou řádku v ovládacím prvku. Message (Text) Textový výraz, který specifikuje název sloupce v ovládacím prvku. tagname = #AlarmViewerCtrl1.GetItem(1, "Group"); ShowContext Metoda: ShowContext Účel: Zobrazí kontextově citlivou nabídku, je-li aktivní alespoň jedna z vlastností „RefreshMenu“, „ResetMenu“ nebo „SortMenu“. Syntaxe: Příklad: Object.ShowContext #AlarmViewerCtrl1.ShowContext(); - 498 - ShowSort Metoda: Účel: Syntaxe: Příklad: ShowSort Zobrazí dialogové okno „Secondary Sort“ (sekundární řazení). Object.ShowSort #AlarmViewerCtrl1.ShowSort(); SetSort Metoda: SetSort Účel: Seřadí alarmy a události podle sloupce specifikovaného ve vlastnosti „SortColumn“ a v pořadí podle hodnoty vlastnosti „SortOrder“. Syntaxe: Příklad: Object.SetSort #AlarmViewerCtrl1.SetSort(); - 499 - Přiřazení skriptů ActiveX prohlížeči alarmů Alarm Viewer ActiveX ¾ Chcete-li přiřadit skripty ActiveX prohlížeči alarmů 1. Poklepejte na prohlížeč alarmů Alarm Viewer ActiveX nebo na něj klepněte pravým tlačítkem myši a vyberte příkaz Properties (Vlastnosti). Zobrazí se dialogové okno AlmViewerCtrl Properties s aktivní kartou vlastností Control Name (Název ovládacího prvku). 2. Klepněte na kartu Events (Události) a aktivujte tak kartu vlastností událostí Events. 3. Klepněte na událost, které chcete přiřadit skript. 4. Zadejte název skriptu do pole skriptu nebo klepněte na tlačítko ... a vyhledejte existující skript ActiveX. Rozhodnete-li se vyhledat skript ActiveX, po výběru skriptu klepněte na OK. 5. Klepněte na tlačítko Apply (Použít). Můžete pokračovat konfigurací na další kartě vlastností nebo klepněte na OK a uzavřete tak konfiguraci vlastností. Click Událost: Click Účel: Tato událost nastane, když uživatel klepne na ovládací prvek levým tlačítkem myši a uvolní ho. Syntaxe: tagname = #Thisevent.clicknRow nRow Celočíselný výraz, který obsahuje číslo řádku, ve kterém došlo k dané události. #Thisevent Klíčové slovo - 500 - Poznámka: Ovládací prvek prohlížeče alarmů Alarm Viewer ActiveX ignoruje metody uživatelského rozhraní (UI = User Interface), jestliže jsou tyto metody vyvolány z události OnStartup (Při spuštění), protože daný ovládací prvek dosud není viditelný. Při vyvolání události OnStartup (Při spuštění) se budou ignorovat následující metody UI : "ShowSort", "ShowContext", "GetSelectedItem", "GetNext", "GetPrevious" a "AboutBox". DoubleClick Událost: DoubleClick Účel: Tato událost nastane, když uživatel poklepe na ovládací prvek levým tlačítkem myši a uvolní ho. Syntaxe: Tagname = #ThisEvent.DoubleClicknRow NRow Celočíselný výraz, který obsahuje číslo řádku, ve kterém došlo k dané události. #Thisevent Klíčové slovo Klepnutí (Click) a poklepání (DoubleClick) jsou události založené na nule. Jestliže se vykonají tyto události vracející číslo řádku, počítání řádků na displeji začíná od nuly (první řádek - hodnota 0, druhý řádek - hodnota 1 atd.). Nabídka pravého tlačítka myši Prohlížeč alarmů ActiveX Alarm Viewer poskytuje uživateli nabídku, která se vyvolává klepnutím pravým tlačítkem myši. Ta umožňuje rychlý přístup k příkazům, které lze aplikovat na objekt prohlížeče alarmů a nebo na jeden či více vybraných (označených) alarmů, alarmových skupin, názvů proměnných a priorit zobrazených v prohlížeči za běhu aplikace. • Ack Selected - potvrzuje vybrané (označené) alarmy. • Ack Others - Jestliže operátor klepne pravým tlačítkem myši na displej a poté ukáže na příkaz Ack Others (Potvrdit jinak), zobrazí se podnabídka, která obsahuje další příkazy ACK pro potvrzování alarmů. • Ack All - Potvrzuje všechny alarmy v aktuálním dotazu prohlížeče alarmů. Protože prohlížeč alarmů má k dispozici k zobrazení jen omezenou oblast displeje, funkce almAckAll může potvrdit i alarmy, které jsou prohlížečem načteny, ale nejsou viditelné na displeji. • Ack Visible - Potvrzuje jen ty alarmy, které jsou v prohlížeči alarmů momentálně viditelné na displeji alarmů. • Ack Selected Groups - Potvrzuje všechny alarmy mající stejnou alarmovou skupinu a alarmového poskytovatele jako jeden nebo více vybraných (označených) alarmů. • Ack Selected Tags - Potvrzuje všechny alarmy mající stejný název, alarmovou skupinu, prioritu alarmu a alarmového poskytovatele jako jeden nebo více vybraných (označených) alarmů. - 501 - • Ack Selected Priorities - Potvrzuje všechny alarmy mající stejnou prioritu alarmu, alarmovou skupinu a alarmového poskytovatele jako jeden nebo více vybraných (označených) alarmů. Poznámka: Potvrzení alarmu, který již byl potvrzen, nemá žádný účinek. • Suppress Selected - Jestliže operátor za běhu aplikace klepne pravým tlačítkem myši na prohlížeč alarmů a poté ukáže na příkaz Suppress Selected (Potlačit vybrané), může operátor rychle potlačit vybraný alarm, resp. vybrané alarmy. • Suppress Others - Jestliže operátor za běhu aplikace klepne pravým tlačítkem myši na prohlížeč a poté ukáže na příkaz Suppress Others (Potlačit jinak), zobrazí se podnabídka, jež obsahuje další příkazy k potlačování alarmů. • • Suppress All - Potlačuje zobrazení aktuálního a následujících výskytů všech alarmů momentálně načtených prohlížečem alarmů. • Suppress Visible - Potlačuje zobrazení aktuálního a následujících výskytů všech momentálně viditelných alarmů. • Suppress Selected Groups - Potlačuje zobrazení aktuálního a následujících výskytů alarmů majících stejnou alarmovou skupinu jako jeden nebo několik vybraných alarmů a obsahují stejného alarmového poskytovatele. • Suppress Selected Tags - Potlačuje zobrazení aktuálního a následujících výskytů alarmů majících stejný název proměnné jako jeden nebo několik vybraných alarmů a obsahují stejnou alarmovou skupinu, prioritu alarmů a alarmového poskytovatele. • Suppress Selected Priorities - Potlačuje zobrazení aktuálního a následujících výskytů alarmů majících stejnou prioritu jako jeden nebo několik vybraných alarmů a obsahují stejnou alarmovou skupinu a alarmového poskytovatele. • Unsuppress All - Zruší všechna nastavení potlačování alarmů. Query Favorites - Jestliže uživatel klepne pravým tlačítkem myši na prohlížeč a poté klepne na příkaz Query Favorites (Oblíbené dotazy), zobrazí se dialogové okno Alarm Query (Dotaz na alarmy). Další informace jsou uvedeny v části Výběr a konfigurace oblíbených dotazů na alarmy. • Stats - Zobrazí dialogové okno statistiky alarmů. • Suppression - Zobrazí dialogové okno potlačených alarmů. • Freeze - Zmrazí displej prohlížeče alarmů. • Requery - Znovu se dotáže alarmového poskytovatele na alarmy a načte je do prohlížeče alarmů. • Sort - Zobrazí dialogové okno sekundárního řazení. - 502 - Objekt pro zobrazování alarmů distribuovaného alarmového systému Distribuovaný alarmový systém je vybaven zobrazovacím objektem, který je schopen zobrazit jak lokální, tak i vzdáleně generované alarmy. Objekt je vybaven vestavěnými posuvníky, sloupci tabulky s měnitelnou šířkou, možností vybrat více alarmů, stavovým řádkem aktualizace, kontextovou nabídkou aktivovanou pravým tlačítkem myši, možností barevného rozlišení alarmů podle jejich priorit atd. Program InTouch umožňuje upravovat vzhled alarmového objektu (včetně zobrazovaných informací), nastavit barvy používané pro různé zobrazování různých stavů alarmů, měnit zobrazované alarmové skupiny a úrovně zobrazovaných priorit alarmů. Posuvníky Objekt pro zobrazování distribuovaných alarmů má vestavěný vodorovný a svislý posuvník, s jejichž pomocí se můžete pohybovat v seznamu alarmů. Zobrazení těchto posuvníků můžete navolit konfigurací objektu. Pro realizaci pohybu v seznamu alarmů jsou k dispozici také vlastnosti .NextPage a .PrevPage. objektu. Sloupce s měnitelnou šířkou Distribuovaný alarmový objekt používá pro zobrazování alarmových záznamů tabulkovou strukturu. Jednoduchým způsobem je možné dynamicky měnit šířky sloupců tabulky pomocí myši. Tato vlastnost je k dispozici pouze při běhu programu a lze ji v konfiguraci objektu zakázat. TIP Změny šířky sloupců tabulky se neukládají, takže pokud provedete změny a zavřete okno obsahující alarmový objekt, sloupce budou při novém otevření okna nastaveny zpět na svou původní šířku určenou při vývoji aplikace. Dvojitým klepnutím na vertikální čáru mřížky se nastaví šířka sloupce automaticky. Výběr více alarmů Objekt umožňuje označit jeden nebo několik alarmových záznamů. Zvolené alarmy lze potvrdit pomocí skriptové funkce almAckSelect(), která bude popsána později v této kapitole. Když konfigurujete distribuovaný alarmový objekt, můžete definovat, zda bude možný výběr několika položek najednou (podržením klávesy CTRL nebo SHIFT a současným klepnutím tlačítka myši pro označení více alarmů) nebo zda bude možné vybrat pouze jedinou položku. Barvy alarmových záznamů Pro alarmové záznamy můžete nastavit až osm různých barev podle úrovně jejich priority a rovněž podle toho, zda alarm je či není potvrzen.. - 503 - Stavový řádek aktualizace Distribuovaný alarmový objekt obsahuje stavový řádek, ve kterém jsou umístěny tři indikátory, které zobrazují stavovou zprávu, aktuální dotaz na alarmy a ukazatel průběhu načítání databáze alarmů. Tyto indikátory poskytují přehled o aktuálním stavu dotazu a zobrazují dále informaci o potlačení zobrazení alarmů v distribuovaném alarmovém objektu. Pravé pole stavového řádku je zbarveno červeně, je-li objekt ve stavu „zmrazení“, levé pole stavového řádku je červené, když je aktivováno potlačení zobrazení některých alarmů, což je navíc signalizováno vypsáním slova “suppression” v levém poli stavového řádku. Zobrazování tohoto stavového řádku při běhu programu lze vypnout. Indikátor Popis Stavová zpráva Stavová zpráva na levém konci stavového řádku popisuje stav aktuálního dotazu. Ukazatel průběhu načítání alarmu Ukazatel průběhu aktualizace na pravém konci stavového řádku poskytuje vizuální indikaci průběhu aktuálního dotazu. Dotaz Uprostřed stavového řádku je zobrazen aktuální dotaz. Poznámka: Pokud je zobrazení alarmů v objektu ve stavu „zmražení“ a jsou přijaty nové alarmy, objeví se ve stavovém řádku hlášení “New Alarm (s) (Nový alarm (Nové alarmy))”. Stavová zpráva Stav/indikátor Ukazatel průběhu načítání alarmu None (Žádná) No Query (Žádný dotaz) None (Žádný) Update Incomplete (Aktualizace neúplná) Query Incomplete (Dotaz neúplný) Modrý/zelený Update úspěšný (Aktualizace úspěšná) Query Complete (Dotaz dokončen) Zcela vyplněný modrý pruh Suppression (Potlačení) Název dotazu Zcela vyplněný modrý pruh Freeze (Zmrazení) Název dotazu Červený New Alarm (s) (Nový alarm (Nové alarmy)) Název dotazu Červený Nabídky aktivované pravým tlačítkem myši Objekt pro zobrazování distribuovaných alarmů umožňuje použít nabídky příkazů, kterou je možné aktivovat pravým tlačítkem myši. Nabízené příkazy můžete použít pro ovládání zobrazovacího objektu, pro práci s jedním nebo více zvolenými alarmovými záznamy a s alarmovými skupinami, proměnnými a prioritami. Poznámka: Implicitně je aktivace kontextové nabídky na pravé tlačítko myši vypnuta. Aktivaci nabídky lze zapnout nastavením příslušné volby na kartách - 504 - vlastností objektu pro zobrazování alarmů. Všechny příkazy, které kontextová nabídka nabízí, lze také volat prostřednictvím skriptových funkcí. • Ack Selected (Potvrdit zvolené záznamy) – Když operátor klepne pravým tlačítkem myši na zobrazovací objekt a potom vybere příkaz Ack Selected (Potvrdit zvolené záznamy) při běhu programu, dojde k potvrzení zvolených (vybraných) alarmů. • Ack Others (Potvrdit jiné) – Když operátor klepne pravým tlačítkem myši na zobrazovací objekt a potom zvolí příkaz Ack Others (Potvrdit jiné), otevře se podnabídka obsahující všechny dostupné příkazy potvrzení. Operátor má na výběr potvrdit všechny alarmy v zobrazovacím objektu nebo pouze viditelné alarmy, pouze zvolené alarmové skupiny, zvolené proměnné a zvolené priority. • • Suppress Selected (Potlačit zvolené) – Když operátor klepne pravým tlačítkem myši na zobrazovací objekt a potom vybere příkaz Suppress Selected (Potlačit zvolené) při běhu programu, může operátor pohotově potlačit zvolené alarmy. • Suppress Others (Potlačit jiné) – Když operátor klepne pravým tlačítkem myši na zobrazovací objekt a potom vybere příkaz Suppress Others (Potlačit jiné), otevře se podnabídka obsahující příkazy pro potlačení zobrazení. Operátor má na výběr potlačit zobrazení všech alarmů v zobrazovacím objektu nebo pouze viditelných alarmů, zvolených skupin, zvolených proměnných a zvolených priorit. • Query Favorites (Oblíbené dotazy) – Když klepnete pravým tlačítkem myši na zobrazovací objekt a zvolíte příkaz Query Favorites (Oblíbené dotazy), objeví se dialogové okno Alarm Query (Dotaz na alarmy). Další informace najdete v oddílu "Výběr a konfigurace oblíbených položek dotazů na alarmy". • Stats (Statistika) – Zobrazí dialogové okno statistiky alarmů. - 505 - • Suppression (Potlačení) – Zobrazí dialogové okno potlačení zobrazení alarmů. • Freeze (Zmrazit) – Zmrazí aktuální data zobrazovaná v objektu. Výběr a konfigurace oblíbených dotazů na databázi alarmů Příkaz Query Favorites (Oblíbené dotazy) v nabídce objektu pro zobrazování distribuovaných alarmů aktivované pravým tlačítkem myši Vám poskytuje možnost rychle zvolit dotaz na databázi alarmů ze seznamu již dříve definovaných dotazů. Pomocí dialogu Query Favorites (Oblíbené dotazy) můžete vytvářet nové pojmenované dotazy a editovat nebo mazat existující dotazy. ¾ Výběr dotazu na databázi alarmů 1. Za běhu programu klepněte pravým tlačítkem myši na objekt pro zobrazování distribuovaných alarmů. 2. Klepněte na Query Favorites (Oblíbené dotazy). Objeví se dialogové okno Alarm Query (Dotaz na alarmy). 3. Zvolte pojmenovaný dotaz. 4. Klepněte na OK. Objekt pro zobrazování alarmů zobrazí alarmové záznamy vyhovující zvolenému dotazu. Více informací o dynamickém řízení objektu pro zobrazování distribuovaných alarmů je uvedeno v oddílu "Vlastnosti a funkce objektu pro zobrazování distribuovaných alarmů". Viz také oddíl "Skriptové funkce dotazů na alarmy". ¾ Přidání nového pojmenovaného dotazu 1. Klepněte pravým tlačítkem myši na zobrazovací objekt pro distribuované alarmy při běhu programu. - 506 - 2. Klepněte na Query Favorites (Oblíbené dotazy). Objeví se dialogové okno Alarm Query (Dotaz na databázi alarmů). 3. Klepněte na Add (Přidat). Objeví se dialogové okno Add Alarm Query (Přidat dotaz na alarm). 4. Ve vstupním poli Name (Název) napište název, který chcete použít pro dotaz. - 507 - 5. Ve vstupním poli Query (Dotaz) vypište dotazy na alarmy programu InTouch, které chcete provést. Můžete specifikovat jednoho nebo více poskytovatelů alarmů a skupin. Další informace najdete v oddílu "Standardní vlastnosti objektu pro zobrazování distribuovaných alarmů". 6. Do pole From Priority (Od priority) zadejte hodnotu určující nejvyšší prioritu alarmu (od 1 do 999). 7. Do pole To Priority (Do priority) zadejte hodnotu určující nejnižší prioritu alarmu (od 1 do 999). Poznámka: Každý alarm konfigurovaný v programu InTouch má přiřazenu určitou hodnotu priority. Tato hodnota vyjadřuje závažnost alarmu a může mít rozsah od 1 do 999, přičemž 1 představuje nejzávažnější alarm. Další informace o prioritách alarmu najdete v části "Priority alarmů". 8. Klepněte na šipku výběrového pole Alarm State (Stav alarmu) a zvolte ze seznamu skupinu alarmů, kterou chcete v dotazu použít. 9. Zvolte Display Type (Typ zobrazení). Další informace najdete v oddílu "Aktuální alarmy v porovnání s historickými alarmy". Viz také "Dynamické řízení typu zobrazení". 10. Dialogové okno Add Query (Přidat dotaz) zavřete klepnutím na OK. 11. Klepněte na OK v dialogovém okně Alarm Query (Dotaz na alarmy) pro potvrzení zadaných dat. ¾ Modifikace existujícího dotazu 1. Klepněte pravým tlačítkem myši na distribuovaný alarmový zobrazovací objekt. 2. Klepněte na Query Favorites (Oblíbené dotazy). Objeví se dialogové okno Alarm Query (Dotaz na databázi alarmů). 3. Zvolte dotaz, který chcete modifikovat, v seznamu aktuálně definovaných dotazů. 4. Klepněte na Modify (Modifikovat). Objeví se dialogové okno Modify Query (Modifikovat dotaz). 5. Proveďte nezbytné modifikace a potom klepněte na OK pro zavření dialogového okna Modify Query (Modifikovat dotaz). 6. Klepněte na OK v dialogovém okně Alarm Query (Dotaz na alarm) pro potvrzení modifikace. Poznámka: Provedená modifikace se týká pouze daného objektu a nevztahuje se k jiným objektům pro zobrazování distribuovaných alarmů. ¾ Vymazání existujícího dotazu 1. Klepněte pravým tlačítkem myši na objekt pro zobrazování distribuovaných alarmovů. 2. Klepněte na Query Favorites (Oblíbené dotazy). Objeví se dialogové okno Alarm Query (Dotaz na alarmy). 3. Zvolte dotaz, který chcete vymazat ze seznamu aktuálně definovaných dotazů. - 508 - 4. Klepněte na Delete (Vymazat). Objeví se okno se výzvou potvrdit vymazání zvoleného dotazu. 5. Klepněte na Yes (Ano). 6. Klepněte na OK v dialogovém okně Alarm Query (Dotaz na alarm) pro potvrzení vymazání. Poznámka: Vymazání se týká pouze daného objektu a nevztahuje se na jiné objekty pro zobrazování distribuovaných alarmů. Objekty pro zobrazování distribuovaných alarmů – pravidla pro použití Objekt pro zobrazování distribuovaných alarmů je složitý předkonfigurovaný objekt. Tento objekt je založen na stejných principech jako skupina objektů Window Controls. Tyto principy vyžadují dodržování následujících pravidel: Každý objekt musí být označen identifikátorem. Tento identifikátor je zadán jako Display Name (Název objektu) v dialogovém okně Alarm Configuration (Konfigurace alarmů) a musí být pro každý objekt jedinečný. Objekty pro zobrazování distribuovaných alarmů nesmí překrývat jiné objekty programu InTouch, jako jsou např. ovládací prvky nebo grafické objekty. Splnění této podmínky můžete snadno ověřit v programu WindowMaker klepnutím na objekt pro zobrazování distribuovaných alarmů a kontrolou "úchytů" objektu. Tyto úchyty by se neměly dotýkat jiných grafických objektů na obrazovce. V aplikaci by měl být použit přiměřený počet těchto objektů. Umístění velkého množství objektů pro zobrazování distribuovaných alarmů v jednom okně aplikace InTouch může mít negativní vliv na výkon systému. Pokud je to možné, omezte počet těchto objektů v jednom okně, další objekty umístěte do jiných oken, které můžete podle potřeby volat. - 509 - Použití objektu pro zobrazování distribuovaných alarmů Vložení objektu pro zobrazování distribuovaných alarmů ¾ 1. Klepněte na nástroj Wizard (Předkonfigurovaný objekt) na nástrojové liště Wizards/ActiveX (Předkonfigurované objekty/ActiveX). Objeví se dialogové okno Wizard Selection (Výběr předkonfigurovaného objektu). 2. Zvolte Alarm Displays (Alarmové objekty) v seznamu předkonfigurovaných objektů. 3. Klepněte dvakrát na předkonfigurovaný objekt Dist. Alarm Display (Objekt pro zobrazování distribuovaných alarmů) nebo jej pouze označte a potom klepněte na OK. Dialogové okno se uzavře a vámi vytvářené okno se opět objeví s kurzorem v režimu "vkládání". 4. TIP Klepněte v okně pro vložení předkonfigurovaného alarmového objektu. Pro nastavení velikosti ukažte na jeden z úchytů objektu, potom za něj táhněte myší, dokud nedosáhnete požadované velikosti. 5. Nyní jste připraveni objekt nakonfigurovat. - 510 - Konfigurace objektu pro zobrazování distribuovaných alarmů Dialogové okno Alarm Configuration (Konfigurace alarmů) má tři karty vlastností: General, Message a Color. Poznámka: Konfigurační dialogové okno se chová jako standardní karta vlastností systému Windows. Žádná nastavení nejsou akceptována, dokud je nepotvrdíte klepnutím na tlačítko OK. Vstupy jsou ověřovány z hlediska správnosti zadaných hodnot. Jestliže zadání některého ze vstupů není správné a dojde k přechodu z jedné karty vlastností (záložky) na druhou, objeví se okno se zprávou o chybě. Pokud klepnete na Cancel (Storno), ignorují se všechny vstupy a dialogové okno se uzavře. Obecné vlastnosti distribuovaného alarmového objektu ¾ Konfigurace alarmového objektu 1. Klepněte dvakrát na alarmový objekt nebo na něj klepněte pravým tlačítkem myši a zvolte Properties (Vlastnosti). Zobrazí se dialogové okno Alarm Configuration (Konfigurace alarmů) s aktivní kartou vlastností General (Obecné): TIP Klepnete-li pravým tlačítkem myši na jakékoli textové pole v dialogovém okně konfigurace alarmu, objeví se nabídka s příkazy, které lze použít pro zvolený text. 2. Do pole Display Name (Název objektu) zapište název alarmového objektu. Tento název musí být pro každý použitý alarmový objekt jedinečný. TIP Název, který zde zvolíte, bude využíván k adresování tohoto objektu v celém systému. - 511 - 3. 4. Nastavení New Alarms Appear At určuje, kam budou nové alarmy v seznamu řazeny: Top of List Poslední alarm bude zařazen na začátek seznamu. Bottom of List Poslední alarm bude zařazen na konec seznamu. Zkonfigurujte vlastnosti objektu podle popisu uvedeného níže: Vlastnost Popis Show Titles Zobrazit titulkový pás alarmové zprávy Show Vert. Scroll Bar Zobrazit svislý posuvník Show Horz. Scroll Bar Zobrazit vodorovný posuvník Use Default Ack Comment (Použít výchozí komentář potvrzení) Pokud je zaškrtnuto a uživatel potvrdí alarm voláním příkazu aktuální nabídky aktivované přes pravé tlačítko myši, je použit výchozí komentář. V opačném případě je nabídnuto zadávací pole pro zadání uživatelského komentáře. Show Status Bar Zobrazí stavový řádek. Allow Runtime Grid Changes Povolí uživateli změnit nastavení šířky sloupců tabulky za běhu programu. Perform Query on Startup Je-li zvoleno, je po aktivaci objektu automaticky vykonán výchozí dotaz. Není-li zvoleno, je třeba provést dotaz pomocí almDefQuery nebo almQuery. Auto-Scroll to New Alarms Zobrazení seznamu alarmů se automaticky posouvá směrem k novým alarmům. Allow Runtime Alarm Selection Povolí uživateli označit alarm(y) za běhu programu. Use Extended Alarm Selection Povolí současný výběr několika alarmů přidržením klávesy Ctrl nebo Shift ve spojení s činností myši. Implicitně je nastavena možnost výběru. (Volba je viditelná pouze tehdy, je-li zvoleno rovněž políčko Allow Runtime Alarm Selection (Povolit výběr alarmu při běhu programu)). Show Context Sensitive Menu Zapne aktivaci kontextové nabídky pomocí pravého tlačítka myši. 5. Nastavte parametry Default Query Properties (Vlastnosti výchozího dotazu) tak, jak je níže popsáno: TIP Vlastnosti výchozího dotazu se uplatní, když zvolíte Perform Query on Startup - 512 - (Provést dotaz při spuštění) nebo když je zavolána skriptová funkce almDefQuery. Vlastnost Popis From Priority (Od priority) Výchozí minimální hodnota priority alarmu. To Priority (Do priority) Výchozí maximální hodnota priority alarmu. Další informace o prioritách alarmu najdete v oddílu "Priority alarmů" této kapitoly. Alarmový stav Implicitní alarmový stav pro dotaz: All= zobrazit všechny alarmy UnAck = zobrazit pouze nepotvrzené alarmy Ack = zobrazit pouze potvrzené alarmy Query Type (Typ dotazu) Nastaví, zda objekt bude zobrazovat aktuální nebo historické alarmy. Dotaz na alarmy Nastaví výchozí dotaz na databázi alarmů. Toto pole akceptuje pouze text; neakceptuje proměnné. Platná syntaxe položek dotazu je následující: \\Node\InTouch!Group Úplná cesta k alarmové skupině \InTouch!Group Úplná cesta k lokální alarmové skupině GroupList Jméno seznamu poskytovatelů alarmů Poznámka: Pro provedení dotazu složeného z několika dílčích dotazů oddělte položky dotazu mezerou. Například: \\Master\InTouch!MyGroup LocalGroupList Formát alarmového záznamu Formát položek zobrazovaných v alarmovém objektu lze nakonfigurovat. Konfigurací lze například specifikovat, které údaje žádáte zobrazovat, v jakém pořadí, kolik znaků žádáte zobrazit pro určitou položku apod. ¾ Nastavení formátu záznamu 1. Poklepejte na objektu pro zobrazování distribuovaných alarmů. Objeví se dialogové okno Alarm Configuration (Konfigurace alarmů). 2. Aktivujte záložku Message (Zpráva): - 513 - TIP Klepnete-li pravým tlačítkem myši na jakékoli textové pole v dialogovém okně konfigurace alarmu, objeví se nabídka s příkazy, které lze použít pro označený text. Oblast náhledu (ve spodní části dialogu) zobrazuje alarmovou zprávu tak, jak je aktuálně nakonfigurována s vyjímkou barevného rozlišení. 3. Zvolte formát data. K dispozici jsou následující formáty: Volba Zobrazení Volba Zobrazení DD MMM 28 II MM/DD 02/28 DD MM YYYY 28 II 2003 MM/DD/YY 02/28/03 DD/MM 28/02 MMM DD II 28 DD/MM/YY 28/02/03 MMM DD YYYY II 28 2003 4. Zvolte formát času. Hodnoty v tomto poli se používají jako šablona pro specifikaci formátu času. Například pro specifikaci času jako 10:24:30 AM (odpoledne) použijte HH:MM:SS AP. Předdefinované znaky jsou následující: AP Zvolí formát AM/PM (dopoledne/odpoledne). Např. tři hodiny odpoledne se zobrazí jako 3:00 PM. Čas bez tohoto označení se zobrazí ve 24-hodinovém formátu času. Např. tři hodiny odpoledne se zobrazí jako 15:00:00. HH Zobrazí hodiny, kdy došlo k alarmu/události. MM Zobrazí minuty, kdy došlo k alarmu/události. SS Zobrazí vteřiny, kdy došlo k alarmu/události. - 514 - SSS Zobrazí milisekundy, kdy došlo k alarmu/události. 5. V poli pod polem Time (Čas) zvolte pořadí, ve kterém se mají alarmy v alarmovém objektu řadit. K dispozici jsou tři možnosti: OAT LCT Original Alarm Time (Čas vzniku alarmu) – použít časovou značku přiřazenou při vzniku alarmu Last Changed Time (Čas poslední změny) – použít čas poslední změny stavu instance alarmu: počátek alarmu, změna substavu, návrat do normálního stavu nebo potvrzení. 6. Klepněte na Select Display Font (Výběr písma) pro přístup k dialogovému oknu Font (Písmo) a proveďte změnu písma, stylu a velikosti použité v alarmovém objektu. 7. Klepněte na Column management (Správa sloupců) pro výběr sloupců, které se mají zobrazit,pořadí sloupců a pojmenování těchto sloupců včetně definice jejich šířky. Více informací naleznete v sekci „Tlačítko Column management (Správa sloupců)“ 8. Klepněte na OK. Tlačítko Select Display Font (Výběr písma) Pomocí tlačítka Select Display Font (Výběr písma) můžete nastavit písmo záznamů a nadpisu ovládání. ¾ Pro nastavení písma 1. Dvakrát klepněte na objekt Distributed Alarm Display, popřípadě na něj klepněte pravým tlačítkem a vyberte položku Properties (Vlastnosti). Zobrazí se Vám dialog Alarm Configuration (Konfigurace alarmů) se záložkou General (Obecné). 2. Klepněte na záložku Message (Formát) a klepněte na tlačítko Select Display Font (Výběr písma). Zobrazí se Vám následující dialogové okno. - 515 - 3. Posuvem v poli Font (Písmo) vyberte požadovaný typ písma 4. Posuvem v poli Font Style (Styl písma) vyberte požadovaný styl písma. 5. Posuvem v poli Sice (Velikost) vyberte požadovanou velikost písma. 6. Klepněte na pole Script (Kódování) a rozbalte menu pro výběr požadovaného typů kódování. Poznámka: Pole Sample (Náhled) zobrazuje náhled vybraných vlastností písma. 7. Klepněte na tlačítko OK. Tlačítko Column management (Správa sloupců) Dialogové okno Column details (Správa sloupců) otevřete klepnutím na tlačítko Column management (Správa sloupců) nacházející se na listu Message (Formát). Dialogové okno Column details (Správa sloupců) vyžijete pro výběr sloupců, které se mají zobrazit, jejich pořadí, nastavení pojmenování a šířky těchto sloupců. ¾ Pro konfiguraci správy sloupců 1. Dvakrát klepněte na objekt Distributed Alarm Display, popřípadě na něj klepněte pravým tlačítkem a vyberte položku Properties (Vlastnosti). Zobrazí se Vám dialog Alarm Configuration (Konfigurace alarmů) se záložkou General (Obecné). 2. Klepněte na záložku Message (Formát) 3. Klepněte na tlačítko Column Management (Správa sloupců). Zobrazí se Vám následující dialogové okno. - 516 - 4. Z dialogového okna správy sloupců, vyberte pomocí zatrhávacích polí sloupce, které chcete v alarmovém prvku zobrazit. Názvy sloupců, které je možné zobrazit jsou popsány níže. Poznámka: Alespoň jeden sloupec musí být vybrán Sloupec Date (Datum) State (Stav) Time (Čas) Name (Název) Description (Popis) Group (Skupina) Type (Typ) Value (Hodnota) Limit (Limit) Priority (Priorita) Class (Třída) Provider (Poskytovatel) Operator (Operator) UTC time (Čas UTC) Comment Popis Zobrazuje datum ve formátu, který nastavíte v záložce Message (Formát). Zobrazuje stav alarmu. Zobrazuje čas ve formátu, který nastavíte v záložce Message (Formát) Zobrazuje název proměnné, na kterou je vázán alarm. Zobrazuje popis alarmu. Zobrazuje název alarmové skupiny. Zobrazuje typ alarmu. V případě, že je vygenerován alarm, zobrazuje hodnotu proměnné. Šířka sloupce by měla být široká tak, aby v ní bylo možné zobrazit dostatečnou úroveň přesnosti hodnoty. Zobrazuje alarmovou mez proměnné. Šířka sloupce by měla být široká tak, aby v ní bylo možné zobrazit dostatečnou úroveň přesnosti hodnoty. Zobrazuje alarmovou prioritu Zobrazuje třídu alarmu. Zobrazuje název alarmního poskytovatele Zobrazuje id přihlášeného operátora asociovaného s alarmovou událostí. Zobrazí pro alarmy čas UTC (Greenwich Mean Time, koordinovaný univerzální čas, ZULU) Zobrazuje komentáře proměnných napsané v poli Alarm Comment (Alarmový komentář) Tento komentár můžete definovat při vytváření proměnných v Tagname Dictionary. - 517 - Poznámka: Všechny sloupce kromě sloupce Operator (Operator) a Comment (Komentář) jsou ve výchozím nastavení vybrány. 5. V případě, že chcete změnit jednotlivé pořadí sloupců, vyberte příslušný sloupec a použijte tlačítka Move Up (Posunout nahoru) a Move Down (Posunout dolu). Sloupec zobrazený v horní části dialogového okna Column details, bude v alarmovém objektu zobrazen jako první z levé strany. 6. Pro upravení názvu sloupce a jeho šířky vyberte sloupec, který chcete upravit, a klepněte na tlačítko Edit (Upravit). 7. Pokud chcete zobrazit jiný název vybraného sloupce, než je definován ve výchozím nastavení, v poli New Name (Nový název) vložte nový název sloupce. 8. V poli Column Width (Šířka sloupce), nastavte šířku sloupce. Šířka sloupce je udávaná v pixelech a může být nastavena v rozsahu od 1 do 999 pixelů. Výchozí šířka sloupce je nastavena na 100 pixelů. 9. Klepněte na tlačítko OK v dialogovém okně Edit (Upravit). 10. Klepněte OK v dialogovém okně Column Details . Nastavení barev alarmového objektu ¾ Nastavení barev alarmového objektu 1. Klepněte dvakrát na distribuovaný alarmový zobrazovací objekt nebo na něj klepněte pravým tlačítkem myši a vyberte Properties (Vlastnosti). Objeví se dialogové okno Alarm Configuration (Konfigurace alarmů). 2. Klepněte na záložku Color (Barva) pro aktivaci karty vlastností Color (Barva): - 518 - TIP Klepnete-li pravým tlačítkem myši na jakékoli textové pole v dialogovém okně konfigurace alarmu, objeví se nabídka s příkazy, které lze použít pro zvolený text. 3. Klepnutí na kterékoli barevné pole v oblasti označené jako Display (Zobrazení) způsobí otevření barevné palety programu InTouch. V paletě je možné vyberat barvu pro následující položky: Možnost volby Popis Window Nastaví barvu pozadí objektu. Grid Nastaví barvu mřížky objektu. Selection Back Nastaví barvu pozadí vybrané položky. Selection Text Nastaví barvu vybraného textu. Title Bar Back Nastaví barvu pozadí záhlaví objektu (viditelné jen v případě, že je zapnuta možnost Show Titles (Zobrazovat nadpisy)). Title Bar Text Nastaví barvu textu záhlaví objektu (viditelné jen v případě, že je zapnuta možnost Show Titles (Zobrazovat nadpisy)). Alarm Return Nastaví barvu nepotvrzených alarmů, navrácených do normálního stavu. Event (Událost) Nastaví barvu událostí. 4. Do polí Alarm Priority (Priorita alarmu) zapište hraniční hodnoty priorit alarmového objektu. Vymezíte tak skupiny priorit alarmů, které máte možnost barevně odlišit podle závažnosti alarmu. 5. Nastavte odpovídající barvy pro nepotvrzené i potvrzené alarmy. Nepřejete-li si v závislosti na prioritách alarmů barevně rozlišovat alarmy, ponechte tuto část ve výchozím nastavení. 6. Klepněte na OK. - 519 - Přepínání typu zobrazovaných alarmů Objekt pro zobrazování distribuovaných alarmů je schopen zobrazovat aktuální alarmy nebo historické alarmy. Možnost zobrazovat historické nebo aktuální alarmy lze dynamicky měnit za běhu programu. ¾ Změna výchozího dotazu na alarmy 1. Klepněte dvakrát na distribuovaný alarmový objekt nebo na něj klepněte pravým tlačítkem myši a potom klepněte na Properties (Vlastnosti). Zobrazí se dialogové okno Alarm Configuration (Konfigurace alarmů) s aktivní kartou vlastností General (Obecné): TIP Klepnete-li pravým tlačítkem myši na jakékoli textové pole v dialogovém okně konfigurace alarmu, objeví se nabídka s příkazy, které lze použít pro zvolený text. 2. Klepněte na šipku Query Type (Typ dotazu) a zvolte, zda má objekt zobrazovat aktuální (alarm summary) nebo historické alarmy (alarm history). Za běhu programu je možné tento parametr měnit voláním skriptové funkce almQuery( ). Volání funkce almQuery oproti objektu AlarmObj_2 s parametrem Type (Typ) nastaveným na "Summary" přenastaví objekt tak, že bude zobrazovat aktuální alarmy. Volání funkce almQuery oproti objektu AlarmObj_2 s parametrem Type (Typ) nastaveným na "History" přenastaví objekt tak, že bude zobrazovat historické alarmy. Vlastnost QueryType obsahuje informaci o aktuálním stavu alarmového objektu. 3. Klepněte na OK. - 520 - Připojení komentářů k funkci potvrzení alarmu Ke každému potvrzení alarmu může být připojen komentář. Operátor potvrzující alarm může prostřednictvím tohoto komentáře připojit informace týkající se alarmu. Program InTouch je schopen ukládat alarmy včetně komentářů do databáze alarmů a tisknout je. Distribuovaný alarmový systém využívá pro předávání těchto komentářů do subsystémů ukládání a tisku pole Alarm Comment (Komentář alarmu), které je možné zadat při definování proměnné v databázi proměnných. ¾ Použití komentářů potvrzení alarmu 1. V nabídce Special (Speciální) ukažte na Configure (Konfigurovat) a zvolte Alarms (Alarmy). Zobrazí se dialogové okno Alarm Properties (Vlastnosti alarmů) s aktivní kartou vlastností General (Obecné): TIP Klepnete-li pravým tlačítkem myši na jakékoli textové pole v dialogovém okně konfigurace alarmu, objeví se nabídka s příkazy, které lze použít pro zvolený text. 2. Retain ACK Comment as Alarm Comment (Zapsat komentář potvrzení jako komentář alarmu) určuje, zda komentář zadaný při potvrzení alarmu má být zapsán do pole Alarm Comment příslušné proměnné v databázi proměnných. Pokud nebude toto pole zvoleno, bude zachována původní hodnota Alarm Comment, pokud zvoleno bude, bude pole Alarm Comment přepsáno novým komentářem zadaným během potvrzování alarmů. 3. Klepněte na OK. Použití zobrazovacího objektu pro monitorování lokálních alarmů Objekt pro zobrazování distribuovaných alarmů lze použít pro zobrazování a potvrzování jak lokálních, tak vzdálených alarmů. ¾ Nastavení objektu pro monitorování lokálních alarmů 1. Vložte distribuovaný alarmový zobrazovací objekt do okna aplikace InTouch. (Klepněte na nástroj předkonfigurovaných objektů, zvolte kategorii Alarm Displays (Alarmové displeje). Klepněte dvakrát na předkonfigurovaný objekt Dist. Alarm Display a potom klepněte v okně pro jeho vložení.) 2. Klepněte dvakrát na objekt nebo na něj klepněte pravým tlačítkem myši a potom - 521 - klepněte na Properties (Vlastnosti). Zobrazí se dialogové okno Alarm Configuration (Konfigurace alarmů) s aktivní kartou vlastností General (Obecné). 3. V poli Alarm Query (Dotaz alarmu) zapište \InTouch!$System. TIP $System můžete nahradit jménem jakékoli platné alarmové skupiny. Můžete také definovat seznam poskytovatelů alarmů obsahující pouze položku \InTouch!$System a do Alarm Query poté zapsat jméno tohoto seznamu. 4. Nakonfigurujte ostatní parametry obecných vlastností dotazu. 5. Přepněte program InTouch do režimu provádění aplikace. Zobrazení statistiky alarmů Distribuovaný alarmový systém je vybaven vestavěným dialogovým oknem statistiky alarmů. Vývojář aplikace může aplikaci navrhnout tak, aby dialogové okno Alarm Statistics (Statistika alarmů) vypisovalo stav aktuálního dotazu pro určitý alarmový objekt. Toto dialogové okno lze také vyvolat zvolením Stats (Statistika) z nabídky aktivované pravým tlačítkem myši. Další informace najdete v oddílu "Výběr a konfigurace oblíbených položek dotazů na alarmy". Dialogové okno Alarm Statistics (Statistika alarmů) Vám poskytuje přehled o aktuálním dotazu na alarmy pro konkrétní alarmový objekt. Okno uvádí v seznamu aktuální požadavky spotřebitele alarmů a výsledky splnění každého jednotlivého požadavku vyjádřené v procentech. TIP Každý řádek v dialogovém okně uvádí číslo a dotaz. Číslo představuje, kolik procent položek vyhovujících dotazu bylo již zpracováno. ¾ Aktualizace položky v zobrazení statistiky alarmů 1. Klepněte pravým tlačítkem myši na objekt pro zobrazování distribuovaných alarmů. 2. Z podnabídky zvolte Stats (Statistika). 3. Vyberte položku, kterou chcete aktualizovat, a potom klepněte na Update (Aktualizovat). 4. Klepněte na OK pro uzavření dialogového okna. - 522 - Vlastnosti a funkce alarmového objektu Objekt pro zobrazování distribuovaných alarmů obsahuje několik vlastností a funkcí, kterými lze ovlivnit funkci objektu. Následující oddíl stručně popisuje, jak můžete tyto vlastnosti a skriptové funkce použít. Další informace a příklady použití skriptových funkcí najdete v příručce InTouch Reference Guide. Vlastnosti alarmového objektu Alarmový objekt má několik skripty nastavitelných vlastností, které lze použít pro specifikaci dotazu na databázi alarmů za běhu programu. K vlastnostem objektu je zajištěn přístup prostřednictvím funkce GetPropertyX( ), kde X je typ dat (D pro Discrete (dvoustavový), I pro Integer (celočíselný), a M pro Message (textový)). Vlastnosti dotazu Popis .AlarmGroup Textová vlastnost obsahující aktuální seznam dotazů. .PriFrom Celočíselná vlastnost obsahující aktuální hodnotu filtru vysoké priority dotazů. .PriTo Celočíselná vlastnost obsahující aktuální hodnotu filtru nízké priority dotazů. .QueryType Celočíselná vlastnost popisující typ dat zobrazených v alarmovém objektu: 1 = History (Historické alarmy) 2 = Summary (Aktuální alarmy) .QueryState Celočíselná vlastnost obsahující aktuální filtr dotazů: 0 = All (Všechny alarmy) 1 = Unack (Nepotvrzené alarmy) 2 = Ack (Potvrzené alarmy) Více informací je uvedeno v oddílu "Použití ovládacího prvku AlarmViewer ActiveX". - 523 - Vlastnosti stavu dotazu Popis .Successful Diskrétní vlastnost obsahující stav aktuálního dotazu: 0 = Error (Chyba) 1 = OK .ProvidersReq Celočíselná vlastnost obsahující počet poskytovatelů alarmů v aktuálním dotazu. .ProvidersRet Celočíselná vlastnost obsahující počet poskytovatelů alarmů, kteří úspěšně odeslali výsledky dotazů. .NumAlarms Celočíselná vlastnost obsahující počet alarmů v aktuálním dotazu. .PageNum Celočíselná vlastnost obsahující číslo zobrazené stránky s alarmy. .TotalPages Celočíselná vlastnost obsahující celkový počet stránek alarmů. Vlastnosti pro listování v seznamu alarmů alarmového objektu Alarmový objekt má také dvě vlastnosti, které lze použít pro listování v seznamu zobrazených alarmů. Tyto vlastnosti lze ovládat pomocí funkce SetPropertyD. Vlastnosti řízení Popis .NextPage Při přechodu z hodnoty 0 na 1 posune zobrazovanou stránku na následující stránku alarmů. .PrevPage Při přechodu z hodnoty 0 na 1 posune zobrazovanou stránku na předchozí stránku alarmů. Kdykoli hodnota některé z uvedených dvoustavových vlastností přejde z hodnoty Off (0, False) na On (1, True), alarmový objekt zobrazí následující nebo předchozí stránku s alarmy, v závislosti na tom, do které z vlastností bylo zapsáno . Jakmile je žádaná stránka zobrazena, dvoustavová vlastnost se automaticky překlopí zpět na hodnotu Off (0, False). Poznámka: Tyto vlastnosti jsou v programu InTouch definovány, aby umožnily snadnou náhradu dřívějšího standardního objektu programu InTouch aktuálním objektem pro distribuované alarmy. V aktuálním objektu byla jejich funkce nahrazena posuvníky a skriptovou funkcí almMoveWindow. - 524 - Skriptové funkce pro potvrzování alarmů Distribuovaný alarmový systém je schopen potvrdit jakékoli alarmy, které je možné jednoznačně určit dotazem (platí pro aktuální alarmy). Pro tento účel zahrnuje distribuovaný alarmový systém skriptové funkce pro potvrzování alarmů. Tyto funkce doplňují funkci atributu .Ack, který program InTouch používá pro potvrzování lokálních alarmů a alarmových skupin. Funkce Popis AlmAckAll Potvrzuje všechny alarmy v aktuálním dotazu. Poněvadž alarmový objekt má omezenou zobrazovací plochu (zobrazuje pouze jednu stránku alarmů), funkce almAckAll může potvrdit i alarmy, které nejsou v aktuálním zobrazení viditelné. AlmAckDisplay Potvrzuje pouze ty alarmy, které jsou aktuálně zobrazeny v alarmovém objektu. AlmAckGroup Potvrzuje všechny alarmy od stejného poskytovatele, které odpovídají zadané alarmové skupině. almAckPriority Potvrzuje všechny alarmy stejného poskytovatele a stejné alarmové skupiny v rámci specifikovaného rozsahu priorit. almAckRecent Potvrzuje pouze poslední (nejnovější )alarm, který vznikl a odpovídá aktuálnímu dotazu. almAckSelect V objektu pro distribuované alarmy je možné za běhu programu vybrat alarmy pomocí myši. Funkci almAckSelect lze použít pro potvrzení takto vybraných alarmů. almAckSelectedGroup Potvrzuje všechny alarmy od stejného poskytovatele, které mají stejný název alarmové skupiny jako jeden nebo více vybraných alarmů. almAckSelectedPriority Potvrzuje všechny alarmy stejné alarmové skupiny od stejného poskytovatele, které mají stejné priority jako jeden nebo více zvolených alarmů. almAckSelectedTag Potvrzuje všechny alarmy stejné alarmové skupiny od stejného poskytovatele, které mají stejnou proměnnou jako jeden nebo více zvolených alarmů. almAckTag Potvrzuje všechny alarmy, které mají stejnou proměnnou, název poskytovatele a název skupiny v rámci zadaného rozsahu priorit. - 525 - Skriptové funkce potlačování alarmů Distribuovaný alarmový systém je schopen potlačit zobrazení jednoho nebo více alarmů u spotřebitele alarmů specifikací souboru vylučovacích kritérií. Pokud nějaký alarm splňuje vylučovací kritéria, nebude u spotřebitele alarmů viditelný, tj. nebude zobrazen v alarmovém objektu. Aby tuto vlastnost bylo možné plně využít, obsahuje distribuovaný alarmový systém skriptové funkce pro potlačování zobrazení alarmů. Funkce Popis almSuppressAll Potlačí zobrazení všech aktuálních a budoucích výskytů aktuálně aktivních alarmů. almSuppressSelected Potlačí zobrazení všech aktuálních a budoucích výskytů zvolených alarmů. almSuppressDisplay Potlačí zobrazení všech aktuálních a budoucích výskytů aktuálně viditelných alarmů. almSuppressSelectedGroup Potlačí zobrazení aktuálních a budoucích výskytů jakéhokoli alarmu, který patří do stejných alarmových skupin jako jeden nebo více vybraných alarmů a který má stejného poskytovatele. almSuppressSelectedPriority Potlačí zobrazení aktuálních a budoucích výskytů jakéhokoli alarmu, který patří ke stejným prioritám jako jeden nebo více vybraných alarmů a má stejného poskytovatele a alarmovou skupinu jako vybrané alarmy. almSuppressSelectedTag Potlačí zobrazení aktuálních a budoucích výskytů jakéhokoli alarmu, který patří ke stejnému názvu proměnné, má stejný název poskytovatele, název skupiny a rozsah priorit jako jeden nebo více vybraných alarmů. almSuppressGroup Potlačí zobrazení aktuálních a budoucích výskytů jakéhokoli alarmu, který patří k danému názvu skupiny a má stejného poskytovatele. almSuppressPriority Potlačí zobrazení aktuálních a budoucích výskytů jakéhokoli alarmu specifikovaného rozsahu priorit, který má stejného poskytovatele a název alarmové skupiny. almSuppressTag Potlačí zobrazení aktuálních a budoucích výskytů jakéhokoli alarmu, který má stejný název poskytovatele, název alarmové skupiny, leží v určeném rozsahu priorit a je od stejné proměnné. almUnSuppressAll Zruší všechna potlačení zobrazení - 526 - alarmů. Zachová seznam vylučovacích kritérií mezi jednotlivými dotazy. almSuppressRetain Skriptové funkce pro manipulaci s alarmovými objekty Distribuovaný alarmový systém poskytuje několik skriptových funkcí pro manipulaci se zobrazovacím objektem. Tyto funkce umožňují listování v seznamu alarmů zobrazených v objektu, výběr alarmů v objektu, zobrazení počtu vybraných alarmů a zobrazení statistického okna. Funkce Popis almMoveWindow Volá příkazy manipulující s instancí okna, v němž je zobrazen seznam alarmů. Příkazy zahrnují: Page Up (Posuv o stránku nahoru), Page Down (Posuv o stránku dolů), Scroll Right (Posuv vpravo), Scroll Left (Posuv vlevo), Line Up (Posuv o řádek nahoru), Line Down (Posuv o řádek dolů), Top (Posuv na začátek seznamu), End (Posuv na konec seznamu) a další. almSelectAll Invertuje výběr všech alarmů v objektu. Poněvadž alarmový objekt má pouze omezenou zobrazovací plochu, funkce almSelectAll může vybrat i alarmy, které nejsou v aktuálním zobrazení viditelné. almSelectionCount Vrací celočíselnou hodnotu obsahující počet alarmů zvolených operátorem v alarmovém objektu. almSelectGroup Invertuje výběr všech alarmů dané alarmové skupiny v rámci daného poskytovatele. almSelectItem Invertuje výběr položky, která je vybrána v alarmovém objektu. almSelectPriority Invertuje výběr všech alarmů daného rozsahu priorit, dané alarmové skupiny od daného poskytovatele. almShowStats Zobrazí dialogové okno statistiky alarmů. almSelectTag Přepíná výběr všech alarmů od specifikovaného poskytovatele/skupiny/proměnné. Můžete také specifikovat rozsah priorit nebo použít 1-999. almUnSelectAll Zruší výběr všech zvolených záznamů. - 527 - Skriptové funkce dotazů na alarmy Objekt pro zobrazování distribuovaných alarmů získává informace zadáním dotazu na databázi alarmů. Parametry tohoto dotazu a typ dotazu jsou určeny pomocí jedné ze tří skriptových funkcí, které jsou k dispozici. Funkce Popis almDefQuery Provede dotaz s parametry zadanými v konfiguračním dialogu alarmového objektu. Tyto parametry zahrnují: From Priority (Od priority), To Priority (Do priority), Alarm List (Seznam alarmů) a Display Type (Typ zobrazení). Výchozí parametry dotazu lze měnit pouze během vývoje aplikace. Výchozí parametry nejsou přepsány voláním jiných dotazů na alarmy. almQuery Provádí dotaz jak na aktuální tak na historické alarmy. V této funkci jsou předávány všechny parametry dotazu. almSetQueryByName Spustí nový dotaz na alarmy s parametry, které jsou asociovány s názvem uživatelem již dříve definovaného dotazu. Poznámka: V operačním systému Windows 2000 platí: Jestliže je poskytovatel alarmů přihlášen v jiné doméně než spotřebitel alarmů, je třeba přesně specifikovat celý název počítače nebo IP adresy včetně domény poskytovatele. Poskytovatel alarmů v odlišné doméně může být například v dotazu specifikován jako: \\poskytovatel1.b3.wonderware.com\intouch!$system, kde "poskytovatel1" je název počítače a "b3.wonderware.com" je přípona primárního DNS pro doménu. - 528 - Ovládací prvek Alarm DB View ActiveX Program InTouch obsahuje ovládací prvek Alarm DB View ActiveX (AlmDbViewCtrlX), který umožní zobrazit alarmová data uložená do databáze utilitou Alarm DB Logger. Tento ovládací prvek se používá pro zobrazení dlouhodobé historie alarmů a událostí - lze zobrazit vše, co je uloženo v alarmové databázi. Vzhled ovládacího prvku ActiveX a zobrazovaných dat určujete specifikací parametrů vlastností objektu. Konfigurací lze ovlivnit: • Vlastnosti kontextové nabídky • Režim zobrazování • Vlastnosti seznamu alarmů • Barvy pro různé vlastnosti • Typ, styl a velikost písma • Specifikaci připojení k databázi (jméno serveru, jméno a heslo uživatele) • Specifikaci dotazů (filtrování) • Nastavení sloupců • Řazení záznamů Jakmile je nastaven vzhled ovládacího prvku, může uživatel provést následující úpravy pro zobrazování dat: • Seřadit informace podle určitého sloupce • Aktualizovat zobrazovací objekt • Provést dotaz • Změnit šířku sloupce Ovládací prvek Alarm DB View ActiveX lze vložit do okna aplikace v programu WindowMaker, změnit jeho velikost a umístit jej; ovládací prvek se konfiguruje pomocí stránek vlastností. Data z databáze jsou zobrazována v aktivní oblasti ovládacího prvku Alarm DB View ActiveX. Typ a formát zobrazených dat závisí na vlastnostech nastavených na příslušné stránce vlastností. Instalace Ovládací prvek Alarm DB View ActiveX je instalován společně s programem InTouch. ¾ Chcete-li vložit ovládací prvek Alarm DB View ActiveX Control do okna WindowMaker 1. Otevřete dialogové okno Wizard Selection (Výběr předkonfigurovaného objektu). 2. V položce ActiveX Controls (Ovládací prvky ActiveX) zvolte AlmDbViewCtrl, potom klepněte na OK. 3. Vložte ovládací prvek do okna a změňte podle potřeby jeho velikost a umístění. Odinstalace 1. Vymažte všechny ovládací prvky Alarm DB View vložené v oknech aplikace InTouch. - 529 - 2. Zvolte Configure (Konfigurovat) z nabídky Special (Speciální). 3. Zvolte Wizard/ActiveX Installation (Instalace předkonfigurovaného objektu/ActiveX), otevře se dialogové okno Wizard/ActiveX installation. 4. Zvolte stránku vlastností instalace ActiveX Control (Ovládací prvek ActiveX). Název ovládacího prvku Wonderware Alarm Database View se objeví v textovém poli Installed ActiveX Controls (Instalované ovládací prvky ActiveX). 5. Označte ovládací prvek Wonderware Alarm Database View, potom klepněte na Remove (Odstranit). 6. Klepněte na Yes (Ano) v okně s varovnou hláškou. 7. Klepněte na Close (Zavřít). Zobrazení dialogového okna s vlastnostmi objektu Alm DBViewCtrlX Dialogové okno obsahující vlastnosti objektu AlmDBViewCtrlX lze vyvolat: • Dvojitým klepnutím na ovládací prvek nebo • Klepnutím pravým tlačítkem myši na ovládací prvek a zvolením nabídky Properties (Vlastnosti) z kontextové nabídky Dialogové okno Vlastnosti AlmDBViewCtrlX Karty (záložky) v dialogovém okně AlmDBViewCtrlX Properties (Vlastnosti AlmDBViewCtrlX) umožňují nastavit vzhled a vlastnosti ovládacího prvku. Instrukce pro kompletní vyplnění položek na jednotlivých stránkách najdete v následujících sekcích. Poznámka: Uvedené instrukce popisují různé vlastnosti uvedeného ovládacího prvku, které jsou dostupné v dialogovém okně AlmDBViewCtrlX Properties a které lze konfigurovat ve skriptovém editoru. Například: #AlmDBView1.RefreshMenu = "False"; Tento výraz se vztahuje k nastavení hodnoty vlastnosti RefreshMenu pro objekt AlmDBView1. V následujících oddílech je užito zápisů se syntaxí např. #Object.RefreshMenu. Ve všech takových případech “Object” reprezentuje jméno, které jednoznačně určuje ovládací prvek. - 530 - Karta vlastností Control Name (Jméno ovládacího prvku) • Karta vlastností Control Name (Jméno ovládacího prvku) dialogu Properties (Vlastnosti) poskytuje základní údaje o ovládacím prvku v aplikaci InTouch. Poznámka: Výchozí jméno ovládacího prvku (ControlName) je určeno tzv. ProgID tohoto prvku. ProgID jsou názvy v registrech operačního systému. Tyto názvy jsou vloženy při instalaci objektu ActiveX na daném počítači. Jestliže je instance takového prvku vložena do aplikace InTouch, z registrů operačního systému se získá ProgID a k němu je připojeno číslo indexu (pořadové číslo prvku v aplikaci), čímž se získá jméno ovládacího prvku (ControlName), např. AlarmDBViewCtrl1. • V části Extended Properties (Rozšířené vlastnosti) jsou údaje o velikosti a poloze ovládacího prvku v okně (souřadnice levého horního rohu, šířka a výška); tyto vlastnosti můžete změnit podle potřeby . • Zrušením označení zaškrtávacího políčka Visible (Viditelný) způsobíte, že ovládací prvek bude při běhu programu neviditelný. • Textové pole GUID zobrazuje jedinečný identifikátor tohoto ovládacího prvku ActiveX v systému Windows. Karta vlastností General (Obecné) Záložka General (Obecné) poskytuje možnost nastavit vlastnosti uživatelského rozhraní ovládacího prvku. - 531 - Možnosti kontextové nabídky Oddíl Context Sensitive Menu Options (Možnosti kontextové nabídky) umožňuje aktivaci a deaktivaci položek kontextové nabídky pro pravé tlačítko myši ovládacího prvku. Pro následující popisy vlastností a metod prvku AlmDBViewCtrl, které bude možné využít ve skriptování, platí následujících pravidla: Logická hodnota „True” (Pravda) a celočíselná hodnota < > 0, jsou v případě ovládání diskrétních vlastností objektu Alarm DB View ze skriptů aplikace InTouch rovnocenné: Nastavení vlastnosti: přiřaďte hodnotu různou od 0 nebo hodnotu "True" Získání hodnoty vlastnosti: obdržíte celočíselnou hodnotu -1 Logická hodnota "False" (Nepravda) a celočíselná hodnota = 0, jsou v případě ovládání diskrétních vlastností objektu Alarm DB View ze skriptů aplikace InTouch rovnocenné: Nastavení vlastnosti: přiřaďte 0 nebo hodnotu "False" Získání hodnoty vlastnosti: obdržíte celočíselnou hodnotu 0 Příklady pro nastavení vlastnosti: #AlmDbViewCtrl6.SortMenu = "True"; {aktivuje nabídku Sort (Seřadit) v kontextové nabídce ovládacího prvku} #AlmDbViewCtrl6.SortMenu = 1; {aktivuje nabídku Sort (Seřadit) v kontextové nabídce ovládacího prvku} #AlmDbViewCtrl6.SortMenu = "False"; {deaktivuje nabídku Sort (Seřadit) v kontextové nabídce ovládacího prvku} #AlmDbViewCtrl6.SortMenu = 0; {deaktivuje nabídku Sort (Seřadit) v kontextové nabídce ovládacího prvku} Příklady pro získání hodnoty vlastnosti: IF #AlmDbViewCtrl6.ShowFetch == 0 THEN {kontroluje aktuální stav vlastnosti} - 532 - #AlmDbViewCtrl6.ShowFetch = 1; {přepne vlastnost do stavu "True", pokud byla předtím ve stavu "False"} ELSE #AlmDbViewCtrl6.ShowFetch = 0; {přepne vlastnost do stavu "False", pokud byla předtím ve stavu "True"} ENDIF; Int_Tag = #AlmDbViewCtrl6.ShowGrid {Do celočíselné proměnné Int_Tag se přiřadí -1, když je zobrazena mřížka, nebo se přiřadí 0, když mřížka není zobrazena} Enable Refresh Menu (Aktivace nabídky Aktualizace) Označte toto zaškrtávací políčko pro aktivaci volby Refresh menu v nabídce ovládacího prvku aktivované pravým tlačítkem myši při běhu aplikace (runtime). Nabídka Refresh aktualizuje obsah ovládacího prvku a jestliže spojení s databází je úspěšné, zobrazí seznam záznamů v rozsahu 1 do MaxRecords (Maximální počet záznamů). Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: RefreshMenu Účel: Vrací nebo nastaví hodnotu, která určuje, zda položka “Refresh” (Obnovit) bude zobrazena v kontextové nabídce. Typ: Diskrétní Výchozí nastavení: True (Pravda) Syntaxe: Object.RefreshMenu [= Integer] Diskrétní True (Pravda) (Výchozí nastavení) Položka “Refresh” (Obnovit) je zobrazena. False (Nepravda) Položka “Refresh” (Obnovit) není zobrazena. - 533 - Enable Sort Menu (Aktivace nabídky Seřadit) Označte toto zaškrtávací políčko pro aktivaci možnosti Sort menu (Nabídka Seřadit) v nabídce ovládacího prvku aktivované pravým tlačítkem myši při běhu aplikace (runtime). Tato volba aktivuje nabídku Secondary Sort (Sekundární řazení) používanou pro řazení sloupců definovaného uživatelem. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: SortMenu Účel: Vrací nebo nastaví hodnotu, která určuje, zda položka nabídka “Sort” (Seřadit) bude zobrazena v kontextové nabídce. Typ: Integer (Celé číslo) Výchozí nastavení: True (Pravda) Syntaxe: Object.SortMenu [= Integer] Integer (Celé číslo) Celočíselný výraz specifikující, zda položka nabídka “Sort” (Seřadit) bude zobrazena, jak je popsáno v nastavení. True (Pravda) (Výchozí nastavení) Položka “Sort” (Seřadit) bude zobrazena. False (Nepravda) Položka “Sort” (Seřadit) nebude zobrazena. - 534 - Secondary Sort (Sekundární řazení) Dialogové okno Secondary Sort (Sekundární řazení) se zobrazí, když se klepne na příslušnou položku kontextové nabídky. Toto dialogové okno zobrazuje seznam sloupců, které jsou aktuálně zobrazeny v ovládacím prvku a používá se pro provedení jednoduchého nebo vícenásobného řazení záznamů podle vybraných sloupců vzestupně nebo sestupně. Pro specifikaci sloupců, podle nichž má být provedeno řazení, označte zaškrtávací políčko vedle názvu sloupce. Použijte tlačítek se šipkami Sort Order (Pořadí řazení) pro změnu pořadí sloupců, podle kterých bude řazení provedeno. Jestliže je například požadováno řadit záznamy sestupně podle alarmového stavu a data, potom postupujte následovně: 1. Označte obě výběrová políčka pro Date (Datum) a State (Stav). 2. Zvolte řádek State (Stav). 3. Klepněte na tlačítko Sort Order (Pořadí řazení) se šipkou nahoru. 4. Označte výběrové tlačítko Descending (Sestupně) ze sekce Sort Type (Typ řazení). 5. Klepněte na OK. - 535 - Enable Filter Menu (Aktivace nabídky Filtr) Označte toto zaškrtávací políčko pro aktivaci možnosti Filter (Nabídka Filtr) v nabídce ovládacího prvku aktivované pravým tlačítkem myši. Tato volba aktivuje nabídku Filter (Filtr) používanou pro uživatelské nastavení kritérií filtrování zobrazených záznamů. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: FilterMenu Účel: Vrací nebo nastaví hodnotu, která určuje, zda položka nabídka “Filter” (Filtr) bude zobrazena v kontextové nabídce. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.FilterMenu [= Discrete] True (Pravda) (Výchozí nastavení) Položka “Filter” (Filtr) bude zobrazena. False (Nepravda) Položka “Filter” (Filtr) nebude zobrazena. - 536 - Enable Reset Menu (Aktivace nabídky Znovu nastavit) Označte toto zaškrtávací políčko pro aktivaci možnosti Reset menu (Nabídka Znovu nastavit) v nabídce ovládacího prvku aktivované pravým tlačítkem myši. Nabídka Reset (Znovu nastavit) nastaví objekt podle kritérií stanovených při vývoji aplikace. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: ResetMenu Účel: Vrací nebo nastaví hodnotu, která určuje, zda položka “Reset” (Znovu nastavit) bude zobrazena v kontextové nabídce. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.ResetMenu [= Discrete] True (Pravda) (Výchozí nastavení) Položka “Reset” (Znovu nastavit) je zobrazena. False (Nepravda) Položka “Reset” (Znovu nastavit) není zobrazena. - 537 - Font Button (Tlačítko Písmo) Tlačítko Font (Písmo) slouží pro nastavení písma, kterým se budou zobrazovat záznamy v ovládacím prvku a jeho záhlaví ¾ Chcete-li konfigurovat vlastnosti písma 1. Poklepejte na prohlížeč alarmů AlarmDBView ActiveX nebo na něj klepněte pravým tlačítkem myši a vyberte příkaz Properties (Vlastnosti). Zobrazí se dialogové okno AlmDBViewCtrl Properties s aktivní kartou vlastností Control Name (Název ovládacího prvku). 2. Klepněte na kartu General (Obecné) a poté klepněte na tlačítko Font (Písmo). Zobrazí se dialogové okno Font (Písmo). 3. Prolistujte seznam písem a vyberte si požadovaný typ písma. 4. Prolistujte seznam Font Style (Styl písma) a vyberte si požadovaný styl písma. 5. Prolistujte seznam Size (Velikost) a zvolte velikost písma. 6. V poli Effects (Efekty) zaškrtněte políčko Strikeout (Přeškrtnout) nebo Underline (Podtrhnout) a vyberte tak přeškrtnutí nebo podtržení písma. 7. Klepněte na šipku u seznamu Script (Skript) a vyberte požadovaný typ kódování. Poznámka: Pole Sample (Ukázka) zobrazuje na vzorku písma jeho vzhled podle vybraných atributů. 8. Klepněte na tlačítko OK. - 538 - Display Mode (Režim zobrazování) Seznam zobrazuje přehled dostupných možností zobrazení. Seznam obsahuje volby: • Alarms & Events History (Historie alarmů a událostí) • Alarms History (Historie alarmů) • Events History (Historie událostí) Vlastnost: DisplayMode Účel: Určuje režim zobrazování ovládacího prvku. Tato vlastnost je určena pouze pro čtení. Typ: Message (Text) Výchozí nastavení: Alarms & Events History (Historie alarmů a událostí) Syntaxe: Object.DisplayMode tagname = #AlmDbView1.DisplayMode; kde název ovládacího prvku je AlmDbView1 a proměnná "tagname" je typu message (textová). • - 539 - Zaškrtávací políčko Show Grid (Zobrazit mřížku) Zaškrtávací políčko Show Grid (Zobrazit mřížku) aktivuje nebo deaktivuje zobrazení mřížky u ovládacího prvku. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: ShowGrid Účel: Vrací nebo nastaví hodnotu, která určuje, zda se zobrazí mřížka v ovládacím prvku. Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.ShowGrid [= Discrete] True (Pravda) Čáry mřížky se zobrazí v ovládacím prvku. False (Nepravda) (Výchozí nastavení) Čáry mřížky se nezobrazí. - 540 - Zaškrtávací políčko Show Heading (Zobrazit záhlaví) Zaškrtávací políčko Show Heading (Zobrazit záhlaví) se používá pro aktivaci nebo deaktivaci zobrazení záhlaví ovládacího prvku. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: ShowHeading Účel: Vrací nebo nastavuje hodnotu, která určuje, zda se zobrazí záhlaví sloupců v ovládacím prvku. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.ShowHeading [= Discrete] • True (Pravda) (Výchozí nastavení) Záhlaví sloupců se zobrazí v ovládacím prvku. False (Nepravda) Záhlaví sloupců se nezobrazí. Primary Sort (Primární řazení) Záhlaví poskytuje uživateli možnost primárního seřazení záznamů. Klepnutím na záhlaví se provede seřazení všech řádků, které vyhovují poslednímu dotazu, podle vybraného sloupce. • Přesun sloupců Sloupce lze v ovládacím prvku přesunovat a lze je umístit vedle jiných sloupců technikou klepnutí na záhlaví a tažení. - 541 - Silent Mode (Tichý režim) Zaškrtávací políčko Silent Mode se používá pro aktivaci tzv. tichého režimu. Tato vlastnost určuje, zda ovládací prvek je nebo není v tichém režimu. Když je označeno toto zaškrtávací políčko, nezobrazují se žádné chybové zprávy. Pro zobrazení chybových zpráv v tomto režimu je třeba volat metodu “GetLastError”. Vlastnost: SilentMode Účel: Vrací nebo nastavuje hodnotu, která určuje, zda ovládací prvek je v tichém režimu. Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.SilentMode [= Discrete] True (Pravda) Tichý režim je zapnutý. False (Nepravda) (Výchozí nastavení) Tichý režim je vypnutý. - 542 - Zaškrtávací políčko Row Selection (Výběr řádků) Zaškrtávací políčko Row Selection (Výběr řádků) se používá pro aktivaci nebo deaktivaci možnosti výběru záznamů v ovládacím prvku. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: RowSelection Účel: Vrací nebo nastavuje hodnotu, která určuje, zda bude povolen výběr řádků při běhu programu. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.RowSelection [= Discrete] True (Pravda) (Výchozí nastavení) Výběr řádků bude povolen. False (Nepravda) Výběr řádků nebude povolen. Poznámka: Pokud není výběr řádků povolen – tzn. že vlastnost je nastavena na hodnotu "False" (Nepravda) – nebude generována žádná událost citlivá na “Click” (Klepnutí) ani “Double Click” (Dvojité klepnutí). - 543 - Zaškrtávací políčko Resize Column (Změnit šířku sloupců) Zaškrtávací políčko Resize Column (Změnit šířku sloupců) se používá pro aktivaci nebo deaktivaci možnosti změny šířky sloupců ovládacího prvku. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: ColumnResize Účel: Vrací nebo nastavuje hodnotu, která určuje, zda lze změnit šířku sloupců při běhu programu. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.ColumnResize [= Discrete] - 544 - True (Pravda) (Výchozí nastavení) U sloupců lze změnit šířku při běhu programu. False (Nepravda) U sloupců nelze měnit jejich šířku při běhu programu. Zaškrtávací políčko Show Status Bar (Zobrazit stavový řádek) Zaškrtávací políčko Show Status Bar (Zobrazit stavový řádek) se používá pro aktivaci nebo deaktivaci zobrazení stavového řádku ve spodní části ovládacího prvku. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: ShowStatusBar Účel: Vrací nebo nastavuje hodnotu, která určuje, zda je zobrazen stavový řádek. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.ShowStatusBar [= Discrete] True (Pravda) (Výchozí nastavení) Stavový řádek je zobrazen. False (Nepravda) Stavový řádek není zobrazen. Stavový řádek Stavový řádek zobrazuje aktuální stav ovládacího prvku. Levý rámeček zobrazuje název serveru (vlastnost ServerName) a pravá strana rámečku zobrazuje stav spojení se serverem (vlastnost ConnectStatus). Střední rámeček zobrazuje počet záznamů (vlastnost RowCount), který je zobrazen z celkového počtu záznamů (vlastnost TotalRowcount) vyhovujích dotazu. - 545 - Zaškrtávací políčko Retrieve Buttons (Tlačítka listování) Zaškrtávací políčko Retrieve Buttons (Tlačítka listování v seznamu alarmů) se používá pro aktivaci nebo deaktivaci ovládacích tlačítek na pravé straně ovládacího prvku. Tato volba grafického uživatelského rozhraní koresponduje s vlastností: Vlastnost: ShowFetch Účel: Vrací nebo nastavuje hodnotu, která určuje, zda jsou zobrazena tlačítka listování v seznamu alarmů. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.ShowFetch [= Discrete] True (Pravda) (Výchozí nastavení) Tlačítka pro listování v seznamu alarmů jsou zobrazena. False (Nepravda) Tlačítka nejsou zobrazena. - 546 - Tlačítko Column Details (Podrobnosti sloupců) Dialogové okno Column Details (Podrobnosti sloupců) se vyvolává klepnutím na tlačítko Column Details (Podrobnosti sloupců) na kartě vlastností General (Obecné). Dialogové okno Column Details (Podrobnosti sloupců) se používá pro výběr sloupců, které mají být zobrazeny, pro specifikaci pořadí sloupců a pro zadání názvů a šířek sloupců. ¾ Chcete-li konfigurovat podrobnosti sloupců prohlížeče 1. Poklepejte na prohlížeč alarmů AlarmDBView ActiveX nebo na něj klepněte pravým tlačítkem myši a vyberte příkaz Properties (Vlastnosti). Zobrazí se dialogové okno AlarmDBViewCtrl Properties s aktivní kartou vlastností Control Name (Název ovládacího prvku). 2. Klepněte na kartu General (Obecné) a aktivujte tak kartu obecných vlastností General. 3. Klepněte na tlačítko Column Details (Podrobnosti sloupců). Zobrazí se dialog Column Details (Podrobnosti sloupců). 4. V dialogovém okně Column Details (Podrobnosti sloupců) zaškrtněte políčka u názvů sloupců Name (Název sloupce), které se mají zobrazovat v alarmovém objektu. Sloupce v dialogovém oknu Column Details (Podrobnosti sloupců) jsou Name (název), Width (šířka) a Original Name (původní název). Pole Original Name (Původní název) zobrazuje název sloupců před provedením změn. Původní názvy sloupců, které lze vybrat k zobrazení, jsou popsány dále. Poznámka: Musí být vybrán nejméně jeden sloupec. - 547 - Název sloupce Popis Time (Čas) Zobrazuje čas (příp. i datum) ve formátu nastaveném v kartě vlastností Time Format (Formát času). State (Stav) Zobrazuje stav alarmu. Name (Název) Zobrazuje název alarmu (proměnné). Group (Skupina) Zobrazuje název alarmové skupiny. Type (Typ) Zobrazuje typ alarmu. Value (Hodnota) Zobrazuje hodnotu proměnné při vzniku alarmu. Šířka sloupce by měla být dostatečně veliká, aby poskytla potřebnou úroveň přesnosti hodnoty. Limit Zobrazuje hodnotu alarmové meze dané proměnné. Šířka sloupce by měla být dostatečně veliká, aby poskytla potřebnou úroveň přesnosti hodnoty.. Priority (Priorita) Zobrazuje prioritu alarmu. Class (Třída) Zobrazuje třídu alarmu. Provider (Poskytovatel) Zobrazuje název alarmového poskytovatele. Operator (Operátor) Zobrazuje jméno operátora, který je spojen s daným alarmovým záznamem. Operator Full Name (Celé jméno operátora) Zobrazuje celé jméno operátora, který je spojen s daným alarmovým záznamem. Operator Domain (Doména operátora) Zobrazuje doménu operátora, který je spojen s daným alarmovým záznamem. Operator Node (Název uzlu operátora) Zobrazuje název uzlu (PC), který je spojen s daným alarmovým záznamem. Duration (Délka trvání) Zobrazuje délku trvání alarmu. User1 (Uživatelský atribut č.1) Zobrazuje číselnou hodnotu položky User Defined Number 1 (uživatelsky definovatelná hodnota č.1), která je spojena s daným alarmovým záznamem. User2 (Uživatelský atribut č.2) Zobrazuje číselnou hodnotu položky User Defined Number 2 (uživatelsky definovatelná hodnota č.2), která je spojena s daným alarmovým záznamem. - 548 - User3 (Uživatelský atribut č.3) Zobrazuje textovou hodnotu položky User Defined String (uživatelsky definovatelný text), která je spojena s daným alarmovým záznamem. Alarm Comment (Alarmový komentář) Zobrazuje komentář proměnné. Tyto komentáře byly zadány do pole Alarm Comment (Alarmový komentář) při definici alarmu dané proměnné v databázi proměnných. Pokud se používají také komentáře při potvrzování alarmů, zobrazí se v tomto sloupci u potvrzených alarmů komentář zadaný při potvrzení. Poznámka: Názvy sloupců jsou při změně režimu zobrazování (Display mode) znovu nastaveny na výchozí hodnoty. Proto je lepší nejdříve nastavit režim zobrazování (Display mode) a až poté změnit názvy sloupců. 5. Ke změně uspořádání sloupců (tzn. jejich pořadí) vyberte název sloupce a použijte tlačítka se šipkou nahoru a dolů. Sloupec, který je v dialogovém okně Column Details (Podrobnosti sloupců) nahoře, se v prohlížeči alarmů zobrazí zcela vlevo. 6. Pro změnu názvu a/nebo šířky sloupce poklepejte na název sloupce nebo vyberte název sloupce a klepněte na tlačítko Edit (Upravit). Zobrazí se dialogové okno Edit (Úpravy) pro daný sloupec. 7. Chcete-li, aby byl sloupec nadepsán jiným než výchozím názvem, do textového pole New Name (Nový název) zadejte nový název. 8. Do textového pole New Width (Nová šířka) zadejte šířku sloupce. Šířka sloupce se měří v bodech obrazu (pixelech) a může dosahovat hodnot 1 až 999 pixelů. Výchozí šířka sloupce je 100 pixelů. 9. V dialogu Edit (Úpravy) klepněte na tlačítko OK. Poznámka: K návratu k výchozím nastavením sloupců klepněte na tlačítko Reset to Default (Znovu nastavit na výchozí hodnoty). 10. V dialogu Column Details (Podrobnosti sloupců) klepněte na tlačítko OK. 11. Klepněte na tlačítko Apply (Použít). Můžete pokračovat konfigurací na další kartě vlastností nebo klepněte na OK a uzavřete tak konfiguraci vlastností. - 549 - Karta Color (Barvy) Karta Color (Barvy) se používá k nastavení barev pro různé alarmové záznamy a události. Vlastnosti Karta Color (Barvy) obsahuje jednotlivé barvy, které jsou k dispozici i jako vlastnosti ovládacího prvku. Tyto vlastnosti mohou být nastavovány i za běhu aplikace InTouch. K nastavení vlastností ve skriptu aplikace InTouch použijte syntaxi: #objekt.NazevVlastnosti = 1; nebo #objekt.NazevVlastnosti = tag1; kde objekt je název ovládacího prvku AlarmDBViewCtrl a tag1 je diskrétní proměnná. K nastavení vlastnosti AckRtnForeColor1 zapište například příkaz #AlarmDBView1.AckRtnForeColor1 = 1;. K načtení hodnoty vlastnosti ve skriptu aplikace InTouch použijte syntaxi: tag1 = #objekt.NazevVlastnosti; kde objekt je název ovládacího prvku Alarm DB View ActiveX a tag1 je diskrétní proměnná. K načtení vlastnosti AckRtnForeColor1, zapište například příkaz: tag1 = #AlarmDBView1.AckRtnForeColor1;. Aplikace InTouch akceptuje slova „True“ (Pravda) a „False“ (Nepravda) v uvozovkách jako hodnoty 1 a 0 (v uvedeném pořadí). Příkaz ve skriptu zapsaný například takto: #AlmDbViewCtrl17.FilterMenu = "False"; zruší “Filter Menu” (nabídku filtr) z kontextové nabídky vyvolávané klepnutím pravého tlačítka myši ovládacího prvku Alarm DB View Control. Seznam obsahuje následující vlastnosti: - 550 - AckOrAlarmDuration Vlastnost: AckOrAlarmDuration Účel: Sloupec Duration (Délka trvání alarmu) může zobrazovat délku trvání alarmu v nepotvrzeném stavu nebo celkovou délku trvání alarmu. Při hodnotě FALSE (0) se bude zobrazovat délka trvání alarmu v nepotvrzeném stavu a při hodnotě TRUE (1) celková délka trvání alarmu. Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.AckOrAlarmDuration [= integer] AlmRtnForeColor Vlastnost: AlmRtnForeColor Účel: Určuje barvu popředí (písma) alarmu navráceného do normálního stavu. Tato barva se použije pro záznamy se stavem ALM_RTN. Typ: Integer (Celé číslo) Výchozí nastavení: Modrá Syntaxe: Object.AckRtnForeColor1 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. - 551 - AlmRtnBackColor Vlastnost: AlmRtnBackColor Účel: Určuje barvu pozadí alarmu navráceného do normálního stavu. Tato barva se použije pro záznamy se stavem ALM_RTN. Typ: Integer (Celé číslo) Výchozí nastavení: Barva pozadí oken nastavená v operačním systému Windows. Syntaxe: Object.AckRtnForeColor1 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. ColorPriorityRange1 Vlastnost: ColorPriorityRange1 Účel: Nastavuje mez rozsahu priorit pro zobrazení barvy alarmů. Hodnota této vlastnosti musí být větší než jedna a menší než hodnota vlastnosti ColorPriorityRange2. Typ: Integer (Celé číslo) Výchozí nastavení: 250 Syntaxe: Object.ColorPriorityRange1 [= integer nebo priorita] - 552 - ColorPriorityRange2 Vlastnost: ColorPriorityRange2 Účel: Nastavuje mez rozsahu priorit pro zobrazení barvy alarmů. Hodnota této vlastnosti musí být větší než hodnota vlastnosti ColorPriorityRange1 a menší než hodnota vlastnosti ColorPriorityRange3. Typ: Integer (Celé číslo) Výchozí nastavení: 500 Syntaxe: Object.ColorPriorityRange2 [= integer nebo priorita] ColorPriorityRange3 Vlastnost: ColorPriorityRange3 Účel: Nastavuje mez rozsahu priorit pro zobrazení barvy alarmů. Hodnota této vlastnosti musí být větší než hodnota vlastnosti ColorPriorityRange2 a menší než 999. Typ: Integer (Celé číslo) Výchozí nastavení: 750 Syntaxe: Object.ColorPriorityRange3 [= integer nebo priorita] - 553 - EventForeColor Vlastnost: EventForeColor Účel: Určuje barvu popředí záznamu události. Tato barva se použije pro záznamy se stavem EVT_EVT. Typ: Integer (Celé číslo) Výchozí nastavení: Červená Syntaxe: Object.EventForeColor [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. EventBackColor Vlastnost: EventBackColor Účel: Určuje barvu pozadí záznamu události. Tato barva se použije pro záznamy se stavem EVT_EVT. Typ: Integer (Celé číslo) Výchozí nastavení: Barva pozadí oken nastavená v operačním systému Windows. Syntaxe: Object.EventBackColor [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. - 554 - FilterFavoritesFile Vlastnost: FilterFavoritesFile Účel: Textová vlastnost. Vrací / nastavuje název souboru s oblíbenými filtry. Tento soubor je využíván dialogovým oknem Filter Favorites (Oblíbené filtry) pro načtení/zápis oblíbených filtrů. Typ: Message (text) Výchozí nastavení: - Syntaxe: Object.FilterFavoritesFile [= Text] FilterMenu Vlastnost: FilterMenu Účel: Povoluje/zakazuje zobrazení příkazu „Filter“ v kontextové nabídce. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.FilterMenu [= Discrete] True (Pravda) (Výchozí nastavení) Položka “Filter” (Filtr) je zobrazena. False (Nepravda) Položka “Filter” (Filtr) není zobrazena. - 555 - FilterName Vlastnost: FilterName Účel: Vrací název momentálně použitého filtru (pokud je nějaký použit). Typ: String (Text) - pouze pro čtení Výchozí nastavení: - Syntaxe: Object.FilterName [= String] Konfigurace barev alarmového prohlížeče Alarm DB View ActiveX ¾ Chcete-li konfigurovat barvy prohlížeče alarmů 1. Poklepejte na prohlížeč alarmů Alarm DB View ActiveX nebo na něj klepněte pravým tlačítkem myši a vyberte příkaz Properties (Vlastnosti). Zobrazí se dialogové okno AlarmDBViewCtrlX Properties s aktivní kartou vlastností Control Name (Název ovládacího prvku). 2. Klepněte na kartu Color (Barvy) a aktivujte tak kartu vlastností barev Color. - 556 - 3. Klepněte na jednotlivá barevná pole a otevřete tak barevnou paletu. Klepněte na barvu v paletě, kterou chcete použít pro následující položky: Alarm Return Forecolor (Barva popředí pro zaniklé alarmy) Nastavuje barvu popředí (textu) pro alarmy, které se vrátily do normálního stavu. Alarm Return Backcolor (Barva pozadí pro zaniklé alarmy) Nastavuje barvu pozadí pro alarmy, které se vrátily do normálního stavu. Event Forecolor (Barva popředí pro události) Nastavuje barvu popředí pro události. Event Backcolor (Barva pozadí pro události) Nastavuje barvu pozadí pro události. 4. Do polí Alarm Priority (Priorita alarmu) zapište mezní hodnoty pro zobrazení barev alarmů. Můžete přiřadit mezní hodnoty tak, že alarmy se budou zobrazovat s různou barvou na základě jejich priority. Přednastavené hodnoty minimální a maximální priority alarmů jsou 1, resp. 999. Priority pro barvy Rozsah 1 až ColorPriorityRange1 Alarmy s prioritou v rozsahu 1 až mezní hodnota v prvním poli alarmové priority (Alarm Priority). Výchozí hodnota pro první pole je 250. ColorPriorityRange1 až ColorPriorityRange2 Alarmy s prioritou v rozsahu mezi mezními hodnotami v prvním a druhém poli alarmové priority (Alarm Priority). Výchozí hodnoty jsou 250 (včetně) pro první pole a 500 pro druhé pole. ColorPriorityRange2 až ColorPriorityRange3 Alarmy s prioritou v rozsahu mezi mezními hodnotami v druhém a třetím poli alarmové priority (Alarm Priority). Výchozí hodnoty jsou 500 (včetně) pro druhé pole a 750 pro třetí pole. ColorPriorityRange3 až 999 Alarmy s prioritou v rozsahu mezi mezní hodnotou v třetím poli alarmové priority (Alarm Priority) a hodnotou 999. Výchozí hodnota pro třetí pole je 750 (včetně). Maximální hodnota je 999. 5. Nastavte barvu pro každý rozsah priorit pro Unack Alm Forecolor (Barva popředí (textu) nepotvrzených alarmů). Klepněte na jednotlivá barevná pole a otevřete tak barevnou paletu. V paletě klepněte na barvu, kterou chcete použít. 6. Nastavte barvu pro každý rozsah priorit pro Unack Alm Backcolor (Barva pozadí nepotvrzených alarmů). 7. Nastavte barvu pro každý rozsah priorit pro Ack Alm Forecolor (Barva popředí (textu) potvrzených alarmů). 8. Nastavte barvu pro každý rozsah priorit pro Unack Alm Backcolor (Barva pozadí potvrzených alarmů). - 557 - 9. Klepněte na tlačítko Apply (Použít). Můžete pokračovat konfigurací na další kartě vlastností nebo klepněte na OK a uzavřete tak konfiguraci vlastností. UnAckAlmForeColorRange1 Vlastnost: UnAckAlmForeColorRange1 Účel: Vrací nebo nastavuje barvu popředí (textu) nepotvrzených alarmů. Tato barva se použije pro záznamy se stavem UNACK_ALM s prioritou v rozsahu 1 až hodnota vlastnosti ColorPriorityRange1. Typ: Integer (Celé číslo) Výchozí nastavení: Červená Syntaxe: Object.UnAckAlmForeColorRange1 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. UnAckAlmForeColorRange2 Vlastnost: UnAckAlmForeColorRange2 Účel: Vrací nebo nastavuje barvu popředí (textu) nepotvrzených alarmů. Tato barva se použije pro záznamy se stavem UNACK_ALM s prioritou v rozsahu hodnot vlastností ColorPriorityRange1 až ColorPriorityRange2. Typ: Integer (Celé číslo) Výchozí nastavení: Červená Syntaxe: Object.UnAckAlmForeColorRange2 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. - 558 - UnAckAlmForeColorRange3 Vlastnost: UnAckAlmForeColorRange3 Účel: Vrací nebo nastavuje barvu popředí (textu) nepotvrzených alarmů. Tato barva se použije pro záznamy se stavem UNACK_ALM s prioritou v rozsahu hodnot vlastností ColorPriorityRange2 až ColorPriorityRange3. Typ: Integer (Celé číslo) Výchozí nastavení: Červená Syntaxe: Object.UnAckAlmForeColor3 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. UnAckAlmForeColorRange4 Vlastnost: UnAckAlmForeColorRange4 Účel: Vrací nebo nastavuje barvu popředí (textu) nepotvrzených alarmů. Tato barva se použije pro záznamy se stavem UNACK_ALM s prioritou v rozsahu hodnoty vlastnosti ColorPriorityRange3 až 999. Typ: Integer (Celé číslo) Výchozí nastavení: Červená Syntaxe: Object.UnAckAlmForeColorRange4 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. - 559 - UnAckAlmBackColorRange1 Vlastnost: UnAckAlmBackColorRange1 Účel: Vrací nebo nastavuje barvu pozadí nepotvrzených alarmů. Tato barva se použije pro záznamy se stavem UNACK_ALM s prioritou v rozsahu 1 až hodnota vlastnosti ColorPriorityRange1. Typ: Integer (Celé číslo) Výchozí nastavení: Barva pozadí oken nastavená v operačním systému Windows. Syntaxe: Object.UnAckAlmBackColorRange1 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. UnAckAlmBackColorRange2 Vlastnost: UnAckAlmBackColorRange2 Účel: Vrací nebo nastavuje barvu pozadí nepotvrzených alarmů. Tato barva se použije pro záznamy se stavem UNACK_ALM s prioritou v rozsahu hodnot vlastností ColorPriorityRange1 až ColorPriorityRange2. Typ: Integer (Celé číslo) Výchozí nastavení: Barva pozadí oken nastavená v operačním systému Windows. Syntaxe: Object.UnAckAlmBackColorRange2 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. - 560 - UnAckAlmBackColorRange3 Vlastnost: UnAckAlmBackColorRange3 Účel: Vrací nebo nastavuje barvu pozadí nepotvrzených alarmů. Tato barva se použije pro záznamy se stavem UNACK_ALM s prioritou v rozsahu hodnot vlastností ColorPriorityRange2 až ColorPriorityRange3.. Typ: Integer (Celé číslo) Výchozí nastavení: Barva pozadí oken nastavená v operačním systému Windows. Syntaxe: Object.UnAckAlmBackColorRange3 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. UnAckAlmBackColorRange4 Vlastnost: UnAckAlmBackColorRange4 Účel: Vrací nebo nastavuje barvu pozadí nepotvrzených alarmů. Tato barva se použije pro záznamy se stavem UNACK_ALM s prioritou v rozsahu hodnoty vlastnosti ColorPriorityRange3 až 999. Typ: Integer (Celé číslo) Výchozí nastavení: Barva pozadí oken nastavená v operačním systému Windows. Syntaxe: Object.UnAckAlmBackColorRange4 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. - 561 - AckAlmBackColorRange1 Vlastnost: AckAlmBackColorRange1 Účel: Vrací nebo nastavuje barvu pozadí potvrzených alarmů. Tato barva se použije pro záznamy se stavem ACK_ALM s prioritou v rozsahu 1 až hodnota vlastnosti ColorPriorityRange1. Typ: Integer (Celé číslo) Výchozí nastavení: Barva pozadí oken nastavená v operačním systému Windows. Syntaxe: Object.AckAlmBackColorRange1 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. AckAlmBackColorRange2 Vlastnost: AckAlmBackColorRange2 Účel: Vrací nebo nastavuje barvu pozadí potvrzených alarmů. Tato barva se použije pro záznamy se stavem ACK_ALM s prioritou v rozsahu hodnot vlastností ColorPriorityRange1 až ColorPriorityRange2. Typ: Integer (Celé číslo) Výchozí nastavení: Barva pozadí oken nastavená v operačním systému Windows. Syntaxe: Object.AckAlmBackColorRange2 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. - 562 - AckAlmBackColorRange3 Vlastnost: AckAlmBackColorRange3 Účel: Vrací nebo nastavuje barvu pozadí potvrzených alarmů. Tato barva se použije pro záznamy se stavem ACK_ALM s prioritou v rozsahu hodnot vlastností ColorPriorityRange2 až ColorPriorityRange3. Typ: Integer (Celé číslo) Výchozí nastavení: Barva pozadí oken nastavená v operačním systému Windows. Syntaxe: Object.AckAlmBackColorRange3 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. AckAlmBackColorRange4 Vlastnost: AckAlmBackColorRange4 Účel: Vrací nebo nastavuje barvu pozadí potvrzených alarmů. Tato barva se použije pro záznamy se stavem ACK_ALM s prioritou v rozsahu hodnoty vlastnosti ColorPriorityRange3 až 999. Typ: Integer (Celé číslo) Výchozí nastavení: Barva pozadí oken nastavená v operačním systému Windows. Syntaxe: Object.AckAlmBackColorRange4 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. - 563 - AckAlmForeColorRange1 Vlastnost: AckAlmForeColorRange1 Účel: Vrací nebo nastavuje barvu popředí (textu) potvrzených alarmů. Tato barva se použije pro záznamy se stavem ACK_ALM s prioritou v rozsahu 1 až hodnota vlastnosti ColorPriorityRange1. Typ: Integer (Celé číslo) Výchozí nastavení: Modrá Syntaxe: Object.AckAlmForeColorRange1 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. AckAlmForeColorRange2 Vlastnost: AckAlmForeColor2 Účel: Vrací nebo nastavuje barvu popředí (textu) potvrzených alarmů. Tato barva se použije pro záznamy se stavem ACK_ALM s prioritou v rozsahu hodnot vlastností ColorPriorityRange1 až ColorPriorityRange2. Typ: Integer (Celé číslo) Výchozí nastavení: Modrá Syntaxe: Object.AckAlmForeColorRange2 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. - 564 - AckAlmForeColorRange3 Vlastnost: AckAlmForeColorRange3 Účel: Vrací nebo nastavuje barvu popředí (textu) potvrzených alarmů. Tato barva se použije pro záznamy se stavem ACK_ALM s prioritou v rozsahu hodnot vlastností ColorPriorityRange2 až ColorPriorityRange3. Typ: Integer (Celé číslo) Výchozí nastavení: Modrá Syntaxe: Object.AckAlmForeColorRange3 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. AckAlmForeColorRange4 Vlastnost: AckAlmForeColorRange4 Účel: Vrací nebo nastavuje barvu popředí (textu) potvrzených alarmů. Tato barva se použije pro záznamy se stavem ACK_ALM s prioritou v rozsahu hodnoty vlastnosti ColorPriorityRange3 až 999. Typ: Integer (Celé číslo) Výchozí nastavení: Modrá Syntaxe: Object.AckAlmForeColorRange4 [= barva] barva Hodnota nebo konstanta, která určuje barvu specifikované vlastnosti objektu. - 565 - Karta Database (Databáze) Tato karta vlastností se používá pro nastavení parametrů připojení k databázi, např. Server name (Jméno serveru) a další související vlastnosti. Poznámka: Pro přístup na alarmovou databázi je vhodné používat uživatelský účet, který má na databázi přístup a ne účet systémového administrátora (správce). Server Name (Jméno serveru) Rozbalovací seznam Server Name (Jméno serveru) obsahuje seznam jmen SQL Serverů a MSDE dostupných v síti. Seznam je možné editovat. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: ServerName Účel: Určuje název serveru, na kterém jsou uložena alarmová data. Ovládací prvek se na tento server bude spojovat za účelem získání alarmových dat. Typ: Message (text) Syntaxe: Object.ServerName [= text] - 566 - User (Uživatelské jméno) Pole User (Uživatelské jméno) slouží k zadání uživatelského jména pro přihlášení na databázový server. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: UserID Účel: Určuje jméno uživatele pro přihlášení na databázový server (SQL Server nebo MSDE) za účelem získání alarmových dat. Typ: Message (text) Syntaxe: Object.UserID [= text] text Textový výraz, který obsahuje uživatelské jméno. Password (Heslo) Pole Password (Heslo) slouží k zadání hesla uživatele pro připojení na databázový server. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: Password Účel: Určuje heslo používané pro připojení k SQL Serveru za účelem získání alarmových dat. Typ: Message (text) Syntaxe: Object.Password [= text] text Textový výraz, který obsahuje heslo. - 567 - Database name (Název databáze) Pomocí pole Database name (Název databáze) můžete nastavit do jaké databáze se má tento prvek připojit. Vlastnost: Database name Účel: Určuje do jaké databáze se má prvek připojit. Typ: Message (text) Syntaxe: Object.DatabaseName [= text] text Textový výraz, který obsahuje název databáze. Test Connection (Otestovat spojení) Tlačítko Test Connection (Otestovat spojení) se používá pro otestování spojení s databází WWALMDB vytvořené na serveru SQL, které je určeno jménem serveru, uživatelským jménem a heslem pro připojení. - 568 - Zaškrtávací políčko Auto Connect (Automatické navázání spojení) Zaškrtávací políčko Auto Connect (Automatické navázání spojení) je implicitně nedostupné. Jakmile jsou vyplněna pole Jméno serveru, Uživatelské jméno a Heslo, toto zaškrtávací políčko se zpřístupní. Volba aktivuje nebo zakazuje automatické navázání spojení ovládacího prvku s databází serveru za běhu aplikace InTouch. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: AutoConnect Účel: Určuje, zda se ovládací prvek automaticky připojí k databázi alarmů, jakmile se za běhu aplikace otevře okno s ovládacím prvkem Alarm DB View ActiveX. Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.AutoConnect [= Discrete] Discrete (Diskrétní) Diskrétní výraz specifikující, zda ovládací prvek se automaticky připojí k databázi alarmů . True (Pravda) Dojde k automatickému připojení k databázi. False (Nepravda) (Výchozí nastavení) Nedojde k automatickému připojení k databázi. Poznámka: Jestliže je tato vlastnost nastavena při vývoji aplikace na hodnotu "FALSE" (Nepravda), potom se ovládací prvek po otevření okna, ve kterém je umístěn, automaticky nepřipojí k databázi alarmů. Pro navázání spojení s databázi alarmů je třeba použít metodu “Connect”. - 569 - Karta Selection (Výběr) Karta Selection (Výběr) obsahuje údaje, které specifikují dotaz na alarmy na základě časových údajů. Nastavuje také maximální počet záznamů pro zobrazení a způsob zobrazování délky trvání alarmu. - 570 - Zaškrtávací políčko Use Specific Time (Použít určitý časový interval) Toto zaškrtávací políčko určuje, zda časový interval bude specifikován zadáním počátečního a konečného času, nebo zda se tyto časy budou vypočítávat na základě vlastnosti Duration (Trvání). Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: SpecificTime Účel: Určuje, zda ovládací prvek použije vlastnosti “start time” (počáteční čas) a “end time” (konečný čas) nebo bude vypočítávat počáteční a koncový čas na základě hodnoty vlastnosti Duration (Trvání). Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.SpecificTime [= Discrete] True (Pravda) Použijí se vlastnosti “Start time” (Počáteční čas) a “End time” (Konečný čas). False (Nepravda) (Výchozí nastavení) “Start time” (Počáteční čas) a “End time” (Konečný čas) se vypočítávají na základě vlastnosti “Duration” (Trvání). - 571 - Duration (Trvání) Jakmile není označeno zaškrtávací políčko Use Specific Time (Použít určitý časový interval), zpřístupní se seznam Duration (Trvání). Tento seznam obsahuje předdefinované časové intervaly vztahující se k aktuálnímu času. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: Duration Účel: Určuje časový interval používaný ovládacím prvek pro nastavení “Start Time” (Počátečního času) a “End Time” (Konečného času). Typ: Message (text) Výchozí nastavení: "Last Hour" (Poslední hodina) Syntaxe: Object.Duration [= text] text Textový výraz, který určuje délku trvání. Poznámka: Tato vlastnost musí nabývat jedné z následujících hodnot: Last Minute (Poslední minuta) Last 5 Minutes (Posledních 5 minut) Last 15 Minutes (Posledních 15 minut) Last Half Hour (Poslední půlhodina) Last Hour (Poslední hodina) Last 2 Hours (Poslední 2 hodiny) Last 4 Hours (Poslední 4 hodiny) Last 8 Hours (Poslední 8 hodiny) Last 12 Hours (Posledních 12 hodin) Last Day (Poslední den) Last 2 Days (Poslední 2 dny) Last 3 Days (Poslední 3 dny) Last Week (Poslední týden) Last 2 Weeks (Poslední 2 týdny) Last 30 days (Posledních 30 dnů) Last 90 days (Posledních 90 dnů) - 572 - Start Time (Počáteční čas) Tato volba je přístupná pouze tehdy, pokud je označeno zaškrtávací políčko Use Specific Time (Použít určitý časový interval). Používá se pro nastavení počátečního času časového intervalu, v jehož rámci se mají vyhledávat záznamy o alarmech. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: StartTime Účel: Určuje počáteční čas časového intervalu pro výběr alarmových záznamů. Typ: Message (text) Syntaxe: Object.StartTime [= text] text Textový výraz, který vyhodnocuje počáteční čas. Poznámka: Vlastnost pracuje s formátem MM/DD/RRRR HH:MM:SS. Tento formát datumu a času se používá jak při nastavení hodnoty času, tak i při čtení hodnoty. Tato vlastnost je schopna zpracovat datum v jakémkoli časovém pásmu od půlnoci 1. ledna 1970 do 18. ledna 2038, 19:14:07. End Time (Konečný čas) Tato volba je přístupná pouze tehdy, pokud je označeno zaškrtávací políčko Use Specific Time (Použít určitý časový interval). Používá se pro nastavení konečného času časového intervalu, v jehož rámci se mají vyhledávat záznamy o alarmech. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: EndTime Účel: Určuje konečný čas časového intervalu pro výběr alarmových záznamů. Typ: Message (text) Syntaxe: Object.EndTime [= text] text Textový výraz, který vyhodnocuje počáteční čas. Poznámka: Vlastnost pracuje s formátem MM/DD/RRRR HH:MM:SS. Tento formát datumu a času se používá jak při nastavení hodnoty času, tak i při čtení hodnoty. Tato vlastnost je schopna zpracovat datum v jakémkoli časovém pásmu od půlnoci 1. ledna 1970 do 18. ledna 2038, 19:14:07. - 573 - Maximum Records (Maximální počet záznamů) Pole Maximum Records (Maximální počet záznamů) určuje maximální počet záznamů, které lze zároveň zobrazit v jedné instanci ovládacího prvku. Tato volba grafického uživatelského rozhraní koresponduje s následující vlastností objektu: Vlastnost: MaxRecords Účel: Nastavuje hodnotu, která specifikuje maximální počet záznamů, které se mají zobrazit v alarmovém objektu. Typ: Integer (Celé číslo) Výchozí nastavení: 100 Syntaxe: Object.MaxRecords [=integer] Integer (Celé číslo) Celočíselný výraz specifikující maximální počet záznamů, které se mají zobrazit. Poznámka: Maximální počet záznamů může být v rozsahu od 1 do 1000. Z důvodu optimalizace výkonu systému udržujte tuto hodnotu co možná nejmenší. Duration Column (Sloupec Délka trvání) V části Duration Column (Sloupec Délka trvání) se specifikuje, jaká délka trvání alarmu (s přesností milisekund) se zobrazí ve sloupci Duration (Délka trvání). • Zvolte UnAck Duration (Délka trvání alarmů v nepotvrzeném stavu) pokud chcete zobrazovat čas, který uplynul od vzniku alarmu až po jeho potvrzení (pokud byl alarm potvrzen). • Zvolte Alarm Duration (Celková délka trvání alarmů) pokud chcete zobrazovat čas, který uplynul od vzniku alarmu až po jeho zánik (návrat do normálního stavu). Query time zone (Časové pásmo dotazu) Časové pásmo dotazu můžeme nastavit jako Original Time a UTC. Origin time (Lokální čas) je lokální čas v operátorově časovém pásmu. Čas UTC je tkzv. Greenwitch Mean Time, který známe také jako Koordinovaný univerzální čas nebo Zulu. V případě, že zatrhneme položku Use Specific Time (Použít specifikovaný čas), můžeme vybrat mezi těmito dvěmi pásmy časového dotazu. V případě, že nezatrhneme položku Use Specific Time, data se automaticky zobrazí použitím dotazu časového pásma UTC. K tomu aby jste předešli problému s posunem času doporučujeme pokaždé použít UTC čas. V případě, že použijete lokální čas (Origin Time) a nastane přechod letního na zimní čas, budou v systému chybět alarmové záznamy. V případě, že použijete více počítačů s různým nastavením časových zón, a tyto počítače logují data do stejné alarmové databáze, každý záznam bude doplněn o časovou značku ve - 574 - formátu UTC zároveň také informaci o posunu časového pásma popřípadě informaci o letním čase potřebnou pro následné přepočítání času. Ve výsledku každý záznam v databázi má dvě časové značky. UTC a Origin time(lokální čas) počítače ze kterého byl tento údaj nalogován.V tabulkách je UTC čas definová jako tkzv Transition Time (Přenosový čas) a Origin time (Lokální čas) definován jako EventStamp (Značka události). Karta Time/Sort (Čas / Třídění) ¾ Chcete-li konfigurovat formát času ovládacího prvku Alarm DB View ActiveX 1. Poklepejte na prohlížeč alarmů Alarm DB View ActiveX nebo na něj klepněte pravým tlačítkem myši a vyberte příkaz Properties (Vlastnosti). Zobrazí se dialogové okno AlarmDBViewCtrlX Properties s aktivní kartou vlastností Control Name (Název ovládacího prvku). 2. Klepněte na kartu Time/Sort (Čas/Třídění) a aktivujte tak kartu nastavení formátu času Time Format. Projděte si možnosti nastavení formátu času a vyberte požadovaný formát nebo si nakonfigurujte vlastní formátu času. Formátu času se skládá ze znaků oddělených symbolem %. Znaky formátu času jsou vysvětleny v následující tabulce: Znak formátu času Popis d datum o dvou číslicích – 09 b zkratka měsíce o 3 písmenech - Srp Y rok čtyřmi číslicemi – 2002 m měsíc dvěma číslicemi – 08 - 575 - / oddělovač datumu - např. 08/09 y rok dvěma číslicemi – 03 #x celý datum a den – Pátek, 09 srpna 2002 B celý název měsíce – srpen - oddělovač datumu - např. 08-09 . oddělovač datumu - např. 08.09 , oddělovač datumu - např. Srp 09, 2002 H hodiny ve 24-hodinovém formátu - 16:00 : oddělovač času - např. 4:41 M minuty 00:41 p odp., dop. S sekundy – 16:41:07 s zlomky sekund – 16:41:07.390 I hodiny ve 12-hodinovém formátu, používá se v kombinaci se znakem "p" pro určení dop./odp.– 04:41 odp. Některé příklady formátu času pro 9.srpna 2002 jsou uvedeny dále: Formát času Zobrazeno %d %b 09 Srp %m/%d/%Y 08/09/2002 %#x Pátek, 09 srpna 2002 %Y-%m-%d 2002-08-09 %m/%d/%Y %H:%M %p 08/09/2002 16:56 odp. %m/%d/%Y %H:%M:%s %p 08/09/2002 16:56:38.07 odp. %I:%M %p 04:56 odp. Poznámka: Pokud je v operačním systému nastaveno české nebo slovenské národní prostředí, mohou se u některých položek (např. ’b’ , ’#x’) vyskytnout drobné odlišnosti. 3. Klepněte na tlačítko Apply (Použít). Můžete pokračovat konfigurací na další kartě vlastností nebo klepněte na OK a uzavřete tak konfiguraci vlastností. - 576 - Karta Query Filter (Filtr dotazů) Karta Query Filter (Filtr dotazů) umožňuje definovat, jaké záznamy budou výsledkem dotazu a to jednoduchým zvolením příslušných sloupců do filtru. Například můžete zvolit filtr na základě datumu a času záznamů nebo na základě stavu alarmů. Některé sloupce můžete zvolit i vícekrát a tím omezit nebo rozšířit výsledek dotazu. Nastavení filtru dotazu Seznam všech sloupců, podle kterých lze filtrovat, je uveden v levé části. Seznam sloupců, které se používají ve filtru, je uveden v pravé části. ¾ Chcete-li nastavit filtr dotazu • V levé části poklepejte na příslušný sloupec nebo ho vyberte a klepněte na tlačítko Add, čímž se přesune do pravé části, kde se konfiguruje vlastní filtr. - 577 - O konfiguraci filtrů Sekce konfigurace filtrů (pravá část dialogového okna) obsahuje seznam sloupců, které jsou součásti dotazu na záznamy v alarmové databázi. Pokud je ve filtru více než jeden sloupec, sloupce lze kombinovat pomocí logických operátorů "And" (A) nebo "Or" (Nebo). Pokud chcete vrátit záznamy splňující požadavky všech použitých sloupců, zvolte operátor "And" (A). Pokud chcete vrátit záznamy splňující požadavky jakéhokoliv použitého sloupce, zvolte operátor "Or" (Nebo). Ve výchozím nastavení je pro více sloupců vždy použit operátor "And" (A). Příslušné sloupce musí být u každého operátoru seskupeny dohromady. Pro každý sloupec ve filtru lze vytvořit pouze jednu filtrovací podmínku. Pokud je potřeba nastavit více podmínek pro jeden sloupec, musí se do filtru přidat tento sloupec znovu a zadat do něj novou podmínku. Jestliže je potřeba nějaký sloupec z filtru odebrat, vyberte takový sloupec a poté klepněte na tlačítko Delete (Odebrat). Sloupce alarmů Sloupce alarmů v levé části karty Query Filters (Filtr dotazů) jsou popsány v následující tabulce: Název sloupce Popis State (Stav) Filtruje dotaz podle stavu alarmů. Zvolte požadovaný stav alarmů z rozbalovací nabídky. Name (Název) Filtruje dotaz podle názvu alarmů (proměnné). Alarm Comment (Alarmový komentář) Filtruje dotaz podle alarmového komentáře proměnné. Group (Skupina) Filtruje dotaz podle názvu alarmové skupiny. Type (Typ) Filtruje dotaz podle typu alarmů. - 578 - ¾ Value (Hodnota) Filtruje dotaz podle hodnoty, při které vznikl alarm. Hodnoty ve sloupci Value (Hodnota) jsou zobrazeny jako alfanumerické hodnoty. Porovnání těchto hodnot je tedy prováděno jako porovnání textů. Limit Filtruje dotaz podle alarmové meze. Hodnoty ve sloupci Limit jsou zobrazeny jako alfanumerické hodnoty. Porovnání těchto hodnot je tedy prováděno jako porovnání textů. Priority (Priorita) Filtruje dotaz podle alarmové priority. Class (Třída) Filtruje dotaz podle třídy alarmů. Provider (Poskytovatel) Filtruje dotaz podle alarmového poskytovatele. Operator (Operátor) Filtruje dotaz podle jména operátora. Operator Full Name (Celé jméno operátora) Filtruje dotaz podle celého jména operátora. Operator Domain (Doména operátora) Filtruje dotaz podle domény operátora. Duration (Délka trvání) Filtruje dotaz podle délky trvání alarmu. User1 (Uživatelský atribut č.1) Filtruje dotaz podle uživatelsky definovatelné hodnoty č.1. User2 (Uživatelský atribut č.2) Filtruje dotaz podle uživatelsky definovatelné hodnoty č.2. User3 (Uživatelský atribut č.3) Filtruje dotaz podle uživatelsky definovatelné hodnoty č.3. Chcete-li definovat filtr pro sloupec 1. V pravé části poklepejte na příslušný sloupec nebo ho vyberte pravým tlačítkem myši a vyberte z kontextové nabídky příkaz Edit Filter (Editovat filtr). Otevře se dialogové okno Define Filter (Definice filtru). - 579 - 2. 3. Klepněte v rozbalovací nabídce Operator (operátor) na šipku a vyberte požadovaný operátor. Seznam dostupných operátorů obsahuje: = je rovno != není rovno <= menší nebo rovno než >= větší nebo rovno než < menší než > větší než Like obsahuje text (řetězec) Not Like neobsahuje text (řetězec) Zadejte hodnotu do pole Value (Hodnota) a klepněte na OK. Poznámka: Pole Value (Hodnota) nebude akceptovat data, která nemohou být zpracována v dotazu. Jestliže jsou použity operátory "Like" a "Not Like" v alfanumerických sloupcích, pole Value (Hodnota) akceptuje následující zástupné znaky SQL serveru: % - jakýkoliv text jakékoliv délky. _ - jakýkoliv jeden znak. [ ] - jakýkoliv jeden znak patřící do specifikovaného rozsahu ([a-f]) nebo specifikovaných znaků ([abcdef]). [^ ] - jakýkoliv jeden znak nepatřící do specifikovaného rozsahu ([^a-f]) nebo specifikovaných znaků ([^abcdef]). Všechny sloupce s výjimkou sloupců Duration (Délka trvání), User1 (Uživatelský atribut č.1), User2 (Uživatelský atribut č.1), State (Stav) a Priority (Priorita) akceptují v poli Value (Hodnota) alfanumerické znaky. Pro sloupec Priority (Priorita) akceptuje pole Value (Hodnota) pouze celočíselné hodnoty od 1 do 999. Maximální hodnota pro sloupec Duration (Délka trvání) je 99999 pro položku Days (dny) a 999 pro položku Milliseconds (milisekundy). Záporné hodnoty nejsou akceptovány. Sloupce User1 a User2 (Uživatelský atribut č.1 a 2) akceptují pouze čísla (záporná, kladná i desetinná). Hodnoty pro sloupec State (Stav) Jestliže přidáte sloupec State (Stav) do vašeho filtru, v dialogovém okně Define Filter (Definice filtrů) můžete přiřadit hodnoty z rozbalovacího menu Value (Hodnota). Tyto hodnoty jsou popsány v následující tabulce: Hodnota Popis ACK Dotaz na všechna systémová potvrzení. ACK_ALM Dotaz na všechny potvrzené alarmy. UNACK_ALM Dotaz na všechny nepotvrzené alarmy. ACK_RTN Dotaz na všechny návraty potvrzených alarmů do normálního stavu. - 580 - UNACK_RTN Dotaz na všechny návraty nepotvrzených alarmů do normálního stavu All UNACK Records Dotaz na všechny nepotvrzené záznamy. All ACK Records Dotaz na všechny potvrzené záznamy. All ALM Records Dotaz na všechny alarmové záznamy. All RTN Records Dotaz na všechny návraty alarmů do normálního stavu. - 581 - ¾ Chcete-li seskupit sloupce 1. Klepněte pravým tlačítkem myši na sloupec, který chcete seskupit a vyberte z kontextové nabídky příkaz Group (Seskupit). 2. Uchopte a přetáhněte sloupec k jiném sloupci. Operátory "And" (A) a "Or" (Nebo) jsou rodičovskými uzly. Sloupce vybrané pod každým rodičovským uzlem jsou potomci. Rodičovský uzel nelze uchopit a přetáhnout do potomka. Ve výchozím nastavení jsou sloupce seskupeny pod operátor "And" (A). Chcete-li ho změnit na operátor "Or" (Nebo), klepněte pravým tlačítkem myši na operátor a vyberte z kontextové nabídky příslušný operátor. Poznámka: Filtr nadefinovaný při vývoji aplikace se za běhu aplikace zobrazí v dialogovém okně Filter Favorites (Oblíbené filtry) jako tzv. Default Filter (Výchozí filtr). Pokud v kartě Query Filter (Filtr dotazu) nebyl žádný filtr definován, potom Default Filter (Výchozí filtr) bude za běhu aplikace dotazovat všechny záznamy. O kontextové nabídce V pravé části karty Query Filter (Filtr dotazu) je k dispozici kontextová nabídka. Klepnutím pravým tlačítkem myši na sloupec v pravé části karty Query Filter (Filtr dotazu) vyvoláte kontextovou nabídku. Volby v nabídce jsou následující: Volba kontextové nabídky Funkčnost And (A) Změní operátor "Or" (Nebo) na "And" (A). Tato volba je nedostupná pro všechny položky s výjimkou operátoru "Or" (Nebo). Or (Nebo) Změní operátor "And"(A) na "Or" (Nebo). Tato volba je nedostupná pro všechny položky s výjimkou operátoru "And" (A). Group (Seskupit) Vytvoří ikonu pro přesun položky a spustí proces přesunu. - 582 - Edit Filter (Editovat filtr) Otevře dialogové okno Define Filter (Definice filtru). Cut (Vyjmout)) Vyjme vybraný filtr. Copy (Kopírovat) Zkopíruje vybraný filtr. Paste (Vložit) Vloží vyjmutý nebo zkopírovaný filtr. Delete (Odebrat) Odstraní vybraný filtr. Kopírování nebo přesun filtrů dotazu Jestliže máte více než jednu instanci ovládacího prvku Alarm DB View a chcete použít stejné filtry pro více instancí, můžete kopírovat (nebo vyjmout) nadefinované filtry z jedné instance ovládacího prvku Alarm DB View a vložit je do jiné. ¾ Chcete-li zkopírovat filtry z jedné instance ovládacího prvku Alarm DB View do druhé 1. Nadefinujte požadované filtry v první instanci ovládacího prvku Alarm DB View. 2. Klepněte pravým tlačítkem myši na filtr(y) a vyberte z kontextové nabídky příkaz Copy (Kopírovat), v případě přesunu příkaz Cut (Vyjmout). 3. Klepněte na OK nebo Cancel (Storno) pro zavření první instance ovládacího prvku Alarm DB View. 4. Otevřete další instanci ovládacího prvku Alarm DB View a klepněte na kartu Query Filter (Filtr dotazu). 5. Umístěte šipku do pravé části, klepněte pravým tlačítkem myši na vybraný filtr a vyberte z kontextové nabídky příkaz Paste (Vložit). Poznámka: Aby byla dostupná kontextová nabídka, musí být vytvořen v pravé části alespoň jeden filtr. Načítání Query Filter Favorites (Oblíbené filtry dotazu) ¾ Chcete-li využívat oblíbené filtry dotazu 1. Na kartě Query Filter (Filtr dotazu) zadejte do pole Filter Favorites Name (Název souboru s oblíbenými filtry) cestu a název souboru nebo klepněte na tlačítko pro vyhledání souboru. 2. Jestliže použijete tlačítko pro vyhledání souboru, najděte a označte příslušný soubor a klepněte na Open (Otevřít). 3. Klepněte na tlačítko Apply (Použít). - 583 - Karta Properties (Vlastnosti) Karta Properties slouží k přiřazení názvů proměnných různým vlastnostem dostupným pro tento ovládací prvek. Obecné vlastnosti RowCount Vlastnost: RowCount Účel: Vrací počet záznamů aktuálně zobrazených v ovládacím prvku. Tato vlastnost je určena POUZE PRO ČTENÍ. Typ: Integer (Celé číslo) Syntaxe: Object.RowCount Příklad: tagname = #AlmDbView1.RowCount; (kde název ovládacího prvku je AlmDbView1 a proměnná tagname je definována jako celočíselná proměnná (integer)). - 584 - TotalRowCount Vlastnost: TotalRowCount Účel: Vrací celkový počet záznamů v aktuálním dotazu. Tato vlastnost je určena POUZE PRO ČTENÍ. Typ: Integer (Celé číslo) Syntaxe: Object.TotalRowCount Příklad: tagname = #AlmDbView1.TotalRowCount; (kde název ovládacího prvku je AlmDbView1 a proměnná tagname je definována jako celočíselná proměnná (integer)). Poznámka: RowCount (Počet řádků) udává počet řádků v aktuálním dotazu, který bude obvykle stejný jako vlastnost MaxRecords (Maximální počet záznamů) vyjma případu, kdy počet záznamů vyhovujících dotazu bude menší než hodnota vlastnosti MaxRecords (Maximální počet záznamů). Jestliže například existuje 950 záznamů vyhovujících určeným kritériím a maximální počet záznamů je 100, potom na poslední straně bude 50 záznamů a počet řádků bude 50. V tomto příkladu bude TotalRowCount (Celkový počet řádků) roven hodnotě 950. - 585 - ConnectStatus Vlastnost: ConnectStatus Účel: Vrací stav připojení k databázi alarmů. Tato vlastnost je určena POUZE PRO ČTENÍ. Typ: Message (text) Syntaxe: Object.ConnectStatus Příklad: Tagname = #AlmDbView1.ConnectStatus; (kde název ovládacího prvku je AlmDbView1 a proměnná tagname je definována jako proměnná typu Message (textová)). Návratová hodnota Connected Ovládací prvek je úspěšně připojen k databázi. Not Connected Ovládací prvek není připojen k databázi. In Progress Probíhá připojovací proces. - 586 - Metody a události Connect Metoda: Connect Účel: Provede připojení ovládacího prvku Alarm DB View na databázi alarmů. Jestliže je spojení úspěšné, zobrazí seznam záznamů v rozsahu od 1 do MaxRecords (Maximální počet záznamů). Syntaxe: Object.Connect Příklad: #AlmDbView1.Connect(); (kde AlmDbView1 je název ovládacího prvku) Disconnect Metoda: Disconnect Účel: Odpojí ovládací prvek Alarm DB View od databáze. Syntaxe: Object.Disconnect Příklad: #AlmDbView1.Disconnect(); (kde AlmDbView1 je název ovládacího prvku) - 587 - Refresh Metoda: Refresh Účel: Provede opětovné spuštění dotazu na alarmy. Jestliže je připojení na databázi v pořádku, zobrazí seznam alarmů v rozsahu od 1 do MaxRecords (Maximální počet záznamů). Syntaxe: Object.Refresh Příklad: #AlmDbView1.Refresh(); (kde AlmDbView1 je název ovládacího prvku) Reset Metoda: Reset Účel: Obnoví původní nastavení sloupců tak, jak bylo uloženo při vývoji aplikace. Syntaxe: Object.Reset Příklad: #AlmDbView1.Reset(); (kde AlmDbView1 je název ovládacího prvku) ShowSort Metoda: ShowSort Účel: Zobrazí dialog “Secondary Sort” (Sekundární řazení), jestliže je nastavena vlastnost “SortMenu”. Syntaxe: Object.ShowSort Příklad: #AlmDbView1.ShowSort(); (kde AlmDbView1 je název ovládacího prvku) - 588 - ShowContext Metoda: ShowContext Účel: Zobrazí kontextovou nabídku, jestliže je nastavena jedna z vlastností “RefreshMenu”, “ResetMenu” nebo “SortMenu”. Syntaxe: Object.ShowContext Příklad: #AlmDbView1.ShowContext(); (kde AlmDbView1 je název ovládacího prvku) ShowFilter Metoda: ShowFilter Účel: Zobrazí dialogové okno Filter Favorites (Oblíbené filtry). Syntaxe: Object.ShowFilter Příklad: #AlmDbView1.ShowFilter(); (kde AlmDbView1 je název ovládacího prvku) - 589 - GetItem Metoda: GetItem Účel: Vrací data specifikovaného řádku a sloupce jako text (řetězec). Syntaxe: Object.GetItem(Integer, message) Příklad: Integer (Celé číslo) Celočíselný výraz, který označuje určitý řádek v ovládacím prvku. Message (Text) Textový výraz, který označuje název sloupce v ovládacím prvku. tagname = #AlmDbView1.GetItem(1, "Group"); (kde AlmDbView1 je název ovládacího prvku a proměnná tagname je definována jako proměnná typu Message (textová)) GetSelectedItem Metoda: GetSelectedItem Účel: Vrací data vybraného (označeného) řádku pro definovaný sloupec jako text (řetězec). Syntaxe: Object.GetSelectedItem(message) Message (Text) Příklad: Textový výraz, který označuje název sloupce v ovládacím prvku. tagname = #AlmDbView1.GetSelectedItem("State"); (kde AlmDbView1 je název ovládacího prvku a proměnná tagname je definována jako proměnná typu Message (textová)) - 590 - GetNext Metoda: GetNext Účel: Načte následující sadu záznamů z databáze (pokud existují). Syntaxe: Object.GetNext Příklad: #AlmDbView1.GetNext(); (kde AlmDbView1 je název ovládacího prvku) GetPrevious Metoda: GetPrevious Účel: Načte předchozí sadu záznamů z databáze (pokud existují). Syntaxe: Object.GetPrevious Příklad: #AlmDbView1.GetPrevious(); (kde AlmDbView1 je název ovládacího prvku) GetLastError Metoda: GetLastError Účel: Vrací text poslední chybové zprávy, pokud je objekt v tichém režimu. Syntaxe: Object. GetLastError() Příklad: Získání hodnoty: Tagname = #AlmDbView1.GetLastError(); (kde AlmDbView1 je název ovládacího prvku a proměnná Tagname je definována jako proměnná typu Message (textová)) - 591 - AboutBox Metoda: AboutBox Účel: Zobrazí informační okno “About” (O programu). Syntaxe: Object.AboutBox Příklad: #AlmDbView1.AboutBox(); (kde AlmDbView1 je název ovládacího prvku) Karta Events (Události) Karta Events (Události) umožňuje přiřazení skriptů, které mohou obsloužit určitou událost. - 592 - Click Event: Click Účel: Tato událost nastane, když uživatel klepne na ovládací prvek levým tlačítkem myši a uvolní ho. Syntaxe: tagname = #Thisevent.clicknRow nRow Celočíselný výraz, který obsahuje číslo řádku, ve kterém došlo k dané události. #Thisevent Klíčové slovo. Poznámka: Ovládací prvek Alarm DB View ignoruje metody uživatelského rozhraní (UI = User Interface), jestliže jsou tyto metody vyvolány z události OnStartup (Při spuštění), protože daný ovládací prvek dosud není viditelný. Při vyvolání události OnStartup (Při spuštění) se budou ignorovat následující metody UI: "ShowSort", "ShowContext", "GetSelectedItem", "GetNext", "GetPrevious" a "AboutBox". - 593 - DoubleClick Event: DoubleClick Účel: Tato událost nastane, když uživatel poklepe na ovládací prvek levým tlačítkem myši a uvolní ho. Syntaxe: Tagname = #ThisEvent.DoubleClicknRow nRow Celočíselný výraz, který obsahuje číslo řádku, ve kterém došlo k dané události. #Thisevent Klíčové slovo. Klepnutí (Click) a poklepání (DoubleClick) jsou události založené na nule. Jestliže se vykonají tyto události vracející číslo řádku, počítání řádků na displeji začíná od nuly (první řádek - hodnota 0, druhý řádek - hodnota 1 atd.). - 594 - Ovládací prvek Alarm Tree Viewer ActiveX Ovládací prvek Alarm Tree Viewer ActiveX (Prohlížeč hierarchie alarmních skupin) zobrazuje skupinovou hierarchii poskytovatelů alarmů, specifikovanou dotazem na alarmní systém. Ovládací prvek Alarm Tree Viewer umožňuje zobrazit hierarchii alarmních skupin v grafické podobě. Můžete vykonávat operace zahrnující skupiny, skupiny potomků a skupiny předků. Položky, které se zobrazují v ovládacím prvku Alarm Tree Viewer, jako např. poskytovatelé, uzly a skupiny budeme dále označovat jako „Elements“ (Prvky). Vzhled ovládacího prvku typu ActiveX a zobrazené údaje můžete modifikovat. Konfigurovat lze následující atributy: • Kontextově citlivá nabídka • Režim zobrazení • Možnosti ovládání sestav a výpisů • Barvy pro různé vlastnosti • Typ písma, jeho styl a velikost • Výběry alarmů (filtry) • Dotazové filtry • Třídění Když návrh formátu ovládacího prvku dokončíte, můžete provést následující nastavení, týkající se způsobu zobrazení údajů: • Třídění elementů podle jména • Aktualizovat zobrazení • Vyvolat dotaz Můžete změnit velikost a polohu ovládacího prvku. Při běhu programu se v ovládacím prvku Alarm Tree Viewer ActiveX zobrazuje hierarchie skupin alarmů . Pravidla pro použití objektu Alarm Tree Viewer ActiveX Ovládací prvek Alarm Tree Viewer ActiveX (AlarmTreeViewerCtrlX) používaný pro zobrazení údajů je dalším předkonfigurovaným objektem typu ActiveX, který zobrazuje stromovou strukturu představující hierarchii elementů alarmního systému. Při použití objektů pro zobrazení údajů jako je Alarm Tree Viewer ActiveX je třeba dodržet určitá pravidla. Tato pravidla jsou následující: • Každý objekt ActiveX musí mít jedinečný identifikátor, aby libovolná asociovaná skriptová funkce QuickScript věděla, se kterým objektem má pracovat. Tento jedinečný identifikátor se zadává jako parametr Control Name (Název ovládacího prvku) v dialogovém okně Alarm Tree Viewer ActiveX Properties (Vlastnosti ovládacího prvku Alarm Tree Viewer ActiveX). • Ovládací prvky Alarm Tree Viewer ActiveX nemohou překrývat ostatní objekty programu InTouch, jako jsou jiné ovládací prvky vložené v oknech InTouch nebo grafické objekty. Splnění této podmínky prověřte tak, že v programu WindowMaker klepněte na ovládací prvek Alarm Tree Viewer ActiveX a zkontrolujete “úchyty” - 595 - ovládacího prvku. “Úchyty” by se neměly dotýkat ostatních grafických objektů na obrazovce. • Zobrazení vytvářená ovládacím prvkem užívejte s rozvahou. Tím, že na jednu obrazovku umístíte mnoho zobrazení můžete snížit výkon systému. Pokud to je možné, omezte počet zobrazení na Vaší obrazovce a pokud to je nutné, umístěte další objekty do jiných oken, která můžete podle potřeby volat. Instalace ovládacího prvku Alarm Tree Viewer ActiveX Ovládací prvek Alarm Tree Viewer ActiveX se instaluje zároveň s instalací programu InTouch. Odinstalování ovládacího prvku Alarm Tree Viewer ActiveX 1. Vymažete všechny ovládací prvky Alarm Tree Viewer vložené v oknech aplikace. 2. V nabídce Special (Speciální), zvolte Configure (Konfigurovat). 3. Vyberte Wizard/ActiveX Installation (Instalace předkonfigurovaného objektu/ovládacího prvku ActiveX) a otevřete dialogové okno Wizard/ActiveX Installation (Instalace předkonfigurovaného objektu/ovládacího prvku ActiveX) 4. Vyberte kartu ActiveX Control Installation (Instalace ovládacího prvku ActiveX) 5. Klepněte na Wonderware Alarm TreeView Control a klepněte na Remove (Odstranit). 6. Klepněte na Close (Zavřít). Použití ovládacího prvku Alarm Tree Viewer ActiveX ¾ Chcete-li vytvořit zobrazení, ve kterém je použit ovládací prvek Alarm Tree Viewer ActiveX (Prohlížeč hierarchie alarmních skupin) 1. Klepněte na tlačítko Wizard (Předkonfigurovaný objekt) na nástrojové liště Wizard/ActiveX Toolbar. Otevře se dialogové okno Wizard Selection (Výběr - 596 - předkonfigurovaného objektu). 2. Vyberte ActiveX Controls (Ovládací prvky ActiveX). 3. Klepněte dvakrát na ovládací prvek AlarmTreeViewerCtrl a potom klepněte na OK. Otevře se okno aplikace s ukazatelem v režimu vkládání. 4. Klepněte v okně na místo, kam chcete vložit ovládací prvek Alarm Tree Viewer (Prohlížeč hierarchie alarmních skupin). Tip Pro úpravu rozměru předkonfigurovaného objektu ukažte na jeden z jeho “úchytů“ pro výběr a táhněte, až dosáhnete požadované velikosti. Otevření dialogového okna vlastností ovládacího prvku AlarmTreeViewerCtrl Dialogové okno vlastností ovládacího prvku AlarmTreeViewerCtrl můžete otevřít následujícím způsobem: • Klepněte dvakrát na ovládací prvek, nebo - 597 - • Klepněte pravým tlačítkem na ovládací prvek a z nabídky vyberte Properties (Vlastnosti). Konfigurace ovládacího prvku AlarmTreeViewerCtrlX Dialogové okno AlarmTreeViewerCtrl má šest karet s vlastnostmi: • Control Name (Název ovládacího prvku) • General (Všeobecné) • Color (Barva) • Query (Dotaz) • Properties (Vlastnosti) • Events (Události) Konfigurace parametrů Control Name (Název ovládacího prvku) a Display Position (Poloha zobrazení) ¾ Chcete-li konfigurovat název ovládacího prvku a polohu zobrazení: 1. Klepněte dvakrát na zobrazení objektu Alarm Tree Viewer ActiveX nebo na ně klepněte pravým tlačítkem a potom z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogové okno s vlastnostmi ovládacího prvku AlarmTreeViewerCtrl: 2. Na kartě Control Name (Název ovládacího prvku), napište do pole se stejným názvem název objektu Alarm Tree Viewer Control. Tento název musí být jedinečný pro každý použitý objekt Alarm Tree Viewer Control. Ve výchozím nastavení je parametr Control Name (Název ovládacího prvku) určen pomocí názvu ProgID tohoto ovládacího prvku. Parametr ProgID je název, který se zapisuje do systémového registru, když se ovládací prvek typu ActiveX instaluje na počítači. Pokud se instance tohoto ovládacího prvku umístí do programu InTouch, název ovládacího prvku se vytvoří tak, že k parametru ProgID získanému ze - 598 - systémového registru se připojí index pořadí použití ovládacího prvku v aplikaci, takže se vytvoří název např. AlarmTreeViewerCtrl1. Tip Název, který zadáte v tomto okně se používá v celém systému. 3. Zadejte číselné hodnoty v dialogových oknech Left, Width, Top and Height (Vlevo, Šířka, Nahoře a Výška), abyste specifikovali umístění ovládacího prvku Alarm Tree Viewer Control. Volba Popis Left (Vlevo) Určuje vzdálenost mezi zobrazením objektu a levým okrajem okna. Nižší číslo umístí objekt blíže k levému okraji okna. Vyšší číslo umístí objekt dále od levého okraje okna. Width (Šířka) Určuje šířku zobrazení objektu. Top (Nahoře) Určuje vzdálenost mezi objektem a horním okrajem okna. Nižší číslo posune prohlížeč blíž k hornímu okraji okna. Vyšší číslo posune prohlížeč dál od horního okraje okna. Height (Výška) Určuje výšku zobrazení objektu. Visible (Viditelnost) Zrušte zaškrtnutí pole Visible (Viditelnost), aby nebyl ovládací prvek viditelný při běhu programu. GUID Zobrazuje jedinečné ID (Identifikátor) tohoto ovládacího prvku ActiveX v operačním systému. 4. Klepněte na Apply (Použít). Můžete pokračovat v konfiguraci dalších vlastností nebo klepněte na OK, abyste dialogové okno zavřeli. Konfigurace obecných (General) vlastností ¾ Chcete-li konfigurovat obecné vlastnosti 1. Klepněte dvakrát na objekt Alarm Tree Viewer ActiveX (Prohlížeč hierarchie alarmních skupin) nebo na něj klepněte pravým tlačítkem myši a potom z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogový panel s vlastnostmi ovládacího prvku AlarmTreeViewerCtrl: 2. Klepněte na kartu General (Obecné vlastnosti). - 599 - 3. Zaškrtněte příslušné volby, pro nastavení obecných vlastností zobrazení. Zrušte zaškrtnutí příslušných voleb, aby se tyto vlastnosti v objektu nepoužily. Významy zaškrtávacích polí jsou popsány v následující tabulce: Vlastnost Popis Perform Query on Startup (Vykonat dotaz při spuštění) Začne automaticky aktualizovat zobrazení s použitím výchozích vlastností dotazu. Pokud není zaškrtnuto, je třeba provést příkaz Refresh (Aktualizovat) předtím, než se zobrazení aktualizuje. Volba Refresh (Aktualizovat) je také k dispozici po klepnutím pravým tlačítkem myši na objekt v kontextové nabídce. Show Context Sensitive Menu (Zobrazit kontextově citlivou nabídku) Povoluje aktivaci kontextové nabídky po klepnutí pravým tlačítkem myši. Tato volba také povoluje použití tlačítka Configure Context Menus (Konfigurovat kontextově citlivé nabídky). Další informace viz Konfigurace kontextově citlivých nabídek . Display Mode (Režim zobrazení) Zobrazí seznam Display Mode refresh options (Volby režimů aktualizace zobrazení). Auto Refresh Interval (Interval automatické aktualizace zobrazení) Pokud je tato volba zaškrtnuta, můžete v příslušném poli zadat, v jakém časovém intervalu chcete zobrazení aktualizovat. Platný rozsah hodnot je od 5 do 32767 vteřin. Expansion Level (Úroveň rozbalení stromu) Zadejte počet úrovní, které se zobrazí rozbalené. - 600 - Sort Elements in Alphabetical Order (Prvky třídit podle abecedy) Setřídí prvky podle abecedy. Sort Direction (Pořadí třídění) Pokud je zaškrtnuta volba Sort Elements in Alphabetical Order (Prvky třídit podle abecedy), můžete nastavit vzestupné nebo sestupné třídění prvků. Show Heading (Zobrazit záhlaví) Zobrazí zadaný text na liště záhlaví. Font (Písmo) Klepněte na tlačítko Font (Písmo), abyste konfigurovali vlastnosti písma, ve kterém se zobrazí texty prohlížeče alarmů. Více informací viz “Konfigurace vlastností písma Element Selection (Výběr prvku) Povoluje výběr prvku ve stromu. Allow Multiple Selections (Povolit vícenásobné výběry) Povolí současný výběr jednoho nebo více prvků. Pro vícenásobný opakovaný výběr prvků použijte kombinaci kláves Ctrl+Shift. Show Status Bar (Zobrazit stavový řádek) Zapíná zobrazení stavového řádku. Silent Mode (Tichý režim) Je-li zaškrtnuto políčko Silent Mode (Tichý režim), prohlížeč alarmů nebude za běhu aplikace zobrazovat chybové zprávy (pokud se vyskytnou). Není-li zaškrtnuto toto políčko, prohlížeč alarmů bude zobrazovat chybové zprávy. Chybové zprávy se vždy zasílají aplikaci SMC Logger (aplikace pro ukládání chybových zpráv). 4. Klepněte na Apply (Použít). Můžete pokračovat v konfiguraci dalších vlastností nebo klepněte na OK, abyste dialogové okno zavřeli. Konfigurace kontextově citlivých nabídek ¾ Chcete-li konfigurovat kontextově citlivé nabídky 1. Klepněte dvakrát na objekt Alarm Tree Viewer ActiveX (Prohlížeč hierarchie alarmních skupin) nebo na něj klepněte pravým tlačítkem myši a potom z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogový panel s vlastnostmi ovládacího prvku Alarm Tree Viewer ActiveX. 2. Klepněte na kartu General (Obecné vlastnosti). 3. Klepněte na Configure Context Menus (Konfigurovat kontextově citlivé nabídky), abyste vybrali volby pro zobrazení kontextově citlivých nabídek při běhu programu. Otevře se dialogový panel pro nastavení vlastností kontextově citlivých nabídek. - 601 - Poznámka: Tlačítko Configure Context Menus (Konfigurovat kontextově citlivé nabídky) je aktivní jen v případě, když je zaškrtnuto pole Show Context Sensitive Menus (Zobrazit kontextově citlivé nabídky). 4. Nastavte položky, které se mají v kontextově citlivé nabídce zobrazovat a klepněte na tlačítko OK. Je-li zaškrtnuto pole Show Context Sensitive Menus (Zobrazit kontextově citlivé nabídky), musí být vybrána alespoň jedna volba kontextově citlivé nabídky. Jednotlivé volby kontextově citlivé nabídky jsou popsány v následující tabulce: Menu Option (Volba nabídky) Popis Refresh (Aktualizovat) Umožňuje uživateli aktualizovat zobrazení. Freeze (Zmrazit) Umožňuje uživateli přepínat režim zobrazení mezi stavy zmrazit/rozmrazit Query Favorites (Oblíbené dotazy) Slouží pro přístup k dialogovému oknu Query Favorites (Oblíbené dotazy) pro výběr oblíbeného dotazu ze seznamu. Add to Favorites (Přidat k oblíbeným dotazům) Umožňuje uživateli přidat nové oblíbené dotazy v dialogovém okně Query Favorites (Oblíbené dotazy). Sort (Řazení) Umožňuje uživateli vyvolat dialog Sort (Řazení) Statistics (Statistika) Umožňuje uživateli vyvolat a zobrazit dialogové okno statistiky alarmů. Klepněte za běhu aplikace pravým tlačítkem myši na prohlížeč alarmů a poté klepněte na příkaz Stats (Statistika) v kontextové nabídce. Dialogové okno Alarm Statistics (Statistiky alarmů) má ve svém záhlaví uvedeno, ze kterého ovládacího prvku - 602 - jsou statistiky alarmů zobrazeny.. Konfigurace vlastností písma ¾ Chcete-li nastavit vlastnosti písma 1. Klepněte dvakrát na ovládací prvek Alarm Tree Viewer ActiveX nebo na něj klepněte pravým tlačítkem a potom z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogový panel s vlastnostmi ovládacího prvku Alarm Tree Viewer ActiveX. 2. Klepněte na kartu General (Obecné vlastnosti) a na ní klepněte na Font (Písmo). Zobrazí se dialog vlastností písma. 3. Proveďte požadovaná nastavení a klepněte na OK. Konfigurace barevných vlastností ovládacího prvku ActiveX Alarm Tree Viewer ¾ Chcete-li konfigurovat barevné vlastnosti 1. Klepněte dvakrát na objekt Alarm Tree Viewer ActiveX nebo na něj klepněte pravým tlačítkem a potom z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogový panel s vlastnostmi ovládacího prvku AlarmTreeViewerCtrl. - 603 - 2. Klepněte na kartu Color (Barva). 3. Klepněte na jednotlivá barevná pole a otevřete tak barevnou paletu. Klepněte na barvu v paletě, kterou chcete použít pro následující vlastnosti: Vlastnost Popis Displayed Element Text (Zobrazená barva prvku) Nastaví barvu textu popisujícího element. Title Bar Text (Text záhlaví) Nastaví barvu textu záhlaví (je přístupné jen když je zatržena volba Show Heading (Zobrazit záhlaví)). Window Background (Pozadí okna) Nastaví barvu pozadí okna. Title Bar Background (Pozadí záhlaví) Nastaví barvu pozadí záhlaví (je přístupné jen když je zatržena volba Show Heading (Zobrazit záhlaví)). Selected Element Text (Text vybraného prvku) Nastaví barvu textu vybraného prvku. Selected Element Background (Pozadí vybraného prvku) Nastaví barvu pozadí vybraného prvku. 4. Klepněte na Apply (Použít). Můžete pokračovat v konfiguraci dalších vlastností nebo klepněte na OK, abyste dialogové okno zavřeli. Konfigurace dotazu na alarmy ¾ Chcete-li konfigurovat dotaz na alarmy 1. Klepněte dvakrát na objekt Alarm Tree Viewer ActiveX nebo na něj klepněte pravým tlačítkem a potom z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogový panel s vlastnostmi ovládacího prvku AlarmTreeViewerCtrl. - 604 - 2. Klepněte na kartu Query (Dotaz). 3. Vyberte požadované vlastnosti dotazu. Vlastnosti dotazu jsou popsány v následující tabulce: Vlastnost Popis Alarm Query (Dotaz na alarmy) Nastavuje počáteční nastavení Alarm Query (Dotazu na alarmy). v tomto poli je možné zadat pouze text; není možné zadat proměnné. Výchozí nastavení Alarm Query je \InTouch. Dotaz na alarmy je seznam jednoho nebo více Alarm Providers (Poskytovatelů alarmů), oddělený mezerami. Platná syntaxe tohoto příkazu zahrnuje: \\Node\ProviderName Úplná cesta k poskytovateli alarmu. \ProviderName Cesta k místnímu poskytovateli alarmu. - 605 - Ovládací prvek uchovává Alarm Queries (Dotazy na alarmy). Klepněte na toto tlačítko pro přístup k oblíbeným dotazům. Rozdíly mezi Query Favorites (oblíbenými dotazy) a dotazy na alarmy jsou: Query Favorites File (Soubor oblíbených dotazů) Edit Favorites File (Editovat soubor oblíbených dotazů) 4. • Soubory oblíbených dotazů na alarmy jsou ve formátu XML. • Je třeba zadat název souboru se správným názvem složky, aby bylo možné vyvolávat za běhu aplikace oblíbené dotazy pomocí kontextově citlivé nabídky. • Existující názvy souborů umožňují přístup k existujícím dotazům. Při vytváření nových dotazů se vytváří nové názvy souborů. • Soubor dotazů může být uložen v libovolné složce, nemusí to být složka aplikace InTouch. Otevře soubor oblíbených dotazů, ve kterém můžete přidávat, upravovat a mazat dotazy. Klepněte na Apply (Použít). Můžete pokračovat v konfiguraci dalších vlastností nebo klepněte na OK, abyste dialogové okno zavřeli. Abyste provedli vícenásobný dotaz, jednotlivé dotazy oddělte mezerou. Například: \InTouch \\Node17\InTouch \\MyNode\InTouch. Pokud jste provedli dotaz na více skupin alarmů a později jste nasazení jedné nebo více skupin zrušili, ovládací prvek Alarm Tree Viewer se nebude automaticky aktualizovat, aby tyto skupiny odstranil ze zobrazení. Musíte zastavit a znovu spustit ITAlarmProvider, takže se odregistruje jako poskytovatel alarmů a poté se znovu zaregistruje s novou hierarchií skupin. Pokud provedete dotaz na databázi objektů Galaxy zadáním \Galaxy ve Vašem dotazu na alarmy, potom se zobrazí všichni poskytovatelé alarmů nasazení v Galaxy. Přiřazení proměnných vlastnostem ovládacího prvku ¾ Chcete-li přiřadit proměnné vlastnostem ovládacího prvku 1. Klepněte dvakrát na objekt Alarm Tree Viewer ActiveX nebo na něj klepněte pravým tlačítkem a potom z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogový panel s vlastnostmi ovládacího prvku AlarmTreeViewerCtrl. - 606 - 2. Klepněte na kartu Properties (Vlastnosti). 3. Klepněte na vlastnost, které chcete přiřadit proměnnou. 4. Klepněte na tlačítko ve sloupci Associated Tag (Přiřazená proměnná) abyste mohli procházet seznam proměnných. Otevře se dialogový panel Select Tag (Vyberte proměnnou). 5. Klepněte na OK. 6. Klepněte na Apply (Použít). Můžete pokračovat v konfiguraci dalších vlastností nebo klepněte na OK, abyste dialogové okno zavřeli. - 607 - Vlastnosti ovládacího prvku Alarm Tree Viewer uvedené na kartě vlastností Na kartě Properties (Vlastnosti) ovládacího prvku jsou uvedené následující vlastnosti: AddtoFavoritesMenuextBackColorolor Vlastnost: AddtoFavoritesMenu Účel: Povoluje zobrazení položky nabídky "Add to Favorites" (Přidat k oblíbeným). Typ: Diskrétní Výchozí nastavení: True (Pravda) Syntaxe: Object.AddtoFavoritesMenu [= discrete] AlarmQuery Vlastnost: AlarmQuery Účel: Nastavuje počáteční Alarm Query (Dotaz na alarmy). V tomto poli je možné zadat pouze text, nelze zadat proměnnou. Platná syntaxe odkazů na poskytovatele alarmů je následující: \\Node\ProviderName Úplná cesta k poskytovateli alarmu \ProviderName Cesta k místnímu poskytovateli alarmu Typ: Message (Text) Výchozí nastavení: \InTouch Syntaxe: Object.AlarmQuery [= message] ElementSelection Vlastnost: ElementSelection Účel: Tato vlastnost ovládá, zda lze prvek ve stromové struktuře vybrat nebo ne. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.ElementSelection [= discrete] - 608 - Font Vlastnost: Font Účel: Nastavuje písmo pro zobrazení záznamů a záhlaví v ovládacím prvku. Typ: None (Žádný) Výchozí nastavení: Times New Roman Syntaxe: Read-only (pouze ke čtení) FreezeMenu Vlastnost: FreezeMenu Účel: Logická vlastnost. Povoluje zobrazení položky nabídky "Freeze". (Zmrazit) Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.FreezeMenu [= discrete] Header Text Vlastnost: HeaderText Účel: Nastavuje text, který se zobrazí v záhlaví ovládacího prvku. Typ: Message (Text) Výchozí nastavení: Alarm Providers Syntaxe: Object.HeaderText [= message] MultiSelection Vlastnost: MultiSelection Účel: Povoluje vícenásobný výběr prvků ve stromové struktuře ovládacího prvku. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.MultiSelection [= discrete] - 609 - QueryFavoritesFile Vlastnost: QueryFavoritesFile Účel: Textový řetězec (text). Vrací/nastavuje název souboru s oblíbenými dotazy. Typ: Message (Text) Výchozí nastavení: None (prázdný text) Syntaxe: Object.QueryFavoritesFile [= message] QueryFavoritesMenu Vlastnost: QueryFavoritesMenu Účel: Povoluje zobrazení položky nabídky "QueryFavorites" (Oblíbené dotazy). Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.QueryFavoritesMenu [= discrete] QueryStartup Vlastnost: QueryStartup Účel: Automaticky zahájí aktualizaci zobrazení s použitím výchozích vlastností dotazu. Pokud není povoleno (Nepravda), je třeba provést Requery (opětovný dotaz), aby se zobrazení aktualizovalo. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.QueryStartup [= discrete] - 610 - RefreshMenu Vlastnost: RefreshMenu Účel: Vrací nebo nastavuje hodnotu která určuje, zda se položka nabídky "Refresh" (Aktualizovat zobrazení) zobrazí v kontextově citlivé nabídce. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.RefreshMenu [= Discrete] SelTextBackColor Vlastnost: SelTextBackColor Účel: Nastavuje barvu pozadí vybraného prvku. Typ: Integer (Celé číslo) Výchozí nastavení: Blue (Modrá) Syntaxe: Object.SelTextBackColor [= Integer] SelTextColor Vlastnost: SelTextColor Účel: Nastavuje barvu textu vybraného prvku. Typ: Integer (Celé číslo) Výchozí nastavení: White (Bílá) Syntaxe: Object.SelTextColor [= Integer] - 611 - ShowContextMenu Vlastnost: ShowContextMenu Účel: Povoluje aktivaci pop-up kontextové nabídky po klepnutí pravým tlačítkem myši. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.ShowContextMenu [= discrete] ShowHeading Vlastnost: ShowHeading Účel: Povoluje zobrazení záhlaví ovládacího prvku. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.ShowHeading [= discrete] ShowStatusBar Vlastnost: ShowStatusBar Účel: Vrací nebo nastavuje hodnotu která určuje, zda se zobrazí stavový řádek. Stavový řádek obsahuje tři indikátory: stavové hlášení, aktuální dotaz na alarmy a „Progress bar“ (lištu s časovým průběhem operace v % z celkového předpokládanému času). Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.ShowStatusBar [= discrete] - 612 - SilentMode Vlastnost: SilentMode Účel: Vrací nebo nastavuje hodnotu která určuje, zda je ovládací prvek v Silent mode (Tichém režimu). Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.SilentMode [= discrete] SortElements Vlastnost: SortElements Účel: Povoluje třídění zobrazení prvků v objektu. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.SoftElements [= discrete] SortMenu Vlastnost: SortMenu Účel: Povoluje zobrazení položky nabídky Sort (Třídění). Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.SortMenu [= discrete] SortOrder Vlastnost: SortOrder Účel: Nastavuje nebo vrací směr třídění. Možné hodnoty jsou 0 pro vzestupné pořadí a 1 pro sestupné. Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.SortOrder [= discrete] - 613 - StatsMenu Vlastnost: StatsMenu Účel: Povoluje zobrazení položky nabídky Stats (Statistika). Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.StatsMenu [= discrete] TextColor Vlastnost: TextColor Účel: Nastavuje barvu textu. Typ: Integer (Celé číslo) Výchozí nastavení: Black (Černá) Syntaxe: Object.TextColor [= color] TitleBackColor Vlastnost: TitleBackColor Účel: Nastavuje barvu pozadí záhlaví. Je k dispozici pouze v případě, když je povolena volba Show Heading (Zobrazit záhlaví). Typ: Integer (Celé číslo) Výchozí nastavení: Gray (Šedá) Syntaxe: Object.TitleBackColor [= color] TitleForeColor Vlastnost: TitleForeColor Účel: Nastavuje barvu popředí záhlaví. Je k dispozici pouze v případě, když je povolena volba Show Heading (Zobrazit záhlaví) Typ: Integer (Celé číslo) Výchozí nastavení: Black (Černá) Syntaxe: Object.TitleForeColor [= color] - 614 - WindowColor Vlastnost: WindowColor Účel: Nastavuje barvu pozadí okna. Typ: Integer (Celé číslo) Výchozí nastavení: White (Bílá) Syntaxe: Object.WindowColor [= color] Metody a události FreezeDisplay Metoda: Účel: Syntaxe: Příklad: FreezeDisplay Zmrazí displej prohlížeče alarmů (nové alarmy se nebudou zobrazovat). Object.FreezeDisplay #AlarmViewerCtrl1.FreezeDisplay(); SelectItem Metoda: Účel: Syntaxe: Příklad: SelectItem Vybere (označí) alarmový záznam na zadané pozici. Object.SelectItem #AlarmViewerCtrl1.SelectItem(); - 615 - Metoda: AboutBox Účel: Zobrazuje dialogové okno “O aplikaci” (About). Syntaxe: Object.AboutBox Příklad: #AlarmTreeViewerCtrl1.AboutBox(); kde název ovládacího prvku je AlarmTreeViewerCtrl1. CheckElementMembership Metoda: CheckElementMembership Účel: Prověří, zda prvek stromu potomka je částí prvku stromu předka. Syntaxe: Object.CheckElementMembership(PathName, DescendantElementName, AncestorElementName) Parametr Popis PathName Název cesty. Například, \InTouch nebo \\NodeName. DescendantElement Název prvku, který je potomkem. Name Například, GroupA. AncestorElementN Název prvku, který je předkem. Například, ame GroupB. Příklad: DiscTag = #AlarmTreeViewerCtrl1.CheckElementMembership("", "GroupA", "GroupB"); DiscTag = #AlarmTreeViewerCtrl1.CheckElementMembership("\\ NodeName", "GroupA", "GroupB"); DiscTag = #AlarmTreeViewerCtrl1.CheckElementMembership("\I nTouch", "GroupA", "GroupB"); DiscTag = #AlarmTreeViewerCtrl1.CheckElementMembership("\\ NodeName\InTouch", "GroupA", "GroupB"); kde název ovládacího prvku je AlarmTreeViewerCtrl1 a DiscTag je diskrétní proměnná (typu Discrete). - 616 - Freeze Metoda: Freeze Účel: Zmrazí zobrazení stromu alarmů. Syntaxe: Object.Freeze( int Frozen) Komentář: Integer (Celé číslo) Příklad: 1 0 Zmrazí zobrazení. Rozmrazí zobrazení. Tag1 = 1;#AlarmTreeViewerCtrl1.Freeze(Tag1); kde Tag1 je definován jako paměťová diskrétní proměnná (typ Memory Discrete) a název ovládacího prvku je AlarmTreeViewerCtrl1. GetAlarmQueryFromSelection Metoda: GetAlarmQueryFromSelection Účel: Vrací textový řetězec (text) dotazu na alarmy, který se předkládá distribuovanému systému alarmů (Distributed Alarm System) ovládacím prvkem Alarm Tree Viewer. Syntaxe: Object.GetAlarmQueryFromSelection() Příklad: StrTag = #AlarmTreeViewerCtrl1.GetAlarmQueryFromSelection (); kde název ovládacího prvku je AlarmTreeViewerCtrl1 a StrTag je textová proměnná (typu Message). GetElementCount Metoda: GetElementCount Účel: Vrací celkový počet prvků ve stromu. Syntaxe: Object.GetElementCount() Příklad: nTag1 = #AlarmTreeViewerCtrl1.GetElementCount(); kde název ovládacího prvku je AlarmTreeViewerCtrl1 a nTag1 je reálná nebo celočíselná proměnná (typu Integer, Real). - 617 - GetElementName Metoda: GetElementName Účel: Vrací název prvku (element name) odpovídající zadanému indexu. Syntaxe: Object.GetElementName(ElementIndex) Příklad: Parametr Popis ElementIndex Index prvku. StrTag = #AlarmTreeViewerCtrl1.GetElementName(3); kde název ovládacího prvku je AlarmTreeViewerCtrl1 a StrTag je textová proměnná (typu Message). GetElementPath Metoda: GetElementPath Účel: Vrací cestu k prvku s odpovídajícím indexem, dolů až po zadanou úroveň rozbalení. Syntaxe: Object.GetElementPath(ElementIndex, ExpansionLevel) Příklad: Parametr Popis ElementIndex Index prvku. ExpansionLevel Úroveň rozbalení. StrTag = #AlarmTreeViewerCtrl1.GetElementPath(17, 4); kde název ovládacího prvku je AlarmTreeViewerCtrl1, StrTag je textová proměnná (typu Message) a vrací se cesta k prvku na indexu 17 až po 4 úrovně. GetSelectedElementName Metoda: GetSelectedElementName Účel: Vrací název prvku vybraného v zobrazení vytvořeném ovládacím prvkem Tree View. Syntaxe: Object.GetSelectedElementName() Příklad: StrTag = #AlarmTreeViewerCtrl1.GetSelectedElementName(); kde název ovládacího prvku je AlarmTreeViewerCtrl1 a StrTag je textová proměnná (typu Message). - 618 - GetSelectedElementPath Metoda: GetSelectedElementPath Účel: Vrací cestu k vybranému prvku na uvedenou úroveň rozbalení. Syntaxe: Object.GetSelectedElementPath(Expansion Level) Příklad: Parametr Popis ExpansionLevel Úroveň rozbalení. StrTag = #AlarmTreeViewerCtrl1.GetSelectedElementPath(3); kde název ovládacího prvku je AlarmTreeViewerCtrl1 a StrTag je textová proměnná (typu Message). GetSubElementCount Metoda: GetSubElementCount Účel: Vrací celkový počet „podprvků“ (sub-elements) od uvedeného prvku. Syntaxe: Object.GetSubElementCount(Path, ElementName) Příklad: Parametr Popis Path Název cesty. Například, \\NodeName\InTouch Pokud je název cesty prázdný, ovládací prvek Alarm Tree Viewer najde první prvek stromu, jehož název se shoduje s parametrem ElementName (Název prvku). ElementName Název prvku. Například, Group1. nTag1 = #AlarmTreeViewerCtrl1.GetSubElementCount("","Group1"); nTag1 = #AlarmTreeViewerCtrl1.GetSubElementCount("\\NodeName"," Group1"); nTag1 = #AlarmTreeViewerCtrl1.GetSubElementCount("\InTouch","Gr oup1"); nTag1 = #AlarmTreeViewerCtrl1.GetSubElementCount("\\NodeName\In Touch","Group1"); kde název ovládacího prvku je AlarmTreeViewerCtrl1 a nTag1 je reálná nebo celočíselná proměnná (typu Integer, Real). - 619 - Metoda: GetSubElementName Účel: K zadanému prvku vrací název „podprvku“ (sub-element) na odpovídajícím indexu. Syntaxe: Object.GetSubElementName(Path, ElementName, ElementIndex) Příklad: Parametr Popis Path Název cesty. Například, \\NodeName\InTouch Pokud je název cesty prázdný, ovládací prvek Alarm Tree Viewer najde první prvek stromu, jehož název se shoduje s parametrem ElementName (Název prvku). ElementName Název prvku. Například, Group1. ElementIndex Index prvku. StrTag = #AlarmTreeViewerCtrl1.GetSubElementName("", "Group1", 1); StrTag = #AlarmTreeViewerCtrl1.GetSubElementName("\\NodeName", "Group1", 1); StrTag = #AlarmTreeViewerCtrl1.GetSubElementName("\InTouch", "Group1", 1); StrTag = #AlarmTreeViewerCtrl1.GetSubElementName("\\NodeName\InT ouch", "Group1", 1); kde název ovládacího prvku je AlarmTreeViewerCtrl1 a StrTag je textová proměnná (typu Message). - 620 - Metoda: GetSubElementPath Účel: K zadanému prvku vrací cestu k „podprvku“ (sub-element) na odpovídajícím indexu po uvedenou úroveň rozbalení. Syntaxe: Object.GetSubElementPath(Path, ElementName, ElementIndex, ExpansionLevel) Příklad: Parametr Popis Path Název cesty. Například, \\NodeName\InTouch Pokud je název cesty prázdný, ovládací prvek Alarm Tree Viewer najde první prvek stromu, jehož název se shoduje s parametrem ElementName (Název prvku). ElementName Název prvku. Například, Group1. ElementIndex Index prvku. ExpansionLevel Úroveň rozbalení. StrTag = #AlarmTreeViewerCtrl1.GetSubElementPath("", "Group1", 1, 3); StrTag = #AlarmTreeViewerCtrl1.GetSubElementPath("\\NodeName", "Group1", 1, 3); StrTag = #AlarmTreeViewerCtrl1.GetSubElementPath("\InTouch", "Group1", 1, 3); StrTag = #AlarmTreeViewerCtrl1.GetSubElementPath("\\NodeName\InT ouch", "Group1", 1, 3); kde název ovládacího prvku je AlarmTreeViewerCtrl1 a StrTag je textová proměnná (typu Message). Metoda: SetQueryByName Účel: Nastaví aktuální dotaz podle předaného názvu dotazu. Název dotazu musí být zaveden v souboru s oblíbenými dotazy (query favorites file). Syntaxe: Object.SetQueryByName(string QueryName) Příklad: Parametr Popis QueryName název dotazu tak, jak je vytvořen pomocí příkazu Query Favorites (Oblíbené dotazy), například, Turbine Queries. #AlarmTreeViewerCtrl1.SetQueryByName("Turbine Queries"); kde název ovládacího prvku je AlarmTreeViewerCtrl1. - 621 - Metoda: SetQueryByString Účel: Nastaví aktuální dotaz jako nový text určující novou množinu Alarm Providers (Poskytovatelů alarmů). Syntaxe: Object.SetQueryByString(string NewQuery) Příklad: Parametr Popis NewQuery Text obsahující dotaz na alarmy (Alarm Query), například "\\MasterNode\InTouch" #AlarmTreeViewerCtrl1.SetQueryByString("\\MasterNode\In Touch"); kde název ovládacího prvku je AlarmTreeViewerCtrl1. Přiřazení skriptů ActiveX ovládacímu prvku Alarm Tree Viewer ¾ Chcete-li přiřadit skripty ActiveX ovládacímu prvku Alarm Tree Viewer 1. Klepněte dvakrát na objekt Alarm Tree Viewer ActiveX (Prohlížeč hierarchie alarmních skupin) nebo na něj klepněte pravým tlačítkem myši a potom z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogový panel s vlastnostmi ovládacího prvku AlarmTreeViewerCtrl: 2. Klepněte na kartu Events (Události). 3. Ve sloupci Script (Skript) klepněte na prázdnou buňku události, které chcete přiřadit skript. 4. Napište název skriptu do sloupce Script (Skript) nebo klepněte na tlačítko (...), pro procházení seznamu skriptů ActiveX. Při výběru skriptu ze seznamu klepněte na OK, až skript vyberete. - 622 - 5. Klepněte na Apply (Použít). Můžete pokračovat konfigurováním další události nebo klepněte na OK, abyste dialogové okno zavřeli. Click Událost: Click (Klepnutí) Účel: Nastane, když uživatel klepne levým tlačítkem myši a tlačítko uvolní nad ovládacím prvkem. Syntaxe: tagname = #ThisEvent.ClicknElementID ClicknElementID Vrací pořadové číslo (index) prvku, na který se kleplo. #Thisevent Keyword (klíčové slovo) Poznámka: Ovládací prvek ActiveX Alarm Tree Viewer (Prohlížeč hierarchie alarmních skupin) ignoruje metody uživatelského rozhraní (UI=User Interface), pokud jsou volány z události Startup (Při spuštění), protože ovládací prvek není ještě viditelný. Následující metody používané uživatelským rozhraním (UI) se budou ignorovat, pokud se budou volat z události Startup (Při spuštění): "AboutBox", "CheckElementMembership", "Freeze", "GetAlarmQueryFromSelection", "GetElementCount", "GetElementName", "GetElementPath", "GetSelectedElementCount", "GetSelectedElementName", "GetSelectedElementPath", "GetSubElementCount", "GetSubElementName", "GetSubElementPath", a "Refresh". DoubleClick Událost: DoubleClick (Poklepání) Účel: Nastane, když uživatel klepne dvakrát levým tlačítkem myši a tlačítko uvolní nad ovládacím prvkem. Syntaxe: Tagname = #ThisEvent.DoubleClicknElementID DoubleClicknElem Vrací pořadové číslo (index) prvku, na který se entID kleplo dvakrát. #Thisevent Keyword (Klíčové slovo) Poznámka: Pro události Click (Klepnutí) a DoubleClick (Klepnutí dvakrát) na uzel “All Providers” (Všichni poskytovatelé) se vrátí parametr ElementID -1. - 623 - Ovládací prvek Alarm Pareto ActiveX Pomocí ovládacího prvku Alarm Pareto ActiveX (AlarmParetoX) můžete analyzovat, které alarmy a události nastávají nejčastěji v daném výrobním systému. Analytické možnosti ovládacího prvku Alarm Pareto Vám umožní identifikovat nejvážnější problémy, týkající se Vaši výroby nebo firmy, například Vám pomohou určit, kterých 20% zdrojů způsobuje 80% výrobních problémů (tzv. pravidlo 80/20). Ovládací prvek Alarm Pareto pomáhá k tomu abyste si uvědomili, kam je třeba zaměřit Vaši pozornost, abyste dosáhli co největších zlepšení. Pravidla pro použití objektu Alarm Pareto ActiveX Ovládací prvek Alarm Pareto ActiveX používaný pro zobrazení údajů je dalším předkonfigurovaným objektem typu ActiveX, který zobrazuje sloupcový graf představující aktivitu (četnost) alarmů. Při použití objektů pro zobrazení údajů jako je Alarm Pareto ActiveX je třeba dodržet určitá pravidla. Tato pravidla jsou následující: • Každý objekt ActiveX musí mít jedinečný identifikátor, aby libovolná asociovaná skriptová funkce QuickScript věděla, se kterým objektem má pracovat. Tento jedinečný identifikátor se zadává jako parametr Control Name (Název ovládacího prvku) v dialogovém okně Alarm Pareto ActiveX (Vlastnosti ovládacího prvku Alarm Pareto ActiveX). • Ovládací prvky Alarm Pareto ActiveX nemohou překrývat ostatní objekty programu InTouch, jako jsou jiné ovládací prvky vložené v oknech InTouch nebo grafické objekty. Splnění této podmínky prověřte tak, že v programu WindowMaker klepněte na ovládací prvek Alarm Pareto ActiveX a zkontrolujete “úchyty” ovládacího prvku. “Úchyty” by se neměly dotýkat ostatních grafických objektů na obrazovce. • Zobrazení vytvářená ovládacím prvkem užívejte s rozvahou. Tím, že na jednu obrazovku umístíte mnoho zobrazení můžete snížit výkon systému. Pokud to je možné, omezte počet zobrazení na Vaší obrazovce a pokud to je nutné, umístěte další objekty do jiných oken, která můžete podle potřeby volat. Instalace ovládacího prvku Alarm Pareto ActiveX Ovládací prvek Alarm Pareto ActiveX se instaluje zároveň s instalací programu InTouch. Odinstalování ovládacího prvku Alarm Pareto ActiveX 1. Vymažete všechny ovládací prvky Alarm Pareto ActiveX vložené v oknech aplikace. 2. V nabídce Special (Speciální), zvolte Configure (Konfigurovat). 3. Vyberte Wizard/ActiveX Installation (Instalace předkonfigurovaného objektu/ovládacího prvku ActiveX) a otevřete dialogové okno Wizard/ActiveX Installation (Instalace předkonfigurovaného objektu/ovládacího prvku ActiveX) 4. Vyberte kartu ActiveX Control Installation (Instalace ovládacího prvku ActiveX) 5. Klepněte na Wonderware Alarm Pareto ActiveX a klepněte na Remove (Odstranit). 6. Klepněte na Close (Zavřít). - 624 - Použití ovládacího prvku Alarm Pareto ActiveX ¾ Chcete-li použít ovládací prvek Alarm Pareto ActiveX 1. Klepněte na tlačítko Wizard (Předkonfigurovaný objekt) na nástrojové liště Wizard/ActiveX Toolbar (Předkonfigurované/ActiveX objekty). Otevře se dialogové okno Wizard Selection (Výběr předkonfigurovaného objektu). 2. Vyberte ActiveX Controls (Ovládací prvky ActiveX). Klepněte dvakrát na ovládací prvek AlarmPareto a potom klepněte na OK. Otevře se okno aplikace s ukazatelem v režimu vkládání. 3. Klepněte v okně na místo, kam chcete vložit ovládací prvek Alarm Pareto. - 625 - Otevření dialogového okna vlastností ovládacího prvku AlarmParetoX Dialogové okno AlarmPareto Properties (Vlastnosti ovládacího prvku) můžete otevřít následujícím způsobem: • Klepněte dvakrát na ovládací prvek, nebo • Klepněte pravým tlačítkem na ovládací prvek a z kontextové nabídky vyberte Properties (Vlastnosti). Konfigurace vlastností ovládacího prvku AlarmParetoX Dialogové okno AlarmPareto Properties má osm karet s vlastnostmi: • Control Name (Název ovládacího prvku) • General (Všeobecné) • Selection (Výběr) • Database (Databáze) • Colors (Barvy) • Query Filter (Filtr dotazů) • Properties (Vlastnosti) • Events (Události) Konfigurace parametrů Control Name (Název ovládacího prvku) a Display Position (Poloha zobrazení) prvku Alarm Pareto ¾ Chcete-li konfigurovat název ovládacího prvku a jeho polohu 1. Klepněte dvakrát na zobrazení prvku AlarmPareto ActiveX nebo na ně klepněte pravým tlačítkem myši a z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogové okno AlarmPareto Properties (Vlastnosti ovládacího prvku AlarmPareto). - 626 - . 2. Na kartě Control Name (Název ovládacího prvku) zapište do pole se stejným jménem jméno objektu, představovaného ovládacím prvkem. Tento název musí být jedinečný pro každé použité grafické zobrazení alarmů. Ve výchozím nastavení je parametr Control Name (Název ovládacího prvku) určen pomocí názvu ProgID tohoto ovládacího prvku. Parametr ProgID je název, který se zapisuje do systémového registru, když se ovládací prvek typu ActiveX instaluje na počítači. Pokud se instance tohoto ovládacího prvku umístí do programu InTouch, název ovládacího prvku se vytvoří tak, že k parametru ProgID získanému ze systémového registru se připojí index pořadí použití ovládacího prvku v aplikaci, takže se například vytvoří název AlarmPareto1. Tip Název, který zadáte v tomto okně je platný v celém systému. 3. Zadejte číselné hodnoty v dialogových oknech Left, Width, Top and Height (Vlevo, Šířka, Nahoře a Výška), abyste přesně umístili objekt Alarm Pareto. Volba Popis Left (Vlevo) Určuje vzdálenost mezi zobrazením vytvořeným ovládacím prvkem Alarm Pareto a levým okrajem okna. Nižší číslo umístí zobrazení blíže k levému okraji okna. Vyšší číslo umístí zobrazení dále od levého okraje okna. Width (Šířka) Určuje šířku zobrazení vytvořeného ovládacím prvkem Alarm Pareto . Top (Nahoře) Určuje vzdálenost mezi zobrazením vytvořeným ovládacím prvkem a horním okrajem okna. Nižší číslo posune graf blíž k hornímu okraji okna. Vyšší číslo posune graf dál od horního okraje okna. Height (Výška) Určuje výšku zobrazení vytvořeného ovládacím - 627 - prvkem Alarm Pareto. 4. Visible (Viditelnost) Zrušte zaškrtnutí pole Visible (Viditelnost), aby nebyl ovládací prvek viditelný při běhu programu. GUID Zobrazuje jedinečné ID (Identifikátor) tohoto ovládacího prvku ActiveX v operačním systému. Klepněte na Apply (Použít). Můžete pokračovat v konfiguraci dalších vlastností nebo klepněte na OK, abyste dialogové okno zavřeli. Konfigurace obecných vlastností ¾ Chcete-li konfigurovat obecné vlastnosti 1. Klepněte dvakrát na zobrazení prvku AlarmPareto ActiveX nebo na ně klepněte pravým tlačítkem myši a z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogové okno AlarmPareto Properties (Vlastnosti ovládacího prvku AlarmPareto). 2. Klepněte na kartu General (Obecné vlastnosti). 3. Zaškrtněte příslušné volby pro nastavení obecných vlastností zobrazení. Zrušte zaškrtnutí příslušných voleb, aby se tyto vlastnosti v zobrazení objektu nepoužily. Významy zaškrtávacích polí jsou popsány v následující tabulce: Vlastnost Popis Refresh (Aktualizovat) Povoluje zobrazení položky nabídky Refresh (Aktualizovat zobrazení) v nabídce vyvolané po klepnutí pravým tlačítkem myši na ovládací prvek. Použití nabídky Refresh aktualizuje ovládací prvek a zobrazí sestavu - 628 - záznamů od 1 do MaxRecords Query Favorites (Oblíbené dotazy) Otevře dialogové okno Query Favorites (Oblíbené dotazy). Reset (Obnovit výchozí nastavení) Povolí zobrazení položky nabídky Reset (Obnovit výchozí nastavení) v nabídce vyvolané po klepnutí pravým tlačítkem myši na ovládací prvek. Použití nabídky Reset uspořádá všechny sloupce tak, aby byly nastaveny stejně jako v době návrhu aplikace. Bar Count (Počet sloupců grafu) Nastavuje počet sloupců grafu, které zobrazí ovládací prvek Alarm Pareto. Display Mode (Režim zobrazení) Seznam, který ukazuje volby zobrazení, které jsou k dispozici. Volby jsou následující: Alarm & Event History (Historie alarmů a událostí), Alarm History (Historie alarmů), a Event History (Historie událostí). No-Match Message Nastavuje zprávu, která se zobrazí v případě, kdy ovládací prvek Alarm Pareto nemá žádné údaje ke zpracování. (Zpráva v případě neshody) Vertical (Svislý) Zobrazí sloupce ve svislém uspořádání. Horizontal (Vodorovný) Zobrazí sloupce ve vodorovném uspořádání. Show Status Bar (Zobrazit stavový řádek) Zapíná zobrazení stavového řádku. Silent Mode (Tichý režim) Je-li zaškrtnuto políčko Silent Mode (Tichý režim), ovládací prvek Alarm Pareto nebude za běhu aplikace zobrazovat chybové zprávy. Není-li zaškrtnuto toto políčko, ovládací prvek bude zobrazovat chybové zprávy. Chybové zprávy se vždy zasílají aplikaci SMC Logger (Aplikaci pro ukládání chybových zpráv). Pokud není na vybraném sloupci grafu k Auto Font (Automatické zobrazení dispozici dostatečné místo pro správné zobrazení textu, volba Auto Font text skryje písma) a zobrazí ho jen v případě, když je daný sloupec grafu vybrán. Show Node Name (Zobrazit název uzlu) Zobrazí u jednotlivých položek grafu název uzlu poskytovatele alarmu. Show Selected in Status Tato volba zobrazí popis vybraného sloupce Bar (Zobrazit vybrané grafu ve stavovém řádku. - 629 - ve stavovém řádku) 4. Consolidated Alarms (Sloučené alarmy) Touto volbou sloučíte podstavy alarmů do společného stavu. Například, pokud má analogový alarm tři stavy: Hi, HiHi a Normal, pak budou stavy alarmu Hi a HiHi zatříděny jako jeden stav – Hi. Show Count in Percentages (Zobrazit počet v procentech) Zobrazí sloupce grafu podle četnosti jednotlivých alarmů v procentech z celkového počtu zobrazovaných alarmů. Show Time in State (Zobrazit čas ve stavu) Zobrazí ovládací prvek Alarm Pareto podle celkového času, po který se daná proměnná nacházela ve stavu alarmu Tato volba je aktivní jen v případě, kdy je Display Mode (Režim Zobrazení) nastaven na Alarm History (Historie alarmů) Klepněte na Apply (Použít). Můžete pokračovat v konfiguraci dalších vlastností nebo klepněte na OK, abyste dialogové okno zavřeli. Konfigurace vlastností písma ¾ Chcete-li konfigurovat vlastnosti písma 1. Klepněte dvakrát na ovládací prvek Alarm Pareto ActiveX nebo na něj klepněte pravým tlačítkem a potom z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogový panel s vlastnostmi ovládacího prvku Alarm Pareto ActiveX. 2. Klepněte na kartu General (Obecné vlastnosti) a na ní klepněte na Font (Písmo). Zobrazí se dialog vlastností písma: 3. Proveďte požadovaná nastavení a klepněte na OK. - 630 - Použití karty Selection (Výběr) Karta Selection (Výběr) umožňuje nastavení záznamů, které je třeba vyhledat podle vybraného času. Umožňuje také konfigurovat maximální počet záznamů, které se zobrazí, čas zahájení a ukončení dotazu na alarmy a časové pásmo dotazu na alarmy. ¾ Chcete-li konfigurovat vlastnosti výběru 1. Klepněte dvakrát na ovládací prvek Alarm Pareto ActiveX nebo na něj klepněte pravým tlačítkem a potom z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogový panel s vlastnostmi ovládacího prvku Alarm Pareto ActiveX. 2. Klepněte na kartu Selection (Výběr). 3. Vlastnosti, které lze nastavit na kartě Selection (Výběr) jsou popsány v následující tabulce: Vlastnost Popis Use Specific Time (Použít určitý časový interval) Zaškrtněte toto pole, pokud se mají aktivovat pole s volbami Start Time (Počáteční čas) a End Time (Konečný čas). Pokud pole není zaškrtnuto, zahajuje se dotaz na data v časovém intervalu nastaveném v poli Duration (Délka trvání) do současnosti s použitím časového pásma UTC (totéž co GMT=Greenwich Mean Time). - 631 - 4. Start Time (Počáteční čas) Pokud je zaškrtnuto pole Use Specific Time (Použít určitý časový interval), vyberte čas, kdy se má zahájit vyhledávání záznamů o alarmech. Počáteční čas musí být textový řetězec ve formátu MM/DD/YYYY HH:MM:SS (MM=měsíc/DD=den/YYYY=rok HH=hodina:MM=minuta:SS=sekunda). Použijte jakékoliv datum a čas ve kterémkoliv časovém pásmu od půlnoci 1 ledna 1970, do 18 ledna 2038, 19:14:07. End Time (Konečný čas) Pokud je zaškrtnuto pole Use Specific Time (Použít určitý časový interval), vyberte čas, kdy se má ukončit vyhledávání záznamů o alarmech. Konečný čas musí být textový řetězec ve formátu MM/DD/YYYY HH:MM:SS. Použijte jakékoliv datum a čas ve kterémkoliv časovém pásmu od půlnoci 1 ledna 1970, do 18 ledna 2038, 19:14:07. Maximum Records (Maximální počet záznamů) Tato volba umožňuje nastavit počet záznamů, které lze v jedné instanci ovládacího prvku vidět. Platný rozsah maximálního počtu záznamů je od 1000 do 1000000. Query Time Zone (Časové pásmo dotazu) Volby, které lze v tomto poli zadat jsou UTC a Origin Time (Čas dle původu). UTC je totéž co GMT=Greenwich Mean Time (Greenwichský čas), známý též pod označením „Coordinated Universal Time” nebo “Zulu”. Origin Time (Čas dle původu) je aktuální čas v časovém pásmu pracovníka obsluhy systému. Proveďte požadovaná nastavení a klepněte na Apply (Použít). Můžete pokračovat v konfiguraci dalších vlastností nebo klepněte na OK, abyste dialogové okno zavřeli. Použití karty Database (Databáze) Na kartě Database (Databáze) se nastavuje název serveru a jeho související vlastnosti tak, aby se ovládací prvek mohl připojit k databázi. ¾ Chcete-li konfigurovat databázové vlastnosti 1. Klepněte dvakrát na ovládací prvek Alarm Pareto ActiveX nebo na něj klepněte pravým tlačítkem a potom z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogový panel s vlastnostmi ovládacího prvku Alarm Pareto ActiveX. 2. Klepněte na kartu Database (Databáze). Seznam v poli Server Name (Název serveru) ukazuje názvy SQL serverů a MSDE serverů, které jsou v síti k dispozici. - 632 - Vyberte název serveru ze seznamu nebo editujte název v poli Server Name (Název serveru). . 3. V poli Database (Databáze) zadejte název databáze alarmů. 4. V poli User (Uživatel) zadejte uživatelské jméno (User ID=identifikátor uživatele) pro přístup k databázovém serveru. Poznámka: Použijte uživatelské jméno s odpovídajícím přístupem do databáze (tedy jen pro čtení, nikoliv účet systémového administrátora). 5. Do pole Password (Heslo), napište heslo, příslušející k uživatelskému jménu (účtu) pro přístup k databázovému serveru. 6. Zaškrtněte volbu Auto Connect (Automatické připojení), abyste povolili automatické připojení ovládacího prvku k databázi při běhu programu. Tato volba je k dispozici jen pokud jsou vyplněna pole Server Name (Název serveru) a User (Uživatel). Poznámka: Pokud není zaškrtnuta volba Auto Connect (Automatické připojení), je třeba volat explicitně metodu „Connect“ ovládacího prvku, aby se tento ovládací prvek připojil k databázi. 7. Klepněte na Test Connection (Vyzkoušet spojení), abyste vyzkoušeli spojení na databázi alarmů s použitím zadaných parametrů název serveru, název databáze, uživatelské jméno a heslo. 8. Klepněte na OK. - 633 - Konfigurace barevných vlastností ¾ Chcete-li konfigurovat barevné vlastnosti ovládacího prvku Alarm Pareto 1. Klepněte dvakrát na objekt Alarm Pareto ActiveX nebo na něj klepněte pravým tlačítkem a potom z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogový panel s vlastnostmi ovládacího prvku Alarm Pareto ActiveX. 2. Klepněte na kartu Colors (Barvy). - 634 - 3. 4. Klepněte na jednotlivá barevná pole a otevřete tak barevnou paletu. Klepněte na barvu v paletě, kterou chcete použít pro následující vlastnosti: Vlastnost Popis Background Color (Barva pozadí) Nastaví barvu pozadí ovládacího prvku Alarm Pareto. Bar Color (Barva sloupce grafu) Nastaví barvu sloupce grafu. Font Color (Barva písma) Nastaví barvu písma použitého v ovládacím prvku Alarm Pareto. Select Color (Barva výběru) Nastaví barvu vybraného sloupce grafu. Klepněte na OK. Použití karty Query Filter (Filtr dotazů) Karta Query Filter (Filtr dotazů) umožňuje definovat, které záznamy z databáze alarmů se mají zahrnout do výsledku Vašeho dotazu. Můžete například nastavit filtr na základě časové značky záznamů nebo stavu alarmů. Můžete filtrovat podle více polí tak, abyste omezili nebo naopak rozšířili výsledky Vašeho dotazu. O filtrech a polích alarmů Podokno filtrů, situované v pravé části karty Query Filter (Filtr dotazů) zobrazuje podmínky, které jsou součástí dotazu. Pokud je definováno více podmínek než jedna, kombinují se sloupce (podmínky) pomocí operátorů „And“ (A) nebo „Or“ (Nebo). Vyberte operátor "And" (A), aby byly vráceny pouze ty záznamy, které vyhovují hodnotám ve všech vybraných polích zároveň. Vyberte operátor "Or" (Nebo), aby se - 635 - vrátily záznamy, které vyhovují hodnotám v kterémkoliv vybraném poli. Při použití operátorů And (A)/Or (Nebo) musí být odpovídající pole seskupena dohromady. Na jednu položku v podokně filtrů lze vytvořit pouze jediný filtrovací výraz. Pokud je třeba použít položku v několika výrazech, je nutné tuto položku opět přidat do podokna filtrů. Pole alarmů, zobrazená v levém podokně karty Query Filter (Filtr dotazů) jsou popsána v následující tabulce: Název pole Filtruje dotaz podle: Class (Třída) třídy alarmu. Type (Typ) typu alarmu. Priority (Priorita) priority alarmu. Name (Název) názvu alarmu GroupName (Název skupiny) názvu skupiny alarmů. Provider (Poskytovatel) poskytovatele alarmu Limit (Mez) Meze alarmu. Hodnoty jsou alfanumerické. Porovnání těchto hodnot v Query Filter (Filtru dotazů) se provádí jako porovnávání textových řetězců (textů). Operator (Operátor) Operátora. OperatorFullName (Celé jméno operátora) Celého jména operátora. OperatorNode (Uzel operátora) Názvu síťového uzlu operátora, spojeného s alarmem. OperatorDomain (Doména operátora) Názvu domény operátora, spojeného s alarmem. Comment (Komentář) Komentáře k alarmu. User1 (Uživatelský atribut č. 1) Uživatelsky definované hodnoty č. 1. User2 (Uživatelský atribut č. 2) Uživatelsky definované hodnoty č. 2. User3 (Uživatelský atribut č. 3) Uživatelsky definované hodnoty č. 3. Duration (Délka trvání) Podle stavu alarmu UNACK (nepotvrzený alarm) a podle délky trvání alarmu. Sloupec s délkou trvání nastavenou na 0 nevytváří jako výsledek dotazu záznamy s nulovou hodnotou. - 636 - O kontextové nabídce Klepnutím pravým tlačítkem myši na sloupec v pravém podokně filtrů vyvoláte kontextově citlivou nabídku. Kontextově citlivá nabídka je k dispozici v podokně filtrů. Volby nabídky jsou následující: Volba kontextové nabídky Funkce And (A) Změní operátor "Or" (Nebo) na "And" (A). Tato volba je nedostupná pro všechny pdomínky u nichž není právě nastaven operátor "Or" (Nebo). Or (Nebo) Změní operátor "And"(A) na "Or" (Nebo). Tato volba je nedostupná pro všechny podmínky u nichž není právě nastaven oprátor "And" (A) Group (Seskupit) Vytvoří zobrazení pro přetažení vybraných podmínek a spustí úkon „táhni a pusť“ (Drag/drop). Edit Filter (Editovat filtr) Otevře dialogové okno Define Filter (Definice filtru). Cut (Vyjmout) Vyjme vybraný filtr. Copy (Kopírovat) Zkopíruje vybraný filtr Paste (Vložit) Vloží vyjmutý nebo zkopírovaný filtr. Delete (Odebrat) Odstraní vybraný filtr. - 637 - Přidání filtrů dotazu Všechna pole, která jsou k dispozici jsou uvedena v seznamu v levém podokně. Vybrané filtry jsou uvedeny v seznamu v pravém podokně. ¾ Chcete-li přidat filtr dotazu 1. Klepněte dvakrát na pole nebo vyberte pole v levém podokně a klepněte na Add (Přidat), abyste položku zkopírovali do pravého podokna vybraných filtrů. 2. Opakujete krok 1, abyste přidali více sloupců záznamů (položek) do filtru dotazu. Poznámka: Pokud nejsou v době návrhu aplikace definovány žádné filtry, v dialogovém okně Filter Favorites (Oblíbené filtry) se objeví Default Filter (Výchozí nastavení filtru). Default Filter (Výchozí nastavení filtru) provádí dotaz na všechny záznamy. Odebrání filtrů dotazů ¾ Chcete-li filtr dotazu odebrat 1. Abyste filtr dotazu odebrali z podokna vybraných filtrů, klepněte na podmínku, které chcete odebrat a potom klepněte na Delete (Odebrat). 2. Odebrání filtru není možné vrátit zpět. Klepněte na Yes (Ano) v dialogovém okně s tímto upozorněním (Deleting a filter cannot be undone). 3. Pokud chcete odebrat více polí z podokna vybraných filtrů, opakujte krok 1. - 638 - Definování filtru pro sloupec ¾ Chcete-li definovat filtr pro sloupec 1. Klepněte dvakrát na pole v podokně vybraných filtrů nebo na ně klepněte pravým tlačítkem a z kontextové nabídky vyberte Edit Filter (Editovat filtr). Otevře se dialogové okno Dialog (Dialog). 2. V poli se seznamem Operator (Operátor) vyberte operátor, který potřebujete. 3. Zapište hodnotu do pole Value (Hodnota). Pole Value (Hodnota) neakceptuje hodnoty, které zvolený dotaz nemůže zpracovat. Pole Value (Hodnota) akceptuje následující zástupné znaky (wildcards), když se pro alfanumerické názvy sloupců použijí operátory "Like" (Obsahující text - řetězec znaků) "Not Like" (Neobsahující text - řetězec znaků): % jakýkoliv text jakékoliv délky _ jakýkoliv jeden znak [] jakýkoliv jeden znak, patřící do daného rozsahu znaků, např. [a-f], nebo patřící mezi zadané znaky, např. [abcdef] [^] jakýkoliv jeden znak, nepatřící do daného rozsahu znaků, např. [^a-f], nebo nepatřící mezi zadané znaky, např. [^abcdef] Pro parametr Value (Hodnota) platí následující omezení pro různá pole: Všechna pole Všechny alfanumerické znaky vyjma polí User1, User2 a Priority Priority (Priorita) Lze zadat jen celočíselné hodnoty (typu integer) v rozsahu 1 až 999 User1, User2 (Uživatelský atribut Lze zadat pouze záporná, kladná čísla nebo čísla s č. 1, Uživatelský atribut č. 2) desetinnými místy. 4. Klepněte na OK. - 639 - Seskupování sloupců záznamů o alarmech ¾ Chcete-li sloupce záznamů o alarmech seskupit 1. Klepněte pravým tlačítkem na vybrané pole a z kontextové nabídky vyberte Group (Seskupit). 2. Přetáhněte pole na jiné pole. Poznámka: Operátory "And" (A) a "Or" (Nebo) jsou tzv. Parent nodes, (“uzly-rodiče”, nadřazené uzly). Pole vybraná ve struktuře pod “rodičovskými” uzly jsou Child nodes (“uzly-děti”, podřazené uzly)). Nemůžete přetáhnout pole “rodičovských” uzlů na “dětské” uzly. 3. Z výchozího nastavení mají seskupená pole přiřazený operátor "And" (A). Abyste jej změnili na "Or" (Nebo), klepněte pravým tlačítkem na operátor a z kontextové nabídky vyberte odpovídající operátor. Kopírování nebo přesun filtrů dotazů Jestliže máte více než jednu instanci ovládacího prvku Alarm Pareto a chcete použít stejné filtry pro více instancí, můžete definované filtry kopírovat nebo vyjmout z jedné instance a vložit je do jiného filtru. Chcete-li kopírovat filtry z jedné instance ovládacího prvku Alarm Pareto do jiné ¾ 1. Filtry definujte v první instanci ovládacího prvku Alarm Pareto. 2. Klepněte pravým tlačítkem na filtr (filtry) a z kontextové nabídky vyberte Copy (Kopírovat). Abyste filtr (filtry) přesunuli do jiné instance, vyberte Cut (Vyjmout). 3. Zavřete první instanci ovládacího prvku Alarm Pareto. 4. Otevřete jinou instanci ovládacího prku Alarm Pareto a klepněte na kartu Query Filter (Filtr dotazů). Poznámka: Do pravého podokna na kartě musíte přidat alespoň jeden filtr (resp. vlastnost filtru), aby byla kontextová nabídka přístupná. 5. Umístěte ukazatel myši (šipku) na odpovídající místo v pravém podokně. Klepněte pravým tlačítkem na vybraný filtr a z kontextové nabídky vyberte Paste (Vložit). Načítání Query Filter Favorites (Oblíbených filtrů dotazu) ¾ Chcete-li načíst oblíbené filtry dotazu 1. Na kartě Query Filter (Filtr dotazu), zapište síťovou cestu k souboru a název souboru do pole Filter Favorites File (Soubor oblíbených filtrů) nebo klepněte na tlačítko (...) pro vyhledání souboru. 2. Pokud budete soubor vyhledávat, vyberte soubor z místního adresáře a klepněte na Open (Otevřít). 3. Klepněte na OK. - 640 - Editace souboru Query Filter Favorites (Oblíbené filtry dotazu) ¾ Chcete-li editovat soubor s oblíbenými filtry dotazu 1. Na kartě Query Filter (Filtr dotazu) klepněte na tlačítko Edit Favorites File (Editovat soubor s oblíbenými filtry). 2. Otevře se okno Filter Favorites (Oblíbené filtry), ve kterém můžete přidávat, upravovat nebo odstraňovat filtry obsažené ve Vašem souboru s oblíbenými filtry. 3. Až úpravy dokončíte, klepněte na OK, abyste změny uložili a zavřeli dialogové okno. Přiřazení proměnných vlastnostem ovládacího prvku ¾ Chcete-li přiřadit proměnnou vlastnostem ovládacího prvku 1. Klepněte dvakrát na objekt Alarm Pareto ActiveX nebo na něj klepněte pravým tlačítkem a z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogový panel AlarmParetoX Properties (Vlastnosti ovládacího prvku Alarm Pareto). 2. Klepněte na kartu Properties (Vlastnosti). 3. Klepněte na vlastnost, které chcete přiřadit proměnnou. - 641 - 4. Klepněte na tlačítko ve sloupci Associated Tag (Přiřazená proměnná), abyste mohli procházet seznam proměnných. Otevře se okno Select Tag (Vyberte proměnnou). 5. Ze seznamu Tag Source (Zdroj proměnných) vyberte zdroj proměnných. 6. Klepněte na název proměnné, kterou chcete vybrat jako asociovanou a klepněte na OK. 7. Klepněte na Apply (Použít). 8. Můžete konfigurovat další vlastnost nebo klepněte na OK, abyste dialogové okno zavřeli. - 642 - Vlastnosti ovládacího prvku Alarm Pareto uvedené na kartě vlastností Na kartě Properties (Vlastnosti) ovládacího prvku jsou uvedeny následující vlastnosti: AutoConnect Vlastnost: AutoConnect Účel: Nastavuje nebo vrací hodnotu, která určuje, zda se ovládací prvek připojí k databázi při běhu programu Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.AutoConnect [= Discrete] Discrete Logický výraz (jehož výsledkem je hodnota typu Discrete), který udává, zda se ovládací prvek připojí k databázi při běhu programu, jak je popsáno na kartě vlastností Database (Databáze). True (Pravda) Připojí se k databázi. False (Nepravda) (Výchozí nastavení) Nepřipojí se k databázi. AutoFont Vlastnost: AutoFont Účel: Pokud není na vybraném sloupci grafu k dispozici dostatečné místo pro správné zobrazení textu, vlastnost Auto Font text skryje a zobrazí ho jen v případě, když je daný sloupec grafu vybrán. Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.AutoFont [= discrete] - 643 - BaBackGndColor Vlastnost: BackGndColor Účel: Nastavuje barvu pozadí ovládacího prvku Alarm Pareto Typ: Integer (Celé číslo) Výchozí nastavení: 0x00FFFFFF (White) (Bílá) Syntaxe: Object.BackGndColor[= integer] BarColor Vlastnost: BarColor Účel: Nastavuje barvu sloupců grafu ovládacího prvku Alarm Pareto. Typ: Integer (Celé číslo) Výchozí nastavení: 0x008D8AFF (Pink) (Růžová) Syntaxe: Object.BarColor [= integer] BarCount Vlastnost: BarCount Účel: Nastavuje počet sloupců grafu, které se zobrazí v ovládacím prvku Alarm Pareto. Typ: Integer (Celé číslo) Výchozí nastavení: 10 Syntaxe: Object.BarCount [= integer] - 644 - BarSelectColor Vlastnost: BarSelectColor Účel: Nastavuje barvu vybraného sloupce grafu v ovládacím prvku Alarm Pareto. Typ: Integer (Celé číslo) Výchozí nastavení: 0x83FF00 (Green) (Zelená) Syntaxe: Object.BarSelectColor [= integer] Connected Vlastnost: Connected Účel: Indikuje, zda je ovládací prvek Alarm Pareto připojen k databázi. Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.Connected [= discrete] ConsolidatedAlarms Vlastnost: ConsolidatedAlarms Účel: Sloučí stavy alarmů do dvou stavů. Pokud má analogový alarm například tři stavy: Hi, HiHi a Normal, pak budou stavy alarmu Hi a HiHi zatříděny jako jeden stav. Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.ConsolidatedAlarms [= discrete] - 645 - DatabaseName Vlastnost: DatabaseName Účel: Nastavuje databázi, ke které se ovládací prvek Alarm Pareto musí připojit.. Typ: Message (Text) Výchozí nastavení: WWAlmDb Syntaxe: Object.DatabaseName [= message] DisplayMode Vlastnost: DisplayMode Účel: Nastavuje režim zobrazení. Volby režimu zobrazení jsou následující: Alarm & Event History (Historie alarmů a událostí), Alarm History (Historie alarmů), a Event History (Historie událostí). Typ: Message (Text) Výchozí nastavení: Alarm & Event History Syntaxe: Object.DisplayMode [= message] Duration Vlastnost: Duration Účel: Nastavuje nebo vrací dobu trvání, používanou ovládacím prvkem k nastavení "Start Time" (Počátečního času) a "End Time" (Konečného času). Typ: Message (Text) Výchozí nastavení: "Last Hour" (poslední hodinu) Syntaxe: Object.Duration [= text] text Text (textový výraz), který se vyhodnotí jako délka trvání. - 646 - FiletMenu Vlastnost: FilterMenu Účel: Zapíná nebo vypíná kontextovou nabídku, ve které je možné editovat filtr pro úpravu údajů, které obdrží ovládací prvek Pareto. Bez ohledu na nastavení této vlastnosti bude zobrazení této položky nabídky povoleno, jen když je nastaven Filter Favorites File (Soubor s oblíbenými filtry). Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.FilterMenu [= discrete] EnableRefresh Vlastnost: EnableRefresh Účel: Zapíná nebo vypíná kontextovou nabídku pro aktualizaci zobrazení vytvářeného ovládacím prvkem Alarm Pareto. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.EnableRefresh [= discrete] EnableReset Vlastnost: EnableReset Účel: Zapíná nebo vypíná kontextovou nabídku používanou pro obnovení výchozího stavu ovládacího prvku Alarm Pareto. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.EnableReset [= discrete] - 647 - EnableSilentMode Vlastnost: EnableSilentMode Účel: Zapíná nebo vypíná Silent Mode (Tichý režim). Pokud je tichý režim vypnut, ovládací prvek Alarm Pareto zobrazuje dialogové panely chybových hlášení. Když je tichý režim zapnut, dialogové panely s hlášením o chybách se nezobrazují. Informace o chybách se zapisují do aplikace Logger. Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.EnableSilentMode [= discrete] EndTime Vlastnost: EndTime Účel: Vrací nebo nastavuje konečné datum čas („End time“) Typ: Message (Text) Výchozí nastavení: Čas, kdy jste vložili ovládací prvek Alarm Pareto do okna Vaší aplikace. Syntaxe: Object.EndTime [= text] text Text (textový výraz), který se vyhodnotí jako konečný čas. Font Vlastnost: Font Účel: Nastavuje písmo, použité pro zobrazení záznamů a popis záhlaví sloupců v ovládacím prvku. Typ: None (Žádný) Výchozí nastavení: Verdana Syntaxe: Read-only - 648 - FontColor Vlastnost: FontColor Účel: Nastavuje barvu písma pro zobrazení záznamů v ovládacím prvku Alarm Pareto. Typ: Integer (Celé číslo) Výchozí nastavení: 0x00000000 (Black) (Černá) Syntaxe: Object.FontColor [= integer] HorizontalChart Vlastnost: HorizontalChart Účel: Zobrazí graf jako vodorovné sloupce. Pokud je volba HorizontalChart vypnuta, graf se zobrazí jako svislé sloupce. Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.HorizontalChart [= discrete] MaxRecords Vlastnost: MaxRecords Účel: Nastavuje nebo vrací maximální počet záznamů, které je možné vyvolat v daný čas. Typ: Integer (Celé číslo) Výchozí nastavení: 1000 Syntaxe: Object.MaxRecords [=integer] integer Celočíselný výraz který udává počet záznamů, které se mají vyvolat v daný čas. - 649 - NoMatchMessage Vlastnost: NoMatchMessage Účel: Nastavuje zprávu, která se zobrazí v okamžiku, kdy ovládací prvek Alarm Pareto nemá žádné údaje ke zpracování. Typ: Message (Text) Výchozí nastavení: No Matches Found (Nenalezeny žádné údaje vyhovující dané podmínce) Syntaxe: Object.NoMatchMessage [= message] FilterFavoritesFile Vlastnost: FilterFavoritesFile Účel: Nastavuje název souboru s oblíbenými filtry dotazů. Typ: Message (Text) Výchozí nastavení: None (Žádný) Syntaxe: Object.FilterFavoritesFile [= message] QueryTimeZone Vlastnost: QueryTimeZone Účel: Nastavuje časové pásmo na UTC Time (=GMT) nebo na Origin Time (aktuální čas v časovém pásmu pracovníka obsluhy systému). Typ: Discrete (Diskrétní) Výchozí nastavení: Origin Time Syntaxe: Object.QueryTimeZone [= message] ServerName Vlastnost: ServerName Účel: Vrací název aktuálního serveru. Typ: Message (Text) Výchozí nastavení: (local) (místní) Syntaxe: Object.ServerName [= message] - 650 - ShowCountPercentage Vlastnost: ShowCountPercentage Účel: Pokud je tato volba vybrána, zobrazuje se počet v každém sloupci grafu jako procento z celkového počtu, pokud není vybrána, zobrazuje se aktuální počet pro každý sloupec. Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.ShowCountPercentage [= discrete] ShowNodeName Vlastnost: ShowNodeName Účel: Nastaví ovládací prvek Alarm Pareto tak, aby na sloupci grafu zobrazoval název uzlu navíc k ostatním informacím na sloupci. Typ: Discrete (diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.ShowNodeName [= discrete] ShowSelectedInStatusBar Vlastnost: ShowSelectedInStatusBar Účel: Zapíná nebo vypíná zobrazení informací z vybraného sloupce ve stavovém řádku. Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.ShowSelectedInStatusbar [= discrete] - 651 - ShowSelectedInStatusBar Vlastnost: ShowSelectedInStatusBar Účel: Zapíná nebo vypíná zobrazení informací z vybraného sloupce ve stavovém řádku. Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.ShowSelectedInStatusbar [= discrete] ShowStatusBar Vlastnost: ShowStatusBar Účel: Vrací nebo nastavuje hodnotu která určuje, zda se zobrazí stavový řádek. Typ: Discrete (Diskrétní) Výchozí nastavení: True (Pravda) Syntaxe: Object.ShowStatusBar [= discrete] ShowTimeinState Vlastnost: ShowTimeinState Účel: Vrací nebo nastavuje hodnotu která určuje, zda ovládací prvek Alarm Pareto zobrazí sloupce grafu podle času, ve kterém proměnná zůstala ve stavu alarmu. Pokud je tato volba vypnuta, ovládací prvek zobrazuje sloupce grafu podle počtu, kolikrát alarm nastal. Typ: Discrete Výchozí nastavení: False Syntaxe: Object.ShowTimeinState [= discrete] - 652 - SpecificTime Vlastnost: SpecificTime Účel: Vrací nebo nastavuje hodnotu která určuje, zda ovládací prvek používá vlastnosti "start time" (Počáteční čas) a "end time" (Konečný čas), nebo zda je vypočte na základě hodnoty uvedené ve vlastnosti Duration (Délka trvání). Typ: Discrete (Diskrétní) Výchozí nastavení: False (Nepravda) Syntaxe: Object.SpecificTime [= Discrete] True (Pravda) Použijí se vlastnosti "Start time" (Počáteční čas) a "end time" (Konečný čas). False (Výchozí) "Start time" (Počáteční čas) a "End time" (Konečný čas) se vypočítají z vlastnosti Duration (Délka trvání) StartTime Vlastnost: StartTime Účel: Vrací nebo nastavuje počáteční datum a čas („Start time“). Typ: Message (Text) Výchozí nastavení: Čas, kdy jste vložili ovládací prvek Alarm Pareto do okna Vaší aplikace. Syntaxe: Object.StartTime [= text] text Text (textový výraz), který se vyhodnotí jako počáteční čas User Vlastnost: User Účel: Vrací nebo nastavuje parametr UserID (uživatelské jméno, název uživatelského účtu), používané k ovládání připojení k SQL Serveru. Typ: Message (Text) Syntaxe: Object.UserID [= text] text Text (textový výraz), který se vyhodnotí jako User ID. - 653 - Metody a události AboutBox Metoda: AboutBox Účel: Zobrazuje dialogové okno “O aplikaci” (About). Syntaxe: Object.AboutBox Příklad: #AlarmPareto1.AboutBox(); kde název ovládacího prvku je AlarmPareto1. Connect Metoda: Connect Účel: Připojí ovládací prvek k databázi konfigurované na kartě Database (Databáze) dialogového panelu vlastností ovládacího prvku. Syntaxe: Object.Connect( ) Příklad: #AlarmPareto1.Connect(); kde název ovládacího prvku je AlarmPareto1. GetItemAlarmName Metoda: GetItemAlarmName Účel: Vrací název alarmu pro zadaný sloupec grafu. Syntaxe: Object.GetItemAlarmName(BarIndex) Příklad Parametr Popis BarIndex Index (pořadové číslo) sloupce grafu. #AlarmPareto1.GetItemAlarmName(1); kde název ovládacího prvku je AlarmPareto1. - 654 - GetItemAlarmType Metoda: GetItemAlarmType Účel: Vrací typ alarmu pro zadaný sloupec grafu. Syntaxe: Object.GetItemAlarmType(BarIndex) Příklad: Parametr Popis BarIndex Index (pořadové číslo) sloupce grafu. #AlarmPareto1.GetItemAlarmType(1); kde název ovládacího prvku je AlarmPareto1. GetItemCount Metoda: GetItemCount Účel: Vrací počet alarmů v zadaném sloupci grafu. Syntaxe: Object.GetItemCount(BarIndex) Příklad: Parametr Popis BarIndex Index (pořadové číslo) sloupce grafu. #AlarmPareto1.GetItemCount(1); kde název ovládacího prvku je AlarmPareto1. GetItemEventType Metoda: GetItemEventType Účel: Vrací typ alarmní události pro zadaný sloupec grafu. Syntaxe: Object.GetItemEventType(BarIndex) Příklad: Parametr Popis BarIndex Index (pořadové číslo) sloupce grafu. #AlarmPareto1.GetItemEventType(1); kde název ovládacího prvku je AlarmPareto1. - 655 - GetItemProviderName Metoda: GetItemProviderName Účel: Vrací název poskytovatele z nastalých alarmů pro zadaný sloupec grafu. Syntaxe: Object.GetItemProviderName(BarIndex) Příklad: Parametr Popis BarIndex Index (pořadové číslo) sloupce grafu. #AlarmPareto1.GetItemProviderName(1); kde název ovládacího prvku je AlarmPareto1. GetItemTotalTime Metoda: GetItemTotalTime Účel: Vrací celkový čas, ve kterém je proměnná ve stavu alarmu. Syntaxe: Object.GetItemTotalTime(BarIndex) Příklad: Parametr Popis BarIndex Index (pořadové číslo) sloupce grafu. #AlarmPareto1.GetItemTotalTime(1); kde název ovládacího prvku je AlarmPareto1. Refresh Metoda: Refresh Účel: Aktualizuje zobrazení vytvořené ovládacím prvkem z databáze a pokud je spojení na databázi úspěšné, zobrazí sadu záznamů v rozsahu od 1 do MaxRecords. Syntaxe: Object.Refresh( ) Příklad: #AlarmPareto1.Refresh(); kde název ovládacího prvku je AlarmPareto1. - 656 - SelectQuery Metoda: SelectQuery Účel: Vybere filtr, který je nakonfigurovaný v souboru s oblíbenými filtry dotazů. Syntaxe: Object.SelectQuery(Query) Příklad: Parametr Popis Query Název filtru dotazu. #AlarmPareto1.SelectQuery("MyFilter"); kde název ovládacího prvku je AlarmPareto1. - 657 - Přiřazení událostních skriptů ActiveX ovládacímu prvku Alarm Pareto ¾ Chcete-li přiřadit událostní skripty ActiveX ovládacímu prvku Alarm Pareto 1. Klepněte dvakrát na objekt Alarm Pareto ActiveX nebo na něj klepněte pravým tlačítkem myši a potom z kontextové nabídky vyberte Properties (Vlastnosti). Otevře se dialogový panel s vlastnostmi ovládacího prvku Alarm Pareto ActiveX. 2. Klepněte na kartu Events (Události). 3. Ve sloupci Script (Skript) klepněte na prázdnou buňku události, které chcete přiřadit skript. 4. Napište název skriptu do sloupce Script (Skript) nebo klepněte na tlačítko (...) pro procházení seznamu skriptů ActiveX. Při výběru skriptu ze seznamu klepněte na OK, až skript vyberete. 5. Klepněte na Apply (Použít). Můžete pokračovat konfigurováním další události nebo klepněte na OK, abyste dialogové okno zavřeli. Event: Click (Klepnutí) Purpose: Nastane, když uživatel klepne levým tlačítkem myši a tlačítko uvolní nad sloupcovým grafem. Syntax: tagname = #ThisEvent.ClicknBarIndex ClicknBarIndex Vrací pořadové číslo (index) sloupce, na který se kleplo. #Thisevent Keyword (klíčové slovo) - 658 - Event: DoubleClick (Klepnutí dvakrát) Purpose: Nastane, když uživatel klepne dvakrát levým tlačítkem myši a tlačítko uvolní nad sloupcovým grafem. Syntax: Tagname = #ThisEvent.DoubleClicknBarIndex DoubleClicknBarI Vrací pořadové číslo (index) sloupce grafu, na ndex který se kleplo dvakrát. #Thisevent Keyword (Klíčové slovo) Události Click (Klepnutí) a DoubleClick (Klepnutí dvakrát) počítají od 0. První sloupec grafu má tedy index 0. - 659 - K A P I T O L A 1 1 Nástroje pro správu alarmů Obsah • Utilita Alarm DB Logger • Utilita Alarm DB Purge/Archive • Utilita Alarm DB Restore Utilita Alarm DB Logger Součástí distribuovaného alarmového systému programu InTouch je utilita Alarm DB Logger , která ukládá alarmy a události do databáze Microsoft® SQL Server a/nebo do Microsoft® Data Engine (MSDE). Poznámka: MSDE je funkčně zeštíhlená verze programu SQL Server, která má řadu výhodných vlastností. Databáze původně vytvořené pro MSDE můžete snadno připojit i k funkčně neomezené verzi databáze SQL Server. Není potřeba zvětšovat velikost databáze ani kopírovat jednotlivé tabulky z databáze MSDE do databáze SQL Serveru. MSDE je vhodnější pro aplikace, kde je cenově neefektivní nasazovat výkonné databázové systémy. Maximální velikost databáze programu MSDE je omezena na 2 GB. Utilita Alarm DB Logger pracuje jako spotřebitel alarmů. V konfiguraci utility je nastaven dotaz na databázi alarmů, který definuje, které alarmy budou ukládány. Utilita Alarm DB Logger se využívá ke specifikaci dotazů na databázi alarmů a k ukládání alarmů vyhovujících nastaveným dotazům. Dotazy na databázi alarmů jsou zasílány prostřednictvím rozhraní spotřebitele alarmů do distribuovaného alarmového systému. Utilita Alarm DB Logger je schopna automaticky opětovně navázat spojení s databází, kam jsou alarmy ukládány. Když je spojení na databázi přerušeno, utilita Alarm DB Logger v pravidelných intervalech kontroluje, zda je spojení možné obnovit. Po obnovení spojení ukládání alarmů pokračuje. Utilita Alarm DB Logger zapisuje informace o chybách do tzv. Loggeru, ať již pracuje jako služba operačního systému nebo jako normální aplikace. Utilita Alarm DB Logger je tvořena následujícími dvěma komponenty. 1. Utilita Alarm DB Logger Manager – Tato utilita je samostatně spustitelná a stará se výhradně o řízení operací ukládání alarmů. Spouští se a začíná práci buď jako služba operačního systému Windows nebo jako normální aplikace (v závislosti na provozním režimu, který jste zvolili v utilitě Alarm DB Logger Manager). Při startu utilita získává konfigurační data z registru Windows a na jejich základě provádí ukládání. 2. Utilita Alarm DB Logger Configuration – Tato utilita se stará o uživatelský vstup a konfiguraci databáze. Utilita Alarm DB Logger Manager Vám umožňuje zvolit režim, ve kterém bude běžet utilita Alarm DB Logger (buď jako služba operačního systému - 660 - Windows nebo normální aplikace). Poznámka: Utilita Alarm DB Logger Manager ukládá do registru Windows parametry nastavení a je odpovědná za spuštění a zastavení utility Alarm DB Logger. Dále se stará o zobrazení stavu inteligentní vyrovnávací paměti. Po uzavření utility Alarm DB Logger Manager (buď stisknutím klávesy Esc nebo klepnutím tlačítka “X” v horním pravém rohu dialogového okna) (almlogwiz.exe) při současném běhu wwalmlogger.exe se operace ukládání neukončí. Procentuální naplnění místní paměti záznamy o alarmech je indikováno ukazatelem stavu. Alarmy jsou ukládány do místní paměti v případě, když je přerušeno spojení s databází SQL Server a/nebo když alarmy přicházejí rychlostí vyšší než je rychlost jejich ukládání utilitou Alarm DB Logger. Utilita Alarm DB Logger Configuration Vám umožňuje: • Spustit aplikaci Alarm DB Logger jako službu operačního systému Windows nebo jako normální aplikaci • Konfigurovat spojení s databází – SQL Server nebo MSDE • Vytvořit potřebné tabulky v databázi • Specifikovat dotaz na alarmy, které mají být ukládány • Zvolit režim ukládání – Detailní nebo Sloučený • Zvolit/zrušit volbu ukládání událostí • Nastavit interval ukádání alarmů • Uložit nastavení do registru Další informace najdete v oddílu "Konfigurace utility Alarm DB Logger". Ukládání do databáze SQL Utilita Alarm DB Logger ukládá alarmová data do databáze. Pokud je poskytovatelem OLEDB SQL Server, budete potřebovat v utilitě Alarm DB Logger Manager specifikovat počítač, na kterém se databáze SQL Server nachází. Utilita Alarm DB Logger automaticky vytváří nezbytné datové struktury. Další informace najdete v oddílu "Zobrazení databáze distribuovaných alarmů". Výběr databázového programu Již ve fázi přípravy projektu budete muset rozhodnout, zda použijete pro ukádání alarmů program MS SQL Server nebo Microsoft Data Engine (MSDE). Určitě je třeba zvážit řadu faktorů, jako je např. počet uživatelů, kteří se k databázi budou připojovat, plánované rozšíření systému, náklady na pořízení systému atd. MSDE MSDE je relační databázový program plně kompatibilní se systémem Microsoft SQL Server, který umožňuje lokální nebo vzdálené ukládání dat. Tato kompatibilita umožňuje řešení založená na použití programu MSDE snadno převést na SQL Server v případě, že požadavky na systém narostou. Tak jako program MS SQL Server i MSDE zaznamenává transakce. To znamená, že když se cokoli nezdaří během zápisu do databáze MSDE (z důvodu chyby disku, poruchy sítě nebo výpadku proudu atd.), MSDE se dokáže na - 661 - základě zaznamenaných transakcí vrátit do posledního konsistentního stavu. Tento režim práce činí databáze MSDE velmi spolehlivými. Následně jsou uvedeny základní vlastnosti programu MSDE: • Architektura klient-server. • Je plně kompatibilní s programem Microsoft SQL Server. • Využívá zabezpečení integrované v systému Windows NT/Windows 2000. • Pracuje jako služba operačního systému. • Velikost databáze je omezena na 2 GB. • Neposkytuje vlastní uživatelské rozhraní, ani nástroje správy databáze. • Je distribuována s programem InTouch 7.11 pro použití s utilitou Alarm DB Logger. • Je optimalizována pro malé systémy, jako je např. samostatný počítač nebo jako server pro malou pracovní skupinu. Firma Microsoft neomezuje počet uživatelů, kteří se mohou připojit k databázi programu MSDE, ale důrazně doporučuje, aby pro více než 5 uživatelů byla již použita databáze MS SQL Server. Toto doporučení je založeno na skutečnosti, že výkon programu MSDE není již ve větších systémech dostačující. Wonderware podporuje současné připojení maximálně 3 uživatelů k MSDE a důrazně doporučuje použít databázi Microsoft SQL Server v jakémkoli síťovém řešení, neboť program SQL Server obsahuje diagnostické nástroje a nástroje pro správu, které jsou v síťové aplikace téměř nezbytné a nejsou v MSDE obsaženy. Kromě toho je SQL Server podstatně výkonnější při práci v počítačové síti. Microsoft SQL Server Program Microsoft SQL Server je relační databázový správní systém klient-server (RDBMS). Jako databázový správní systém má svoje vlastní uživatelské rozhraní a množství nástrojů a utilit, které umožňují administraci serveru a databází. Poskytuje také utility pro diagnostiku a odstraňování chyb. Program Microsoft SQL Server je konstruován tak, aby splňoval velmi náročné požadavky databázových aplikací; od malých systémů až po rozsáhlé podnikové aplikace. Microsoft SQL Server je možné nainstalovat jak na běžné PC tak na víceprocesorové serverové klusterové systémy. MS SQL Server zvládá obsloužit velké množství současně přistupujících uživatelů a spravovat velké databáze. Microsoft SQL Server je k dispozici v různých verzích: SQL Server, SQL Server Enterprise Edition a SQL Server Desktop. Následně jsou uvedeny základní vlastnosti programu MS SQL Server: • Architektura klient-server. • Poskytuje své vlastní uživatelské rozhraní a také nástroje a utility pro správu. • Využívá zabezpečení integrované v systému Windows NT/Windows 2000. • Pracuje jako služba operačního systému. • Databáze se mohou operativně zvětšovat až do velikosti několika terabajtů dat • Je snadno rozšiřitelný z malých samostatných systémů na rozlehlé klustery. • Program MS SQL Server je možné integrovat i s jinými produkty firmy Microsoft. Například: • Používá integrované zabezpečení systému Windows NT/2000. • Propojení s IIS. - 662 - • Přímý přístup z programu Access 2000 • PivotTable v programu Excel 2000 může být použita pro analýzu dat v databázích SQL. • Integrace s programem Microsoft Exchange Server Připojení jakéhokoli obslužného programu přihlášeného pod lokálním systémovým účtem přistupujícího ke vzdálenému počítači prostřednictvím protokolu Name Pipes selže v důsledku zabezpečení implementovaného v systému Windows. Sdílení IPC používané protokolem Named Pipes bude vyžadovat oprávnění správce systému. Důrazně tedy doporučujeme použít v takových situacích protokol TCP/IP. Porovnání databázových systémů TIP Následující tabulka porovnává program Microsoft SQL Server a MSDE. Rozšiřitelnost Velikost databáze Souběžně přistupující uživatelé Podpora více procesorů Seskupování Důležité pro provoz Ukládání transakcí Lze použít pro 24 x 7 aplikací Zabezpečení Využívá zabezpečení systému Windows NT/2000 Správa Nástroje a utility pro diagnostiku a odstraňování chyb SQL Server MSDE Může dosáhnout několika terabajtů Schopný obsloužit stovky až tisíce uživatelů Maximálně 32 (Enterprise Edition) Ano Ano Ano Omezeno na 2 GB Ano Ano Ano Ano Ano Service Manager Service Manager Doporučeno méně než 5 Maximálně 2 Microsoft Management Console Client Network Utility Enterprise Manager Server Network Utility SQL Server Performance Monitor SQL Server Profiler SQL Server Query Analyzer Pro samostatné nebo malé síťové systémy s databázemi, které používají méně než 2 GB představuje program MSDE levnou alternativu, která umožňuje snadný přechod k databázi MS SQL Server v případě zvýšení nároků na systém v budoucnosti. Připomínáme, že Wonderware podporuje současný přístup maximálně 3 uživatelů k databázi programu MSDE a důrazně doporučuje, abyste použili Microsoft SQL Server v jakémkoli síťovém řešení, neboť program SQL Server obsahuje diagnostické nástroje, nástroje pro správu a - 663 - disponuje vyšším výkonem při práci v síti. Pokud požadavky na databázi vyžadují více než 2 GB datového prostoru, výkonnost systému je důležitým faktorem, nejde o malou síťovou aplikaci a nástroje a utility pro správu databáze jsou pro údržbu aplikace klíčové, pak je program MS SQL Server tou nejlepší volbou. Poznámka: Utilita Alarm DB Logger podporuje pouze ověřování typu SQL Authentication. Utilita Alarm DB Logger se není schopna spojit na databázi, jestliže připojení je konfigurováno pro použití modelu ověření Windows. Použití utility Alarm DB Logger Utilita Alarm DB Logger je samostatně spustitelný program, který se zaměřuje výhradně na ukládání alarmů. Spouští se a začíná práci buď jako služba operačního systému nebo jako normální aplikace (v závislosti na režimu provozu, který jste zvolili během konfigurace utility Alarm DB Logger). Utilita ukládání vyhledává parametry nastavení z registru Windows a na jejich základě provádí ukládání. Program Alarm DB Logger pracuje jako spotřebitel alarmů. ¾ Použití utility Alarm DB Logger 1. Spusťte utilitu Alarm DB Logger Manager. Objeví se dialogové okno Alarm DB Logger Manager. TIP Když je utilita Alarm DB Logger Manager minimalizována, objeví se jako ikona v oznamovací oblasti ovládací lišty systému. Když klepnete pravým tlačítkem myši na ikonu, objeví se kontextová nabídka zobrazující následující příkazy: Start – Zahájí proces ukládání alarmů. Stop – Ukončí proces ukládání alarmů. Settings (Nastavení) - Otevře se dialogové okno Alarm DB Logger Manager – Configuration (Alarm DB Logger Manager – Konfigurace). Hide Window (Skrýt okno) – Minimalizuje okno utility Alarm DB Logger Manager na ikonu v oznamovací oblasti. Show Window (Zobrazit okno) - Otevře a maximalizuje dialogové okno Alarm DB Logger Manager. Close (Zavřít) - Ukončí utilitu Alarm DB Logger Manager. Smart Cache Status (Stav inteligentní ukládací mezipaměti) indikuje procento naplnění mezipaměti záznamy o alarmech. 2. Klepněte na Settings (Nastavení) pro provedení konfigurace utility Alarm DB Logger. Objeví se dialogové okno Alarm DB Logger Manager – Configuration (Alarm DB Logger Manager – Konfigurace). Další informace o nastavení utility Alarm Logger najdete v oddílu "Konfigurace - 664 - utility Alarm DB Logger". 3. Klepněte na Start pro zahájení procesu ukládání alarmů. 4. Klepněte na Stop pro ukončení procesu ukládání alarmů. Konfigurace utility Alarm DB Logger Předtím, než začnete používat utilitu Alarm DB Logger, musíte nakonfigurovat několik parametrů, jako je např. definice připojení na databázi, seznam dotazů na alarmy, režim ukládání atd. Tyto parametry se nastavují prostřednictvím utility Alarm DB Logger Manager. První dialogové okno utility Alarm DB Logger Manager se zabývá připojením k databázi, do které mají být alarmy ukládány. Pro ukládání dat můžete zvolit buď SQL Server nebo Microsoft Data Engine (MSDE). Utilita Alarm DB Logger Configuration umožňuje vytvořit potřebné datové struktury (tabulky, pohledy a uložené procedury) a otestovat spojení s databází. Pokud se utilita Alarm DB Logger Manager použije pro vytvoření databáze, tabulek a uložených procedur, vytvoří se také tři uživatelské účty s rozdílnými úrovněmi ověření/zabezpečení: ¾ Účet Heslo wwAdmin wwadmin wwPower wwpower wwUser wwuser Konfigurace utility Alarm DB Logger 1. Spusťte utilitu Alarm DB Logger Manager. Objeví se dialogové okno Alarm DB Logger Manager. 2. Klepněte na Settings (Nastavení). Objeví se dialogové okno Alarm DB Logger Manager - Configuration (Alarm DB Logger Manager – Konfigurace). - 665 - 3. Ve skupině SQL Server/MSDE klepněte na šipku u položky Server Name (Název serveru) pro otevření seznamu dostupných serverů SQL/MSDE a potom zvolte název databázového serveru, na který požadujete data ukládat. Dále do pole Database vložte název databáze do které se májí ukládat dané alarmy (v našem případě databáze Production Alarms) 4. Ve skupině User Info (Informace o uživateli) zapište údaje do příslušných vstupních polí User Name (Uživatelské jméno) a Password (Heslo) pro přístup na databázi. (Všechny znaky v poli Password (Heslo) se zobrazí z bezpečnostních důvodů jako *.) 5. Ve skupině Logging Mode (Režim ukládání), klepněte na volbu Detailed (Detailní) nebo Consolidated (Sloučený). Režim Consolidated (Sloučený) zmenšuje velikost databáze. Když jsou alarmy ukládány do databáze, ve sloučeném režimu je pro vznik alarmu, případné potvrzení alarmu a zánik alarmu vytvořen jeden záznam. V režimu Detailed (Detailní) je v databázi vytvořen nový záznam pro každou změnu alarmového stavu (např. vznik, potvrzení a zánik alarmu budou v databázi zaznamenány jako tři záznamy). Nicméně pokud se alarmy budou zobrazovat v alarmových objektech, dotazy od těchto objektů se rychleji zpracují v databázi s režimem Detailed (Detailní). Režim Consolidated (Sloučený) je náročnější na zpracování dotazů. Jinými slovy, výsledek dotazu v alarmovém objektu bude zobrazen rychleji, pokud je databáze v režimu Detailed (Detailní). Rozdíl v rychlosti je závislý především na velikosti databáze. Pokud alarmová databáze obsahuje tisíce záznamů, je rozdíl nepatrný, naopak u databáze se statisícem záznamů může být citelný. - 666 - Poznámka: Pokud chcete změnit režim z Detailed na Consolidated nebo naopak, musíte znovu vytvořit alarmovou databázi, což způsobí ztrátu všech doposud uložených dat. Vytvoření databáze znovu vytvoří tabulky a přepíše tak všechny stávající alarmové informace (záznamy) v alarmové databázi. 6. Klepněte na Test Connection (Otestovat spojení) pro přezkoušení Vašeho spojení s cílovou databází. 7. Klepněte na Create (Vytvořit) pro vytvoření nové databáze/tabulek na zvoleném serveru. 8. Klepněte na Next (Další) pro přístup k dialogovému oknu Alarm DB Logger Manager – Query Selection (Alarm DB Logger Manager – Výběr dotazů). Konfigurace dotazů utility Alarm DB Logger Druhé dialogové okno utility Alarm DB Logger Manager slouží ke specifikaci dotazů na alarmy, které mají být ukládány. Poskytuje Vám několikařádkové vstupní pole pro zapsání seznamu dotazů. Umožňuje Vám také zvolit hodnoty priorit alarmů From (od) a To (do). ¾ Konfigurace údajů o dotazech 1. Pokud není již spuštěna, spusťte utilitu Alarm DB Logger Manager. Objeví se dialogové okno Alarm DB Logger Manager – Configuration (Alarm DB Logger Manager – Konfigurace). 2. Klepněte na Next (Další). Objeví se dialogové okno Alarm DB Logger Manager – Query Selection (Alarm DB Logger Manager – Výběr dotazů). - 667 - Poznámka: Pole Alarm State (Stav alarmu) a Query Type (Typ dotazu) jsou určena pouze pro čtení a jsou implicitně nastavena pro získávání historie všech alarmů (Alarm State = All; Query Type = Historical) 3. Klepněte na šipky From Priority (Od priority) pro zvolení počátku rozsahu priorit alarmů. 4. Klepněte na šipky To Priority (Do priority) pro zvolení konce rozsahu priorit alarmů. 5. V několikařádkovém vstupním poli Alarm Query (Dotaz na alarmy) napište seznam dotazů na alarmy, které chcete provést. Jako oddělovač jednotlivých dotazů slouží znak mezera. 6. Klepněte na Next (Další). Objeví se dialogové okno Alarm DB Logger Manager – Advanced Setting (Alarm DB Logger Manager – Pokročilé nastavení). Pokročilé nastavení utility Alarm DB Logger Třetí dialogové okno utility Alarm DB Logger Manager se týká pokročilého nastavení, např. volby režimu běhu utility (buď jako služba operačního systému Windows nebo normální aplikace). Poskytuje Vám také možnost nastavit ukládání událostí. Výkon ukládání alarmů můžete ovlivnit nastavením frekvence, se kterou se alarmy přepisují z mezipaměti do databáze. ¾ Konfigurace údajů pokročilého nastavení 1. Pokud není již spuštěna, spusťte utilitu Alarm DB Logger Manager. Objeví se dialogové okno Alarm DB Logger Manager – Configuration (Alarm DB Logger Manager – Konfigurace). 2. Klepněte na Next (Další). Objeví se dialogové okno Alarm DB Logger Manager – Query Selection (Alarm DB Logger Manager – Výběr dotazů). 3. Klepněte na Next (Další). Objeví se dialogové okno Alarm DB Logger Manager – Advanced Setting (Alarm DB Logger Manager – Pokročilé nastavení). - 668 - 4. Ve skupině Running Logger As (Běh utility Logger jako) zvolte jednu z následujících možností: Windows Service (Služba operačního systému Windows) – Nastaví, aby utilita fungovala jako služba operačního systému Windows. Normal Application (Normální aplikace) – Nastaví, aby utilita fungovala jako normální aplikace. 5. Zvolte možnost Log Events (Ukládat události) pro ukládání všech událostí do databáze. 6. Do vstupního pole Log Alarms Every # msec (Ukládat alarmy každých # ms), zapište časový interval v milisekundách, se kterým budou alarmy ukládány. Poznámka: Rychlost opětovného navázání spojení není dána nastavením rychlosti ukládání v ms. Nastavení parametru Performance Tuning (Ladění výkonu) na příliš nízkou hodnotu může nepříznivě ovlivnit výkon systému. 7. Klepněte na Finish (Dokončit) pro uzavření utility Alarm DB Logger Manager a uložení všech nastavení utility do registru systému Windows. Nové vlastnosti utility Alarm DB Logger Program InTouch má tři typy zabezpečení: zabezpečení na základě aplikace InTouch, zabezpečení na základě operačního systému a zabezpečení na základě platformy ArchestrA. Když je zvolen typ využívající operační systém Windows, alarmový poskytovatel posílá s alarmovým záznamem také plné jméno uživatele (operátora) převzaté z operačního systému a název domény. Utilita Alarm DB Logger potom ukládá tyto informace do příslušných políček v alarmové databázi. - 669 - Utilita InTouch Alarm DB Logger je také schopna ukládat délku trvání nepotvrzeného (UNACK) alarmu. UNACK Duration (délka trvání nepotvrzeného alarmu) je rovna času potvrzení (ACK) mínus čas poslední změny, resp. vzniku alarmu, kde všechny datumy a časy jsou v časovém pásmu GMT. Kdykoli je alarmový záznam potvrzen, utilita Alarm DB Logger vypočítá UNACK Duration (délka trvání nepotvrzeného alarmu) následovně: Pokud alarm už existoval a přešel pouze do nové substavu (např. z Hi do HiHi), potom délka trvání nepotvrzeného alarmu (UNACK duration) bude čas potvrzení (ACK) mínus čas nové substavu. V ostatních případech to bude čas potvrzení (ACK) mínus čas vzniku alarmu. Pokud se u alarmového záznamu vyskytne jiný typ přechodu než ACK (potvrzení), utilita Alarm DB Logger uloží do sloupečku UNACK Duration výchozí hodnotu, tzn. hodnotu NULL. Objekt Alarm DB View Control je navíc schopen zobrazit délku trvání alarmu. Ta je vypočítána jako čas návratu do normálního stavu mínus čas vzniku alarmu. Délka trvání alarmu není uložena v databázi, ale je vypočítána a předána na požádání databázovými pohledy. - 670 - Utilita Alarm DB Purge/Archive Utilita Alarm DB Purge/Archive je samostatná aplikace, která je instalována společně s programem InTouch. Utilita Alarm DB Purge/Archive utility pracuje s databází alarmů a má za úkol provádět operace nevratného mazání starých záznamů nebo jejich archivace na základě parametrů daných v konfiguraci. Utilita Alarm DB Purge/Archive umožňuje: • Zvolit typ záznamů, které je třeba nevratně vymazat a/nebo archivovat (sloučené záznamy o alarmech nebo detailní záznamy o alarmech). • Specifikovat automatické nevratné mazání/archivování na základě časového programu podle konfigurace. • V případě potřeby nenávratně vymazat celou databázi. • Nastavit čas, ve kterém se bude nevratné mazání nebo archivace dat provádět. • Nastavit frekvenci údržby databáze určenou jako časový interval. Může to být denně, týdně nebo měsíčně. • Zobrazit stav nevratného mazání/archivace. • Uložit stav do protokolového souboru. (Tento protokolový soubor je možné v budoucnu použít pro zpětnou kontrolu nevratného mazání/archivace.) Konfigurace základních vlastností nevratného mazání/archivace Karta vlastností General (Obecné) utility Alarm DB Purge/Archive umožňuje konfigurovat základní parametry nevratného mazání/archivace. Můžete zvolit typ tabulek, se kterými bude utilita pracovat – buď AlarmDetail nebo AlarmConsolidated. Můžete zvolit možnost archivovat data, která budou z databáze mazána a rovněž máte možnost zvolit složku, do které má být archivace provedena. Archivní soubory se vytvoří pro každou tabulku, ze které je provedeno mazání dat. Názvy archívních souborů jsou vytvářeny automaticky jedinečnou kombinací názvu tabulky, data a času. Například název archivního souboru pro tabulku AlarmMaster, která byla archivována 10. listopadu 2000 v 5:30 odpoledne, bude AlarmMaster_11102000_1730.txt. - 671 - ¾ Nevratné vymazání/archivace databáze alarmů 1. TIP Spusťte utilitu Alarm DB Purge/Archive. Objeví se dialogové okno Purge/Archive (Nevratně vymazat/archivovat). Když je utilita Alarm DB Purge/Archive minimalizována, objeví se jako ikona v oznamovací oblasti systémové lišty systému Windows. Když klepnete pravým tlačítkem myši na ikonu, objeví se kontextová nabídka zobrazující následující příkazy: Purge All Now – Nevratně vymaže všechny alarmové záznamy z databáze. Purge Now – Spustí nevratné mazání s parametry danými aktuální konfigurací. Cancel Purge – Zastaví proces nevratného mazání. (Tento příkaz je aktivní pouze tehdy, pokud nevratné mazání probíhá.) Zastavíte-li nevratné mazání, databáze se vrátí zpět do svého původního stavu. Activate – Aktivuje nevratné mazání na základě nastaveného časového programu. DeActivate – Deaktivuje časový program, který ovládá nevratné mazání. Test Now – Provede test spojení s databází a cílovými umístěními. Clear Status – Vymaže obsah stavového okna. Hide Window – Minimalizuje okno utility Alarm DB Purge/Archive a aktivujena ikonu v oznamovací oblasti systémové lišty Windows. Show Window - Otevře a maximalizuje utilitu Alarm DB Purge/Archive. Exit (Konec) - Ukončí utilitu Alarm DB Purge/Archive. Pokud klepnete pravým tlačítkem myši na jakoukoli kartu konfigurace utility Alarm DB Purge/Archive, objeví se stejná kontextová nabídka. - 672 - 2. Ve skupině Purge Properties (Vlastnosti nevratného mazání) zvolte možnost, kterou chcete pro nevratné mazání použít: • Detailed Mode (Detailní režim) pro práci s alarmovými záznamy, které byly uloženy v detailním režimu. • Consolidated Mode (Sloučený režim) pro práci s alarmovými záznamy, které byly uloženy ve sloučeném režimu. 3. Poté, co zvolíte režim Purge Properties (Vlastnosti nevratného mazání), je aktivováno zadávací pole Days Online. Zapište počet dnů, pro které chcete zpětně uchovat alarmová data. Všechna data ze dnů předcházejících specifikovaný počet budou nevratně mazána. (Platné vstupy jsou 0-9999.) Pokud je číslo rovno 0, nebude se nevratné mazání provádět nikdy. 4. Zvolte možnost Archive (Archivovat) a potom specifikujte úplnou cestu (až 255 alfanumerických znaků) k databázové složce, do které žádáte data archivovat, buď zapsáním úplné cesty ve vstupním poli Archive Folder Path (Cesta k archivační složce) nebo prostřednictvím příslušného tlačítka procházení složek (… ). (Jakmile cestu zvolíte, automaticky se objeví ve vstupním poli.) 5. Ve vstupním poli Log File Path (Cesta k protokolovému souboru) specifikujte úplnou cestu (až 255 alfanumerických znaků) ke složce, kde chcete ukládat záznamy o práci utility, nebo klepněte na příslušné tlačítko procházení (…) pro nalezení a zvolení cílové složky. (Jakmile složku zvolíte, cesta se automaticky objeví v zadávacím poli.) Poznámka: Implicitně se protokolový soubor (wwalmpurge.log) ukládá ve složce FactorySuite\Common. Záznamy budou do tohoto souboru připojeny vždy, když dojde k nevratnému mazání/archivaci. 6. Klepněte na Apply (Použít) nebo klepněte na OK pro uložení nastavení a uzavření utility Alarm DB Purge/Archive. Konfigurace databáze nevratného mazání/archivace Karta vlastností Database (Databáze) utility Alarm DB Purge/Archive umožní konfigurovat databázové připojení k serveru, na kterém bude údržba probíhat. ¾ Konfigurace databáze utility Alarm DB Purge/Archive 1. Spusťte utilitu Alarm DB Purge/Archive. Objeví se dialogové okno Purge/Archive (Nevratně vymazat/archivovat). 2. Klepněte na záložku Database (Databáze) pro aktivaci záložky Database (Databáze): - 673 - TIP Klepnete-li pravým tlačítkem myši na kartu vlastností, objeví se kontextová nabídka zobrazující následující příkazy: Purge All Now – Nevratně vymaže všechny alarmové záznamy z databáze. Purge Now – Spustí nevratné mazání s parametry danými aktuální konfigurací. Cancel Purge – Zastaví proces nevratného mazání. (Tento příkaz je aktivní pouze tehdy, pokud nevratné mazání probíhá.) Zastavíte-li nevratné mazání, databáze se vrátí zpět do svého původního stavu. Activate – Aktivuje nevratné mazání na základě nastaveného časového programu. DeActivate – Deaktivuje časový program, který ovládá nevratné mazání. Test Now – Provede test spojení s databází a cílovými umístěními. Clear Status – Vymaže obsah stavového okna. Hide Window – Minimalizuje okno utility Alarm DB Purge/Archive a aktivujena ikonu v oznamovací oblasti systémové lišty Windows. Show Window - Otevře a maximalizuje utilitu Alarm DB Purge/Archive. Exit (Konec) - Ukončí utilitu Alarm DB Purge/Archive. 3. Ve skupině SQL Server/MSDE klepněte na šipku Server Name (Jméno serveru) pro otevření seznamu dostupných serverů SQL/MSDE, potom zvolte jméno databázového serveru, který chcete použít. 4. Pole Database (Databáze) zobrazí název alarmové databáze který je možné dle potřeby změnit. 5. Ve skupině User Information (Informace o přistupujícím uživateli) zapište do příslušných vstupních polí jméno uživatele User (Uživatel) a heslo Password (Heslo) pro připojení k databázi. (Všechny znaky v poli Password (Heslo) se zobrazí z bezpečnostních důvodů jako ****). - 674 - 6. Klepněte na Test Connection (Otestovat spojení) pro přezkoušení připojení k databázi. 7. Klepněte na Apply (Použít) nebo klepněte na OK pro uložení nastavení a zavření utility Alarm DB Purge/Archive. Konfigurace nevratného mazání/archivace Karta vlastností Purge/Archive (Nevratně vymazat/archivovat) umožní nastavit čas, ve kterém bude automaticky aktivováno nevratné mazání/archivace. Umožní Vám také provést zkušební nevratné mazání pro ověření Vašeho spojení s databází a cílových umístění složek pro archivaci a zápis protokolu o mazání a spustit a zastavit nevratné mazání. ¾ Konfigurace časového intervalu utility Alarm DB Purge/Archive 1. Spusťte utilitu Alarm DB Purge/Archive. Objeví se dialogové okno Purge/Archive (Nevratně vymazat/archivovat). 2. Klepněte na záložku Purge/Archive (Nevratně vymazat/archivovat) pro aktivaci záložky Purge/Archive (Nevratně vymazat/archivovat): TIP Klepnete-li pravým tlačítkem myši na kartu vlastností, objeví se kontextová nabídka zobrazující následující příkazy: Purge All Now – Nevratně vymaže všechny alarmové záznamy z databáze. Purge Now – Spustí nevratné mazání s parametry danými aktuální konfigurací. Cancel Purge – Zastaví proces nevratného mazání. (Tento příkaz je aktivní pouze tehdy, pokud nevratné mazání probíhá.) Zastavíte-li nevratné mazání, databáze se vrátí zpět do svého původního stavu. Activate – Aktivuje nevratné mazání na základě nastaveného časového programu. DeActivate – Deaktivuje časový program, který ovládá nevratné mazání. Test Now – Provede test spojení s databází a cílovými umístěními. Clear Status – Vymaže obsah stavového okna. - 675 - Hide Window – Minimalizuje okno utility Alarm DB Purge/Archive a aktivujena ikonu v oznamovací oblasti systémové lišty Windows. Show Window - Otevře a maximalizuje utilitu Alarm DB Purge/Archive. Exit (Konec) - Ukončí utilitu Alarm DB Purge/Archive. Zvolte možnost volby Time Interval (Časový interval), který chcete použít: • Daily (Denně) - Spustí nevratné mazání každý den v čase zvoleném v poli Time (Čas). • Weekly (Jedenkrát za týden) – Spustí nevratné mazání jedenkrát za týden v den zvolený v poli Day (Den) a v čase zvoleném v poli Time (Čas). • Monthly (Jedenkrát za měsíc) – Spustí nevratné mazání jedenkrát za měsíc v den zvolený v poli Day (Den) a v čase zvoleném v poli Time (Čas). Poznámka: Pole Day (Den) je implicitně skryté. Je aktivováno, jakmile zvolíte časový interval Weekly (Jednou za týden) nebo Monthly (Jednou za měsíc). 1. Po zvolení možnosti Time Interval (Časový interval) použijte šipky nahoru/dolů v poli Time (Čas) pro zadání času, kdy bude aktivováno nevratné mazání/archivace. 2. Po zvolení možnosti Time Interval (Časový interval) (pouze pro Weekly (Jedenkrát za týden) a Monthly (Jedenkrát za měsíc)) klepněte na šipku v poli Day (Den) pro zadání dne, ve kterém bude aktivováno nevratné mazání-archivace. (Den týdne, pokud časový interval je Weekly (Jedenkrát za týden), nebo den měsíce, pokud časový interval je Monthly (Jednou za měsíc).) 3. Průběh nevratného mazání je možné sledovat v rámečku Status (Stav). 4. Klepněte na Purge Now (Nevratně vymazat nyní) pro spuštění nevratného mazání s aktuálními nastaveními. Poznámka: Klepnutí na Purge Now (Nevratně vymazat nyní) spustí proces nevratného mazání s případnou archivací dat okamžitě. Příkaz Purge Now (Nevratně vymazat nyní) zkontroluje přítomnost archivního souboru a zapíše do něj záznamy o prováděné činnosti. V případě, že archivní soubor není přítomen, vytvoří se automaticky podle názvoslovné konvence a poté je použit pro archivaci. Příkaz Purge Now nevymaže údaje v tabulkách ProviderSession (Relace poskytovatele), Query (Dotaz) a Cause (Příčina), které jsou propojeny s hlavními tabulkami, jako je např. AlarmMaster. Záznamy v těchto tabulkách se zapíší do souborů pro uchování konzistence dat a jsou ponechány v databázi. 5. Klepněte na Test Now (Provést nyní test) pro provedení zkušebního nevratného mazání, kterým je ověřeno připojení k databázi a kontrola cesty na archivní adresář. (Toto tlačítko je aktivní pouze tehdy, když byla zvolena možnost Archive (Archivovat) v tabulce Purge/Archive (Nevratně vymazat/archivovat). Příkaz vytvoří prázdný archivní soubor v zadané cestě archivace.) 6. Klepněte na Cancel Purge (Stornovat nevratné mazání) pro stornování nevratného mazání. (Toto tlačítko je aktivní jen v případě, že nevratné mazání právě probíhá.) Pokud stornujete nevratné mazání, databáze se vrátí zpět do svého původního stavu. 7. Klepněte na Purge All Now (Nevratně vymazat nyní všechny) pro nevratné vymazání všech záznamů z celé databáze. 8. Zvolit příkaz Purge All Now (Nevratně vymazat nyní všechny záznamy) můžete pouze v případě, že do databáze právě neukládá utilita Alarm DB Logger . Pokud ano, může se stát, že utilita Alarm DB Logger ukončí ukládání dat do databáze a - 676 - začne záznamy ukládat do alarmové mezipaměti. 9. Klepněte na Apply (Použít) nebo klepněte na OK pro uložení nastavení a uzavření utility Alarm DB Purge/Archive. - 677 - Utilita Alarm DB Restore Utilita Alarm DB Restore se používá pro obnovení archivovaných záznamů alarmů ze záložního souboru zpět do databáze. Konfigurace utility Alarm DB Restore Karta vlastností Configuration (Konfigurace) se používá pro specifikaci databáze, jejíž data je třeba obnovit. Pokud zadaná databáze není na serveru vytvořena, budete vyzváni pro potvrzení vytvoření nové databáze. Po potvrzení se vytvoří nová databáze s výchozími parametry na zadaném serveru. ¾ Konfigurace databáze pro obnovení: 1. Spusťte utilitu Alarm DB Restore. Objeví se dialogové okno Restore (Obnovit) s aktivní záložkou Configuration (Konfigurace). - 678 - TIP Když je utilita Alarm DB Restore minimalizována, objeví se jako ikona v oznamovací oblasti systémové lišty Windows. Když klepnete pravým tlačítkem myši na ikonu, objeví se kontextová nabídka zobrazující následující příkazy: Restore – Zahájí proces obnovení dat. Cancel Restore – Stornuje proces obnovení. Clear Status – Vymaže obsah stavového okna. Hide Window – Minimalizuje utilitu Alarm DB Restore a aktivuje ikonu v oznamovací oblasti systémové lišty Windows. Show Window - Otevře a maximalizuje utilitu Alarm DB Restore. Exit- Ukončí utilitu Alarm DB Restore. Pokud klepnete pravým tlačítkem myši na jakoukoli kartu konfigurace utility Alarm DB Restore, objeví se stejná kontextová nabídka. 2. Ve výběrovém poli SQL Server/MSDE klepněte na šipku Server Name (Jméno serveru) pro otevření seznamu dostupných serverů SQL/MSDE, zvolte jméno databázového serveru, který chcete pro obnovení dat použít. 3. Pole Database Name zobrazí název databáze. 4. Ve skupině User Information (Informace o uživateli) zapište do příslušných vstupních polí jméno uživatele User (Uživatel) a heslo Password (Heslo) pro připojení k databázi. (Všechny znaky v poli Password (Heslo) se zobrazí z bezpečnostních důvodů jako **.) 5. Klepněte na Test Connection (Otestovat spojení) pro přezkoušení Vašeho spojení s databází. Výběr složky Karta vlastností Selection (Výběr) utility Alarm DB Restore se týká názvu složky, ze které žádáte provést obnovení alarmových dat. Karta obsahuje také textové pole, do kterého je zapisován stav průběhu obnovování dat. Z tohoto dialogového okna můžete probíhající obnovení stornovat. Pokud obnovení stornujete, databáze se vrátí zpět do svého původního stavu. ¾ Výběr archívního souboru: 1. Spusťte utilitu Alarm DB Restore. Objeví se dialogové okno Restore (Obnovit) s aktivní záložkou Configuration (Konfigurace). 2. Klepněte na záložku Selection (Výběr) pro aktivaci karty vlastností Selection (Výběr). - 679 - TIP Když klepnete pravým tlačítkem myši na kartu vlastností, objeví se kontextová nabídka zobrazující následující příkazy: Restore – Zahájí proces obnovení dat. Cancel Restore – Stornuje proces obnovení. Clear Status – Vymaže obsah stavového okna. Hide Window – Minimalizuje utilitu Alarm DB Restore a aktivuje ikonu v oznamovací oblasti systémové lišty Windows. Show Window - Otevře a maximalizuje utilitu Alarm DB Restore. Exit- Ukončí utilitu Alarm DB Restore. 3. Ve vstupním poli Folder Path for Archived Files (Cesta na složku s archivovanými soubory) napište úplnou cestu (až 255 alfanumerických znaků) ke složce obsahující archivovaná data nebo použijte tlačítko hledání (…). (Jakmile složku zvolíte, cesta se automaticky vypíše do zadávacího pole.) - 680 - 4. Ve vstupním poli Folder path for log file (Cesta na protokolový soubor) zapište úplnou cestu (až 255 alfanumerických znaků), kde se vytvoří a uloží protokol o činnosti utility, nebo použijte příslušné tlačítko vyhledávání (…). (Jakmile složku zvolíte, cesta na protokolový soubor se automaticky vypíše v zadávacím poli.) 5. Zvolte Recreate Tables (Znovu vytvořit tabulky), pokud žádáte tabulky v cílové databázi znovu vytvořit. Nezvolíte-li tuto možnost, data se připojí k existujícím tabulkám. V případě opětovného vytvoření tabulek budou ztracena data uložená ve stávajících tabulkách. Jestliže zvolíte možnost Recreate Tables (Znovu vytvořit tabulky), zaktivuje se oblast formuláře Logging Mode (Režim ukládání), která umožňuje zvolit mód, který bude pro vytvoření tabulek a obnovení dat použit: • Detailed (Detailní) – Založí detailní tabulky a obnoví v nich data. • Consolidated (Sloučený) – Založí sloučené tabulky a obnoví v nich data. 6. V polích Restore files later than (Date/Time) (Obnovit záznamy vzniklé později než (datum/čas)) zvolte požadovaný datum a čas. Poznámka: Datum určuje, počínaje kterým dnem se mají data obnovit. Čas specifikuje, odkdy v určeném dni má dojít k obnově záznamů. V obou těchto polích je implicitně uveden aktuální datum a čas. - 681 - K A P I T O L A 1 2 SmartSymboly programu InTouch Abyste mohli snadno vytvářet a používat symboly integrované v platformě ArchestrA, můžete použít aplikaci InTouch Smart Symbol Manager (Správce SmartSymbolů programu InTouch). Můžete také vytvářet SmartSymboly pro použití s proměnnými programu InTouch. Aplikace SmartSymbol Manager je pevně integrované a uživatelsky přátelské rozhraní, ve kterém můžete grafické symboly vytvářet a integrovat je s objekty platformy ArchestrA a s jejich datovými atributy. Obsah • Přehled • SmartSymbol Manager (Správce SmartSymbolů) • Vygenerování SmartSymbolů • Vkládání instancí SmartSymbolů • Editování existujících SmartSymbolů • • • Knihovna SmartSymbolů • Dialogové okno SmartSymbol Properties (Vlastnosti SmartSymbolů) Přehled SmartSymboly se vytváří pomocí aplikace SmartSymbol Manager (Správce SmartSymbolů) a slouží jako šablony pro připojení objektů platformy ArchestrA k lokálním proměnným programu InTouch nebo k proměnným programu InTouch prostřednictvím vzdálených odkazů. Jakmile vytvoříte šablony symbolů a uložíte je v Symbol Library (Knihovně symbolů), můžete vkládat instance symbolů (odkazy na symboly) do aplikace tak, že je vyberete a přetáhnete do okna programu InTouch. Aplikace SmartSymbol Manager (Správce SmartSymbolů) zahrnuje prohlížeče pro snadné vyhledávání a dialogové panely pro výběr a konfiguraci AutomationObjects (automatizovaných objektů), mezi které patří i SmartSymboly. Aplikace je také vybavena rozhraním Tag Browser (Prohlížeč proměnných). Možnost vytvářet skripty Vám pomáhá při úpravě vzdálených objektů platformy ArchestrA nebo odkazů na proměnné programu InTouch při běhu programu. Možnost vytvářet skripty Vám také umožňuje úpravu Access Name (Komunikačního kanálu) (Galaxy - projekt Industrial Application Serveru nebo InTouch Tag Server node – uzel s funkčností Tag server). Spusťte aplikaci SmartSymbol Manager z nabídky Special (Speciální). V nabídce Special (Speciální) ukažte na SmartSymbol, abyste vstoupili do nabídky SmartSymbol. - 682 - Nabídka SmartSymbol obsahuje následující položky: Položka nabídky Popis Generate SmartSymbol (Vygenerovat SmartSymbol) Vygeneruje SmartSymbol z vybrané buňky. Manage SmartSymbol (Spravovat SmartSymbol) Zobrazí seznam složek, obsahující SmartSymboly. Existující SmartSymboly nebo adresáře můžete v rámci Symbol Library (Knihovny symbolů) přesouvat tak, že je přetáhnete na požadované místo. Více informací viz Knihovna SmartSymbolů. Recover SmartSymbol (Obnovit SmartSymbol) Dovoluje obnovit SmartSymboly z instancí v oknech, které byly z knihovny symbolů odstraněny. více informací viz Obnovení osamělých („orphaned“) instancí Symbolů Start SmartSymbol Edit (Začít editaci SmartSymbolu) Umožňuje měnit SmartSymbol existující v knihovně. Více informací viz Editování existujících SmartSymbolů (Editace existujících SmartSymbolů). End SmartSymbol Edit (Ukončit editaci SmartSymbolu) Pomocí této volby se uloží provedené úpravy stávajícího SmartSymbolu. Více informací viz Editování existujících SmartSymbolů (Editace existujících SmartSymbolů). SmartSymbol Manager (Správce SmartSymbolů) Aplikace SmartSymbol Manager slouží k vytváření, vkládání instancí a správě SmartSymbolů programu InTouch. Aplikace SmartSymbol Manager je také vybavena možností importu a exportu. Symboly tak lze přesouvat mezi různými aplikacemi InTouch a mezi různými fyzickými systémy. Poznámka: SmartSymboly jsou podporovány na platformách ArchestrA a v projektech Industrial Application Serveru 2.0 nebo vyšších. Vývojové prostředí, které je součástí aplikace (IDE=Integrated Development Environment) musí být instalováno na síťovém uzlu aplikace InTouch, aby bylo možné využívat vlastnosti vztahující se k platformě ArchestrA, jako jsou Template Browser (Prohlížeč šablon), Object Browser (Prohlížeč objektů) a vytvoření nové instance při práci se SmartSymboly. - 683 - Položky nabídek Správce SmartSymbolů Aplikace SmartSymbol Manager (Správce SmartSymbolů) je vybavena lištou s nabídkami, ve kterých jsou následující nabídky a položky nabídek: Nabídka File (Soubor) (Alt + F) Klávesová zkratka Položka nabídky Popis New Folder (Nová složka) Vytvoří novou složku na Alt + F, potom vybraném místě v aplikaci stiskněte F Symbol Manager (Správce symbolů). Položka nabídky je k dispozici jen když je zvýrazněna složka ve stromu adresáře. New Template Folder (Nová složka šablon) Vytvoří složku se Alt + F, potom šablonami na vybraném stiskněte T místě v aplikaci Symbol Manager (Správce symbolů). Položka nabídky je k dispozici jen když je zvýrazněna složka pod složkou “ArchestrA Symbols” nebo složka ve stromu adresáře. Browse Object Template Folder (Procházet složku se šablonami objektů) Umožní uživateli procházet Alt + F, potom stiskněte B Galaxy za účelem vyhledání existující Object Template (Šablony objektu) pro použití při vytvoření nové složky šablon. Položka nabídky je k dispozici jen když je zvýrazněna složka pod složkou “ArchestrA Symbols” nebo složka ve stromu adresáře. Delete (Odstranit) Vygeneruje výzvu k odstranění vybrané složky, složky šablon nebo symbolu. Alt + F, potom stiskněte D Import (Importovat) Dovoluje uživateli importovat soubor se sestavou symbolů z knihovny symbolů jiné aplikace. Alt + F, potom stiskněte I Export (Exportovat) Dovoluje uživateli exportovat jeden nebo více symbolů do souboru se Alt + F, potom stiskněte X - 684 - sestavou symbolů. Close (Zavřít) Zavře dialogové okno aplikace SmartSymbol Manager (Správce SmartSymbolů) Alt + F, potom stiskněte C Nabídka Edit (Editovat) (Alt + E) Klávesová zkratka Položka nabídky Popis Cut (Vyjmout) Vyjme složku, šablonu Ctrl + X nebo symbol tak, aby jej bylo možné vložit na jiné místo. Vyjmutí se uskuteční až v okamžiku vložení položky na jiné místo. Copy (Kopírovat) Okopíruje složku, šablonu nebo symbol tak, aby jej bylo možné vložit na jiné místo. Ctrl + C Paste (Vložit) Vloží složku, šablonu nebo symbol okopírovaný z jiného místa. Ctrl + V Rename (Přejmenovat) Dovoluje přejmenovat vybranou složku, šablonu nebo symbol. Alt + E, potom stiskněte R Nabídka Tools (Nástroje) (Alt + T) Klávesová zkratka Položka nabídky Popis Galaxy Configuration (Konfigurace Galaxy) Umožní vybrat nebo změnit Alt + T, potom GR Node a název Galaxy. stiskněte G Nabídka Help (Nápověda) (Alt + H) Položka nabídky Popis SmartSymbol Help (Nápověda ke SmartSymbolům) Otevře okno s on-line nápovědou ke SmartSymbolům. - 685 - Klávesová zkratka F1 Hierarchie ukládání SmartSymbolů do Knihovny symbolů SmartSymboly jsou uloženy v Symbol Library (Knihovně symbolů) ve standardní hierarchické struktuře složek. Aby se organizace SmartSymbolů v knihovně zjednodušila, jsou v knihovně symbolů vytvořeny dvě standardní složky. Standardní složky zahrnují složku nejvyšší úrovně pro šablony symbolů objektů platformy ArchestrA a pro šablony symbolů proměnných programu InTouch. Složky pro šablony objektů můžete vytvářet pomocí aplikace Symbol Manager (Správce symbolů). Šablony symbolů objektů platformy ArchestrA ukládejte do složky se šablonami objektů, s jejímž názvem by měly být asociovány během vkládání instancí. Například když budete vkládat instanci SmartSymbolu pro použití s objekty $Valve, měli byste šablonu symbolu mít uloženou ve složce šablon "$Valve". Vygenerování SmartSymbolů S pomocí aplikace SmartSymbol Manager (Správce SmartSymbolů) můžete vygenerovat SmartSymboly, asociované se šablonami objektů platformy ArchestrA, se vzdálenými proměnnými programu InTouch, nebo s generickými SmartSymboly. Tento oddíl ukazuje postup, jak tři výše popsané typy SmartSymbolů vygenerovat. Vygenerování nového SmartSymbolu pro použití se šablonou objektů ArchestrA Poznámka: Ovládací prvky ActiveX a předkonfigurované objekty Historical Trends (Historické trendy) nejsou ve SmartSymbolech podporovány. ¾ Chcete-li vygenerovat SmartSymbol pro použití se šablonou objektů ArchestrA 1. Vytvořte nové okno programu InTouch v aplikaci WindowMaker. 2. Pomocí nástrojů pro kreslení programu InTouch a/nebo předkonfigurovaných objektů (Wizards) vytvořte grafický objekt, který chcete převést na SmartSymbol. 3. V nabídce Special (Speciální) klepněte na Animation Links (Animační propojení) a klepněte na typ animačního propojení, které chcete konfigurovat. Klepněte dvakrát na pole Expression (Výraz), abyste ze seznamu Object Templates (Šablon objektů) mohli vybrat šablonu pro definici odkazu na animační propojení. Otevře se okno aplikace Attribute Browser (Prohlížeče atributů). - 686 - Poznámka: Když poprvé poklepete na pole Expression (Výraz), otevře se dialogové okno Tag Selection (Výběr proměnné).Pokud chcete spustit aplikaci Attribute Browser (Prohlížeč atributů), musíte definovat nový zdroj proměnných v databázi Galaxy. 4. Pomocí odkazů na objekty databáze Galaxy nebo pomocí údajů ze šablony konfigurujte animaci pro grafické prvky. Pokud budete zadávat odkazy ručně, ujistěte se, že odkazy na data objektů z databáze Galaxy dodržují syntaxi "Galaxy:$Template.attribute". Odkazy na animační propojení pro všechna spojení se šablonou platformy ArchestrA se definují jako: Galaxy:$<TemplateName>.<AttributeName> kde za <TemplateName> může následovat jeden nebo více názvů obsažených objektů. <AttributeName> může být hierarchická sada názvů atributů. . SmartSymbol je tvořen všemi instancemi šablony objektů asociované se složkou, ve které je šablona symbolů uložena. Například symbol uložený ve složce "Pump" v aplikaci Symbol Manager (Správce symbolů) má k sobě asociovanou šablonu objektů "$Pump". Poznámka: Tam, kde animace ukazuje na odkaz Galaxy:$TemplateName.PV, TemplateName (Název šablony) bude změněn na název instance jen pokud se TemplateName shoduje s aktuálním názvem šablony. Kde animace odkazuje na referenci Galaxy:me.PV, "me" se vždy nahradí názvem instance. Uvnitř programu InTouch je "Galaxy" klíčovým slovem, které udává, že se odkaz vztahuje na ArchestrA Galaxy. Aktuální databáze galaxy je určena v okamžiku, kdy použijete instance SmartSymbolů a zadáte GR Node (Galaxy Repository node name, název síťového uzlu s ukládacím prostorem galaxy) a Galaxy Name (Název databáze Galaxy). 5. Vyberte specifický atribut, na který se má odkazovat a klepněte na OK. Object Template name (Název šablony objektu) a vybraný Attribute Name (název atributu) se zobrazí v poli s odkazem s použitím správné syntaxe zápisu dle platformy ArchestrA (např. "galaxy:$valve.pv"). Tip Můžete také použít aplikaci Attribute Browser (Prohlížeč atributů), abyste vybrali specifický objekt databáze Galaxy a atribut. 6. Klepněte na grafické znázornění. V nabídce Arrange (Uspořádat), klepněte na Make Cell. (Vytvořit buňku), nebo klepněte pravým tlačítkem na grafické znázornění a z kontextové nabídky vyberte Cell/Symbol (Buňka/Symbol) a klepněte na Make Cell (Vytvořit buňku). - 687 - Tip V případě, že chceme vytvořit SmartSymbol z více grafických prvků, je třeba jednotlivé prvky označit a pomocí kontextové nabídky vybrat Cell/Symbol (Buňka/Symbol). Po následném klepnutí na Make Cell (Vytvořit buňku) vytvoříte buňku. 7. V nabídce Special (Speciální), ukažte na SmartSymbol a klepněte na Generate SmartSymbol (Vygenerovat SmartSymbol). Aplikace SmartSymbol Manager (Správce symbolů) vytvoří nový SmartSymbol pro údaje databáze Galaxy a vytvoří složku šablon ArchestrA, pokud ještě neexistuje. Dialogové okno aplikace Symbol Manager ukazuje náhled nového symbolu, který jste vytvořili spolu se všemi symboly knihovny symbolů. Symbolu se automaticky přiřadí výchozí název (např. New Symbol = nový symbol). Nový SmartSymbol je uložen buď v nejvyšší úrovni složky se symboly ArchestrA nebo ve složce se šablonami spolu s ním vytvořené nebo asociované. Abyste symbol přejmenovali, klepněte na něj pravým tlačítkem a z kontextové nabídky vyberte Rename (Přejmenovat). 8. Klepněte na OK v dialogovém okně aplikace Symbol Manager (Správce symbolů), abyste nový symbol uložili do knihovny aplikace správce symbolů. Symbol je k dispozici pro budoucí použití v daném okně nebo ostatních oknech aplikace InTouch. 9. Zobrazí se výzva, zda chcete buňku nahradit instancí nově vytvořeného SmartSymbolu. Klepněte na Yes (Ano), abyste buňku převedli na SmartSymbol. SmartSymboly jsou viditelně odlišené od buněk. V případě buněk je ohraničení vykresleno plnou čárou, v případě SmartSymbolu je ohraničení vyznačeno přerušovanou čárou. Vytvoření SmartSymbolu bez vazby na specifickou šablonu objektů ArchestrA v odkazech ¾ Chcete-li vytvořit SmartSymbol 1. V aplikaci WindowMaker vytvořte nové okno programu InTouch. 2. S použitím nástrojů pro kreslení programu InTouch a/nebo pomocí předkonfigurovaných objektů (Wizards) vytvořte grafické znázornění, které chcete převést na SmartSymbol. 3. V nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). 3. Ručně zadejte odkaz na data databáze Galaxy s použitím syntaxe "me.". Napište slovo Galaxy a specifický název atributu. Například "Galaxy:me.pv." 5. Klepněte na grafické znázornění v nabídce Arrange (Uspořádat), klepněte na Make Cell. (Vytvořit buňku), nebo klepněte pravým tlačítkem na grafické znázornění a z kontextové nabídky vyberte Cell/Symbol (Buňka/Symbol) a klepněte na Make Cell (Vytvořit buňku). Tip V případě, že chceme vytvořit SmartSymbol z více grafických prvků, je třeba jednotlivé prvky označit a pomocí kontextové nabídky vybrat Cell/Symbol (Buňka/Symbol). Po následném klepnutí na Make Cell (Vytvořit buňku) vytvoříte buňku. 6. V nabídce Special (Speciální) klepněte na Generate SmartSymbol (Vygenerovat SmartSymbol). Otevře se dialogové okno aplikace Symbol Manager (Správce symbolů). Ve výchozím nastavení je nový SmartSymbol uložen v nejvyšší úrovni složky se symboly ArchestrA. Můžete jej přesunout do jakékoliv stávající složky nižší úrovně. - 688 - 7. Abyste symbol přejmenovali, klepněte na nabídku Edit (Editovat) a v ní vyberte Rename (Přejmenovat), nebo na něj klepněte pravým tlačítkem a z kontextové nabídky vyberte Rename (Přejmenovat). Zadejte požadovaný název. Poznámka: Název SmartSymbolu musí být uvnitř složky, ve které je uložen, jedinečný. Pokud zadáte neplatný nebo duplicitní název, zobrazí se upozornění, že se jedná o neplatné zadání. Když SmartSymbol který je v knihovně přejmenujete, toto přejmenování neovlivní instance tohoto Symbolu. Místo toho se zobrazí nový název šablony symbolu, když příště otevřete dialogové okno Properties (Vlastnosti). 8. Klepněte na OK v dialogovém okně aplikace Symbol Manager (Správce symbolů), abyste nový symbol uložili do knihovny aplikace správce symbolů. Symbol je k dispozici pro budoucí použití v daném okně nebo ostatních oknech aplikace InTouch. 9. Zobrazí se výzva, zda chcete buňku nahradit instancí nově vytvořeného SmartSymbolu. Klepněte na Yes (Ano), abyste buňku převedli na SmartSymbol. Vytvoření SmartSymbolu, používajícího data programu InTouch ¾ Chcete-li vytvořit SmartSymbol, který používá data programu InTouch 1. Vytvořte nové okno programu InTouch v aplikaci WindowMaker. 2. Pomocí nástrojů pro kreslení programu InTouch a/nebo předkonfigurovaných objektů (Wizards) vytvořte grafický objekt, který chcete převést na SmartSymbol. 3. V nabídce Special (Speciální) klepněte na Animation Links (Animační propojení). S použitím odkazů na data proměnných konfigurujte pro různé grafické prvky animace, které lze použít a to buď pomocí přímých odkazů na lokální proměnné nebo pomocí vzdálených odkazů na proměnné. Poznámka: Odkazy můžete vybírat buď pomocí aplikace Tag Browser (Prohlížeč proměnných), nebo můžete odkaz ručně zapsat s použitím správné syntaxe. Chcete-li otevřít aplikaci Tag Browser, klepněte dvakrát na textové pole Expression (Výraz). Otevře se okno aplikace Tag Browser. 4. Klepněte na grafický objekt, potom klepněte na nabídku Arrange (Uspořádat) a v ní klepněte na Make Cell (Vytvořit buňku), nebo klepněte pravým tlačítkem na grafický objekt a z kontextové nabídky vyberte Cell/Symbol (Buňka/Symbol) a klepněte na Make Cell (Vytvořit buňku). Tip V případě, že chceme vytvořit SmartSymbol z více grafických prvků, je třeba jednotlivé prvky označit a pomocí kontextové nabídky vybrat Cell/Symbol (Buňka/Symbol). Po následném klepnutí na Make Cell (Vytvořit buňku) vytvoříte buňku. 5. V nabídce Special (Speciální) klepněte na Generate SmartSymbol (Vygenerovat SmartSymbol). Otevře se dialogové okno aplikace Symbol Manager (Správce symbolů). Ve výchozím nastavení je nový SmartSymbol uložen v nejvyšší úrovni složky se symboly programu InTouch. Můžete jej přesunout do jakékoliv stávající složky nižší úrovně. - 689 - 6. Abyste symbol přejmenovali, klepněte na nabídku Edit (Editovat) a v ní vyberte Rename (Přejmenovat). Název SmartSymbolu musí být uvnitř složky jedinečný. Pokud zadáte neplatný nebo duplicitní název, zobrazí se upozornění, že se jedná o neplatné zadání. 7. Klepněte na OK v dialogovém okně aplikace SmartSymbol Manager (Správce SmartSymbolů), abyste nový symbol uložili do knihovny aplikace správce SmartSymbolů. Symbol je k dispozici pro budoucí použití v daném okně nebo ostatních oknech aplikace InTouch. 8. Zobrazí se výzva, zda chcete buňku nahradit instancí nově vytvořeného SmartSymbolu. Klepněte na Yes (Ano), abyste buňku převedli na SmartSymbol. Omezení SmartSymbolů V následujícím oddíle jsou popsána známá omezení, která se vztahují na SmartSymboly: • SmartSymbol nemůže obsahovat objekt typu Trend. Pokud se pokusíte vytvořit instanci SmartSymbolu, který obsahuje objekt typu Trend (historický nebo v reálném čase), zobrazí se chybové hlášení. • Pokud máte instalovaný program InTouch 9.0 a Industrial Application Server 1.5 a klepnete na tlačítko (...) v dialogovém okně Symbol Properties (Vlastnosti symbolu), abyste procházeli instance objektů ArchestrA, zobrazí se chybové hlášení. V aplikaci Attribute Browser (Prohlížeč atributů) nejsou k dispozici nové vlastnosti, pokud je instalován Industrial Application Server 1.5. Abyste mohli procházet seznam instancí objektů ArchestrA, musíte mít instalovaný Industrial Application Server 2.0. • Vygenerování SmartSymbolu s předkonfigurovaným objektem SPC Charts není podporováno. • Aplikace Attribute Browser (Prohlížeč atributů) nezobrazuje odvozené instance objektů. Abyste tento problém vyřešili, vytvořte odvozenou šablonu v aplikaci Symbol Manager (Správce symbolů) nebo vytvořte zvlášť upravený filtr v prohlížeči. Vkládání instancí SmartSymbolů Potom, co SmartSymbol vygenerujete, je možné vložit jeho instanci do okna programu InTouch. Je možné vložit instanci SmartSymbolu s odkazy na objekt z databáze ArchestrA, vytvořit novou instanci objektu platformy ArchestrA, na kterou se bude odkazovat nová instance SmartSymbolu, nebo změnit odkazy v instanci SmartSymbolu. Pokud se vkládá instance SmartSymbolu, která obsahuje neprovázané odkazy (tj. odkazy, které nejsou v definovány v aktuální aplikaci) a klepnete na Cancel (Storno) v dialogovém okně SmartSymbol Properties (Vlastnosti SmartSymbolu), program InTouch nuceně vytvoří zástupné znaky (placeholders) před neexistující odkazy. Také v jakýchkoliv vzdálených odkazech, které obsahují neexistující Access Name (Komunikační kanál) se před název komunikačního kanálu dosadí "Galaxy". To zajistí, aby byly vytvořeny všechny části Vašeho SmartSymbolu bez ohledu na nevyřešené odkazy. - 690 - Vkládání instance SmartSymbolu s odkazem na objekt ArchestrA ¾ Chcete-li vložit instanci SmartSymbolu s odkazem na objekt databáze ArchestrA 1. Spusťte aplikaci WindowMaker a otevřete okno, do kterého chcete vložit instanci SmartSymbolu. 2. Klepněte na ikonu Wizard (Předkonfigurovaný objekt), klepněte na ikonu SmartSymbol a potom klepněte na OK. 3. V okně aplikace WindowMaker klepněte na místo, kam chcete symbol vložit. Otevře se dialogové okno Select Mode (Režim výběru). 4. Poklepejte na symbol nebo klepněte na symbol, abyste jej vybrali a potom klepněte na OK. Pokud je zaškrtnuta volba Show Properties Dialog on instantiation (Otevřít dialogové okno vlastností při vkládání instance), otevře se dialogové okno Properties (Vlastnosti). Jinak se přepne zobrazení do okna aplikace InTouch WindowMaker, ve kterém se objeví nový symbol. - 691 - 5. V aplikaci WindowMaker klepněte dvakrát na vložen
Podobné dokumenty
Nasazení Wonderware System Platform při výrobě jogurtů
Komunikace s PLC různých výrobců
pomocí integrovaných komunikačních nástrojů firmy Wonderware
(DAServery, DA objekty)
Vyhodnocování alarmových stavů a
jejich archivace do alarmové databáze
InTouch - Pantek (CS)
Aplikace spravované z IDE
Teprve pro vývoj řešení založeného na Wonderware System Platform, kdy jsou aplikace InTouch využity jako
klientské aplikace pro Wonderware System Platform, je potřeba nasa...
pr.10
Dijkstra – Feijen – Van Gasteren
when received TOKEN(ct) from i+1 do { příjem zprávy TOKEN }
begin
TPresent := T;
TColor := ct;
if i=0 then
if Color=WHITE and TColor=WHITE
then { TERMINATION DETECT...
Abíčko - AbcLinuxu.cz
o linuxovém jádře (včetně populárních Jaderných novin) i rozcestník po ostatních linuxových serverech. Novinkou posledních měsíců, která našla brzy odezvu, jsou blogy neboli internetové deníčky.
Ka...
inovace řídicího systému výukového a demonstračního robota festík
REALIZACE VIZUALIZACE A KONFIGURACE PROGRAMŮ ................. 49
Fingerprint Verification Control
Obsah
ÚVOD ..................................................................................................................................................... 3
Charakteristika produktu ............