Crearea unui câmp calculat pentru a automatiza calculele manual
Acest subiect se aplică la Dynamics 365 Customer Engagement (on-premises). Pentru versiunea Power Apps a acestui subiect, a se vedea: Definirea câmpurilor calculate pentru a automatiza calculele manuale
Câmpurile calculate vă permit să automatizați calculele manuale folosite în procesele dvs. de business. De exemplu, un agent de vânzări poate dori să știe venitul ponderat pentru o oportunitate, care se bazează pe venitul estimat de la o oportunitate înmulțit cu probabilitatea. Sau poate dori să aplice automat o reducere, dacă o comandă este mai mare de 500 de dolari. Un câmp calculat poate conține valori rezultate din operații matematice simple sau operații condiționale, cum ar fi Greater-Than sau If-Else și multe altele. Puteți realiza toate acestea folosind caracteristica de câmpuri calculate; nu trebuie să scrieți cod.
Capacitățile câmpului calculat:
Câmpurile calculate cuprind calcule care utilizează câmpurile din entitatea curentă sau din entitățile părinte asociate.
Suportul de expresie este disponibil pe entitatea curentă și câmpurile entitate părinte conexe din secțiunile Condiție și Acțiune. Funcțiile de construire includ:
ADDHOURS, ADDDAYS, ADDWEEKS, ADDMONTHS, ADDYEARS, SUBTRACTHOURS, SUBTRACTDAYS, SUBTRACTWEEKS, SUBTRACTMONTHS, SUBTRACTYEARS, DIFFINDAYS, DIFFINHOURS, DIFFINMINUTES, DIFFINMONTHS, DIFFINWEEKS, DIFFINYEARS, CONCAT, TRIMLEFT, and TRIMRIGHT.
Suportul condițional variat oferă condiții multiple și ramificare. Operațiile logice includ operatorii AND și OR.
Capacitățile de editare vizuală includ interfața pentru utilizatori modernă și intellisense în secțiunea ACȚIUNE.
O integrare fără sincope a câmpurilor calculate cu formularele, vizualizările, diagramele și rapoartele este disponibilă în timp real.
Dacă ați actualizat organizația Online la Actualizarea din decembrie 2016 pentru Dynamics 365 (online), aveți posibilitatea să configurați câmpurile calculate pentru a utiliza controale particularizate.
Câteva exemple de câmpuri calculate
Venitul ponderat: Venitul estimat înmulțit cu probabilitatea
Valoarea netă: Activele minus pasivele pentru un anumit cont
Costul forței de muncă: Rata de bază până la 40 de ore, plus orele suplimentare
Numărul de contact: Numărul de telefon pentru o oportunitate, în funcție de cont sau de persoana de contact
Scorul clientului potențial: Câmpul unic care oferă detalii despre calitatea unui anumit client potențial
Urmărire de: Urmărire unei activități după un număr specificat de zile, în funcție de prioritate
Wichtig
Pentru a crea un câmp calculat, trebuie să aveți privilegiul de Scriere pentru entitatea Profil de securitate câmp. În cazul în care câmpul calculat utilizează câmpurile securizate într-un calcul, ar trebui să luați în considerare ideea de a securiza și câmpul calculat, pentru a împiedica utilizatorii să acceseze date pentru care nu au suficiente permisiuni. Editorul de câmp calculat vă avertizează atunci când creați un câmp calculat care utilizează câmpuri securizate într-un calcul, sugerându-vă să securizați câmpul calculat. Informații suplimentare: Securitate la nivel de câmp.
Exemple de câmpuri calculate
Să examinăm mai în detaliu exemple de câmp calculat. Vom defini câmpurile calculate cu editorul de câmp. Pentru a deschide editorul de câmp:
Deschideți exploratorul soluții
Extindeți Componente > Entități.
Selectați entitatea dorită și alegeți Câmpuri. Alegeți Nou.
În editor, furnizați informațiile necesare pentru câmp, inclusiv Tipul câmpului și Tipul de date. Tipul câmpului este Calculat. Tipuri de date disponibile pentru câmpul calculat:
Linie unică de text
Set de opțiuni
Două opțiuni
Număr întreg
Număr zecimal
Monedă
Dată și oră
Butonul Editare de lângă Tipul de câmp vă duce la editorul de definiție a câmpurilor calculate, unde a fost creat noul câmp calculat, dar nu s-a stabilit nicio formulă. Definiția câmpului calculat constă în două secțiuni: CONDIȚIE și ACȚIUNE.
În secțiunea Stare, puteți specifica o entitate, un câmp, un operator, un tip și o valoare. În caseta verticală pentru Entitate, puteți alege o entitate curentă sau una conexă. În caseta verticală Câmp, aveți o selecție de câmpuri disponibile pentru entitate. În funcție de operatorul pe care-l alegeți, poate fi nevoie să oferiți tipul și valoarea. Puteți specifica mai multe condiții folosind operatorii
ANDsauOR.În secțiunea Acțiune, furnizați formula pentru câmpul calculat.
Hinweis
Puteți utiliza date din înregistrările de căutare în acțiunea dvs. Trebuie mai întâi să selectați câmpul de căutare, apoi să tastați un punct. După aceea, puteți selecta unul din câmpurile disponibile în entitatea asociată. De exemplu, în cazul <LookupFieldName>.<RelatedFieldName>, puteți selecta: ParentAccountId.AccountNumber.
Rețineți că securitatea la nivel de câmp va fi ignorată pe entitatea corelată, astfel încât dacă există date sensibile în câmpul accesat, vă sugerăm să vă asigurați și câmpul calculat.
Venitul ponderat al oportunității
În acest exemplu, folosim câmpurile entității oportunitate pentru a calcula venitul ponderat pe baza probabilității acesteia. În editorul de câmp pentru o entitate oportunitate, creăm un câmp numit „Venit ponderat” și specificăm tipul câmpului drept Calculat, iar tipul de date drept Monedă. În editorul de definiție al câmpului calculat, în secțiunea Condiție, specificăm Condiție = Deschis pentru oportunitate. În ACȚIUNE, formula calculează venitul ponderat pe baza venitului estimat al oportunității înmulțit cu probabilitatea acesteia. Următoarele capturi de ecran arată pas cu pas cum se definește câmpul calculat Venit ponderat.
Crearea câmpului calculat numit „Venit ponderat”:

