Zdieľať cez


Vytvorte vypočítavané pole na automatizáciu manuálnych výpočtov

Táto téma sa vzťahuje na Dynamics 365 Customer Engagement (on-premises). Informácie o verzii Power Apps v rámci tejto témy nájdete v článku: Definujte vypočítavané polia na automatizáciu manuálnych výpočtov

Vypočítané polia vám umožnia automatizovať manuálne výpočty použité v rámci obchodných procesov. Napríklad predajca môže požiadať o informácie o pohyblivých výnosoch v prípade určitej príležitosti, ktoré vychádzajú z odhadových výnosov z príležitosti vynásobených pravdepodobnosťou. Alebo žiadajú o automatické poskytnutie zľavy v prípade, že suma objednávky je vyššia ako 500 EUR. Vypočítavané pole môže obsahovať hodnoty z jednoduchých matematických operácií alebo z operácií s podmienkou, ako napríklad „väčšie ako“, „ak – potom“, a mnoho ďalších. To všetko môžete získať používaním funkcie vypočítaných polí , pričom nemusíte zadávať kódy.

Vypočítané schopnosti poľa:

  • Vypočítavané polia pozostávajú z výpočtov používajúcich polia z aktuálnej entity alebo súviacich nadradených entít.

  • Podpora výrazu je k dispozícii pre aktuálnu entitu a súvisiace polia nadradenej entity v sekciách Podmienka a Akcia oddielov. Medzi vstavané funkcie patrí:

    ADDHOURS, ADDDAYS, ADDWEEKS, ADDMONTHS, ADDYEARS, SUBTRACTHOURS, SUBTRACTDAYS, ODPOČETNÉ TÝŽDNE, ODMESIACE, PODMESIACE, DIFFINDAYS, DIFFINHOURS, DIFFINDAYS, DIFFINMONTHS, DIFFINWEEKS, DIFFINYEARS, CONCAT, TRIMLEFT a TRIMRIGHT.

  • Komplexná podpora podmienok poskytuje viacero podmienok a ich vetvenie. Medzi logické operácie patria operátory AND a OR .

  • Možnosti vizuálnej úpravy zahŕňajú moderné používateľské rozhranie a inteligenciu v sekcii AKCIA .

  • Bezproblémová integrácia vypočítaľných polí s formulármi, zobrazeniami, grafmi a prehľadmi je k dispozícii v reálnom čase.

  • Ak ste aktualizovali svoju organizáciu online na aktualizáciu z decembra 2016 pre Dynamics 365 (online), vypočítané polia môžete nakonfigurovať tak, aby používali vlastné ovládacie prvky.

Niekoľko príkladov vypočítaných polí

  • Pohyblivé výnosy: odhadované výnosy vynásobené pravdepodobnosťou

  • Čistý zisk: aktíva mínus pasíva v prípade daného účtu

  • Náklady na prácu: základná sadzba do 40 hodín plus dodatočné nadčasy

  • Kontaktné číslo: telefónne číslo pre príležitosť na základe účtu alebo kontaktu

  • Skóre potecionálneho zákazníka: jedno pole poskytujúce podrobné informácie o kvalite daného potencionálneho klienta

  • Nasledujúca akcia: akcia nasledujúca po aktivite na základe určeného počtu dní a priority

Dôležité

Ak chcete vytvoriť vypočítavané pole, musíte mať v entite profilu Field Security Profile povolenie na zapisovanie. Ak vypočítavané pole používa vo výpočte zabezpečené polia, mali by ste zvážiť aj zabezpečenie vypočítavaného poľa, aby ste zabránili používateľom v prístupe k údajom, pre ktoré nemajú dostatočné povolenia. Editor vypočítavaného poľa vám poskytne upozornenie v prípade, že vytvárate vypočítavané pole využívajúce vo výpočte zabezpečené polia, a navrhne vám, aby ste ho zabezpečili. Ďalšie informácie: Zabezpečenie na úrovni terénu.

Príklady vypočítavaných polí

