Datová vazba E - Datová vazba na obecný výraz
Popis:
Hodnota datové vazby je hodnota po vyhodnocení zadaného obecného výrazu. Hodnota může být typu číslo (Integer, Single ..), Boolean nebo String.
Konfigurátory datové vazby:
Řídící proměnné | V tomto poli lze definovat řídící proměnné. První proměnná má název v1, druhá v2, atd. Názvy proměnných se pak použijí v obecném výrazu. U každé proměnné se definuje datová vazba, která se vyhodnotí vždy před výpočtem obecného výrazu. |
---|
Přidat | Přidá novou řídící proměnnou na konec seznamu. |
---|
Vložit | Vložení nové řídící proměnné nad označenou proměnnou. |
---|
Smazat | Smazání označené řídící proměnné. |
---|
|
JavaScript výraz | Výraz zapsaný v syntaxi jazyka JavaScript. Viz Operátory JavaScript a popis syntaxe. Pro zadání lze použít Makro výraz (vyhodnocuje se při otevírání okna). Ve výrazu lze použít: - objekt Pm: například jeho matematické a stringové metody. Viz příklad Příklad3. - objekt pMe: představuje Pmg objekt, ve kterém je tato datová vazba. Viz příklad Příklad4. Upozornění: Pomocí parametru pMe v této datové vazbě lze získat jakoukoli hodnotu jakéhokoli Pmg objektu v daném obraze. Nemělo by se však toto zneužívat pro volání pMe.PmPanel.Methods, protože toto volání způsobí synchronní komunikaci ze serverem a na Web klientech by tak mohlo dojít k velkému komunikačnímu zatížení. Upozornění: Nezadáva se zde výraz ve tvaru VBScript, protože pomocí něho nelze vytvořit některé velmi užitečné tvary výrazu, například podmíněné vyhodnocení (v JavaScript například výraz tvaru (v1 ? 2 : 3), viz Příklad2). |
---|
Poznámka:
Tato datová vazba je funkční i ve
Web obrazech. Samotné vyhodnocení datové vazby nepotřebuje komunikaci s Web serverem (s aplikací PROMOTIC) - vyhodnocení se provádí na straně klienta (tzn. na straně Web prohlížeč).
Příklad1:
Jednoduchý výraz obsahující dvě proměnné v1 a v2, násobení, sčítání, dělení, odčítání a závorky.
2 * (v1 + 3) / 2 - v2
Příklad2:
Výraz vrací String a obsahuje podmíněné vyhodnocení (? :). Pokud v1 má hodnotu 1, pak je vrácen "start", v jiném případě "stop".
v1==1 ? "start" : "stop"
Příklad3:
Výraz vrací hodnotu funkce sinus.
Příklad4:
Při výpočtu se zavolá metoda projektanta "MyMethod" Pmg objektu.
Příklad5:
Složitější výraz s vícenásobným podmíněným vyhodnocením (takový výraz někdy může nahradit datovou vazbou "
T - Datová vazba na výpočet podle tabulky hodnot").
- pokud v1 je rovno 0, pak výsledek je 12
- pokud v1 je rovno 1, pak výsledek je 24
- pokud v1 je rovno 2, pak výsledek je 50
- v jiném případě výsledek je 0
v1==0 ? 12 : (v1==1 ? 24 : (v1==2 ? 50 : 0))
Příklad6:
Příklad na
lineární přepočet hodnoty. Tento výraz je vhodný jako náhrada datové vazby
LN - Datová vazba na výpočet podle lineární funkce. Chceme aby lineární přepočet byl následující (hodnoty
80,
90,
5,
6 lze zaměnit za jakékoli jiné):
- pokud v1 je rovno 80, pak výsledek je 5
- pokud v1 je rovno 90, pak výsledek je 6
(v1-80)*(6-5)/(90-80) + 5
Pokud ještě navíc chceme aby
- pokud v1 je menší nebo rovno 80, pak výsledek je 5
- pokud v1 je větší nebo rovno 90, pak výsledek je 6
v1<=80 ? 5 : (v1>=90 ? 6 : ((v1-80)*(6-5)/(90-80) + 5))
Historie:
Pm8.03.12: Ve výrazu lze nyní používat i proměnnou
pMe (objekt, ve kterém je tato datová vazba). Pomocí této proměnné se lze ve výrazu odkazovat na libovolnou vlastnost libovolného
Pmg objektu v tomto obraze.
Pm8.01.05:
Opravená chyba: Způsobovala narůstání používané paměti.