Setarea condiției pentru oportunități:

Furnizarea formulei pentru venitul ponderat:

Per total:

Data de urmărire a oportunității
În acest exemplu, folosim câmpurile clientului potențial original al unei oportunități pentru a calcula data corespunzătoare când să urmărim oportunitatea. În editorul de câmp pentru o entitate oportunitate, creăm un câmp numit „Dată de urmărire” și specificăm tipul drept Calculat, iar tipul de date drept Dată și oră. În editorul de definiție a câmpului calculat, în secțiunea Condiție, putem specifica două condiții: intervalul de timp de cumpărare și valoarea estimată a clientului potențial. În ACȚIUNE, furnizăm două formule: una pentru a urmări într-o săptămână oportunitatea imediată, alta pentru a urmări într-o lună dacă nu este probabil ca oportunitatea să apară imediat. Următoarele capturi de ecran arată pas cu pas cum se definește câmpul calculat „Dată de urmărire”.
Crearea câmpului calculat numit „Dată de urmărire”:

Setați cele două condiții pentru clientul potențial inițial:


Furnizați formula pentru a urmări într-o săptămână:

Furnizați formula pentru a urmări într-o lună:

Per total:

Zile de la crearea unei înregistrări
În acest exemplu, folosim funcția DIFFINDAYS, pentru a calcula diferența în zile din momentul când o înregistrare a fost creată cu data curentă.
Creați câmpul calculat denumit „Diferența calculată în zile”:

Oferiți formula pentru calculul diferenței în zile

Per total:

