Cele mai bune practici de personalizare

Urmați aceste bune practici pentru a evita problemele de performanță, utilizare și suportabilitate Dynamics 365 Field Service.

Minimizarea câmpurilor particularizate din formulare

Persoanele care particularizează sistemul adaugă câmpuri particularizate la formularele de entitate pentru a capta informații specifice domeniului și afacerii lor, pentru a rula procese de afaceri și pentru a colecta informații despre care să raporteze. Cu toate acestea, prea multe câmpuri particularizate dintr-un formular pot cauza probleme de performanță.

Pentru a evita problemele de performanță:

  • Minimizați numărul de câmpuri particularizate din toate formularele. Începând cu formularul de comandă de lucru este o idee bună dacă acesta este cel mai utilizat formular din aplicația Field Service.
  • Printre câmpurile particularizate, minimizarea câmpurilor de tip de căutare și a subgrilei are cel mai mare efect asupra performanței formularului, cum ar fi timpul de încărcare.
  • Mutați câmpurile particularizate (în special căutările și subgrilelele) din prima filă de formular în alte file de formular.
  • Ascundeți câmpurile utilizate mai puțin în mod implicit în formular.

Nu modificați resursele web predefinite, seturile de opțiuni, rolurile de securitate sau fluxurile de lucru predefinite

Particularizarea, preluarea dependențelor sau invocarea particularizată a resurselor web predefinite, a seturilor de opțiuni, a rolurilor de securitate sau a fluxurilor de lucru predefinite nu este acceptată și poate duce la un comportament neintenționat al sistemului.

Este posibil ca organizațiile care particularizează aceste componente să nu vadă imediat problemele din mediul lor. Cu toate acestea, pe măsură ce Microsoft lansează modificări la componentele predefinite particularizate, aceste modificări nu se aplică stratului superior al acelei componente. Stratul personalizat specific suprascrie toate modificările viitoare, care în cele din urmă cauzează erori și comportamente imprevizibile.

Nu modificați, editați sau ștergeți câmpurile de date sau stările sistemului

Modificarea, editarea sau ștergerea câmpurilor de dată și a stărilor poate afecta logica de afaceri și poate cauza probleme cu actualizările soluției. Exemple de dată a comenzii de lucru sunt timpul de la promis și timpul promis . Exemple de câmpuri de stare includ starea sistemului de comenzi de lucru și starea sistemului de acorduri.

Nu editați și nu eliminați câmpuri predefinite din formulare

Clienții editează câmpuri predefinite pentru a se potrivi nevoilor lor de afaceri. Cu toate acestea, editarea câmpurilor predefinite poate provoca erori, mai ales atunci când procesele depind de acele valori de câmp.

Pentru a evita erorile:

  • Ascundeți câmpurile nedorite dintr-un formular.
  • Mutați câmpurile nedorite în altă filă de formular.

Iată doar un exemplu: procesele Field Service calculează valoarea câmpului Ora estimată de sosire din înregistrarea Rezervare resurse rezervabile pentru a indica momentul în care se așteaptă ca un lucrător din prima linie să sosească la fața locului. Dacă organizația nu are nevoie de acest câmp, ascundeți-l în formular, în loc să îl eliminați.

Pentru informații suplimentare, consultați aceste articole:

Nu editați valorile set de opțiuni (alegere)

Editarea valorilor set de opțiuni ale câmpurilor predefinite poate cauza erori, mai ales atunci când procesele depind de acele valori de câmp sau în timpul upgrade-urilor.

Pentru a evita erorile:

  • Editați numai valorile set de opțiuni labels and never edit set de opțiuni ale câmpurilor predefinite.
  • Nu elimina nicio alegere set de opțiuni.
  • Nu adăuga nicio alegere set de opțiuni.

Iată doar un exemplu: Comanda de lucru Field Service include un câmp numit în mod implicit "Stare sistem". Acest câmp este un set de opțiuni (tastați "alegere") cu opțiuni precum Neprogramat, Programat, În curs, Finalizat, Anulat etc. Fiecare dintre aceste opțiuni are o etichetă și o valoare numerică asociată. Administratorii de sistem pot edita etichetele seturilor de opțiuni (cum ar fi "Neprogramat"), dar nu pot edita niciodată valoarea numerică asociată etichetei.

Utilizați mai puține scripturi particularizate și urmați cele mai bune practici

Persoanele care particularizează sistemul scriu scripturi, de obicei resurse web JavaScript, pentru a executa logica de afaceri. Cu toate acestea, scripturile particularizate pot provoca probleme de performanță, erori și complicații la upgrade.

Pentru a evita aceste probleme:

  • Minimizați scripturile care rulează la încărcare.
  • Nu scrieți scripturi care apelează o mulțime de date sau scrieți mai multe scripturi care apelează aceleași date.

Urmați mai multe cele mai bune practici pentru scripturile de formular, inclusiv următoarele cele mai bune practici:

Minimizați numărul de solicitări de rețea și cantitatea de date solicitate în evenimentul OnLoad

Cu cât este mai mare numărul de solicitări de rețea efectuate în timpul încărcării unui formular și cu cât este mai mare cantitatea de date descărcate din acele solicitări, cu atât este nevoie de mai mult timp pentru încărcarea unui formular. Solicitați doar cantitatea minimă de date necesare. De asemenea, luați în considerare stocarea datelor în cache atunci când este posibil, pentru a evita solicitarea inutilă a datelor pentru încărcările viitoare de pagină.

Evitați utilizarea solicitărilor de rețea sincrone

