🚀 v5.21
Technický changelog shrnuje změny verze 5.21 oproti 5.19 pro konzultanty a technické týmy: nové funkce, opravy, změny chování a odstraněné části.
Každá změna je zařazena do skupiny:
- ✨ Added – nové funkce a rozšíření
- 🔄 Changed – změněné chování nebo výchozí hodnoty
- 🛠️ Fixed – opravy chyb
- ❌ Removed – odstraněné funkce
- ⚠️ Breaking change – změny, které vyžadují úpravu konfigurace, výpočtů, šablon nebo integrací
⚠️ Před upgradem z 5.19
- Před upgradem udělejte zálohu databáze. Několik migrací nejde vrátit (šablony a hlavičky, plány, zdrojový kód výpočtů, údaje organizace) a migrace šablon se zastaví, pokud případ, přehled nebo úloha odkazuje na neexistující šablonu.
- Spusťte třetí backend proces
npm run start:queuevedle REST a cron backendu. Fronty vyžadují Redis, sTAS_CACHE_MODE=memoryservisní operace, archivace ani přepočet práv manažerů neproběhnou. - Pluginy nasaďte ve verzích pro 5.21 (kompatibilita
5.21.0–5.21.999). Pluginy s vlastním REST API (apiExtensions, exposeDb, Single Sign On) a Template validation aktualizujte zároveň s backendem. - Výpočty a skripty se píší v TypeScriptu a
awaituž nikdo nedoplňuje automaticky. Uložené výpočty upgrade převede, ale nový nebo zkopírovaný kód musí každé asynchronní volání awaitovat sám.proc.IPROC_CASE_STATUSnahraďteawait proc.setCaseStatus()a podmínky na stav případu (-9) porovnávají id stavu, ne název – zkontroluje jevalidation.checkMigration(). - Fonty se ukládají do
/app/tas/storage/fonts(dříve/app/tas/storage/assets/fonts) a image už neobsahuje fonty Microsoft – licencované fonty nahrajte v Administrace → Sdílené soubory → Fonty. Tisky čekají naprintLoaded(), nastavení Timeout (ms) je zrušeno. - Crony MS Graph pro poštu jsou nahrazeny cronem EmailProcessingCron – spusťte
sys.mail.migrateMsGraphToNewEmailStuff()v servisní konzoli. Integrace iDoklad a stránka Administrace → Nastavení (adresa, IČ, DIČ organizace) jsou odstraněny bez náhrady.
📦 [5.21.1] - 2026-11-12
🔄 Changed
- tas-3811 Fonty - výchozí složka je
/app/tas/storage/fonts🔄 ⚠️ Breaking change:
Poznámka: Fonty nahrané do/app/tas/storage/assets/fontspřesuňte do nové složky, jinak je seznam fontů ani tisky neuvidí.
🛠️ Fixed
- Pluginy - obchod s pluginy nabízí přibalené pluginy pro 5.21 🛠️
📦 [5.21.0] - 2026-11-11
Zahrnuje i všechny změny vývojové řady 5.20.x.
✨ Added
- tas-4110 Databáze - podpora Oracle Database 19c a novější ✨
Poznámka: NastavteTAS_DB_VENDOR=oracle,TAS_DB_NAMEna service name PDB aTAS_DB_USERNAMEna uživatele schématu; Oracle Instant Client není potřeba. Instance 5.7 na Oracle se upgraduje na místě z 5.7.107 a novější. - tas-3866 Fronty zpracování - servisní operace, archivace a přepočet práv manažerů běží jako sledované příkazy v novém procesu queue ✨ ⚠️ Breaking change:
Poznámka: Vyžaduje třetí procesnpm run start:queuea Redis. Průběh a chyby operací jsou v Administrace → Fronty zpracování a v Moje operace. - tas-3866 Servisní operace - změna se potvrdí hned a dokončí na pozadí ✨ ⚠️ Breaking change:
Poznámka: Integrace, která čekala na dokončení změny, musí dotazovatGET /commands/:commandId, dokud nenísucceedednebofailed. - tas-3966 / tas-3849 / tas-3866 System health - karty Deadlocky a timeouty DB, Error log a Fronty zpracování ✨
Poznámka: Na SQL Serveru potřebuje DB uživatelVIEW SERVER STATE, Error log vyžaduje logování do Elasticsearch. Pro nové položky znovu naimportujtetas_template.yamldo Zabbixu. - tas-1281 SCIM 2.0 - zakládání a správa uživatelů z Microsoft Entra ID bez LDAP ✨
- tas-1682 LDAP / AD - lokální účet ADMIN nelze přepsat z adresáře ✨
Poznámka: Chráněné účty jsou v nastaveníapplication.authentication.protectedUserNames(výchozí["ADMIN"]). - tas-3760 Přihlášení - modul Azure AD se jmenuje Microsoft Entra ID ✨
Poznámka: Stávající moduly fungují beze změny, nové používají callback/auth/entra-id/callback/:id. Modul exportovaný před upgradem po upgradu exportujte znovu. - tas-3387 Kompetence - diagnostika řetězce AD skupina → pravidlo → kompetence → role → uživatel ✨
- tas-3811 Administrace → Sdílené soubory → Fonty - nahrání vlastních fontů pro tisky a dokumenty ✨
Poznámka: Přijímá.ttf,.otfa.ttc; font se použije bez restartu. Nahrávejte jen fonty, jejichž licence pokrývá použití na serveru. - tas-2975 DMS - volitelné zmenšování nahraných obrázků na pozadí ✨
Poznámka: Vypnuto ve výchozím stavu, nastavenífeatureFlag.documents.imageOptimization. Originál se nahradí a nelze ho obnovit. - tas-3502 Editory kódu - tlačítka Zkontrolovat kód, Naformátovat a Zeptat se AI ve všech editorech ✨
Poznámka: AI je dostupná jen při zapnutémintegrations.ai.enabled. - tas-4054 Výpočty -
await proc.getTemplateTasks(query)✨
Poznámka: Nahrazuje odstraněnou funkciproc.getTemplateTasksInfo(). - tas-3788 Plugin Exchange Rates - kurzy ČNB a ECB ve výpočtech a ve smart eventu ✨
Poznámka: Plugin je potřeba nainstalovat. FunkceexchangeRates.getRate,getRatesaconvert. - tas-3628 DocxGeneratorSmartEvent - vygenerované dokumenty rovnou do proměnné typu dokumenty ✨
Poznámka: Předchozí hodnota proměnné se nahradí, nepřidává se. - tas-4019 Smart eventy a crony - výběr proměnných, secretů a připojení ze seznamu, kontrola parametrů při uložení ✨
- tas-3495 / tas-3512 Šablony - nový typ proměnné Dynamické položky (DI) ✨
Poznámka: Nástupce dynamických řádků; ve výpočtechawait di.from('proměnná').getRows(),setRows,addRow,updateRowadeleteRow. Výchozí limit 2000 řádků (featureFlag.dynamicItems.maxRows), existující DR se nepřevádějí. - tas-4074 Dynamické položky - Zeptat se AI v editoru tabulky a skriptu ✨
- tas-3777 Stavy případu - nastavení stavu na úloze bez výpočtu (při startu nebo konci úlohy) ✨
Poznámka: Případ odkazuje na stav šablony, takže přejmenování stavu se propíše do případů. Stav, který používá případ nebo úloha, nelze smazat. - tas-3838 / tas-3836 AI builder - vytvoří celou šablonu včetně hlaviček, stavů a přehledu případu ✨
Poznámka: Přidat šablonu nabízí ruční vytvoření, AI nebo import. AI builder smí používat jen administrátor. - tas-2968 / tas-3770 Šablony - import diagramu BPMN 2.0 nebo Mermaid jako funkční šablony ✨
- tas-1909 Diagram šablony - vlastní ikona uzlu ✨
- tas-3707 / tas-4189 Formulář úlohy - název proměnné vedle pole a zamknutí pozice proměnné ✨
- tas-4011 Dynamické podmínky - jeden blok pro více proměnných ✨
- tas-3261 Proměnné - ikonový seznam (semafor) ✨
- tas-4061 Proměnné - výchozí volba jednovýběrového seznamu ✨
- tas-3288 / tas-3906 Case overview builder - komponenta Záložky a graf z dynamických řádků ✨
- tas-4036 / tas-4134 Plugin Template validation 2.4 -
validation.checkMigration()hlásí nekompilovatelné skripty a podmínky na stav případu ✨ - tas-3853 Úlohy k odběru - hromadné převzetí ✨ ⚠️ Breaking change:
Poznámka: Počet úloh v dávce omezujefeatureFlag.maxPulledTasks(výchozí 50). APIPOST /tasks/pull-to-me/:itaskIdnahradilPOST /tasks/pull-to-mes{ itask_ids: [...] }. - tas-3550 Historie případu - filtrování a řazení podle výchozího názvu úlohy ✨
- tas-3873 / tas-3825 / tas-3827 Organizační struktura - vyhledávání ve stromech, cesta k jednotce ve výběru a editace ze stromu ✨
- tas-3013 Novinky - aktivace a deaktivace příspěvku přímo z tabulky ✨
- tas-4248 AI - nastavení Reasoning effort pro modely OpenAI a Azure OpenAI ✨
- tas-4113 REST API - kompletní dokumentace OpenAPI ✨
🔄 Changed
- tas-3502 Výpočty a skripty - TypeScript,
awaitpíše autor 🔄 ⚠️ Breaking change:
Poznámka: Upgrade převede uložené výpočty a globální skripty včetně doplněnýchawait. Nový nebo zkopírovaný kód bezawaitse uloží, ale poběží chybně – ověřte ho tlačítkem Zkontrolovat kód. - tas-3777 Výpočty - stav případu 🔄 ⚠️ Breaking change:
Poznámka:proc.IPROC_CASE_STATUSuž neexistuje, použijteawait proc.setCaseStatus()/await proc.getCaseStatus(). Podmínka na-9porovnává id stavu, ne jeho název. - tas-2017 Výpočty -
lib.dynamicTableGetCellvracínullpro neexistující buňku 🔄 ⚠️ Breaking change:
Poznámka: Test=== ""nahraďte testem nanull. Prázdná proměnná se v tiscích a e-mailech zobrazí prázdně místo textunull. - tas-3406 Plugin Template validation - nové názvy metod v konzoli 🔄 ⚠️ Breaking change:
Poznámka: Kontroly volejtevalidation.checkMigration(tProcId), hledánívalidation.find(...)a opravyvalidation.fix(ruleId); staré uložené snippety upravte. - tas-3837 Šablony - stav Aktivní / Neaktivní / Vyřazená, archivace a skartace přímo v šabloně 🔄 ⚠️ Breaking change:
Poznámka: Případ se spouští přes aktivní hlavičku. Pohledy a reporty postavené přímo nadTEMPLATE_PROCESSESneboHEADERSpo upgradu nefungují. - tas-3030 Dynamické tabulky - přejmenování se propíše do všech případů, používanou tabulku nelze smazat 🔄 ⚠️ Breaking change:
Poznámka: Oprávnění na úrovni tabulky jsou zrušena: číst smí každý přihlášený uživatel, měnit a importovat CSV jen administrátor. - tas-4071 Tisky - čeká se na
printLoaded(), pak se tiskne 🔄 ⚠️ Breaking change:
Poznámka: Tisk, který spoléhal na pevné zpoždění, doplňte volánímprintLoaded(). Při uložení a importu se skripty tisků kompilují, nekompilovatelný skript import zastaví. - tas-3983 Tisky -
featureFlag.puppeteer.pageRenderTimeoutplatí i pro vykreslení PDF, výchozí hodnota 30 s 🔄
Poznámka: Instance s vlastní nižší hodnotou ji pro náročné tisky zvyšte. - tas-4041 Databáze - omezené čekání na zámek a na spojení 🔄
Poznámka: Na SQL ServeruTAS_DB_LOCK_TIMEOUT15 s (-1= čekat neomezeně), na obou databázíchTAS_DB_ACQUIRE_TIMEOUT30 s. Naplánované úlohy a XML import se při deadlocku zopakují. - tas-3962 Databáze - nové indexy pro historii případů a seznamy 🔄
Poznámka: Na velkých databázích trvá upgrade déle – naplánujte delší okno. - tas-4075 Servisní operace - souběh 20 operací a limit počtu měněných záznamů 🔄
Poznámka: Operace nad víc záznamy, než povolujefeatureFlag.serviceOperations.maxUpdatedRows, se odmítne celá. - tas-4042
TAS_DMS_ALLOWED_EXTERNAL_SOURCES- povolena jen uvedená složka a její podsložky 🔄 ⚠️ Breaking change:
Poznámka: Složky se stejným začátkem názvu (např./mnt/scan2vedle/mnt/scan) uveďte zvlášť. - tas-4248 AI - OpenAI a Azure OpenAI přes Responses API 🔄
Poznámka: Nastavení API version pro Azure je zrušeno aTAS_AI_AZURE_OPENAI_API_VERSIONse ignoruje. Při přechodu na reasoning model vymažte Temperature. - tas-3945 Přehledy - úprava přes
PUT /custom-views/:id🔄 ⚠️ Breaking change:
Poznámka: Integrace, která posíláPOST /custom-viewsscv_id, musí přejít naPUT. - tas-4133 / tas-4116 / tas-3840 Šablony - název úlohy musí být v šabloně jedinečný, šablona musí mít startovní úlohu, řešitel z proměnné musí proměnnou uvádět 🔄
- tas-3959 Skripty přehledu případu - kolidující deklarace se odmítnou při uložení i importu 🔄
- tas-3896 Backend - neošetřená chyba ukončí proces, liveness hlídá i plánovač cronů 🔄
- tas-3962 Crony - v režimu údržby se naplánované crony nespouštějí 🔄
- tas-3516 Tmavý režim - vyladěné barvy a kontrast 🔄
🛠️ Fixed
- tas-4065 / tas-4124 / tas-4299 Import šablon - export ze starší verze se importuje včetně
awaitve výpočtech 🛠️ - tas-4269 Archivní případy - detail úlohy, dokumenty a náhledy se otevírají; hlavička nese příznak Archivováno 🛠️
- tas-3666 Systémové e-maily - loga a obrázky jsou přímo v e-mailu 🛠️
- tas-4134 E-mailové notifikace -
{CaseStatus}v jazyce notifikace 🛠️ - tas-3650 E-maily přes MS Graph - respektuje nastaveného odesílatele 🛠️
- tas-3949 Výpočty -
xls.writeToDms()už nehlásíBANNED_SOURCE🛠️ - tas-3778 FTP -
removeDirectorymaže neprázdnou složku jen srecursive: true🛠️ - tas-3992 Přehled případu - React skript se po opuštění případu ukončí 🛠️
- tas-3838 / tas-3948 / tas-4303 AI builder - spolehlivější úpravy existující šablony, řešitelů a termínů 🛠️
- tas-2866 Šablony - Test vyhodnocení řešitele odpovídá skutečnému chování workflow 🛠️
- tas-2464 / tas-3035 HR agenda a manažeři - předání velké agendy a víc než 999 podřízených 🛠️
- tas-4045 Zástupy a opakované uložení - bez duplicit po částečně neúspěšném uložení 🛠️
- tas-1329 Události - spuštění případu s vlastníkem v kořeni organizační struktury 🛠️
- tas-3874 Přihlášení - neúspěšné pokusy se započítávají do limitu (výchozí 6) 🛠️
- tas-3954 Údržba - upozornění na plánovanou údržbu se zobrazuje a ruší správně 🛠️
- tas-4050 / tas-4048 Mobilní aplikace - výběr data při posouvání a přepnutí tmavého režimu 🛠️
- tas-4037 / tas-4044 MSSQL a PostgreSQL - detail pravidla události, organizační struktura a hledání v proměnných 🛠️
- tas-3389 Dynamická konfigurace - přesun nastavení z env proměnné zachová hodnotu 🛠️
- tas-3865 / tas-4082 / tas-4084 / tas-4087 / tas-4088 / tas-4089 / tas-4091 / tas-4296 / tas-3064 / tas-3152 Bezpečnostní vylepšení 🛠️
🚀 Performance
- tas-4301 Úlohy k odběru - rychlé načtení i při statisících čekajících úloh 🚀
- tas-3945 / tas-4144 Přehledy - otevření, řazení a filtrování za méně než sekundu i pro uživatele s mnoha rolemi 🚀
❌ Removed
- tas-2866 Plány - jeden běh vytvoří jeden případ pro sponzora plánu ❌ ⚠️ Breaking change:
Poznámka: Nastavení „Omezující podmínky pro výběr iniciátorů“ migrace smaže. Plány, které zakládaly případ pro více uživatelů, si před upgradem poznamenejte. - tas-3913 Integrace iDoklad ❌ ⚠️ Breaking change:
Poznámka: Náhrada neexistuje. Aktivní croniDokladSynchronizationCrondeaktivujte nebo smažte. - tas-3821 Administrace → Nastavení ❌ ⚠️ Breaking change:
Poznámka: Migrace smaže adresu, IČ a DIČ organizace – pokud je potřebujete, uložte si je předem. - tas-3034 / tas-3911 / tas-4125 Crony MS Graph pro poštu - nahrazeny cronem EmailProcessingCron a správou připojení v Administrace → Zpracování e-mailů ❌ ⚠️ Breaking change:
Poznámka: V servisní konzoli spusťtesys.mail.migrateMsGraphToNewEmailStuff()(náhled) a pak s parametremtrue, nastavte EmailProcessingCron a staré crony smažte. Hesla a client secrety jsou ve vaultu. - tas-3811 Fonty Microsoft v Docker image ❌ ⚠️ Breaking change:
Poznámka: Arial, Times New Roman, Courier New, Arial Narrow a Calibri nahrazují metricky shodné fonty; Verdana, Georgia, Tahoma a další mohou změnit zalomení. Licencované fonty nahrajte v Administrace → Sdílené soubory → Fonty. - tas-3837 Šablony - vlastník šablony, výchozí název případu a omezení hlavičky jen na interní uživatele ❌
Poznámka: Nový případ dostane název šablony. - tas-3837 Výpočty -
proc.getTemplateTasksInfo()❌ ⚠️ Breaking change:
Poznámka: Použijteawait proc.getTemplateTasks(query). - tas-3030 Vlastní dynamické seznamy a pole
dlist_name❌ ⚠️ Breaking change:
Poznámka: Šablonu s vlastním dynamickým seznamem nejde importovat. Skripty a integrace čtoudt_name; pohledyDT_<id>se už neaktualizují. - tas-4095 Skripty dynamických řádků -
getDynTableValues()❌ ⚠️ Breaking change:
Poznámka: PoužijtegetDynTable(dt_id, dtc_id). - tas-4044 Organizační struktura -
GET /org-units/active❌ ⚠️ Breaking change:
Poznámka: Suggest box nebo integrace s touto URL musí přejít na/org-units?filter=organization_status<eq>"A". - tas-3866 Nastavení
system.scaling.queueWorkflowasystem.scaling.queueRights❌
Poznámka: Fronty se používají vždy, souběh se nastavuje vsystem.scaling.queues.<fronta>.concurrency. - tas-4160 System health - sonda Business activity ❌
- tas-3001 System health - seznam běžících dotazů v panelu DB activity ❌