Del via


Gode fremgangsmåter for tilpasning

Følg disse anbefalte fremgangsmåtene for å unngå problemer med ytelse, brukervennlighet og støtte med Dynamics 365 Field Service.

Minimere egendefinerte felt på skjemaer

Systemtilpassere legger til egendefinerte felter i enhetsskjemaer for å registrere informasjon som er spesifikk for bransjen og virksomheten, for å kjøre forretningsprosesser og samle inn informasjon som skal rapporteres om. For mange egendefinerte felt i et skjema kan imidlertid føre til ytelsesproblemer.

Slik unngår du ytelsesproblemer:

  • Minimer antall egendefinerte felt på alle skjemaer. Hvis arbeidsordreskjemaet er det mest brukte skjemaet i Field Service-appen, er det lurt å begynne med dette skjemaet.
  • Minimer antall felter av oppslagstypen og delrutenett blant egendefinerte felter.
  • Flytt egendefinerte felt (spesielt oppslag og delrutenett) fra den første skjemafanen til andre skjemafaner.
  • Skjul mindre brukte felter i et skjema som standard.

Ikke endre bruksklare nettressurser, alternativsett, sikkerhetsroller eller arbeidsflyter

Ikke endre eller tilpass medfølgende nettressurser, alternativsett, sikkerhetsroller eller arbeidsflyter. Ellers kan systemet fungere på utilsiktede måter.

Det kan hende at organisasjoner som tilpasser disse komponentene, ikke får problemer i miljøet umiddelbart. Endringer som Microsoft foretar i de tilpassede, bruksklare komponentene, implementeres imidlertid ikke i det øverste laget av disse komponentene. Det bestemte tilpassede laget overstyrer i stedet alle fremtidige endringer, og disse overstyringene fører til slutt til uforutsigbare feil og funksjonalitet.

Ikke endre, rediger eller slett datofelter eller systemstatuser

Endring, redigering eller sletting av datofelter og statuser kan ha innvirkning på forretningslogikk og kan forårsake problemer med løsningsoppdateringer. Eksempler på datofelter for arbeidsordrer omfatter Tid fra lovet og Tid til lovet. Eksempler på statusfelter omfatter Systemstatus for arbeidsordren og Systemstatus for avtalen.

Ikke rediger bruksklare felter eller fjern dem fra skjemaer

Kunder redigerer bruksklare felter for å imøtekomme forretningsbehovene. Redigering av bruksklare felter kan imidlertid føre til feil, spesielt når prosesser er avhengige av verdiene i disse feltene.

Slik unngår du feil:

  • Skjule uønskede felter i et skjema.
  • Flytt uønskede felt til en annen skjemakategori.

Field Service-prosesser beregner for eksempel verdien i feltet Beregnet ankomsttidspunkt i oppføringen for Bestilling av ressurs som kan reserveres for å angi når en frontlinjearbeider forventes å ankomme stedet. Hvis organisasjonen ikke trenger dette feltet, skjuler du det i skjemaet i stedet for å fjerne det.

Ikke rediger verdier for alternativsett (valg)

Redigering av verdier for alternativsett i bruksklare felter kan føre til feil, spesielt når prosesser avhenger av verdiene i disse feltene eller under oppgraderinger.

Slik unngår du feil:

  • Rediger bare etiketter for alternativsett for bruksklare felter. Rediger aldri verdiene for alternativsett for disse feltene.
  • Ikke fjern alternativsettvalg.
  • Ikke legg til alternativsettvalg.

Field Service-arbeidsordren inneholder for eksempel et felt kalt Systemstatus som standard. Dette feltet er et alternativsett (av typen valg) og har alternativer som Ikke planlagt, Planlagt, Pågår, Fullført og Annullert. Hvert alternativ har en etikett og en tilknyttet numerisk verdi. Systemansvarlige kan redigere etikettene til alternativsett (for eksempel Ikke planlagt), men kan aldri redigere den numeriske verdien som er knyttet til etiketten.

Bruke færre egendefinerte skript og følg anbefalte fremgangsmåter

Systemtilpassere skriver skript, vanligvis JavaScript-nettressurser, for å kjøre forretningslogikk. Egendefinerte skript kan imidlertid forårsake ytelsesproblemer, feil og komplikasjoner under oppgraderinger.

Slik unngår du disse problemene:

  • Minimer antall skript som kjører ved lasting.
  • Ikke skriv skript som kaller opp mye data, eller flere skript som kaller opp de samme dataene.

Underdelene nedenfor beskriver anbefalte fremgangsmåter. Følg i tillegg anbefalte fremgangsmåter for skjemaskript i Anbefalte fremgangsmåter for utvikling med Dynamics 365 Customer Engagement.

Minimer antall nettverksforespørsler og datamengden som er forespurt under OnLoad-hendelsen

Jo flere nettverksforespørsler som utføres under en skjemainnlasting, og jo mer data som lastes ned fra disse forespørslene, desto mer tid tar det å laste inn skjemaet. Be bare om minimumsmengden av data som er nødvendig. Vurder i tillegg hurtigbufring av dataene når det er mulig, for å unngå å be om data unødvendig under fremtidige sideinnlastinger.

Unngå å bruke synkrone nettverksforespørsler