Sintaxa funcțiilor de câmp calculat
Următorul tabel conține informații despre sintaxa funcțiilor din secțiunea ACȚIUNE a câmpului calculat.
Tipp
Numele funcțiilor sunt specificate cu majuscule.
| Sintaxa funcției | Descriere | Tipul rezultatului |
|---|---|---|
| ADDDAYS (număr întreg, dată și oră) | Returnează o nouă dată și oră, egală cu data și ora furnizate, plus numărul de zile specificat. | Dată și oră |
| ADDHOURS (număr întreg, dată și oră) | Returnează o nouă dată și oră, egală cu data și ora furnizate, plus numărul de ore specificat. | Dată și oră |
| ADDMONTHS (număr întreg, dată și oră) | Returnează o nouă dată și oră, egală cu data și ora furnizate, plus numărul de luni specificat. | Dată și oră |
| ADDWEEKS (număr întreg, dată și oră) | Returnează o nouă dată și oră, egală cu data și ora furnizate, plus numărul de săptămâni specificat. | Dată și oră |
| ADDYEARS (număr întreg, dată și oră) | Returnează o nouă dată și oră, egală cu data și ora furnizate, plus numărul de ani specificat. | Dată și oră |
| SUBTRACTDAYS (număr întreg, dată și oră) | Returnează o nouă dată și oră, egală cu data și ora furnizate, minus numărul de zile specificat. | Dată și oră |
| SUBTRACTHOURS (număr întreg, dată și oră) | Returnează o nouă dată și oră, egală cu data și ora furnizate, minus numărul de ore specificat. | Dată și oră |
| SUBTRACTMONTHS (număr întreg, dată și oră) | Returnează o nouă dată și oră, egală cu data și ora furnizate, minus numărul de luni specificat. | Dată și oră |
| SUBTRACTWEEKS (număr întreg, dată și oră) | Returnează o nouă dată și oră, egală cu data și ora furnizate, minus numărul de săptămâni specificat. | Dată și oră |
| SUBTRACTYEARS (număr întreg, dată și oră) | Returnează o nouă dată și oră, egală cu data și ora furnizate, minus numărul de ani specificat. | Dată și oră |
| DIFFINDAYS (data și ora, data și ora) | Returnează diferența în zile dintre două câmpuri Dată și oră. Dacă atât datele cât și orele se încadrează în aceeași zi, diferența este zero. | Număr întreg |
| DIFFINHOURS (data și ora, data și ora) | Returnează diferența în ore dintre două câmpuri Dată și oră. | Număr întreg |
| DIFFINMINUTES (data și ora, data și ora) | Returnează diferența în minute dintre două câmpuri Dată și oră. | Număr întreg |
| DIFFINMONTHS (data și ora, data și ora) | Returnează diferența în luni dintre două câmpuri Dată și oră. Dacă atât datele cât și orele se încadrează în aceeași lună, diferența este zero. | Număr întreg |
| DIFFINWEEKS (data și ora, data și ora) | Returnează diferența în săptămâni dintre două câmpuri Dată și oră. Dacă atât datele cât și orele se încadrează în aceeași săptămână, diferența este zero. | Număr întreg |
| DIFFINYEARS (data și ora, data și ora) | Returnează diferența în ani dintre două câmpuri Dată și oră. Dacă atât datele cât și orele se încadrează în același an, diferența este zero. | Număr întreg |
| CONCAT (o singură linie de text, o singură linie de text, … o singură linie de text) | Returnează un string care este rezultatul concatenării a două sau mai multe șiruri. | Coadă |
| TRIMLEFT (o singură linie de text, număr întreg) | Returnează un șir care conține o copie a unui șir specificat, fără primele N caractere. | Coadă |
| TRIMRIGHT (o singură linie de text, număr întreg) | Returnează un șir care conține o copie a unui șir specificat, fără ultimele N caractere. | Coadă |
Hinweis
Toate funcțiile de diferență solicită ca primul câmp Dată și oră și al doilea câmp Dată și oră să aibă același comportament: Utilizator local, Numai data sau Independent de fusul orar. În cazul în care comportamentul celui de al doilea câmp nu se potrivește cu comportamentul primului câmp, este afișat mesajul de eroare, indicând că al doilea câmp nu poate fi utilizat în funcția curentă. Informații suplimentare: Comportamentul și formatul câmpului dată și oră.
Hinweis
Nu puteți introduce o dată, cum ar fi 01/01/2015, ca valoare Dată într-un câmp calculat. Valorile Date și DateTime pot fi setate sau comparate numai utilizând alte câmpuri DateTime.
În funcția CONCAT, puteți utiliza siruri literale ca linii de text, câmpuri de entitate care conțin o singură linie de text sau o combinație a ambelor. De exemplu: CONCAT (Prenume, Nume de familie, „este manager.”). Dacă un șir literal conține ghilimele, precedați fiecare semn cu caracterul escape backslash (\), astfel: „Acest șir conține \”ghilimele. \””. Acest lucru asigură că ghilimelele din interiorul șirului nu sunt tratate drept caractere speciale care separă șirurile.
Următoarele exemple arată cum se utilizează funcțiile TRIMLEFT și TRIMRIGHT. Acestea conțin șirurile inițiale de caractere și șirurile rezultate returnate de funcțiile TRIMLEFT și TRIMRIGHT:
TRIMLEFT ("RXX10-3456789", 3), întoarce șirul "10-3456789"
TRIMRIGHT ("20-3456789RXX", 3), întoarce șirul "20-3456789"
Considerații pentru câmpurile calculate
Ar trebui să cunoașteți anumite condiții și limitări atunci când lucrați cu câmpuri calculate:
Interogările, tabelele și vizualizările salvate pot avea maxim 10 câmpuri calculate unice.
Valorile de câmp calculat nu sunt afișate în modul Customer Engagement Outlook Offline în vizualizările dală sau pe formularele de entitate principală.
Numărul maxim de câmpuri calculate înlănțuite este 5.
Un câmp calculat nu poate să facă referire la sine sau să aibă lanțuri ciclice.
Dacă modificați unul dintre operatorii condiției într-o clauză cu mai multe condiții, toți operatorii condiției se vor actualiza la acea condiție. De exemplu, în clauza
IF (x > 50) OR (y ==10) OR (z < 5), dacă modificați operatorulORîn operatorulAND, toți operatoriiORdin clauză vor deveni operatoriAND.Puteți accesa câmpurile parentale prin intermediul câmpului de căutare pentru entitatea părinte, cum ar fi
<LookupFieldName>.<FieldName>. Acest lucru nu este posibil pentru câmpurile de căutare multi-entitate precumCustomer, care poate fiAccountsauContact. Cu toate acestea, unele entități au câmpuri de căutare individuale pentru o anumită entitate, cum ar fiParentAccountid.<FieldName>sauParentContactid.<FieldName>.Sortarea este dezactivată pe:
Un câmp calculat care conține un câmp al unei înregistrări părinte.
Un câmp calculat care conține un câmp logic (de exemplu, câmpul adresă).
Un câmp calculat care conține un alt câmp calculat.
Câmpurile calculate pot cuprinde numai două entități.
Un câmp calculat poate conține un câmp din altă entitate (care se întinde pe două entități - entitatea curentă și înregistrarea părinte).
Un câmp calculat nu poate conține un câmp calculat de la o altă entitate care conține, de asemenea, un alt câmp de la o entitate diferită (se întinde pe trei entități):
(Entitate curentă)Câmp calculat <- (Înregistrare principală) Câmp calculat 1 <- (Înregistrare principală) Câmp calculat 2.
Nu puteți declanșa fluxuri de lucru sau inserturi pe câmpuri calculate.
Nu puteți schimba un câmp simplu existent într-un câmp calculat. Dacă aplicația dvs. curentă utilizează JavaScript sau inserturi pentru a calcula un câmp, nu puteți utiliza caracteristica de câmpuri calculate fără a crea un nou câmp.
Regulile de detectare a dublurilor nu sunt declanșate pe câmpuri calculate.
Un cumul nu poate face referire la un câmp calculat care utilizează un alt câmp calculat, chiar dacă toate câmpurile celuilalt câmp calculat sunt pe entitatea curentă.
Consultați și
Crearea și editarea de câmpuri
Definirea câmpurilor de cumulare
Videoclip: Câmpurile de cumulare și câmpurile calculate în Dynamics CRM 2015
Hinweis
Ne puteți spune care preferințele dvs. lingvistice pentru documentație? Răspundeți la un chestionar scurt. (rețineți că acest chestionar este în limba engleză)
Chestionarul va dura aproximativ șapte minute. Nu sunt colectate date personale (angajament de respectare a confidențialității).
Feedback
Trimiteți și vizualizați feedback pentru