Pozrime sa bližšie príklady vypočítavaného poľa. Vypočítavané polia budeme definovať pomocou editora polí. Ak chcete otvoriť editor polí:

  1. Otvorte prieskumník riešení

  2. Rozbaľte Komponenty>Entity.

  3. Vyberte požadovanú entitu a zvoľte Polia. Vyberte možnosť Nové.

    V editore zadajte požadované informácie pre pole vrátane Typ poľa a Typ údajov. Typ poľa je Vypočítaný. Typy údajov, ktoré sú k dispozícii vo vypočítavanom poli:

  • Jeden riadok textu

  • Zoznam možností

  • Dve možnosti

  • Celé číslo

  • Desatinné číslo

  • Mena

  • Dátum a čas

    Tlačidlo Upraviť vedľa Typ poľa vás prenesie do editora definície vypočítavaného poľa, kde sa zobrazí nové vypočítané pole bol vytvorený, ale nebol nastavený žiadny vzorec. Definícia vypočítaného poľa pozostáva z dvoch častí: STAV a AKCIA.

  • V sekcii Podmienka môžete zadať entitu, pole, operátor, typ a hodnotu. V rozbaľovacom poli pre Entitu si môžete vybrať aktuálnu entitu alebo súvisiacu entitu. V rozbaľovacom poli Pole máte na výber zo všetkých dostupných polí pre entitu. V závislosti od vybraného operátora budete možno musieť zadať typ a hodnotu. Pomocou operátorov AND alebo OR môžete zadať viacero podmienok.

  • V časti Akcia zadáte vzorec pre vypočítané pole.

Poznámka

V rámci akcie je možné použiť údaje z vyhľadávania záznamov. Musíte najprv vybrať vyhľadávacie pole a potom zadať obdobie. Potom môžete vybrať jedno z polí dostupných na súvisiacej entite. Napríklad v prípade <LookupFieldName>.<RelatedFieldName> môžete vybrať: ParentAccountId.AccountNumber.

Všimnite si, že zabezpečenie na úrovni poľa sa bude ignorovať na súvisiacej entite, takže sú v poli citlivé údaje odporúčame zabezpečiť aj vaše vypočítavané pole.

Pohyblivé výnosy príležitosti

V tomto príklade používame polia v entite príležitosti na výpočet pohyblivých výnosov na základe pravdepodobnosti príležitosti. V editore polí pre entitu príležitosti vytvoríme pole s názvom „Vážené výnosy“ a určíme typ poľa ako Vypočítané a typ údajov je Mena. V editore definície vypočítaného poľa v časti Podmienka špecifikujeme príležitosť pomocou Stav = Otvorené. V AKCII vzorec vypočítava vážené výnosy na základe odhadovaných výnosov príležitosti vynásobených pravdepodobnosťou príležitosti. Nasledujúce snímky obrazovky zobrazujú podrobný postup, ako definovať vypočítavané pole Pohyblivé výnosy.

Vytvorte vypočítané pole s názvom „Vážené výnosy“:

Vážené príjmy z Opportunity v Dynamics 365 for Customer Engagement.

Nastavte podmienku príležitostí:

Nastavte vážené výnosy v Dynamics 365 for Customer Engagement.

Zadajte vzorec pre vážený príjem:

Nastavte odhadovanú hodnotu váženého príjmu Dynamics 365 for Customer Engagement.

Spolu:

Vážené príjmy k odhadovaným príjmom v Dynamics 365 for Customer Engagement.

Dátum nasledujúcej akcie po príležitosti

V tomto príklade používame polia pôvodného potencionálneho zákazníka príležitosti na výpočet prílušného dátumu, kedy má po príležitosti nasledovať ďalšia akcia. V editore polí pre entitu príležitosti vytvoríme pole s názvom „Dátum sledovania“ a určíme typ ako Vypočítané a typ údajov je Dátum a čas. V editore definície vypočítaného poľa v časti Podmienka špecifikujeme dve podmienky: časový rámec nákupu a odhadovanú hodnotu potenciálneho zákazníka. V AKCII poskytujeme dva vzorce, jeden, následný v jednom týždni pri okamžitej príležitosti, druhý, následný jeden mesiac, ak je príležitosť sa pravdepodobne nestane hneď. Nasledujúce snímky obrazovky zobrazujú podrobné pokyny, ako definovať vypočítavané pole Dátum nasledujúcej akcie.

Vytvorte vypočítané pole s názvom „Dátum sledovania“:

Vytvorte vypočítané pole s názvom následný dátum.

Nastavte dve podmienky pre pôvodného potenciálneho zákazníka:

Nastavte prvú podmienku pre vypočítané pole.

Nastavte druhú podmienku pre vypočítané pole.

Do jedného týždňa poskytnite následný vzorec:

Zadajte vzorec pre vypočítané pole.

Do jedného mesiaca poskytnite následný vzorec:

Poskytnite druhý vzorec.

Spolu:

Nastaviť následný dátum If-Then & Inak v Dynamics 365 for Customer Engagement.

Dni od vytvorenia záznamu

V tomto príklade používame funkciu DIFFINDAYS na výpočet rozdielu v dňoch od času, kedy bol záznam vytvorený, do aktuálneho dátumu.

Vytvorte vypočítané pole s názvom „Vypočítaný rozdiel v dňoch“:

Vytvorte vypočítané pole v Dynamics 365 for Customer Engagement.

