- Ověřit, zda mají všichni nainstalovaný PROMOTIC požadované verze
- Verze PROMOTIC na školení
Část 1.
- Jak nainstalovat PROMOTIC
- Založení projektu
- Předkonfigurace - společné znaky
- dialog pro nastavení parametrů PreCfg (např. kom. médium Ethernet x COM -> IP x COM port, atd.)
- je možné později změnit, upravit, přidat, smazat
- Zapnout Web, JavaScript
- Říct, že vše je v PRA souboru
-
PmaWorkspace - vysvětlení a ukázka (velikost rámce 20px, 20%, *)
- Vytvořit
/Kotelna/Kotel1/Data - proměnné Teplota (Alt+0176 = °), Vykon, Status - datové typy
- Vytvořit
/Kotelna/Kotel1/Kotel -
PmgSlider,
PmgNumber zapnout editaci v místě (pro
Vykon)
- netvořit datové vazby v PreCfg - vysvětlit složené Pmg objekty
- formátování dle C
Část 2.
-
INFO systém - Zjišťování chyb v aplikaci, ladění komunikací, DEBUG okno
- Zadání teploty v
INFO systému, pro projektanty, ne pro uživatele
- Maximální počet oken = 4 (všechny jsou závislé na hlavním, ale vlastní refresh)
- První spuštění aplikace ve Web prohlížeči (
localhost,
127.0.0.1)
- vypnout antivir
- Co je to
objekt na příkladě člověka
- vlastnosti (pro čtení i zápis): věk, pohlaví, výška
(a=obj.Value, obj.Value=12.5)
- parametry vlastností: zub, ale který
(b=obj.vlastnost(parametry))
- metody (můžeme je spustit): jdi s parametrem kam
- události (vyskytují se - informují o stavu objektu): jdi ke dveřím a potvrď, že jsi došel
- Časovač /Kotelna/Kotel1/Timer 1 sec
- Skript pro změnu teploty
- zvětšit velikost písma
- lokální menu editoru skriptu
- nejdřív průvodce pro odkaz na objekt
- skript bez proměnných - vysvětlení neefektivity skriptu
- lokální proměnné - existence, vliv na velikost aplikace
- Undo/Redo
- Průvodce
- Zakomentářování skriptu:
// - 1 řádek
nebo blokově
/* před , */ za skript
- Karta "
Objekt" (počet proměnných)
- Vytvořit
/Kotelna/Kotel1/PmaTrendGroup pro
Teplota a
Vykon -
PmgTrendViewer - Ukázka nastavení trendu v runtime módu, uložení nastavení TG
- Nastavení ve vývojovém prostředí
- Slovně další možnosti (automatické načtení TG při otevření panelu trendů, použití parametrů atd.)
- přesnost času v trendech
- způsob zápisu času (lokální čas/letní čas/ vždy zimní čas)
- v prohlížeči vždy ve správném čase
- lepší je standardní čas
- způsob zápisu - zálohovací (backups) a cyklický (cyclic),
- různé formáty,
NEUKLÁDAT ZMĚNY
- optimalizace zápisu
- jednoduchá dle změny hodnoty
- dle změny "rychlosti změny" hodnoty
- pokud není změna, pak ulož po 3600 s
- zpožděný zápis na disk - počet intervalů z bufferu paměti na disk
- přepnout trendy zpátky na
dBase Část 4.
-
PmaPanel - co to je, parametry, způsoby otevření - příklad
- kdy existují objekty v objektu
PmaPanel, jak zjišťovat
- seznam obrazů - Ctrl+O
- v
MainPanel vytvořit
PmgString (editace na místě hodnoty) a
PmgWEdit s vazbou
PP na proměnnou
Vykon - skupinové operace pomocí klávesy Shift
- kopírování pomocí klávesy Ctrl
- nejsou vrstvy -> pořadí objektů - klávesa "O" nad aktuálním objektem
-
Pmg objekty jako objekty
- přístup k Pmg objektům ve skriptu
- proč nepracovat s Pmg objekty
v editoru Pma objektů - nutné zjišťovat, zda panel je otevřený
- pouze pro lokální aplikaci, ne na
Webu - hromadná editace
-
PmgObject - předek
Pmg objektů
- jak najít kompletní rozhraní Pmg objektu
- Složené Pmg objekty
-
CreateView - způsob volání - otevření objektu
PmaPanel - parametry metody
- tlačítko na otevření obrazu
- použití v jiných
Pmg objektech - událost
onMousePress - v MainPanel obrázek s kotlem, na klinutí otevřít Kotel
- V obraze Kotel vytvořit Button pro ../MainPanel
- Způsoby zadávání vstupních dat do PROMOTIC:
- další způsoby (ukázka se skriptem z dokumentace):
- do MainPanel vložit panel ModalDlg (Obecné modální okno)
- Typy datových vazeb v aplikaci PROMOTIC:
- změna barvy sloupce teploměru - použití vazby
- Seznam
Pmg objektů
-
PmgAnimImage - animovaný GIF
- výhody použití (nenáročný, Web)
-
PmgVideo - multimediální soubory
- nevýhody (CPU, kodeky, Web)
- k čemu používat (videotutoriály)
-
PmgPipe - potrubí - zapnout animaci, možnost vazby, Web
-
PmgCanvas - princip + ukázka (např. trojúhelník z Elementárních)
- karta "
Draw"
- omezen přístup mimo objekt
- měřiče
- statická vs dynamická část
- grafy, vzduchotechnika
Část 5.
Alarmy/Eventy - Vytvořit /Kotelna/Kotel1/PmAlarm
-
JavaScript - založit nové proměnné
Tlak_1-3 v objektu
PmaData (kde teplota), lze trendovat
- generování hodnot tlaků
-
switch (ukázat na existujícím
ToolBar)
-
PmgButtonState pro
Status - s ikonou - State0
- zapni/vypni - bit 0
- MAN/AUTO - bit 1
-
PmgRasterImage (žárovka) - znázornění poruchy kotle -
Status, bit 2
- datová vazba T (tabulka)
- datová vazba T (tabulka)
- Vytvořit
/Kotelna/Kotel1/PmEvent
-
VBScript/VisualBasic vs
JavaScript - Co je to objekt: vlastnosti/metody/události
- Jak s nimi pracovat v systému PROMOTIC
- Parametry metod s () - metoda vrací hodnoty, a bez () - metoda nevrací hodnoty
- Podmnožina VB = omezení -> proto globální objekt
Pm -
- Dokumentace PROMOTIC
- úplný index
- v příkladech jsou odkazy na metody/vlastnosti
- název vlastnosti nebo metody - přímý odkaz do dokumentace
- Globální metody a proměnné
- vytvoření metody "Add" se dvěma parametry
volání metody v objektu PmaKey:
JavaScriptVyber a zkopíruj do schránky
//- bez návratové hodnoty
Pm.Methods.Add(3.14159, 2.78456);
//- s návratovou hodnotou
Pm.Debug("PmaKey-add:" + Pm.Methods.Add(2, 5.3));
- jsou funkční ve Web aplikacích
- jak volat takové metody (aplikace vs. panel)
- Řízení přístupu
- skupiny uživatelů
- definice uživatelů
- systémové skupiny, uživatelé
- výchozí nastavení aplikace
- po startu useroper - proč
- ukázka jak to funguje bez toho
- Karta "
Oprávnění"
- mají objekty, u kterých to má smysl
- vše co jde do Webu
- řízení přístupu v Pmg objektech
-
PmaDll - kontejner pro samotnou
DLL knihovnu, vlastnost
Fce - umí pouze volání funkcí, nepodporuje události
-
PmaActiveX - kontejner pro samotnou knihovnu
ActiveX, vlastnost
Acx - umí vlastnosti, metody i události ActiveX knihovny
-
ExtOpcDa - čtení dat z OPC -> po navázaní spojení PROMOTIC čeká na data, u kterých došlo ke změně - ty budou zaslány z paměti CACHE
- zápis dat do OPC -> PROMOTIC zapisuje skrz OPC (tunel) přímo do zařízení a to vrací hodnotu do paměti CACHE
- ukázat na Graybox OPC simulátoru
- pro Tlak_2 přidat rozšíření OpcDa, Item ID: numeric.sin.double, k:1, d:2, q:50
- dále dodat rozšíření Trend
-
PmaComm,
Ethernet - vysvětlení datové vazby
Část 7.
- Parametry +
PmaPrototype/
PmaInstance - Jak na aplikace, které obsahují více stejných objektů (kotlů)
- Vytvořit vždy novou strukturu - pracné, neefektivní
- Kopie + úprava parametrů
- Rychlejší, nutnost pamatovat co všechno upravit
- Parametrizace
- jako výše, ale jednodušší množení
- potíž při dodatečné změně
- Prototypy/instance - vyšší úroveň
- snadné dodatečné změny
- (téměř) stejné objekty (dle parametrů)
- Parametry
Pma objektů
- ukázka na folderu Kotel1
- parametrizovat skript v objektu
PmaTimer
- Obsah folderu Kotel1 zkopírovat do prototypu Kotel_Vzor
- Vytvořit několik instancí kotle
- P/I v DEVELOP vs RT (kdy je jaký obsah)
- Parametry Pmg objektů
- Parametry se vyhodnocují při překladu
- v
../Kotelna/ vytvořit
PmaPanel "
Kotelna"
- v něm vytvořit inteligentní kotel (teplota, název, kliknutí atd.)
$.join($.text("appxxx","boiler"),$.par("boil"))
- vícejazyčná aplikace / editace pomocí Total Commander atd.
- kopírování + změna parametrů
- grafické prototypy/instance
- rozdíly vůči Proto/Inst v Edit.Apl
- inteligentní kotel přenést do
PmgPrototype - nezapomenout na odstranění parametrů z kotle
- zavést parametr do prototypu/instance boil:0;
- vytvoření X instancí vč. změny hodnoty parametru (pro každý kotel)
- ukázka snadné změny Pmg objektu
-
Tenký klient - principy vytváření
Web aplikací
- ve skriptech Pmg objektů nejsou dostupné Pma objekty
- aplikace lokálně (na serveru), obraz (panel) u klienta
- přístup možný pouze pomocí metod panelu
- pro jiné Web prohlížeče nutno panel do
JavaScript, všechny skripty se musí přepsát do JavaScriptu
- Koncepce jak dělat PROMOTIC aplikace
- 2 aplikace - komunikační a vizualizační
- v jednom projektu 2 foldry - logika a komunikace
- pak ve 3. folderu lze udělat emulace komunikace a zakazovat objekty
- Bezpečnostní komponenty:
Část 8. - Práce s databázemi
- Nic se nevytváří, pouze povídání
- Příklady na hotových aplikacích
- Rozdělení databází (souborové vs serverové)
- Základy práce s DB
- otevření databáze, tabulky, zavření DB, TBL
- pohyb v tabulce
- proč nepoužívat Move a MoveTo
- přístup k hodnotám záznamu (FieldValues, Fields)
- základní
SQL příkaz typu select
- jazyk SQL - musí se naučit mimo školení PROMOTIC
- transakce - co to je, jak se to používá
- bez příkladu
- Objekt
PmaAdo - Microsoft objekty dostupné v PROMOTIC
- odchytávání chyb u Ado
- Příklady práce s DB
- aplikace Examples/Others/AppDb
- aplikace "Příklady v aplikaci" z Welcome obrazovky
Část 9. - Obchodní část
-
Ceník systému PROMOTIC - Verze PROMOTIC
- jedna instalace = DEVELOP/RT/FREE
- stabilní vs vývojové verze
- rozšíření RT licencí
- pouze Web/Data klienti prodáváni na kusy, ostatní licence ANO/NE
- distribuce licencí
- HW klíč
- SW klíč s kontrolou HW - nestandard, nevýhody
- NET key - jak používat
- rozšíření licence
-
PmUpgrade10 - pouze když chce rozšířit nebo nový PROMOTIC
- RT funguje bez časového omezení
- Služby
- tech. support (placený vs neplacený)
- aplikace
- různé stadium rozpracovanosti
-
https://www.promotic.eu - aktuální verze PROMOTIC + letáky
- bez registrace
- e-shop
- on-line dokumentace vždy k poslední verzi
- nabídka služeb
- kontakty
- naše kontakty
- distributoři
- integrátoři
- reference