Synkrone nettverksforespørsler kan føre til treg sideinnlastinger og skjemaer som ikke svarer. Bruk asynkrone forespørsler i stedet. Følgende blogginnlegg inneholder flere eksempler: Gjør modelldrevne apper raskere ved å gå bort fra synkrone forespørsler. Vurder i tillegg å bruke async og await i alle scenarioer der flere nettverksoppkall for samme enhet og oppføring er nødvendig. Finn ut mer om async og await.

Unngå å ta med unødvendige JavaScript-biblioteker

Jo flere skript du legger til i et skjema, desto lengre tid tar det å laste dem ned. Skript blir vanligvis bufret i nettleseren etter at de er lastet inn for første gang. Ytelsen første gang et skjema vises, gjør imidlertid ofte et betydelig inntrykk.

Unngå å laste alle skriptene i Onload-hendelsen

Hvis du har kode som bare støtter OnChange-hendelser for kolonner eller bare OnSave-hendelsen, må du passe på at du angir skriptbiblioteket med hendelsesbehandlingen for disse hendelsene i stedet for OnLoad-hendelsen. Dermed kan lasting av disse bibliotekene utsettes, og ytelsen øker når skjemaet lastes inn.

Bruk skjulte faner til å utsette innlasting av nettressurser

Nettressurser eller iFrame-komponenter som er tatt med i deler i en skjult fane, lastes ikke inn så lenge fanen er skjult. De lastes bare inn når fanen vises. Når fanetilstanden endres, inntreffer hendelsen TabStateChange. Kode som kreves for å støtte nettressurser eller iFrames i skjulte faner, kan bruke hendelsesbehandling for hendelsen TabStateChange og redusere mengden kode som kanskje ellers måtte brukes i OnLoad-hendelsen.

Unngå duplikate nettverksforespørsler i kode for klientsiden

Flere eller dupliserte nettverksforespørsler kan føre til at webleseren stopper og påvirker innlastingstiden for skjemaet. Hvis du reduserer antall forespørsler, kan ytelsen forbedres. Et alternativ er å konsolidere nettverksforespørsler og hurtigbufre verdien til forespørslene. Vurder i tillegg asynkrone nettverksforespørsler, som nevnt tidligere.

Unngå å bruke roller og systembrukerspesifikke oppkall hvis den relevante informasjonen er tilgjengelig i API-er for XRM

Bruk API-er for XRM for å unngå nettverksforespørsler for å hente informasjon om brukerrettigheter. Finn ut mer om hvordan du går over fra synkrone forespørsler. Unngå i tillegg systembrukeroppkall hvis informasjonen fra API-er for XRM oppfyller kravene dine.

Angi standardalternativer for synlighet

Unngå å bruke skjemaskript som skjuler skjemaelementer, i OnLoad-hendelsen. Angi i stedet standardalternativer for synlighet for skjemaelementer som kan være skjult, slik at de ikke vises som standard når skjemaet lastes inn. Bruk deretter skript i OnLoad-hendelsen til å vise skjemaelementene du vil skal være synlige.

Finn ut mer i følgende ressurser:

Kjør løsningskontroll på skriptene

Power Apps-løsningskontrollen er et nyttig verktøy fra Microsoft som kontrollerer om det finnes problemer med løsninger for Power Apps-løsninger og anbefaler gode fremgangsmåter. Disse problemene omfatter problemer med JavaScript, HTML, programtillegg og egendefinerte arbeidsflytaktiviteter.

Finn ut mer i følgende ressurser:

Bruke asynkrone arbeidsflyter i stedet for synkrone arbeidsflyter

Systemtilpassere skriver ofte synkrone arbeidsflyter for å utføre forretningslogikk i sanntid som kjører når data endres i Field Service. Kjøring av arbeidsflyter synkront vil imidlertid redusere ytelsen. For å unngå ytelsesproblemer kjører du i stedet arbeidsflyter asynkront.

Aktivere standardprosesser for Field Service og ressursplanlegging

Field Service og ressursplanlegging omfatter mange prosesser som utfører nødvendig forretningslogikk. Deaktiverte prosesser kan føre til feil. For å unngå problemer må du passe på at alle Field Service- og ressursplanleggingsprosesser er i en aktiv tilstand. Du må kjøre tilstandssenteret for Field Service-løsningen regelmessig for å finne ut om prosesser er i deaktivert tilstand.

Kjør tilstandssenteret for å finne problemer

Tilstandssenteret hjelper deg å få et bedre bilde av tilstanden til miljøet og oppdage problemer med Dynamics 365-miljøet. Konfigurasjonen for et miljø kan endres over tid via naturlige systemoperasjoner. Tilstandssenteret kjører regler i en forekomst for å validere konfigurasjonen for miljøet. Noen av reglene er spesifikke for Field Service, og du kan kjøre dem på forespørsel når du støter på et problem. Noen regler utløses automatisk når Field Service installeres eller oppdateres.

Du kan kjøre regelsettet for tilstandssenteret regelmessig for å overvåke miljøets tilstand.

Ytelseshensyn for mobilapp

Tilpassing av mobilappen kan ha innvirkning på ytelsen. Finn ut mer i Ytelseshensyn ved tilpassing av mobilappen.