Poskytnite vzorec na výpočet rozdielu v dňoch

Vypočítané pole, funkcia DIFFINDAYS.

Spolu:

Rozdiel v dňoch od vytvorenia záznamu.

Syntax funkcie vypočítavaného poľa

Nasledujúca tabuľka obsahuje informácie o syntaxi funkcií poskytnutých v sekcii AKCIA vypočítavaného poľa.

Prepitné

Názvy funkcií sa zadávajú veľkými písmenami.

Syntax funkcie Popis Typ vrátenia
ADDDAYS (celé číslo, dátum a čas) Vypočíta nový dátum a čas, ktorý sa rovná danému dátumu a času, plus zadanému počtu dní. Dátum a čas
ADDHOURS (celé číslo, dátum a čas) Vypočíta nový dátum a čas, ktorý sa rovná danému dátumu a času, plus zadanému počtu hodín. Dátum a čas
ADDMONTHS (celé číslo, dátum a čas) Vypočíta nový dátum a čas, ktorý sa rovná danému dátumu a času, plus zadanému počtu mesiacov. Dátum a čas
ADDWEEKS (celé číslo, dátum a čas) Vypočíta nový dátum a čas, ktorý sa rovná danému dátumu a času, plus zadanému počtu týždňov. Dátum a čas
ADDYEARS (celé číslo, dátum a čas) Vypočíta nový dátum a čas, ktorý sa rovná danému dátumu a času, plus zadanému počtu rokov. Dátum a čas
SUBTRACTDAYS (celé číslo, dátum a čas) Vypočíta nový dátum a čas, ktorý sa rovná danému dátumu a času, mínus zadaný počet dní. Dátum a čas
ODČÍTANÉ HODINY (celé číslo, dátum a čas) Vypočíta nový dátum a čas, ktorý sa rovná danému dátumu a času, mínus zadaný počet hodín. Dátum a čas
SUBTRACTMONTHS (celé číslo, dátum a čas) Vypočíta nový dátum a čas, ktorý sa rovná danému dátumu a času, mínus zadaný počet mesiacov. Dátum a čas
SUBTRACTWEEKS (celé číslo, dátum a čas) Vypočíta nový dátum a čas, ktorý sa rovná danému dátumu a času, mínus zadaný počet týždňov. Dátum a čas
SUBTRACTYEARS (celé číslo, dátum a čas) Vypočíta nový dátum a čas, ktorý sa rovná danému dátumu a času, mínus zadaný počet rokov. Dátum a čas
DIFFINDAYS (dátum a čas, dátum a čas) Vráti rozdiel v dňoch medzi dvoma poliami Dátum a Čas . Ak oba dátumy a časy pripadajú na rovnaký deň, rozdiel je nula. Celé číslo
DIFFINHOURS (dátum a čas, dátum a čas) Vráti rozdiel v hodinách medzi dvoma poliami Dátum a Čas . Celé číslo
DIFFINMINUTES (dátum a čas, dátum a čas) Vráti rozdiel v minútach medzi dvoma poliami Dátum a Čas . Celé číslo
DIFFINMONTHS (dátum a čas, dátum a čas) Vráti rozdiel v mesiacoch medzi dvoma poľami typu Dátum a Čas . Ak oba dátumy a časy pripadajú na rovnaký mesiac, rozdiel je nula. Celé číslo
DIFFINWEEKS (dátum a čas, dátum a čas) Vráti rozdiel v týždňoch medzi dvoma poľami typu Dátum a Čas . Ak oba dátumy a časy pripadajú na rovnaký týždeň, rozdiel je nula. Celé číslo
DIFFINYEARS( dátum a čas, dátum a čas) Vráti rozdiel v rokoch medzi dvoma poľami typu Dátum a Čas . Ak oba dátumy a časy pripadajú na rovnaký rok, rozdiel je nula. Celé číslo
CONCAT (jeden riadok textu; jeden riadok textu; ... jeden riadok textu) Vráti reťazec, ktorý je výsledkom zreťazenia dvoch alebo viacerých reťazcov. Reťazec
TRIMLEFT (jeden riadok textu; celé číslo) Vráti reťazec obsahujúci kópiu zadaného reťazca bez prvých N znakov. Reťazec
TRIMRIGHT (jeden riadok textu; celé číslo) Vráti reťazec obsahujúci kópiu zadaného reťazca bez posledných N znakov. String

Poznámka

Všetky funkcie DIFF vyžadujú, aby prvé pole typu Dátum a čas a druhé pole typu Dátum a čas mali rovnaké správanie: Miestne nastavenie, Iba dátum alebo Nezávislé od časového pásma. Ak správanie druhého poľa nezodpovedá správanie prvého poľa, zobrazí sa chybové hlásenie uvádzajúce, že druhé pole nemožno použiť v súčasnej funkcii. Ďalšie informácie: Správanie a formát poľa dátumu a času.

