1. Aktualizace rodičovského záznamu hodnotou z dceřinného záznamu

    Článek: AN0002417Aktualizováno:: 19.03.2020

    V určitých případech pracujeme s hierarchií tříd, kdy na nejvyšší úrovni definujeme vlastnosti společné všem potomkům a na nižší pak zvláštní vlastnosti týkající se pouze konkrétních tříd. Příkladem může být Configuration management se společným předkem všech tříd: Konfigurační položkou (CI). Ta obsahuje mj. společnou vlastnost Zodpovědný (responsible). Jde o sloupec typu odkaz na uživatele. O dvě úrovně níže je jeden z potomků třídy Konfiguračních položek - třída Business aplikací. Ta obsahuje mj. vlastnosti Správce (administrator), Garant (guarantor) Procesní analytik (process analyst) a Process manager (Procesní manažer), které jsou stejného typu jako vlastnost Zodpovědný.

    Vztahy daných tříd a jejich vybrané vlastnosti zobrazuje následující schéma.

    Ve třídě aplikací asi nemá smysl zobrazovat společnou vlastnost Zodpovědný (responsible). Místo toho budeme asi chtít tuto vlastnost automaticky aktualizovat podle jedné z výše uvedených vlastností potomka Business aplikace.

    To jednoduše zajistíme vytvořením dvou pravidel typu Skript - Před uložením nového záznamu a Před uložením existujícího záznamu. Níže uvedený příklad zajistí, že vlastnost Zodpovědný (responsible) ve třídě Konfiguračních položek bude pro záznamy Business aplikací přebírat hodnotu z vlastnosti Správce (administrator).

    OGActualDataRow['ci.responsible'] = OGActualDataRow['administrator'];

     

×