Sdílet prostřednictvím


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.

Nastavení pole v části Příležitost v aplikaci Dynamics CRM

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.

Akce pro vymazání pole v aplikaci Dynamics CRM

Vymazání pole v aplikaci Dynamics CRM

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.

    Obchodní pravidla pro entitu obchodního vztahu v aplikaci CRM

  • Ř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.

    Obchodní pravidla pro pole v aplikaci Dynamics CRM

  • 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

    Obchodní pravidla pro formulář v aplikaci Dynamics CRM

  • 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.

    Obchodní pravidla pro pole Formulář v aplikaci Dynamics CRM

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:

Obchodní pravidlo s logiku If-Else v aplikaci Dynamics CRM

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 OdstranitTlačí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.

    Chybová zpráva v poli ve formuláři v aplikaci Dynamics CRM

    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