Vytváření a úprava obchodních pravidel
Publikováno: listopad 2016
Platí pro: Dynamics CRM 2015
V aplikaci Microsoft Dynamics 365 můžete používat logiku formulářů bez nutnosti psaní kódu jazyka JavaScript nebo vývoje modulů plug-in. Obchodní pravidla poskytují jednoduché deklarativní rozhraní pro implementaci a zachování rychle se měnících a běžně používaných obchodních pravidel, která budou uplatněna u formulářů Hlavní a Vytvořit, u entity i webové aplikace a Microsoft Dynamics CRM pro tablety. Platí pro Hlavní a Stručný formulář v klientu pro aplikaci Outlook v online i offline režimu.
V tomto tématu
Proč používat obchodní pravidla?
K čemu slouží obchodní pravidla?
Jak mohu nakonfigurovat obchodní pravidla?
Obchodní pravidla na straně serveru a podpora pro logiku „If-Else“ nebo „AND/OR“
Omezení pro obchodní pravidla
Lokalizace chybových zpráv používaných v obchodních pravidlech
Proč používat obchodní pravidla?
Obchodní pravidla umožňují jednoduché deklarativní konzistentní hodnocení obchodní logiky na straně klienta i serveru, aniž by bylo nutné psát kód. Hodnocení logiky na straně klienta je více bezprostřední, protože probíhá při otevření a aktualizaci formuláře záznamu, zatímco proces na straně serveru poskytuje konzistentní hodnocení obchodní logiky na serveru.
Obchodní pravidlo je prováděno pouze na straně klienta, pokud je rozsah pravidla nastaven na úrovni formuláře (všechny formuláře nebo specifický formulář). Pravidla jsou spouštěna, když je formulář záznamu načten a aktualizován.
Obchodní pravidlo je spouštěno na serveru i klientovi, pokud je rozsah pravidla nastaven na úrovni entity. Pravidla na straně serveru jsou spouštěna při vytvoření nebo uložení záznamu.
K čemu slouží obchodní pravidla?
Obchodní pravidla umožňují používat podmnožinu funkcí poskytnutých skripty ve formulářích. Můžete definovat podmínky a používat následující akce:
Nastavení hodnot polí
Vymazání hodnot polí
Nastavení úrovní požadavků polí
Zobrazení nebo skrytí polí
Povolení nebo zakázání polí
Ověření dat a zobrazení chybových zpráv
Obchodní pravidla můžete nastavit pro všechny hlavní nebo stručné formuláře entit nebo konkrétní hlavní formuláře, které zvolíte. Můžete také nastavit pravidla pro entitu.
Můžete přenášet obchodní pravidla z jedné organizace do jiné jejich začleněním do řešení a můžete také instalovat řešení, která obsahují obchodní pravidla.
Příklady, jak nastavit nebo vymazat hodnoty pole
Zvažme několik příkladů. S prvním pravidlem aplikujete slevu 5 % na jakýkoli okamžitý nákup. Druhým pravidlem zrušíte všechny slevy, pokud časový rámec nákupu není znám,
Následující definice pravidla ukazuje, jak nastavit hodnotu pole na 5% slevu pro okamžité nákupy.
Následující definice pravidla ukazuje, jak vymazat hodnotu pole – zrušíte všechny slevy pro nákup s neznámým časovým rámcem nákupu.
Jak mohu nakonfigurovat obchodní pravidla?
Nejprve je nutné mít oprávnění potřebná pro přechod na Nastavení > Vlastní nastavení. To obvykle vyžaduje roli zabezpečení Správce systému nebo Úpravce systému. Chcete-li aktivovat obchodní pravidlo, je nutné mít oprávnění Aktivovat obchodní pravidla.
Poznámka
Obchodní pravidla budou fungovat pouze pro Aktualizované entity nebo vlastní entity.
Existují čtyři způsoby, jak lze zobrazit, vytvořit nebo upravit obchodní pravidla:
Řešení > Entita
V rámci řešení, jako je například výchozí řešení, najdete uzel Obchodní pravidla pro všechny entity.Řešení > Entita > Pole
Při zobrazení pole entity budete mít k dispozici uzel Obchodní pravidla, který vám zobrazí pouze obchodní pravidla, jež zahrnují tento atribut.Editor formulářů
V editoru formulářů můžete použít tlačítko Obchodní pravidla na pásu karet pro zobrazení Průzkumníku obchodních pravidel na pravé straně. Tímto způsobem lze zobrazit všechna obchodní pravidla, která budou použita pouze pro tento formulář.Pokud vytvoříte pravidlo v editoru formulářů, bude ve výchozím nastavení platné pro příslušný formulář.Další informace:Nastavení rozsahu
Editor formulářů > Pole
Při zobrazení vlastností pole, které se používá ve formuláři, uvidíte kartu Obchodní pravidla zobrazující obchodní pravidla, jež obsahují tento atribut.
Pokud je stávající pravidlo podobné pravidlu, které chcete vytvořit, můžete otevřít příslušné pravidlo a použít tlačítko Uložit jako ke zkopírování stávajícího pravidla jako výchozího bodu pro vytvoření nového pravidla.
Nastavení rozsahu
V horní pravé části formuláře použijte pole Rozsah pro nastavení rozsahu pro pravidlo.
Rozsah |
Kde je spuštěno |
---|---|
Entita |
Všechny formuláře a server |
Všechny formuláře |
Všechny formuláře |
Konkrétní formulář |
Právě tento formulář |
Nelze vybrat několik konkrétních formulářů. Zvolíte-li možnost Všechny formuláře, bude pravidlo použito na všechny hlavní formuláře a formuláře pro rychlé vytvoření, pokud formulář obsahuje všechna pole, na která pravidlo odkazuje. Pokud vytvoříte nové obchodní pravidlo v editoru formulářů, bude ve výchozím nastavení platné pouze pro příslušný formulář.
Obchodní pravidla na straně serveru a podpora pro logiku „If-Else“ nebo „AND/OR“
Dříve jste měli možnost vyhodnotit obchodní pravidla na jednotlivých klientech. Jestliže jste chtěli vyhodnotit logiku obchodních pravidel na serveru a použít ji pro všechny klienty, potřebovali jste moduly plug-in, jejichž vývoj i údržba jsou nákladné. Nastavení rozsahu obchodního pravidla na úrovni entity vám umožňuje vyhodnotit obchodní pravidlo jednou na serveru a použít je pro všechny klienty, aniž by bylo nutné psát kód. Logiku pro běžně používané scénáře můžete přesunout z modulů plug-in do obchodních pravidel na úrovni entity. Kromě toho jsme poskytli podporu pro výchozí hodnoty v obchodním pravidle. Například pokud společnost s názvem Contoso obchoduje pouze ve Spojených státech, lze zavést jednoduché obchodní pravidlo, aby při vytvoření příchozího zájemce byla země/oblast automaticky nastavena na USA.
Poznámka
Jestliže je rozsah nastaven na entitu a vytvoříte nebo upravíte záznam pomocí formulářů, pravidlo se spustí na straně klienta, ale později se spustí znovu na serveru. Z tohoto důvodu jsme znemožnili vytvoření cyklického odkazu na pole, pokud nastavíte rozsah na entitu. Například nelze nastavit Úvěrový limit = Úvěrový limit + 1000, protože by došlo ke zvýšení hodnoty jednou na straně klienta a poté by došlo k dalšímu pokusu na straně serveru.
Pro složitější obchodní scénáře bylo potřebné používat více obchodních pravidel, která byla vyhodnocena pomocí logického operátoru AND. Před použitím činností musely být splněny všechny podmínky. Logiky If-Else nebo AND/OR nebyly podporovány. Tato funkce je nyní přidána a umožňuje vytváření složitějších obchodních pravidel s menším úsilím. V následujícím příkladu obchodní pravidlo využívá logiku If-Else:
Existují určitá omezení, které byste měli znát:
Vnořené příkazy If-Else nejsou podporovány.
Seskupení výrazů v podmínce není podporováno.
Výrazy lze kombinovat buď pomocí AND, nebo pomocí OR, nelze však použít obojí.
Konfigurace podmínek
Pokud chcete změnit aktivované obchodní pravidlo, musíte jej před jeho úpravou deaktivovat.
Chcete-li přidat podmínku, klepněte na ikonu +. Zobrazí se nový řádek s podmínkami s nastavenými výchozími hodnotami. Zadáním názvu nastavte Pole a pak vyberte příslušný Operátor. Možnosti operátorů závisí na typu dat v poli.
Podmínky jsou kontrolovány při každé změně jakéhokoli pole odkazovaného v rámci podmínky.
Můžete zvolit tři různé typy podmínek:
Pole
Tento typ slouží k porovnání hodnoty jednoho pole formuláře s jinou hodnotou.Hodnota
Tento typ slouží k porovnání hodnoty jednoho pole formuláře s hodnotou, kterou zadáte.Vzorec
Tato možnost se zobrazí pouze u číselných nebo datových typů dat. Nezobrazí se pro pole, která obsahují text. Tento typ slouží k porovnání výsledku jednoduchého výpočtu, který může používat buď hodnotu v jiném poli formuláře, nebo hodnotu, jež zadáte.
Po dokončení zadávání nebo úprav pravidla klepněte na ikonu zaškrtnutí pro uložení změn, nebo klikněte nebo klepněte na ikonu (X) pro zrušení změn. Chcete-li odebrat dříve uloženou podmínku, umístěte kurzor na požadovanou podmínku a klepněte na Tlačítko Odstranit.
Konfigurace akcí
Chcete-li přidat akci, klepněte na tlačítko Přidat+ a budete mít k dispozici následující možnosti:
Zobrazit chybovou zprávu
Pomocí této akce můžete nastavit chybovou zprávu pro pole, pokud obsahuje neplatná data. Text, který zadáte pro zprávu, se zobrazí spolu s ikonou chyby vedle pole.Záznam nelze uložit, dokud je tato zpráva zobrazena. Po opravě dat uvedených v poli podle podmínek stanovených v pravidle zpráva zmizí a záznam bude možné uložit.
Nastavit hodnotu pole
Zvolte Pole a pak Typ. Existují tři typy:Pole
Tento typ slouží k nastavení hodnoty jednoho pole formuláře na hodnotu jiného pole.Hodnota
Tento typ slouží k nastavení hodnoty jednoho pole formuláře na hodnotu, kterou zadáte.Vzorec
Tato možnost se zobrazí pouze u číselných nebo datových typů dat. Nezobrazí se pro pole, která obsahují text. Tento typ slouží k nastavení hodnoty na výsledek jednoduchého výpočtu, který může používat buď hodnotu v jiném poli formuláře, nebo hodnotu, jež zadáte.
Nastavit Požadováno podnikem
Použijte tento typ, pokud chcete změnit úroveň požadavku pro pole. Možnosti jsou Není požadováno podnikem a Požadováno podnikem. Neexistuje možnost nastavení na doporučeno podnikem.Nastavit viditelnost
Pomocí tohoto typu můžete nastavit, zda bude pole zobrazeno ve formuláři. Možnosti jsou Zobrazit pole a Skrýt pole.Uzamknout nebo odemknout pole
Pomocí tohoto typu můžete nastavit, zda bude pole povoleno ve formuláři. Možnosti jsou Uzamknout a Odemknout. Pokud je pole uzamčeno, nebudou uživatelé moci upravovat hodnotu v poli.
Po definování akce můžete změnit její pořadí nebo ji odstranit pomocí dostupných možností, které se zobrazí při umístění kurzoru na akci.
Zadání popisu
Zadání popisu je volitelné. Popis není zobrazen nikde jinde kromě editoru obchodních pravidel. Ale může být praktické uvést popis toho, co má pravidlo dělat a proč bylo přidáno.
Testování a aktivace obchodních pravidel
Dříve než bude moci kdokoli použít obchodní pravidla, která jste vytvořili, musíte je aktivovat. Před jejich aktivací byste je měli otestovat. Obchodní pravidla můžete otestovat pomocí tlačítka Náhled v editoru formulářů.
Omezení pro obchodní pravidla
Obchodní pravidla jsou určena k řešení běžných činností. Při porovnání toho, co může vývojář provést pomocí skriptů ve formulářích, mají obchodní pravidla určitá omezení. Obchodní pravidla však nejsou určena k nahrazení skriptů ve formulářích.
Zde jsou některá omezení pro používání obchodních pravidel:
Obchodní pravidla se spustí pouze při načtení formuláře a při změně hodnot polí. Nespustí se při uložení záznamu, dokud rozsah pravidla není nastaven na úroveň entity.
Obchodní pravidla pracují pouze s poli. Pokud potřebujete pracovat s jinými viditelnými prvky, jako jsou tabulátory nebo oddíly, musíte v rámci formuláře používat skripty ve formulářích.
Pokud nastavíte hodnotu pole pomocí obchodního pravidla, nebude možné spustit žádné obslužné rutiny události OnChange pro dané pole. To je kvůli snížení rizika výskytu případného cyklického odkazu, který by mohl vést k nekonečné smyčce.
Pokud obchodní pravidlo odkazuje na pole, které není ve formuláři k dispozici, nebude pravidlo jednoduše spuštěno. Nezobrazí se žádná chybová zpráva.
Celočíselná pole, která používají formáty pro časové pásmo, dobu trvání nebo jazyk, se v editoru pravidel pro podmínky nebo akce nezobrazí, takže je nelze s obchodními pravidly použít.
Do obchodního pravidla nelze přidat více než deset podmínek if-else (pokud-pak).
V případě aplikace Microsoft Dynamics CRM pro tablety budou definice obchodních pravidel staženy a uloženy v mezipaměti při otevření aplikace CRM pro tablety. Změny provedené v obchodních pravidlech nebudou uplatněny, dokud aplikaci CRM pro tablety nezavřete a znovu neotevřete.
Pokud nastavíte hodnotu pro vyhledávací pole, bude text primární hodnoty pole, který je nastaven ve formuláři, vždy odpovídat textu zobrazenému v definici pravidla. Pokud se text představující primární hodnotu pole záznamu nastavovaného ve vyhledávání změní, hodnota nastavená vaším pravidlem bude nadále používat textovou část primární hodnoty pole stanovenou pravidlem. Chcete-li to napravit, aktualizujte definici pravidla, aby používalo aktuální primární hodnotu pole názvu.
Je užitečné si uvědomit, že hodnota nastavená pro vyhledávání má tři části:
Name: Text primární hodnoty pole, který vidíte ve formuláři.
Id: Jedinečný identifikátor záznamu. Toto jsou data, která jsou uložena. Toto není zobrazeno ve formuláři.
LogicalName: Název entity, jako například contact, account nebo opportunity.
Pravidlo nastaví všechny tři části této hodnoty. Hodnota Id určitého záznamu se nikdy nemění, ale hodnota Name se může změnit.
Například pokud definujete pravidlo pro nastavení vyhledávání kontaktu, který používá „starší“ Celé jméno, bude tento text představovat Name, jež uvidíte při vyhledávání pomocí obchodního pravidla i v případě, že uživatel později změní Celé jméno kontaktu na „nové jméno“. Hodnota Id vyhledávání bude správně nastavena na očekávaný záznam, ale Name (které není uloženo) bude odrážet hodnotu definice pravidla spíše než aktuální hodnotu Celé jméno záznamu, na který odkazuje.
Odebrání akcí z pravidel
Kromě zobrazení chybových zpráv musíte zahrnout samostatné obchodní pravidlo pro zrušení jakékoli akce, kterou jste nastavili. Řekněme například, že máte pravidlo na entitě Účet, které říká:
Pokud je Upřednostňovaný způsob kontaktu nastaven na „Telefon“
Nastavte Telefon do zaměstnání jako Požadováno podnikem
Toto bude fungovat vždy, když je pole Upřednostňovaný způsob kontaktu nastaveno na Telefon. Ale když později změníte pole Upřednostňovaný způsob kontaktu na jinou hodnotu, zůstane pole Telefon nastaveno na Požadováno podnikem. Ke zrušení této akce je třeba zahrnout samostatné pravidlo a použít následující logiku:
Pokud není Upřednostňovaný způsob kontaktu nastaven na „Telefon“
Nastavte Telefon do zaměstnání jako Není požadováno podnikem
Akce Zobrazit chybovou zprávu se liší, protože automaticky vyhodnotí všechny podmínky použité pro nastavení chybové zprávy, a odstraní ji v případě, že podmínky nejsou nadále splněny.
Lokalizace chybových zpráv používaných v obchodních pravidlech
Pokud máte pro svou organizaci zřízen více než jeden jazyk, můžete chtít lokalizovat všechny chybové zprávy, které jste nastavili. Při každém nastavení zprávy vygeneruje systém popisek. Při exportu překladů ve vaší organizaci můžete přidat lokalizované verze zpráv a poté importovat tyto popisky zpět do aplikace Microsoft Dynamics 365 tak, aby si uživatelé, kteří používají jiné jazyky než základní jazyk, mohli přečíst přeložené zprávy.
Viz také
Video: Nové funkce vlastního nastavení aplikace Microsoft Dynamics CRM – Obchodní pravidla
Vytváření a úprava procesů
Vytváření a návrh formulářů
Vytváření a úprava zobrazení
Sada SDK: Vytváření a úpravy inicializace obchodních pravidel
© 2016 Microsoft Corporation. Všechna práva vyhrazena. Autorská práva