Poznámka

Nemôžete zadať dátum, napríklad 01/01/2015, ako hodnotu Date pre vypočítavané pole. Hodnoty Date a DateTime je možné nastaviť alebo porovnať len pomocou iných polí DateTime.

Vo funkcii CONCAT môžete použiť reťazce litera ako jednotlivé riadky textu, polia entít, ktoré obsahujú jeden riadok textu, alebo kombináciu oboch. Napríklad: CONCAT (Meno, Priezvisko; "je manažér."). Ak doslovný reťazec obsahuje úvodzovky, pred každú úvodzovku vložte znak ukončenia – opačnú lomku (\), napríklad takto: Tento reťazec obsahuje \"úvodzovky\". Zabezpečí sa tak, že úvodzovky v reťazci nie sú považované za špeciálne znaky, ktoré oddeľujú reťazce.

Nasledujúce príklady ukazujú, ako používať funkcie TRIMLEFT a TRIMRIGHT . Obsahujú počiatočné reťazce a výsledné reťazce vrátené funkciami TRIMLEFT a TRIMRIGHT :

TRIMLEFT ("RXX10-3456789; 3), vráti reťazec "10-3456789"
Funkcia TRIMRIGHT ("20-3456789RXX"; 3) vráti reťazec "20-3456789"

Čo treba zvážiť pri vytváraní vypočítavaných polí

Pri práci s vypočítavanými poľami by ste mali poznať určité podmienky a obmedzenia:

  • Uložené dopyty, grafy a vizualizácie môžu obsahovať maximálne desať jedinečných vypočítavaných polí.

  • Hodnoty vypočítavaných polí sa nezobrazujú v režime Customer Engagement Outlook Offline v zobrazeniach dlaždíc ani v hlavných formulároch entity.

  • Maximálny počet vypočítavaných polí v reťazci je 5.

  • Vypočítavané pole nemôže odkazovať samo na seba alebo používať cyklické reťazce.

  • Ak zmeníte jeden z operátorov podmienky vo výpočte s viacerými podmienkami, všetky operátory podmienky sa aktualizujú na túto zmenenú podmienku. Napríklad v klauzule IF (x > 50) OR (y ==10) OR (z < 5), ak zmeníte OR operátor na operátor, AND potom sa všetci OR operátori v klauzule stanú AND operátormi.

  • K rodičovským poliam môžete pristupovať prostredníctvom vyhľadávacieho poľa k nadradenej entite, napríklad <LookupFieldName>.<FieldName>. To nie je možné s vyhľadávacími poľami s viacerými entitami, ako CustomerAccountContact napríklad polia alebo. Niektoré entity však majú samostatné vyhľadávacie polia pre konkrétnu entitu, napríklad ParentAccountid.<FieldName> alebo ParentContactid.<FieldName>.

  • Usporiadavanie je zakázané v nasledujúcich prípadoch:

    • Vypočítavané pole, ktoré obsahuje pole nadriadeného záznamu.

    • Vypočítavané pole obsahujúce logické pole (napríklad pole pre adresu),

    • Vypočítavané pole obsahujúce ďalšie vypočítavané pole.

  • Vypočítavané polia je možné rozšíriť iba na dve entity

    • Vypočítavané pole môže obsahovať pole z inej entity (môže sa rozšíriť na dve entity – aktuálnu entitu a nadradený záznam).

    • Výpočtové pole nemôže obsahovať výpočtového poľa od iného subjektu, ktorý obsahuje aj iné pole od iného subjektu (zahŕňajúce tri subjekty):
      (Aktuálna entita) Výpočtové pole <-(nadradený záznam) výpočtové pole 1 <- (nadradený záznam) výpočtové pole 2.

  • Vo vypočítavaných poliach nemôžete spúšťať pracovné postupy alebo doplnky.

  • Nemôžete zmeniť existujúce jednoduché pole na vypočítavané pole. Ak vaša aktuálna aplikácia používa jazyk JavaScript alebo doplnky na výpočet určitého poľa, funkciu vypočítavaných polí budete môcť použiť až po vytvorení nového poľa.

  • Pravidlá hľadania duplikátov nie sú spustené na vypočítavaných poliach.

  • Súhrn nedokáže odkazovať na vypočítavané pole, ktoré používa ďalšie vypočítavané pole, aj keď sú všetky polia druhého vypočítavaného poľa na aktuálnej entite.

Pozrite tiež:

Vytváranie a úprava polí
Definovanie súhrnných polí
Video: Súhrnné a vypočítavané polia v Dynamics CRM 2015