1. Workflow aktivita - Úkol

    Článek: AN0002057Aktualizováno::

    Aktivita zajistí vytvoření úkolu a nepovinné odeslání informačního emailu. Úkol je přiřazen na konkrétního uživatele nebo skupinu uživatelů, od nichž se čekává zadání dat a uložení úkolu. Po té workflow pokračuje dále v běhu. Do té doby je na této aktivitě pozastaveno.

    Podrobně je práce s úkoly popsána u vlastního workflow.

    Vlastnosti aktivity

    Název Popis
    Název Název aktivity. Zobrazuje se ve schématu a používá se při zápisu do logu workflow..
    Popis Popis aktivity. Zobrazuje se po najetí na aktivitu ve schématu.
    Třída úkolu Třída v systému, do které se budou vytvářet úkoly.
    Kód Kód úkolu, slouží pro odlišení jednotlivých úkolů vrámci jednoho workflow.
    Kategorie Kategorie úkolu.
    Splnit do dní Počet dní, do kterých je třeba úkol splnit.
    Akce Akce, která s emá provést pokud uživatel dokončí úkol.
    Po vytvoření odeslat výchozí email Při zaškrtnutí se odešlě přiřazenému uživateli úkolu informační email.
    Inicializační skript Skript, který se spustí před vytvořením úkolu.
    Skript po vstupu uživatele Skript, který se spustí po dokončení úkolu uživatelem.

    Třída úkolu

    Každý úkol vyžaduje mít vytvořenou třídu, která obsahuje tři specifické sloupce (Přiřazeno, Splněno, Termín dokončení). Do této třídy jsou ukládány úkoly. Každý úkol může mít jinou třídu.

    Přístupová práva ke třídě nemusíte nastavovat, systém ObjectGears sám pozná který uživatel má právo na úkol. Nicméně máte možnost si ke třídě nastavit práva a sledovat úkoly přímo jko při práci s běžnou třídou.

    Sloupec Přiřazeno určuje, který uživatel má úkol splnit.

    Sloupec Splněno říká jak moc uživatle úkol splnit. Slouží hlavně pro dlouhodobější úkoly. Po dokončení úkolu je automaticky nastaveno 100%.

    Sloupec Termín dokončení je naplněn plánovaným datumem, do kdy má uživatel úkol dokončit. Jde pouze o informativní hodnotu, ale umožní uživateli lépe si naplánovat práci.

    Úkol může být přiřazen i na skupinu uživatelů, pokud třída obsahuje sloupec Skupina uživatelů (viz vytváření nového sloupce - Sloupce pro WF Úkoly).

    Poznámka: Při prvním uložení aktivity Úkol dochází k mapování aktivity na výše uvedené sloupce. Pokud chceme později použít jinou třídu nebo jiné sloupce je třeba vytvořit novou aktivitu a původní zrušit. Nestačí vytvořit novou verzi workflow a aktivitu rekonfigurovat.

    Konkrétní úkol může být dokončen:

    • Uživatelem, kterému byl přiřazen.
    • Uživatelem, na kterého možnost dokončení byla delegována uživatelem, kterému je úkol přiřazen.
    • Členem skupiny uživatelů, na kterou je úkol také přiřazen.
    • Administrátorem instance ObjectGears.
    • Automaticky systémem, pokud byl dokončen jiný úkol vytvořený v rámci té samé aktivity Úkol a pokud je v aktivitě úkol nastavena volba První zpracování ruší ostatní úkoly (viz níže).

    Kód

    Pro workflow, které obsahují více úkolů a je potřeba z/do úkolu načíst data, je třeba jednoznačně úkoly identifikovat. K tomuto účelu slouží Kód. Zadávejte jej proto jedinečně pro celé workflow.

    Kategorie

    Kategorie slouží pro rozdělení úkolů i přes více workflow do stejných kategorií. Kategorie se pak zobrazuje na stránce s úkoly, kde uživatel může danou kategorii vyfiltrovat. Snadno tak může prioritně řešit kategorii "Bezpečnost", "Přidělení práv" atd.

    Splnit do dní

    Hodnota pro výpočet termínu dokončení úkolu.

    Na stránce s úkoly je sloupec Datum plánovaného ukončení, kde je zobrazena vypočtená hodnota dokončení úkolu (vytvoření úkolu  + Splnit do dní). Podle počtu dní do konce konečného datumu je tento sloupec barevně podbarven:

    Barva Popis
    černá Pokud je úkol více jak 3 dny po termínu.
    červená Pokud je úkol po termínu.
    žlutá Pokud do termínu zbývá méně než 3 dny.

    Barva se nastaví podle první podmínky v tabulce.

    Akce

    Toto nastavení zjednodušuje určení akci po dokončení úkolu uživatelem. Pokud je úkol přidělen více uživatelům, pak když jeden uživatel dokončí úkol je třeba rozhodnout, zda se má ve workflow pokračovat ńebo čekat na dokončení ostatních úkolů. Pro jednodušší případy můžete využít dvě přednastavené volby, pro složitější případy je třeba vytvořit skript v poli Skript po vstupu uživatele.

    Volba Popis
    Po uložení záznamu: První zpracování ruší ostatní úkoly Po prvním uživateli, který dokončí úkol jsou zrušeny všechny ostatní úkoly (stejné aktivity). A workflow hned pokračuje dál.
    Po uložení záznamu: Všechny úkoly zpracovat Workflow pokačuje, až když všichni uživatelé dokončí úkoly.

    Pokud v úkolu je volba pro schválení nebo zamítnutí úkolu, pak již nemůžete využít toto automatické zpracování, ale musíte napsat vlastní skript, kdy po prvním zamítnutí úkolu zrušíte ostatní úkoly.

    Po vytvoření odeslat výchozí email

    Zaškrtnutím této volby bude uživateli po vytvoření úkolu zaslán jednoduchý informační email o přiděleném úkolu (lokalizace dle jazyka uživatele):

    Předmět:

    Byl Vám přidělen úkol '__název_úkolu__'

    Tělo:

    Byl Vám přidělen úkol '__název_úkolu__'.
    Datum dokončení úkolu: __datum__
    Odkaz: __www_odkaz__

    Inicializační skript

    Po vytvoření úkolu jsou jsou pole úkolu prázdné nebo naplněné výchozí hodnotou zadanou na sloupci ve třídě úkolu. Pokud potřebujete nastavit i další hodnoty, pak máte možnost v tomto skriptu.

    Ve skriptu máte podporu těchto objektů:

    Objekt Popis
    OG Obecný přístup pro ObjectGears objekty.
    OGWFActualRun Speciální objekt pro aktuálně spuštěné workflow.

    Pro nastavení vlastností nového úkolu použijte vlastnost OGWFActualRun.ActualTask.

    Pro nastavení uživatelů, kterým bude úkol přiřazen použijte vlastnost OGWFActualRun.ActualTaskAssignTo a/nebo OGWFActualRun.ActualTaskAssignGroupTo. Z jedné aktivity Úkol je možné přiřadit úkoly neomezenému množství uživatelů.

    Příklad:

    \\Vytvoří dva úkoly. Jeden na uživatele novakp a jeden na uživatele veselam. Oba úkoly mohou dokončit i členové skupiny užvatelů Id = 1.
    OGWFActualRun.ActualTaskAssignTo.Add( OG.Person.GetByAccount( 'novakp'));
    OGWFActualRun.ActualTaskAssignTo.Add( OG.Person.GetByAccount( 'veselam'));
    OGWFActualRun.ActualTaskAssignGroupTo  = 1;

    Skript po vstupu uživatele

    Skript v této vlastnosti se spustí pokaždé když uživatel dokončí úkol. Zde můžete rozhodnout zda se má ve workflow pokračovat či se bude čekat na dokončení všech úkolů. K dispozici máte seznam všech úkolů vygenerovaných totou aktivitou (OGWFActualRun.TasksByActualActivity). Také zde může načíst uživatelem zadané hodnoty a někam je uložit (například do vlastností workflow).

    Ve skriptu máte podporu těchto objektů:

    Objekt Popis
    OG Obecný přístup pro ObjectGears objekty.
    OGWFActualRun Speciální objekt pro aktuálně spuštěné workflow.

     

×