Споделяне чрез


Най-добри практики за персонализиране

Следвайте тези най-добри практики, за да избегнете проблеми с производителността, използваемостта и поддръжката Dynamics 365 Field Service.

Минимизиране на персонализираните полета във формулярите

Системните персонализатори добавят персонализирани полета към формуляри на обекти, за да улавят информация, която е специфична за тяхната индустрия и бизнес, да изпълняват бизнес процеси и да събират информация за отчитане. Твърде много персонализирани полета във формуляр обаче могат да причинят проблеми с производителността.

За да избегнете проблеми с производителността:

  • Минимизирайте броя на персонализираните полета във всички формуляри. Ако формулярът за работна поръчка е най-използваният формуляр в приложението Field Service, добра идея е да започнете с този формуляр.
  • Минимизирайте броя на справочните полета и подмрежите сред персонализираните полета.
  • Преместване на персонализирани полета (особено справки и подмрежи) от първия раздел на формуляра в други раздели на формуляра.
  • Скриване на по-рядко използвани полета във формуляр по подразбиране.

Не променяйте готови уеб ресурси, набори от опции, права за достъп или работни потоци

Не променяйте и не персонализирайте готови уеб ресурси, набори от опции, права за достъп или работни потоци. В противен случай може да предизвикате неволно поведение на системата.

Организациите, които персонализират тези компоненти, може да не изпитат веднага проблеми в своята среда. Въпреки това, промените, които Microsoft пуска в персонализираните готови компоненти, не се прилагат към горния слой на тези компоненти. Вместо това конкретният персонализиран слой отменя всички бъдещи промени и тези замествания в крайна сметка причиняват непредсказуеми грешки и поведение.

Не променяйте, редактирайте или изтривайте полета за дата или системни състояния

Промяната, редактирането или изтриването на полета и състояния за дата може да повлияе на бизнес логиката и може да причини проблеми с актуализациите на решението. Примери за полета за дата на работна поръчка включват Време от обещаното и Време до обещаното. Примери за полета за състояние включват Състояние на системата за работна поръчка и Състояние на системата за споразумението.

Не редактирайте готови полета и не ги премахвайте от формуляри

Клиентите редактират готови полета, за да отговорят на бизнес нуждите си. Редактирането на готови полета обаче може да причини грешки, особено когато процесите зависят от стойностите на тези полета.

За да избегнете грешки:

  • Скриване на нежелани полета във формуляр.
  • Преместване на нежеланите полета в друг раздел на формуляра.

Например процесите на Field Service изчисляват стойността на полето Очаквано време на пристигане в записа за резервация на резервиран ресурс , за да посочат кога се очаква работник от първа линия да пристигне на място. Ако вашата организация не се нуждае от това поле, скрийте го във формуляра , вместо да го премахвате.

Не редактирай стойностите на набора от опции (избор)

Редактирането на стойностите на набора от опции на готови полета може да причини грешки, особено когато процесите зависят от стойностите на тези полета или по време на надстройки.

За да избегнете грешки:

  • Редактирайте само етикетите на набора от опции на готовите полета. Никога не редактирайте стойностите на набора от опции на тези полета.
  • Не премахвайте никакви избори за набор от опции.
  • Не добавяйте никакви възможности за избор на набор от опции.

Например работната поръчка на Field Service включва поле "Състояние на системата" по подразбиране. Това поле е набор от опции (от типа на избора ) и има опции като Непланирано, Планирано, В ход, Завършено и Отменено. Всяка опция има етикет и свързана с него числова стойност. Системните администратори могат да редактират етикетите на наборите от опции (като например Непланирани), но никога не могат да редактират числовата стойност, която е свързана с етикета.

Използвайте по-малко персонализирани скриптове и следвайте най-добрите практики

Системните персонализатори пишат скриптове, обикновено JavaScript уеб ресурси, за да изпълняват бизнес логика. Персонализираните скриптове обаче могат да причинят проблеми с производителността, грешки и усложнения по време на надстройки.

За да избегнете тези проблеми:

  • Минимизирайте броя на скриптовете, които се изпълняват при зареждане.
  • Не пишете скриптове, които извикват много данни, и не пишете няколко скрипта, които извикват едни и същи данни.

Следващите подраздели описват най-добрите практики. Освен това следвайте най-добрите практики за скрипт на формуляри в Най-добри практики за разработване с Dynamics 365 Customer Engagement.

Минимизиране на броя на мрежовите заявки и количеството данни, заявени в събитието OnLoad

Колкото повече мрежови заявки се правят по време на зареждане на формуляр и колкото повече данни се изтеглят от тези заявки, толкова повече време отнема зареждането на формуляра. Поискайте само минималното количество данни, което е необходимо. Освен това помислете за кеширане на данните, когато е възможно, за да избегнете ненужно искане на данни по време на бъдещи зареждания на формуляри.

Избягвайте използването на синхронни мрежови заявки

