V této kapitole:
Tato kapitola nabízí stručný přehled operátorů a jejich argumentů, které jsou
v aplikaci dostupné, a které můžete použít při definici výrazů pro výpočet výchozí
hodnoty polí. Podrobný popis principu fungování vypočítávané výchozí hodnoty
polí a práce s editorem pro tvorbu výrazů naleznete v kapitole 51, sekce Výchozí
hodnota pole.
Operátory jsou rozřazeny do několika tématických okruhů a jsou popisovány pod
názvy, které se zobrazují v nabídce výběrového seznamu kolonky Kategorie
v editoru výrazů.
Některé operátory obsahují argument Filtr s tabulkou pro definici filtrovacích
podmínek, viz např. obrázek 52.26. Podmínky v této tabulce je možné definovat
obdobným způsobem jako podmínky na záložce Filtry v okně pro přizpůsobení
sestav, viz kapitola 41, sekce Přizpůsobení sestavy typu Tabulka. U polí s historií
v období lze pomocí podmínky Je v zobrazeném období filtrovat podle období,
pro které je hodnota počítána.
Numerické operátory
Textové operátory
Operátory počítající pozice znaků považují za pozici jedna první znak uvedeného
řetězce.
- náhrada řetězce – v uvedeném řetězci, textu či formátovaném textu
nahradí všechny výskyty zadaného řetězce, znaků ze zadané množiny
znaků, případně výskyty znaků neuvedených v zadané množině znaků,
novým řetězcem, textem či formátovaným textem
- hledat – vrátí pozici prvního znaku hledané části řetězce v uvedeném
řetězci, pozici prvního znaku uvedeného ve vzoru, případně pozici
prvního znaku neuvedeného ve vzoru v prohledávaném řetězci; podle
zvoleného typu hledá zleva nebo zprava
- délka – vrátí počet znaků v uvedeném řetězci
- levá část – vrátí uvedený počet znaků od levého okraje uvedeného
řetězce
- odstranit mezery – vrátí uvedený řetězec bez mezer před a za
řetězcem
Na obrázku 52.2 je znázorněn výpočet hodnoty pomocného pole Základ
názvu pro duplikování, které je používáno pro výpočet názvu
projektu při operaci Zdvojit projekt. Vidíte zde příklad použítí
operátorů odstranit mezery (TRIM), levá část (LEFT) a hledat, resp. typ
hledat jeden mimo zprava (RFINDNOTOF). Výpočet nejdříve z pravé
strany názvu projektu hledá první pozici, na které se nevyskytují čísla,
poté vrátí levou část názvu projektu až k této pozici a následně před a
za touto částí názvu projektu odstraní mezery.
- opakovat – vrátí tolikrát zkopírovaný uvedený řetězec, kolikrát je
uvedeno
- pravá část – vrátí uvedený počet znaků od pravého okraje uvedeného
řetězce
- převést na malá – vrátí uvedený řetězec napsaný malými písmeny
- převést na velká – vrátí uvedený řetězec napsaný velkými písmeny, viz
obrázek 51.22 výše
- spojení řetězců s oddělovačem – vrátí uvedené řetězce spojené
uvedeným oddělovačem; pokud bude jeden z uvedených řetězců vyhodnocen
jako prázdná hodnota, vrátí se pouze zbývající řetězec a oddělovač se
nepřidá
Obrázek 52.3 ukazuje výpočet hodnoty pole Plný název schůzky, tedy názvu
schůzky, který se zobrazuje v kalendáři činností. Je v něm použit operátor
spojení řetězců s oddělovačem, v tomto příkladě spojení názvu schůzky a
místa konání schůzky.
- znak na pozici – vrátí znak z uvedeného řetězce na uvedené pozici
- nahrazení značek %1 až %9 výpočty – ve vzorovém řetězci nahradí
značky uvedenými hodnotami; v kolonce Typ lze vybrat druh značek, např. #1
až #9, $1 až $9, &1 až &9.
Na obrázku 52.4 vidíte použití operátoru nahrazení značek na pomocném poli
Adresní štítek, ve kterém je z hodnot jednotlivých polí evidovaných u
společnosti (resp. konverzí hodnot těchto polí na text, viz dále) poskládána
ucelená informace o adrese společnosti.
- obsahuje – vrátí hodnotu ano, pokud uvedený řetězec, text či formátovaný
text obsahuje hledaný řetězec, v ostatních případech vrátí hodnotu
ne
- překódování – vrátí řetězec s uvedenou hodnotou překódovanou do
formátu RTF, HTML nebo XML; formát a typ pole, které se má do daného
formátu překódovat, je možné zvolit v kolonce Typ
Obrázek 52.5 na příkladu pole Export kalendáře do MS projektu
znázorňuje postup pro překódování údajů o pracovním kalendáři do formátu
XML, který se používá při exportu z Instant Teamu do MS Projektu.
Výstupní řetězec vrácený operátorem překódování je typicky ještě třeba
konvertovat na text.
- síťový dotaz – učiní metodou GET dotaz na uvedenou url adresu a vrátí
tělo odpovědi, typicky dotaz na webové služby (operátor je vyhodnocován na
klientu a není nijak zajištěna dlouhodobá konzistence, je proto vhodný např.
pro pomocné pole k operaci, která získanou hodnotu nebo její část uloží do
běžného pole)
- získat hodnotu z JSON/XML – z uvedeného textu ve formátu JSON
nebo XML vrátí hodnotu specifikovanou uvedenou cestou, při popisu
cesty v textu formátu JSON slouží jako oddělovač úrovní struktury
znak „|“, pro formát XML znak „/“; formát je možné zvolit v kolonce
Typ
- vytvoření souboru s textem – vrátí přílohu uvedeného obsahu
s uvedeným názvem
Na obrázku 52.6 je uveden příklad použití operátoru vytvořit soubor
s textem – z pole Adresní štítek (viz obrázek 52.4 výše) je vytvořena
příloha, se kterou je možné dále pracovat jako s jakoukoliv jinou přílohou
připojenou k záznamu, např. stáhnout na počítač uživatele a následně
vytisknout.
- operátor vytvoření souboru s textem typu vytisknutí HTML do PDF –
vrátí uvedený html obsah jako přílohu ve formátu PDF s uvedenými rozměry
v bodech (body se počítají při rozlišení 72 DPI, takže například
stránka A4 má šířku 595 bodů a výšku 842 bodů); pokud bude šířka
menší než 72 bodů nebo výška menší než 108 bodů, vrátí prázdnou
hodnotu
UPOZORNĚNÍ
Při vytváření pdf souboru je podporována jen část jazyka html, bližší
informace na stránkách https://doc.qt.io/qt-6/richtext-html-subset.html.
Časové operátory
U vybraných časových operátorů se nabízí typ „podle kalendáře“, při výběru tohoto
typu je ve výpočtech zohledňováno nastavení pracovní doby v uvedeném pracovním
kalendáři. Jestliže pracovní kalendář v argumentu není uveden nebo je vyhodnocen
jako prázdná hodnota, použije se výchozí kalendář pracovní skupiny. Pokud
není žádný kalendář označen jako výchozí, pak bude automaticky použit
kalendář zabudovaný (s nastavenou pracovní dobou pondělí až pátek, 9 až 17
hodin).
Operátory počítající pořadí dnů v týdnů považují neděli jako nultý den
v týdnu, pondělí jako první den v týdnu, úterý jako druhý atd.
- budoucnost (A + B) – k uvedenému času přičte uvedenou pracnost,
resp. k uvedenému datu přičte uvedený počet dnů; při volbě typu podle
kalendáře je pracnost, resp. počet dnů přepočítáván podle nastavení
pracovní doby v uvedeném pracovním kalendáři
Na obrázku 52.7 znázorňujícím výpočet výchozí hodnoty pole Datum
splatnosti u vydávaných faktur vidíte příklad použití operátoru
budoucnost (A + B), kdy k datu vystavení faktury je přičtena hodnota
pole Splatnost faktur z nastavení pracovní skupiny.
- kombinovat den a čas dne – vrátí hodnotu složenou ze dne a času
dne
- minulost (A - B) – od uvedeného času odečte uvedenou pracnost, resp. od
uvedeného data odečte uvedený počet dnů; při volbě typu podle kalendáře je
pracnost, resp. počet dnů přepočítáván podle nastavení pracovní doby
v uvedeném pracovním kalendáři
- den v týdnu v rámci týdne – vrátí den v uvedeném pořadí od začátku
týdne obsahujícího uvedený den, např. datum pátku (5. dne) v týdnu
obsahujícím den uvedený v argumentu Libovolný den v týdnu
- dnes – vrátí aktuální datum, viz operátor TODAY na obrázku níže
Obrázek 52.8 zobrazuje výpočet výchozí hodnoty data, které se automaticky
propíše do pole Datum uskutečnění při uzavření příležitosti. Pokud jsou
splněny definované podmínky, tedy příležitost nebyla konvertována na projekt
a datum uskutečnění je větší než dnes, je hodnota pole nastavena na aktuální
datum v okamžiku uzavření příležitosti. Pokud podmínka splněna
není, je do pole propsána hodnota zadaná jako datum uskutečnění
příležitosti.
- n-tý den v týdnu v rámci měsíce – vrátí datum uvedeného dne v týdnu
uvedeného pořadí v měsíci obsahujícím uvedený den, např. datum první
středy daného měsíce; pokud se jako pořadí uvede pátý výskyt dne v měsíci,
vrátí poslední výskyt uvedeného dne bez ohledu na počet výskytů
v uvedeném měsíci
- složení dne – vrátí hodnotu složenou z roku, měsíce a dne v měsíci
- odečíst dobu trvání (A - B) – vrátí rozdíl uvedených pracností
- přičíst dobu trvání (A + B) – vrátí součet uvedených pracností
Výpočet pole Kombinovaná práce na obrázku 52.9 ukazuje použití
operátoru přičíst dobu trvání (A + B).
- vzdálenost (A - B) – odečte uvedená data a vrátí počet kalendářních dnů,
resp. rozdíl mezi uvedenými daty vyjádřený v jednotkách pracnosti, při volbě
typu podle kalendáře je rozdíl přepočítáván podle nastavení pracovní doby
v uvedeném pracovním kalendáři
Obrázek 52.10 znázorňuje výpočet pole Doba do vyřešení, tj. výpočet doby
od přijetí požadavku do jeho uzavření, ve kterém je použit operátor
vzdálenost (A - B) typu doba trvání podle kalendáře bez uvedení konkrétního
pracovního kalendáře. Hodnota pole je tedy vypočítávána jako doba trvání
podle nastavení pracovní doby výchozího pracovního kalendáře pracovní
skupiny.
- měsíc – vrátí číslo měsíce uvedeného dne
- rok – vrátí rok uvedeného dne
- den v měsíci – vrátí číslo dne v měsíci uvedeného dne
- den v týdnu – vrátí pořadí dne v týdnu uvedeného dne
- je konkrétní den v týdnu – vrátí hodnotu ano, pokud uvedený den
odpovídá vybranému typu dne; jako typy se nabízí jednotlivé dny v týdnu
(např. typ „den je Středa“)
- čas po odpracování – vrátí čas, kdy je v uvedené denní pracovní době
odpracována zadaná doba
- oříznutí pracovní doby – z uvedené denní pracovní doby vrátí pracovní
dobu před nebo po zadaném limitním čase
- přestávky v denní pracovní době – vrátí čas, po který v uvedené denní
pracovní době trvají přestávky
- limit rozsahu typu začátek denní pracovní doby a konec denní pracovní
doby – vrátí začátek či konec uvedené denní pracovní doby
- limit rozsahu typu začátek rozsahu dnů a konec rozsahu dnů – vrátí začátek
nebo konec uvedeného rozsahu dnů
- vytvoření rozsahu – vrátí hodnotu typu rozsah dnů vytvořenou ze dvou
hodnot typu den uvedených v argumentech okraje (při zadávání okrajů není
důležité pořadí, vždy se jako začátek rozsahu vezme dřívější okamžik a jako
konec pozdější)
Logické operátory
Logické operátory vrací vždy jednu z hodnot ano/ne, hodnoty vypočítané těmito
operátory není možné měnit.
- operátory nerovností A <= B, A <> B, A < B, A = B, A > B,
A >= B – vrátí hodnotu ano, pokud uvedené argumenty odpovídají
podmínkám nerovnosti, v ostatních případech vrátí hodnotu ne;
v kolonce Typ těchto operátorů volíte typ hodnot, které chcete
porovnávat, porovnávané hodnoty musí být stejného typu
Na obrázku 52.11 vidíte výpočet hodnoty pomocného pole Je výchozí
šablonou?, který vyhodnocuje, zda aktivní šablona projektu, pro kterou
se výpočet provádí (operátor Aktivní záznam "SELF"v argumentu B), je
shodná se šablonou nastavenou jako výchozí šablona projektu v pracovní
skupině (operátor Odkaz přes záznam v argumentu A).
- logický součet (A OR B) – vrátí hodnotu ano, pokud je pravdivý alespoň
jeden z uvedených argumentů, v ostatních případech vrátí hodnotu
ne
- logický součin (A AND B) – vrátí hodnotu ano, pokud jsou
pravdivé oba uvedené argumenty, v ostatních případech vrátí hodnotu
ne
- negace výrazu – vrátí opak logické hodnoty uvedeného výrazu
Na obrázku 52.12 vidíte na pomocném poli Schvalovat směrné plány
příklad použití operátoru negace výrazu. Pokud není v pracovní skupině
žádný uživatel uveden jako schvalovatel směrných plánů projektů (operátor „je
vícenásobná hodnota prázdná“ je vyhodnocen kladně), výpočet vrátí hodnotu
ne.
- podmíněný výraz – při splnění uvedené podmínky vrátí hodnotu
uvedenou v argumentu „když pravda“, při nesplnění uvedené podmínky
vrátí hodnotu uvedenou v argumentu „když nepravda“, viz obrázek
52.8
Referenční operátory
- konstanta – vrátí hodnotu uvedenou v argumentu Hodnota
- operátor konstanta typu hodnota NULL – tento operátor je vhodný pro
pole s vypočítávanou výchozí hodnotou, kterou může uživatel měnit,
pokud je vypočítaná hodnota prázdná (viz sekce Výchozí hodnota
pole v kapitole 51) – vrátí prádnou hodnotu, která se však z hlediska
možnosti změnit hodnotu pole za prázdnou nepovažuje (zajistí tak, že
vypočítanou hodnotu pole nebude možné měnit, i když vypočítaná
hodnota bude prázdná)
- proměnná – vrátí hodnotu pole vybraného v kolonce Typ, viz např.
obrázek 52.7
- konverze z jiného typu – změní typ uvedeného výrazu na stejný typ
jako je výraz, jehož hodnota je vypočítávána; typ výrazu, z kterého se
konvertuje, určíte výběrem v kolonce Typ; následující tabulka shrnuje
dostupné možnosti:
|
|
|
| KONVERZE NA | TYP KONVERZE | VRáTí |
|
|
|
| na číslo | z typu čas dne, pracnost,
pokrok | počet minut uvedeného
časového úseku |
|
|
|
| na číslo | z typu příloha | velikost přílohy |
|
|
|
| na číslo | z typu řetězec | číslo obsažené v řetězci,
pokud řetězec obsahuje
pouze čísla |
|
|
|
| na číslo | z typu výběr ze seznamu | číslo pořadí položky
výběrového seznamu |
|
|
|
| na pracnost | z typu čas dne, číslo | hodnotu vyjadřující
počet minut |
|
|
|
| na pracnost | z typu pokrok | kladnou číselnou
hodnotu |
|
|
|
| na dobu trvání | z typu číslo | hodnotu vyjadřující
počet minut |
|
|
|
| na čas | z typu den | začátek dne |
|
|
|
| na den | z typu čas | pouze den |
|
|
|
| na čas dne | z typu čas | pouze hodnotu
vyjadřující čas dne |
|
|
|
| na čas dne | z typu číslo, pracnost | hodnotu vyjadřující čas
dne v minutách |
|
|
|
| na dobu trvání | z typu denní pracovní
doba | celkovou dobu pracovní
doby bez přestávek |
|
|
|
| na obrázek | z typu příloha | obrázek, pokud je
příloha identifikovatelná
jako obrázek |
|
|
|
| na obrázek | z typu databáze | ikonku databáze |
|
|
|
| na e-mailovou adresu | z typu řetězec | e-mailovou adresu, pokud
řetězec odpovídá
e-mailové adrese |
|
|
|
| na řetězec | z typu čas, číslo | textový řetězec |
|
|
|
| na řetězec | z typu den | textové vyjádření
dne (pokud bude pole
lokalizovatelné, výsledný
řetězec bude odpovídat
obvyklému
zápisu dne v jednotlivých
jazykových prostředích,
viz kapitola 49, sekce
Lokalizovatelnost hodnot
vybraných polí) |
|
|
|
| na řetezec | z typu výběr ze seznamu | název položky
výběrového seznamu |
|
|
|
| na řetezec | z typu příloha, uživatel | název přílohy, uživatele |
|
|
|
| na řetězec | z typu e-mailová adresa,
webový odkaz | textový řetězec |
|
|
|
| na řetězec | z typu text | text spojený do jednoho
řádku |
|
|
|
| na text | z typu textový řetězec | jednořádkový text |
|
|
|
| na text | z typu formátovaný text | text očištěný o
formátování |
|
|
|
| na formátovaný text | z typu text | text, který bude možné
formátovat |
|
|
|
| na výběr ze seznamu | z typu číslo | položku výběrového
seznamu uvedeného
pořadí |
|
|
|
| na vazbu mezi záznamy
(předchůdci) | z typu odkaz na záznam | standardní vazbu mezi
záznamy (předchůdci) |
|
|
|
| na odkaz na záznam | z typu zdroj na uživatele | vlastníka zdroje |
|
|
|
| na odkaz na záznam | z typu uživatel na zdroj | výchozí zdroj uživatele |
|
|
|
| na odkaz na záznam | z typu vazba mezi
záznamy | záznam, ke kterému je
vazba |
|
|
|
| na odkaz na záznam | z typu odkaz na záznam | záznam z databáze
sjednocení (pokud je
jeden záznam z databáze
sjednocení a druhý
záznam z databáze, jenž
je prvkem databáze
sjednocení) |
|
|
|
| na webový odkaz | z typu operace | webový odkaz
umožňující provést
zvolenou operaci |
|
|
|
| na webový odkaz | z typu řetězec | webový odkaz |
|
|
|
| na webový odkaz | z typu odkaz na záznam | webový odkaz
umožňující otevřít
zvolený záznam |
|
|
|
| na přílohu | z typu obrázek | příloha |
|
|
|
| na přílohu | z typu odkaz na záznam | soubor s příponou .itrl
umožňující zobrazení
záznamu |
|
|
|
| |
- vyhodnocení hodnoty pole – vrátí hodnotu uvedeného pole z uvedeného
záznamu patřícího do databáze vybrané jako typ; u výrazů typu text a
formátovaný text vyhodnotí libovolný typ výrazu a vrátí textovou
hodnotu, u ostatních typů výrazů vyhodnotí pouze výrazy stejného
typu, pokud bude vyhodnocovat výraz jiného typu, vrátí prázdnou
hodnotu
Operátor vyhodnocení hodnoty pole má specifické použítí pro vyhodnocování
hodnot polí uvedených jako náhrady za značky %1 až %9. Na obrázku 52.13
vidíte příklad použítí tohoto operátoru ve výpočtu hodnoty pole Detail
z webu podle IČ, kdy vrací hodnotu pole uvedeného jako 1. náhrada vzoru
adresy pro detail z webu v nastavení pracovní skupiny, tj. hodnotu pole IČ
vybraného zájemce nebo společnosti.
- uložená hodnota proměnné – tento operátor je vhodný pro pole
s vypočítávanou výchozí hodnotou, kterou může uživatel měnit (viz sekce
Výchozí hodnota pole v kapitole 51) – ignoruje výraz pro výpočet výchozí
hodnoty uvedeného pole a vrátí hodnotu uloženou uživatelem nebo prázdnou
hodnotu, pokud uživatel hodnotu nezadal
- náhrada hodnoty, pokud je null – vrátí hodnotu uvedenou v argumentu
hodnota; pokud bude hodnota vypočítaná tímto argumentem prázdná, vrátí
hodnotu uvedenou v argumentu náhrada
- jednotky pro zdroje – vrátí hodnotu odpovídající podílu práce daného
zdroje či zdrojů na vytížení (pole Jednotky)
Na obrázku 52.14 vidíte část výpočtu pomocného pole Podíl, na základě
kterého je vypočítáváno vytížení zdojů. Pomocí operátoru Jednotky pro
zdroje (UNITSFOR) je zde hodnota zadaná do pole Jednotky u úkolu
přiřazeného více vlastníkům rozpočítávána pro jednotlivé konkrétní
vlastníky.
- číslo kopie – umožňuje jednotlivé výskyty automaticky vytvořených
záznamů označovat číslem kopie
Operátor číslo kopie (COPYNUM) je použit např. při výpočtu názvu
opakovaných schůzek, resp. názvů jednotlivých výskytů schůzek automaticky
vytvořených dle předpisu pro opakované schůzky, viz obrázek 52.15
níže.
- odkaz přes záznam – vrátí uvedenou hodnotu z uvedeného záznamu; výběr
databáze u kolonky Typ umožňuje odkazovat na záznamy s jiným
kontextem než má vypočítávané pole; viz obrázek 52.7, argument
Vzdálenost
Na obrázku 52.16 znázorňujícím výpočet hodnoty pomocného pole Zástupce
vlastníka vidíte použití operátoru Odkaz přes záznam v situaci, kdy první
argument může obsahovat více hodnot. Výpočet vrací všechny možné
hodnoty, v tomto případě tedy všechny uživatele uvedené jako zástupce
zdrojů u všech vlastníků úkolu.
- automatický záznam – v kontextu uvedeného podkladového záznamu
vrátí odkaz na uvedené pořadí automaticky vygenerovaného záznamu
předpisem vybraným jako typ, např. na první výskyt opakovaného
úkolu
Obrázek 52.17 zobrazuje detail výpočtu hodnoty pole Tisk u vydaných faktur.
Operátor automatický záznam zde vrátí vygenerovaný dokument automaticky
vygenerovaný na základě vydané faktury – podobu vydané faktury pro
tisk.
- vytvoření odkazu – vrátí odkaz na záznam z databáze typu součin
Obrázek 52.18 znázorňuje použití operátoru vytvoření odkazu ve výpočtu
pomocného pole Koncept poznámky k úkolu aktivního uživatele, které
je použito pro nastavení operace Uložit poznámku. Výpočet vrací odkaz na
záznam z databáze Koncepty poznámek k úkolům, která je součinem databází
úkolů a uživatelů, a pro každého uživatele majícího přístup k danému úkolu
v ní existuje samostatný koncept poznámky daného úkolu. Operátor vybere
koncept poznámky aktivního uživatele, což operaci Uložit poznámku následně
umožní uložit pouze poznámku vytvořenou právě aktivním uživatelem (každý
uživatel může mít k daného úkolu rozepsanou vlastní poznámku,
kterou až do uložení jiní uživatelé nevidí, po uložení je poznámka
dostupná všem uživatelům majícím přístup k poznámkám daného
úkolu).
- rekurzivní operace – operaci vybranou typem a definovanou v argumentu
částice provede se všemi záznamy uvedenými v argumentu další; jako typy
této operace jsou nabízeny operátory se dvěma argumenty stejného typu,
přičemž typ vlevo další hodnoty řadí vlevo od první hodnoty, typ vpravo pak
vpravo od první hodnoty
Na obrázku 52.19 vidíte příklad použítí rekurzivní operace typu vlevo
zřetězit (AB) na detailu výpočtu pole Číslo (operátor zřetězit (AB) viz dále).
Výpočet zřetězí číslo úkolu v rámci projektu s čísly jeho případných rodičů,
přičemž čísla rodičů se řadí vlevo od čísla úkolu.
- aktivní záznam – vrátí záznam, v jehož kontextu výpočet probíhá, viz
operátor SELF na obrázku 52.11
- dorejstrikuaktivní výběr – vrátí záznamy, které jsou v určené sestavě
aktuálně vybrané (operátor je vyhodnocován na klientu a není nijak zajištěna
dlouhodobá konzistence, je proto vhodný např. pro pomocné pole při
přizpůsobení sestav)
- generování QR kódu – vrátí obrázek s QR kódem kódujícím daný
textový řetězec
Operátor generování QR kódu umožňuje zakódovat do QR kódů URL adresy
k ovládání vybraných akcí Instant Teamu nebo vytvářet kódy přímo ze
zadaných řetězců, např. pro QR platby vydaných faktur. Na obrázku
52.20 je uveden příklad použití operátorů generování QR kódu a
konverze hodnoty typu operace na webový odkaz – pro zvolenou operaci je
vygenerována URL adresa, ta je převedena na řetězec a zakódována do
QR kódu.
- Vytvoření vazby na záznam – vytvoří hodnotu typu vazba na
záznam s pevným či procentním prodlením (vyjádřeným v procentech
plánované práce) definovanou argumenty provazbený záznam, typ vazby a
prodleva
- Typ vazby – zjistí typ vazby mezi provazbenými záznamy
- Prodlení – zjistí pevné či procentní prodlení mezi provazbenými
záznamy
Operátory pro vícehodnotová pole
- konstanta – vrátí hodnoty uvedené v argumentu Hodnota
- náhrada hodnoty, pokud je null – vrátí hodnoty uvedené
v argumentu hodnota; pokud bude množina hodnot vypočítaná tímto
argumentem prázdná, vrátí hodnoty uvedené v argumentu náhrada
- sloučení vícenásobných hodnot – jako hodnotu vícehodnotového
pole vrátí všechny uvedené hodnoty
Obrázek 52.21 znázorňuje výpočet pomocného pole Potvrzení
účastníci, které je dále použito pro výpočet pole, na němž je založen
parametr Zahrnující u sestavy Kalendář činností. Výpočet pomocí
operátorů sloučení vícenásobných hodnot (++), rozdíl vícenásobných
hodnot (–) a spojení hodnot z databází (viz dále) určí potvrzené
účastníky schůzek, tedy autora schůzky, povinné účastníky schůzky,
účastníky s rezervací a nepovinné účastníky s pozvánkou, kteří
potvrdili účast, z této skupiny pak odebere povinné účastníky, kteří svou
účast na dané schůzce odmítli.
- jednoznačná hodnota z vícenásobné – pokud bude argument obsahovat
právě jednu hodnotu, vrátí tuto hodnotu; pokud bude argument obsahovat
více hodnot nebo žádnou hodnotu, vrátí prázdnou hodnotu
Na obrázku 52.22 vidíte příklad použití operátoru jednoznačná hodnota
z vícenásobné ve výpočtu pomocného pole Efektivní nákladová
sazba. Pokud úkol nemá zadanou vlastní nákladovou sazbu a má
právě jednoho vlastníka, vrátí výpočet hodinovou sazbu uvedeného
vlastníka.
- n-tý člen množiny – vrátí hodnotu s uvedeným pořadím z uvedené
množiny hodnot
- průnik vícenásobných hodnot – vrátí hodnoty uvedené zároveň
v argumentu A i B
- rozdíl vícenásobných hodnot – vrátí hodnoty uvedené v argumentu A,
které nejsou zároveň uvedeny v argumentu B
- je vícenásobná hodnota prázdná – vrátí hodnotu ano, pokud je uvedená
vícenásobná hodnota prázdná, v ostatních případech vrátí hodnotu ne, viz
obrázek 52.12
- vícenásobná hodnota obsahuje – vrátí hodnotu ano, pokud uvedená
vícenásobná hodnota obsahuje hodnotu uvedenou v argumentu Jednoduchá
hodnota, v ostatních případech vrátí hodnotu ne
Obrázek 52.23 znázorňuje použití operátoru vícenásobná hodnota
obsahuje na pomocném poli Má přístup k financím?, které je
použito jako přístupový filtr pro zobrazení sestavy nákladů. Tento
výpočet vyhodnocuje, zda je mezi rolemi uživatele uvedena hodnota
Finančník.
- vícenásobná operace – operaci vybranou typem provede se všemi
hodnotami vícehodnotového pole
- počet hodnot – vrátí počet hodnot vícehodnotového výrazu
- filtrovací operátory vybrat hodnoty menší nebo rovny nějaké hodnotě,
vybrat hodnoty menší než nějaká hodnota, vybrat hodnoty větší
nebo rovny nějaké hodnotě, vybrat hodnoty větší než nějaká
hodnota – vrátí hodnoty z uvedené množiny vyhovující stanovené
podmínce
Databázové operátory
- následující mezi záznamy –
vrátí hodnotu odpovídající následujícímu, případně předcházejícímu
záznamu splňujícímu definované podmínky; výběrem typu je možné
určit, zda se bude hledat po, resp. před záznamem či hodnotou a dále to,
zda mají být dané záznamy řazeny podle čísla, řetězce nebo přirozeného
řazení
- zřetězit (AB) – zřetězí hodnoty uvedené v argumentech, či zřetězí,
resp. sestupně zřetězí texty ze záznamů splňujících definované
podmínky; výběrem typu je možné určit databázi, jejichž záznamů se
zřetězení týká a způsob, podle kterého se budou texty řetězit
- spojení hodnot z databáze – vrátí uvedené hodnoty ze všech
záznamů dané databáze splňujících definované podmínky a spojí je do
vícenásobné hodnoty
Na obrázku 52.24 vidíte použití operátoru spojení hodnot z databáze ve
výpočtu hodnoty pole Potvrzení účastníci. Pomocí tohoto operátoru
jsou vybráni adresáti, kteří na pozvánce odmítli svou účast na vybrané
schůzce (celý popis výpočtu tohoto pole naleznete u obrázku 52.21).
- pořadí mezi záznamy – vrátí pořadí záznamu splňujícího definované
podmínky mezi záznamy z vybrané databáze; výběrem typu je možné určit
hodnotu, podle které budou záznamy vybrané databáze řazeny
- vnořená sumarizace – vrátí uvedenou hodnotu sumarizovanou za všechny
záznamy splňující definované podmínky; aby měl tento operátor smysl, musí
mít pole použité jako hodnota definovanou agregaci, resp. pokud je
jako hodnota použit výraz, je brán jako by měl definovanou agregaci
„počítané skupiny"(viz sekce Agregace hodnot vybraných polí v kapitole
51)
Obrázek 52.25 znázorňuje výpočet hodnoty pole Kombinovaný konec
projektu s použitím operátoru vnořená sumarizace. Výpočet v tomto
případě vyhodnocuje hodnoty pole Kombinovaný konec u všech úkolů
patřících do vybraného projektu a vrátí nejvzdálenější z těchto hodnot (pole
Kombinovaný konec má zvolenou agregaci „poslední“).
- existují záznamy – vrátí hodnotu ano, pokud v databázi vybrané v kolonce
Typ existuje alespoň jeden záznam splňující definované podmínky,
v ostatních případech vrátí hodnotu ne
Výpočet hodnoty pomocného pole Existují výrobní projekty?,
obrázek 52.26, které je použito jako přístupový filtr pro zobrazení
sestavy výrobních projektů, ukazuje příklad použití operátoru existují
záznamy. V tomto případě výpočet vyhodnocuje, zda v pracovní skupině
existují záznamy z databáze projektů označené jako výrobní typ
projektu.
- počet záznamů – vrátí počet záznamů v databázi vybrané v kolonce Typ
splňujících definované podmínky
Historické operátory
- odkaz na časovou hodnotu – umožňuje pro výrazy, které nejsou
historické, vracet hodnoty k uvedeným časovým okamžikům; aby měl
tento operátor smysl, musí být jako proměnná použito pole s historií:
- pro proměnnou s historií v období je možné zadat libovolný den období
a pomocí typu vybrat délku intervalu, pro který bude uvedená hodnota
platná (kalendářní rok, měsíc atd.), případně definovat vlastní časový
interval
- pro proměnnou s historií v období je možné pomocí typu zadat
libovolné období, o které se má výpočet hodnoty posunout do minulosti či
budoucnosti (o kalendářní rok, měsíc atd. či aktuálně nastavené období
výpočtu) a stanovit o kolik období se má posun provést
- pro proměnnou s historií ode dne vrátí historickou hodnotu "ke dni"
Obrázek 52.27 na pomocném poli Má být generován? ukazuje příklad
použití operátoru odkaz na časovou hodnotu, v němž je použita
proměnná s historií ode dne – pole Frekvence výkazů práce ke dni.
Výpočet zjišťuje, zda má pracovník k začátku či ke konci období dané
frekvence výkazu práce přiřazenou frekvenci výkazu práce, a pokud ano,
je pak pro daného pracovníka na dané období vygenerován výkaz práce.
- vytvoření časové hodnoty – pro výrazy s historií umožňuje z nehistorických
hodnot vytvářet hodnoty historické:
- v kontextu historie v období je možné zvolit vytvoření časové hodnoty –
vrátí uvedenou hodnotu pro uvedený den
- v kontextu historie v období je možné zvolit vytvoření historie v období po
dnech či po měsících, argumenty od kdy a do kdy vytvoří období, pro které
se historické hodnoty počítají – jako historickou hodnotu vrátí součet
uvedené hodnoty za interval definovaný argumentem perioda (za uvedený počet
dnů či měsíců)
- v kontextu historie ode dne je možné zvolit vytvoření historie po dnech či po
měsících, argumenty od kdy a do kdy vytvoří období, pro které se historické
hodnoty počítají – jako historickou hodnotu vrátí hodnotu typu den
odpovídající začátku intervalu definováno argumentem perioda (uvedený
počet dnů či měsíců)
Obrázek 52.28 znázorňuje výpočet hodnoty pole Skutečné náklady (pole
s historií v období), které je použito pro zobrazování časových údajů
v hodnotové lince sestavy nákladů. Pomocí operátoru vytvoření časové
hodnoty je ke dni ukončení úkolu vytvořena historická hodnota představující
skutečné paušální náklady úkolu, tedy ke dni ukončení úkolu budou
k nákladům úkolu připočteny i paušální náklady.
Ve výpočtu hodnoty pomocného pole Vývoj zbývající práce (pole
s historií ode dne) jsou použity oba historické operátory. Operátor odkaz na
časovou hodnotu v rozmezí má jako argument „do kdy"použit operátor
vytvoření časové hodnoty po dnech, viz obrázek 52.29. Tento výpočet pro
každý den období od začátku práce na úkolu do konce úkolu od celkové
zbývající práce ke dni odečítá kumulovanou práci od začátku úkolu
k danému dni a vyjadřuje tak, kolik k danému dni zbývá na úkolu
odpracovat.
- konec výpočetního období pro výrazy s historií v období vrací konec
období, pro které se výpočet provádí (typicky konec období aktuálně
zobrazeného v hodnotové lince sestav)
Jazykové operátory
- odkaz na jazykovou hodnotu – umožňuje pro výrazy, které nejsou
lokalizované, odkazovat se na lokalizované hodnoty
- Jazyk – umožňuje z nelokalizovaných hodnot vytvářet hodnoty, které
jsou různé pro různé jazykové mutace aplikace
Na obrázku 52.30 vidíte použití operátoru Jazyk, který má využítí zejména
v podmíněných výrazech, v tomto příkladě umožní v různých jazykových
mutacích aplikace otevírat odlišné webové stránky sloužící pro hledání informací
o zájemcích.
Operátory pro práci s barvami
- Složení barvy – umožňuje číselné hodnoty převést na barvy;
v kolonce Typ lze zvolit, zda se má barva skládat z červené, zelené a
modré složky nebo z odstínu, sytosti a hodnoty
- Barevná složka – umožňuje složku barvy vybranou v kolonce Typ
převést na číselnou hodnotu