Solicitările de rețea sincronă pot provoca încărcări lente ale paginii și formulare care nu răspund. Folosiți în schimb solicitări asincrone. Consultați această postare de blog pentru mai multe exemple. În plus, luați în considerare utilizarea "asincron și așteptați" în orice scenariu în care sunt necesare mai multe apeluri de rețea pentru aceeași entitate și înregistrare; Găsiți mai multe detalii aici.

Evitați includerea bibliotecilor de resurse web JavaScript inutile

Cu cât adăugați mai multe scripturi la formular, cu atât este nevoie de mai mult timp pentru a le descărca. De obicei, scripturile sunt memorate în cache în browser după ce sunt încărcate prima dată, dar performanța primei vizualizări a unui formular creează adesea o impresie semnificativă.

Evitați încărcarea tuturor scripturilor în evenimentul Onload

Dacă aveți cod care acceptă numai evenimente OnChange pentru coloane sau evenimentul OnSave, asigurați-vă că setați biblioteca de scripturi cu rutina de tratare a evenimentelor pentru acele evenimente, în locul evenimentului OnLoad. În acest mod, încărcarea bibliotecilor poate fi amânată și crește performanța atunci când se încarcă formularul.

Utilizați filele restrânse pentru a amâna încărcarea resurselor web

Atunci când resursele web sau componentele iframe sunt incluse în secțiunile dintr-o filă restrânsă, acestea nu se încarcă dacă fila este restrânsă. Acestea se încarcă atunci când fila este extinsă. Când starea filei se modifică, are loc evenimentul TabStateChange. Orice cod necesar pentru a accepta resurse web sau iframe în filele restrânse poate utiliza rutine de tratare a evenimentelor pentru evenimentul TabStateChange și poate reduce codul care altfel ar trebui să apară în evenimentul OnLoad.

Evitați solicitările de rețea duplicate în codul clientului

Solicitările de rețea multiple sau dublate pot determina blocarea browserului web și pot afecta timpul de încărcare a formularului. Reducerea numărului de solicitări poate îmbunătăți performanța. O alternativă este consolidarea solicitărilor de rețea și memorarea în cache a valorii solicitărilor. De asemenea, luați în considerare solicitările de rețea asincrone, așa cum am menționat anterior.

Evitați utilizarea rolurilor și a apelurilor specifice utilizatorului de sistem dacă informațiile relevante sunt disponibile în API-urile XRM

Utilizați API-urile XRM pentru a evita solicitările de rețea pentru a obține informații despre privilegiile utilizatorului. Consultați următorul articol despre tranziția de la solicitările sincrone. În mod similar, evitați apelurile utilizatorilor de sistem dacă informațiile de la API-urile XRM îndeplinesc cerințele dvs.

Setarea opțiunilor implicite de vizibilitate

Evitați utilizarea scripturilor de formular în evenimentul OnLoad care ascund elemente de formular. În schimb, setați opțiunile de vizibilitate implicite pentru elemente de formular care ar putea fi ascunse, pentru a nu fi vizibile în mod implicit atunci când se încarcă formularul. Apoi, utilizați scripturi în evenimentul OnLoad pentru a afișa elementele de formular pe care doriți să le afișați.

Pentru mai multe informații, consultați aceste resurse:

Rulați Solution Checker pe scripturile dvs.

Verificatorul Power Apps de soluții este un instrument util de la Microsoft care verifică Power Apps soluțiile pentru probleme și recomandă cele mai bune practici. Aceste probleme includ probleme cu JavaScript, HTML, pluginuri și activități particularizate ale fluxului de lucru.

Pentru mai multe informații, consultați aceste resurse:

Utilizarea fluxurilor de lucru asincrone în locul fluxurilor de lucru sincrone

Persoanele care particularizează sistemul scriu adesea fluxuri de lucru sincrone pentru a efectua logica de afaceri în timp real, care se execută atunci când datele sunt modificate în Field Service. Cu toate acestea, executarea fluxurilor de lucru scade sincron performanța.

Pentru a evita problemele de performanță, rulați fluxurile de lucru asincron.

Activați procesele predefinite Field Service și Resource Scheduling

Field Service și planificarea resurselor sunt livrate cu multe procese care efectuează logica de afaceri necesară.

Procesele dezactivate pot duce la erori.

Pentru a evita problemele, asigurați-vă că toate procesele Field Service și Planificarea resurselor sunt într-o stare activă. Rulați regulat Field Service Solution Health Hub pentru a identifica dacă procesele sunt într-o stare dezactivată.

Rulați Hubul de sănătate a soluțiilor pentru a detecta problemele

Hub pentru starea soluțiilor vă permite să obțineți o imagine mai bună a stării mediului dvs. și să detectați problemele legate de mediul dvs. Dynamics 365. Hub pentru starea soluțiilor execută reguli în cadrul unei instanțe pentru a valida configurația mediului, care s-ar putea schimba în timp prin operații ale sistemului natural. Unele dintre reguli sunt specifice Dynamics 365 Field Service și puteți rula regulile la cerere atunci când întâmpinați o problemă. Unele reguli se declanșează automat atunci când este instalat sau actualizat Field Service.

Rulați regulat setul de reguli Field Service Solution Health Hub pentru a monitoriza starea mediului dvs.

Considerente privind performanța aplicației mobile

Personalizarea aplicației mobile poate afecta, de asemenea, performanța. Pentru mai multe informații, consultați acest articol: Considerații privind performanța la particularizarea aplicației mobile