Синхронните мрежови заявки могат да причинят бавно зареждане на страници и неотговарящи форми. Вместо това използвайте асинхронни заявки. Следващата публикация в блога предоставя още примери: Заредете приложенията, управлявани от модел, като преминете от синхронните заявки. Освен това помислете за използването на "async and wait" във всеки сценарий, при който са необходими множество мрежови повиквания за един и същ обект и запис. Научете повече за async и await.

Избягвайте включването на ненужни библиотеки с уеб ресурси на JavaScript

Колкото повече скриптове добавите към формуляр, толкова повече време отнема изтеглянето им. Обикновено скриптовете се кешират във вашия браузър, след като бъдат заредени за първи път. Въпреки това, изпълнението при първото разглеждане на формуляр често създава значително впечатление.

Избягвайте зареждането на всички скриптове в събитието Onload

Ако имате код, който поддържа само OnChange събития за колони или само OnSave събитието, не забравяйте да зададете библиотеката с скриптове с манипулатора на събитията за тези събития вместо събитието OnLoad . По този начин зареждането на тези библиотеки може да бъде отложено и производителността се увеличава при зареждане на формуляра.

Използвайте свити раздели, за да отложите зареждането на уеб ресурси

Уеб ресурсите или iFrame компонентите, които са включени в секции на сгъваем раздел, не се зареждат, ако разделът е свит. Те се зареждат само когато разделът е разгънат. Когато състоянието на раздела се промени, TabStateChange възниква събитието. Всеки код, който е необходим за поддръжка на уеб ресурси или iFrames в свити раздели, може да използва манипулатори на събития за TabStateChange събитието и да намали кода, който иначе може да се наложи да възникне в събитието OnLoad .

Избягвайте дублиращи се мрежови заявки в код от страна на клиента

Множество или дублиращи се мрежови заявки могат да доведат до спиране на уеб браузъра и да повлияят на времето за зареждане на формуляра. Намаляването на броя на заявките може да подобри производителността. Алтернатива е консолидирането на мрежовите заявки и кеширането на стойността на заявките. Освен това помислете за асинхронни мрежови заявки, както беше споменато по-рано.

Избягвайте използването на роли и специфични за потребителя на системата повиквания, ако съответната информация е налична в XRM API

Използвайте XRM API, за да избегнете мрежови заявки за получаване на информация за потребителските привилегии. Научете повече за това как да преминете от синхронни заявки. Освен това избягвайте обажданията на системни потребители, ако информацията от XRM API отговаря на вашите изисквания.

Задаване на опции за видимост по подразбиране

В OnLoad случай, избягвайте използването на скриптове за формуляри, които скриват елементи на формуляра. Вместо това, за елементи на формуляр, които може да са скрити, задайте опциите за видимост по подразбиране, така че елементите да са скрити по подразбиране при зареждане на формуляра. След това използвайте скриптове в OnLoad събитието, за да покажете елементите на формуляра, които искате да бъдат видими.

Научете повече в следните ресурси:

Стартирайте проверката на решения на вашите скриптове

Инструментът Power Apps за проверка на решения е полезен инструмент от Microsoft, който проверява Power Apps решенията за проблеми и препоръчва най-добри практики. Тези проблеми включват проблеми с JavaScript, HTML, плъгини и персонализирани дейности в работния процес.

Научете повече в следните ресурси:

Използване на асинхронни работни потоци вместо синхронни работни потоци

Системните персонализатори често пишат синхронни работни потоци, за да изпълняват в реално време бизнес логика, която се изпълнява при промяна на данните във Field Service. Въпреки това, синхронното изпълнение на работни потоци намалява производителността. За да избегнете проблеми с производителността, вместо това изпълнявайте работни потоци асинхронно.

Активиране на процеси на Field Service и планиране на ресурси

Планирането на полеви услуги и ресурси включва много процеси, които изпълняват необходимата бизнес логика. Деактивираните процеси могат да доведат до грешки. За да избегнете проблеми, уверете се, че всички процеси на Field Service и планиране на ресурси са в активно състояние. За да определите дали процесите са в дезактивирано състояние, редовно изпълнявайте Център за състояние на решенията на Field Service.

Стартирайте Център за състояние на решенията, за да откриете проблеми

Център за състояние на решенията ви помага да получите по-добра представа за състоянието на вашата среда и да откриете проблеми с вашата среда на Dynamics 365. Конфигурацията на средата може да се промени с течение на времето чрез естествени системни операции. Център за състояние на решенията изпълнява правила в екземпляра, за да провери конфигурацията на средата. Някои от правилата са специфични за Field Service и можете да ги изпълнявате при поискване, когато срещнете проблем. Някои правила се задействат автоматично, когато Field Service е инсталиран или актуализиран.

За да наблюдавате изправността на вашата среда, редовно изпълнявайте набора от правила на Център за състояние на решенията.

Съображения за ефективността на мобилното приложение

Персонализирането на мобилното приложение може да повлияе на производителността. Научете повече в Съображения за ефективност при персонализиране на мобилното приложение.