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
- Dynamické podmínky (formuláře) /
- Dynamické řádky: skript
Dynamické řádky: skript
Proměnná typu Dynamické řádky má kromě JSON definice sloupců (viz Proměnné: Dynamické řádky) i vlastní Skript – kód v JavaScriptu, který běží v prohlížeči uživatele a řídí hodnoty, vzhled a chování buněk tabulky za běhu formuláře. Tento článek je referencí metod a kontextu skriptu v TAS 5.19.12.
Kontext skriptu
V kódu je k dispozici kontext aktuálního úkolu pod this.currentTask: this.currentTask.id (ID úkolu), this.currentTask.items (proměnné úkolu s počátečními hodnotami z databáze), this.currentTask.refs (reference na formulářové komponenty) a this.currentTask.processVars (proměnné případu). Aktuální data tabulky jsou pod this.table, aktuální jazyk formuláře v this.language. Příznak this.props.formIsPristine, resp. t['sloupec'][i].isPristine() (kde i je číslo řádku), řekne, zda uživatel danou buňku/formulář od načtení změnil. this.lastChangedCell odkazuje na poslední uživatelem změněnou buňku. Pro obecné pomocné funkce je k dispozici knihovna Lodash.
Ve všech metodách níže značí t kontext tabulky (referenci na všechny buňky, t['sloupec'][i]) a i/rowNumber číslo řádku; pokud je colName/rowNumber null, funkce se použije na celý sloupec, resp. celý řádek.
this.value – hodnota buňky
this.value(colName, rowNumber, args);| Parametr | Popis |
|---|---|
colName | Název sloupce; null = všechny sloupce řádku. |
rowNumber | Číslo řádku; null = všechny řádky sloupce. |
args | Hodnota, nebo funkce function(t, i, original) vracející hodnotu. original je původní hodnota buňky. |
this.value('totalPrice', null, function(t, i) {
return t['unitPrice'][i].getValue() * t['quantity'][i].getValue();
});
// Součtový řádek (řádek 1 bývá totals)
this.value('totalPrice-total', 1, function(t, rows) {
var total = 0;
for (var i in rows) {
total += t['totalPrice'][i].getValue();
}
return total;
});this.task – styl buňky
this.task(colName, rowNumber, args);Stejné parametry jako this.value, args ale vrací objekt se styly CSS.
this.task('totalPrice', null, function(t, i) {
return t['totalPrice'][i].getValue() > 10000
? { textAlign: 'right', color: '#c00' }
: { textAlign: 'right', color: '#555' };
});this.changeDef – definice tabulky a sloupců
this.changeDef(newDef);newDef je objekt {colName: {vlastnost: hodnota}, ..., table: {...}} (klíč table mění vlastnosti celé tabulky, např. side, showAddRemove, showTotals). Vlastnosti se kumulují: pokud chcete sloupec schovat jen za podmínky, musíte ho v opačné větvi zase zviditelnit. Víc volání changeDef se slučuje, stejnojmenná vlastnost platí naposledy vrácená.
this.changeDef(function() {
return {
totalPrice: { duty: 'readonly' },
note: { isVisible: vSync('OrderType') === 'Goods' },
table: { side: 'left', showTotals: false },
};
});this.changeCell – vlastnosti buňky
this.changeCell(colName, rowNumber, args);Stejné parametry jako this.value; args vrací objekt vlastností konkrétní buňky (např. duty, isValid, validationErrors, zdroj dat pro DL/DT: dataUrl, urlFilter, colIndex).
this.changeCell('totalWithVat', null, function(t, i) {
return t['totalPrice'][i].getValue() || t['totalPrice'][i].getValue() === 0
? { duty: 'mandatory' }
: { duty: 'writeable' };
});
// Změní zdroj dat našeptávače podle zvoleného kraje
this.changeCell('city', null, function(t, i) {
var region = t['region'][i].getValue() && t['region'][i].getValue().value;
if (region) {
return { colIndex: 2, dataUrl: '/dyn-table/52/values', urlFilter: 'col_1<eq>' + region };
}
});Další metody
| Metoda | Signatura | Popis |
|---|---|---|
this.changeFormComponents | (componentName, value) | Nastaví hodnotu jiné proměnné formuláře úkolu (mimo tabulku). componentName je název proměnné, value nová hodnota nebo funkce. |
this.formComponentsStyle | (componentName, style) | Nastaví styl jiné proměnné formuláře, typicky ji schová: this.formComponentsStyle('Sequence', {display: 'none'}). |
this.insertHtml | (html) | Vloží vlastní HTML pod tabulku, např. součtová políčka mimo sloupce tabulky. |
this.valueHtml | (id, value) | Nastaví hodnotu vloženého HTML elementu podle jeho id. |
this.getDynTable | (dt_id, dtc_id) | Načte sloupec dtc_id dynamické tabulky dt_id (jde použít i název) do this.dynTable[dt_id]. Asynchronní – skript počká na dokončení. |
this.deleteRow | (args) | Smaže řádek; args je boolean, nebo funkce function(t, rowId) vracející true/false. |
this.handleErrors | (error) | Zapíše chybu z try/catch nebo odmítnuté promisy do konzole a znemožní splnění úkolu, dokud chyba trvá. |
this.insertHtml('<div><span>Celkem s DPH</span><input id="totalSum" type="text" readonly></div>');
this.valueHtml('totalSum', function(t) {
return numeral(t['totalWithVat-total'][1].getValue()).format('0,0.00 $');
});
this.getDynTable('Suppliers');
this.value('supplierVat', null, function(t, i) {
var row = t['supplier'][i].getValue();
if (!row) return null;
var found = _.find(this.dynTable['Suppliers'], { dtv_index: row.value });
return found ? found.col_4 : null;
});Aby sloupec reagoval na změnu proměnné formuláře mimo tabulku, musí být proměnná v definici tabulky uvedená v
table.watchVariables a musí být v úkolu namapovaná pro zápis – jinak se skript při její změně nepřepočítá. Úplný přehled vlastností definice je v článku Proměnné: Dynamické řádky.Snippety
Tlačítko Vložit snippet v editoru skriptu nabízí hotové šablony volání výše uvedených metod (this.value, this.task, this.changeDef, this.changeCell, this.changeFormComponents, this.formComponentsStyle, this.insertHtml/this.valueHtml, this.getDynTable, this.deleteRow, this.handleErrors) – vloží se na místo kurzoru a stačí doplnit názvy sloupců a logiku.
Související: Proměnné: Dynamické řádky, Dynamické podmínky: skript, Dynamic Table API.