Uživatelský manuál
Stručný průvodce
Poznámky případu
Komponenta tabulky
FAQ
Hledání
Dashboard
Smazané dokumenty a log přístupů
Řešení úkolu
AI asistent
Manuály
Zástup a dovolená
Uspání, probuzení, archivace a smazání případu
Proměnné, historie a graf případu
Základní pojmy
Nahrání dokumentu, složky a revize
Novinky
Oblíbené
Orientace v rozhraní
Widgety dashboardu
Detail případu
Novinky/Oznámení v Team assistant
Seznam případů
Přihlášení a odhlášení
Nastavení účtu
Seznam úkolů
Nastavení mobilní aplikace
Reporty a grafy
Hledání a seznam dokumentů
Předání, převzetí a úkoly k odběru
Hromadné úkoly
Tisk případu
Vytvoření a úprava přehledu
Co je TAS
Pole formuláře
Tabletové rozhraní a NFC
Přehledy
Založení nového případu
Události na případu
Oprávnění k případu
Odběr přehledu e-mailem
Admin dokumentace
Platforma
Administrace
Crony
Paralelní cron - PostponedTaskCron
Crony v5.19
Crony
CleanupCron
MsGraphCheckUnprocessedMailsCron - Kontrola nezpracovaných mailů
Crony v5.7
Hearbeat monitoring cronů
Autentizace a synchronizace
SMTP OAuth autentizace
LDAP, SAML, Entra ID a NFC: nastavení
Konfigurace autentizačních modulů
Autentizace
Organizační struktura
Trezor
DMS atributy
Servisní operace
Trezor
Nastavení mobilní aplikace pro vaše prostředí
Schéma
Import procesů XML
Sdílené soubory
HR agenda a předání agendy
Logy
Archivace
Skripty
Sekvence
Stav systému
Správa novinek
Migrace
Konfigurace
Pluginy
Fronta e-mailů
Servisní konzole
AI monitoring
Sdílené soubory
Nastavení
CSP hlavičky - zásady zabezpečení obsahu
CSV soubory
Naplánované úkoly
Fronty zpracování
Údržba
Menu Administrace
Licence
Dynamické tabulky
Statistiky použití
Nastavení přístupového tokenu a vypršení platnosti relace
Vizuální identita
Šablona
Tisk (Case Overview)
Úkoly
Výpočty na úkolu
Automatické dokončení a zrušení úkolu
E-mailový úkol a notifikace
Builder dynamických podmínek
Multiinstance - detailní popis fungování
Typy úkolů
Smart Event úkol
Instrukce, sekce a otestování úkolu
Obecné nastavení úkolu a řešitel
Multiinstance
Plánování: spuštění, větvení a termín
Dynamické podmínky: builder
Přiřazení proměnných a sekce
Proměnné
Diagram tříd, import stavů a kandidáti aliasů
Seznam dokumentů
Text a text s více řádky
Checkbox
Číslo
Proměnné: přehled a společná nastavení
Číselníky (texty, čísla, datumy)
Dynamické řádky
Datum
Dynamický seznam
Sekvence
Dynamická tabulka
Skartace
Graf šablony
Záložka Šablona
Seznam šablon
Import, export a kopírování šablony
Linky
Case Overview Builder (Detail případu)
Hlavičky šablony
Stavy případu
Role
Self-hosted administration
Připojení k jiné databázi
Diagnostika služeb
Change the default URL in Oracle VirtualBox
Hyper-V: izolovaná NAT síť s přesměrováním portů
Uživatelé
Překlady
NFC integrace
Události a pravidla
AXIOS API
Plány
AXIOS s využitím Trezoru
Uživatelé
Axios s využitím certifikátů (SSL)
Detail uživatele
Výpočty a funkce
Dynamické podmínky (formuláře)
Ostatní dynamické podmínky
Optimalizace volání api na dynamických podmínkách
Filtrování v dynamickém listu pomocí dynamických podmínek
Dynamické podmínky: skript
Dynamické řádky: skript
Výpočty
Dynamické tabulky
Tisk a generování souborů
Dokumenty ve výpočtech — kompletní průvodce
Tisk a generování souborů ve výpočtech
Vytvoření dokumentu DOCX
Ostatní výpočty
Jak a kdy běží výpočty
Reference API výpočtů: knihovna lib
Reference API výpočtů: proměnné a případ
Globální skripty a React skripty
Integrace
MS Graph
MS Graph - příprava schránky
MS Graph - konfirurace cronu
MS Graph v2 (od v5.7.102)
MS Graph - příprava schránky - Legacy
MS Graph (e-mail)
ISDOC.PDF
DocuSign
Modul na volání TASu - TAS 2 TAS (zakládání procesů přes API)
DB View
DocuSign a elektronický podpis
ERP a další integrace
Smart Events pro integrace
TAS Forms
Pokročilé funkce a tipy
Filtrování v dynamickém listu pomocí URL parametru (statické)
Optimalizace přehledů s velkým počtem případů
AI Features
API dokumentace
Produkt
Technický changelog
Business Changelog
Průvodce upgradem z předchozích verzí
Upgrade na 5.19
Upgrade na 5.17
Upgrade na 5.7
Lodash upgrade v4.17.x (>v5.5)
Hlavní změny a zaniklé funkce (v5.3 > v5.7)
Podbarvení proměnných ve stavu Read-only (>v5.7.58)
Upgrade na 5.3
Migrace dynamických podmínek
Úprava a kontrola tisku pdf
Úprava Popis úkolu vs Instrukce k úkolu
Transpilace forEach na for loop
Vykreslení HTML na Caseoverview
Rozdíly mezi TAS4 a TAS5 - kompletní přehled
Best Practices upgrade z TAS 4 na TAS 5
Použití validačních funkcí
Technické požadavky a architektura
Status routes
Prerekvizity serveru
Bezpečnost a ochrana dat
Security
TAS Operations Runbook
Technologická architektura
Graceful Shutdown + Status Routes
Aktuality / Důležité informace
Microsoft ukončení Basic Auth pro SMTP
Ukončení podpory EWS a přechod na Microsoft Graph
Úprava v EWS po aktualizaci MS Exchange (29.04.2025)
Bezpečnostní oznámení
Getting Started
- Vše /
- Admin dokumentace
- Výpočty a funkce
- Výpočty /
- Jak a kdy běží výpočty
Jak a kdy běží výpočty
Výpočty jsou JavaScript, který na pozadí počítá hodnoty proměnných, mění nastavení úkolu nebo volá okolní systémy. Píšou se do záložky Výpočty v editoru úkolu (viz článek Výpočty na úkolu) a do sdílených skriptů v administraci. Tento článek popisuje, v jakém pořadí a kontextu výpočty běží, jak se k nim připojují sdílené skripty, kam se zapisují jejich chyby a co se stane, když výpočet selže. Konkrétní rozhraní, které máte ve výpočtu k dispozici (vars, proc, task, lib, dt...), popisují další články této sekce.
Kdy se sekce spouští
Záložka Výpočty obsahuje jednu nebo víc sekcí kódu. Každá sekce má zaškrtnuté okamžiky spuštění:
| Okamžik | Kdy přesně |
|---|---|
| Při spuštění | Úkol se aktivuje – u úkolu pro uživatele po určení řešitele, u e-mailového upozornění před odesláním, u Smart Eventu až po jeho provedení, u podprocesu před založením podřízeného případu. |
| Na konci | Úkol se splní, u všech typů úkolů včetně automatických. |
| Při přepočítání | Řešitel zvolí v nabídce úkolu Přepočítat. Formulář se nejdřív uloží. |
| Ručně | Uživatel otevře v okně Událost čekající úkol typu Událost, ještě před zobrazením proměnných. |
| Před převzetím | Úkol se stává úkolem k odběru, těsně před nabídnutím uživatelům. |
Má-li úkol víc sekcí se stejným okamžikem, spustí se v pořadí, v jakém jsou na záložce seřazené – přesuňte je ikonou pořadí, pokud na sobě závisí. Vypnutá sekce (přepínač Aktivní) a sekce bez zaškrtnutého okamžiku se nikdy nespustí.
Výpočty na záložce Výpočty běží vždy v kontextu jednoho úkolu (mají k dispozici
task, snaps, storage, excel, jwt, identity, axios, ai, ftp, vault i proc, lib, dt, dr, html, zip). Neexistuje samostatná záložka pro „výpočet celého procesu“ – pokud má počítat něco nezávislého na konkrétním úkolu, dejte to do automatického úkolu nebo do sdíleného skriptu typu Výpočty.Připojené skripty
Pole Skripty na záložce Výpočty nabízí aktivní sdílené skripty typu Výpočty z Administrace → Skripty (viz článek Globální skripty a React skripty). Kód vybraných skriptů se vloží před kód sekce, takže jejich funkce jsou v sekci rovnou k dispozici – nemusíte nic importovat:
// Skript "ExchangeRates" vybraný v poli Skripty definuje:
function getEurRate() {
return lib.getExchangeRate('EUR');
}
// Kód sekce ho může rovnou zavolat:
const rate = getEurRate();
vars['totalPriceEur'].setValue(vars['totalPrice'].getValue() / rate);Vyberete-li víc skriptů, vloží se v pořadí, v jakém jsou v poli vybrané. Když skript v administraci vypnete nebo smažete, zmizí i z výpočtů, které ho používaly, a při příštím uložení šablony se to projeví chybou, pokud na jeho funkce kód odkazuje.
Zdroj a ES6 syntax
Kód píšete do záložky Zdroj. Po uložení ho server přeloží (transpiluje) do podoby na záložce ES6 syntax, která se skutečně spouští – await se tam mimo jiné doplní za každé volání metody API, protože metody jako setValue nebo getDynTable jsou asynchronní. Proto se ve zdroji await obvykle nepíše a nevadí ani zápis bez function/arrow syntaxe, kterou mají starší šablony.
Jak se ukládají hodnoty
Každé volání vars['x'].setValue(...), vars['x'].setAttribute(...), task.setAttribute(...) nebo proc.setAttribute(...) zapíše řádek do databáze okamžitě, ne až na konci výpočtu. Výpočet tedy neběží v jedné všechno-nebo-nic transakci: pokud selže až v polovině, hodnoty nastavené před chybou zůstanou uložené, ale akce, která výpočet spustila (např. splnění úkolu), se nedokončí a uživatel dostane chybové hlášení.
vars['approved'].setValue(true); // tato hodnota zůstane uložená i při chybě níž
const supplier = vars['supplier'].getValue();
vars['supplierEmail'].setValue(supplier.email); // TypeError, pokud je supplier null – úkol se nesplníProtože dílčí zápisy zůstávají v databázi i po chybě, při ladění výpočtu na ostrém případu můžete nechat proměnné v mezistavu. Ladění proto dělejte na zkušebním případu, ne na reálné objednávce nebo žádosti.
Logování a ladění
Objekt debug zapisuje do logu, který admin najde v Administrace → Logy → Logy výpočtů (viz článek Logy):
| Metoda | K čemu slouží |
|---|---|
debug.log(message) | Zapíše zprávu do Logu výpočtů. Netextovou hodnotu převede na JSON. |
debug.dump() | Zapíše do logu hodnoty všech proměnných úkolu jako JSON – i když výpočet skončí výjimkou, takže vidíte stav, který se kvůli chybě neuložil. |
debug.error(message, languages) | Ukončí výpočet chybou se zadanou hláškou; languages je objekt s překlady, např. {cs: '...', en: '...'}. |
debug.sleep(seconds) | Pozastaví běh výpočtu na daný počet sekund – pro testování časování. |
debug.enable() / debug.disable() | Zapne/vypne zápis každého řádku výpočtu do logu. |
debug.on() / debug.off() | Vypne/zapne obalení výpočtu try-catchem; off() použijte jen krátce při ladění, protože necháte neošetřené výjimky projít dál. |
debug.log({ step: 'before-approval', total: vars['totalPrice'].getValue() });
if (!vars['supplier'].getValue()) {
debug.dump();
throw new Error('Supplier is empty, cannot continue.');
}Záznam v Logu výpočtů obsahuje případ, úkol a trace ID, takže chybu snadno dohledáte i zpětně.
Související: Výpočty na úkolu, Logy, Reference API výpočtů, Globální skripty a React skripty.