Del via


Skrive eller rette fejl i scripts til Dynamics 365 til telefoner og tablets

 

Udgivet: januar 2017

Gælder for: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

Microsoft Dynamics 365 til telefoner og Microsoft Dynamics 365 til tablets bruger de samme formulardefinitioner, der er brugt i webprogrammet. Hvis du føjer JavaScript-kode til formularhændelseshandlere eller kommandoer på båndet i webprogrammet, kan den også køre i Dynamics 365-mobilklienter (telefoner og tablets). Der er nogle forskelle, du skal være opmærksom på.

Dette emne indeholder

Nogle Xrm.Page- eller window-objektfunktioner virker ikke i Dynamics 365 til telefoner og tablets

Angiv, hvilken kode der skal køres i Dynamics 365 til telefoner og tablets

Angiv, hvilke kommandoer der skal vises i Dynamics 365 til telefoner og tablets

Vær opmærksom på forskellene mellem Dynamics 365-mobilklienter og webprogrammet i en browser

Rette fejl i scripts til Dynamics 365 til telefoner og tablets

Nogle Xrm.Page- eller window-objektfunktioner virker ikke i Dynamics 365 til telefoner og tablets

Dynamics 365-mobilklienter tillader ikke funktioner, som kan blokere for kørsel af scripts. Almindelige JavaScript-funktioner som window.alert, window.confirm og window.prompt, fungerer ikke, som du forventer, eller vil producere fejl.

Brug funktionerne Xrm.UtilityalertDialog og confirmDialog til at vise meddelelser til brugere. Disse funktioner fungerer anderledes end window-funktioner, fordi de ikke stopper behandlingen af scripts, før de lukkes af brugeren. De indeholder tilbagekaldsfunktioner, som muliggør asynkrone svar på brugerinput. Ved brug af window.confirm, window.prompt eller andre oprindelige window-funktioner, der blokerer for kørsel af scripts, udløses en fejl.

Bemærk

Hvis du bruger window.alert i dine formularscripts, vises den meddelelse, du har angivet, automatisk ved hjælp af Xrm.Utility.alertDialog, uden at en tilbagekaldsfunktion er angivet, men dette er midlertidigt og anses allerede for at være forældet. Du skal flytte kode, der bruger window.alert, så Xrm.Utility.alertDialog bruges i stedet.

Dynamics 365-mobilklienter understøtter heller ikke window.open-metoden. Hvis du har brug for at åbne en objektformular for en ny eller eksisterende post, kan du bruge Xrm.Utility.openEntityForm i stedet.

Følgende metoder virker ikke i Dynamics 365-mobilklienter (telefoner og tablets).

Xrm.Page.context.getCurrentTheme

Xrm.Page.uiViewPort-metoder

Xrm.Page.data.entity.getDataXml

Xrm.Page.ui.navigation.items-samling

Xrm.Page.ui.formSelector-objektmetoder

Xrm.Page.ui tab.setDisplayState

De fleste af disse funktioner vil udføre en tom funktion og ikke returnere noget. Hvis du har kode, der forventer en returværdi fra en af disse funktioner, er den udefineret.

Derudover understøtter Dynamics 365 til telefoner ikke webressourcer og IFRAMES, så klient-API'erne for disse kontrolelementer virker ikke. Klient-API'er for webressourcer og IFRAMES understøttes dog på Dynamics 365 til tablets. Flere oplysninger: Kontrolelementmetoderne Webressource og IFRAME.

Angiv, hvilken kode der skal køres i Dynamics 365 til telefoner og tablets

Når funktionerne for klient-API'en er forskellige, skal du medtage kode, der svarer til følgende, for at adskille den logik, som du anvender til hver klient.

var isCrmForMobile = (Xrm.Page.context.client.getClient() == "Mobile")
if (isCrmForMobile)
{
 // Code for CRM for phones and tablets only goes here.
}
else
{
 // Code for web browser or CRM for Outlook only goes here.
}
// Code for any client goes here.

Angiv, hvilke kommandoer der skal vises i Dynamics 365 til telefoner og tablets

Når du bruger handlingen <JavaScriptFunction> (RibbonDiffXml) i dine brugerdefinerede kommandoer på kommandolinjen (båndet), du kan også adskille din kode ved hjælp af Xrm.Page.context.client.getClient. Hvis du vil udføre en handling, som ikke fungerer ved hjælp af Dynamics 365-mobilklienter, skal du medtage visningsregler, så kommandoerne ikke vises i Dynamics 365 til tablets. Som standard vises alle kommandoer, der er defineret, i Dynamics 365-mobilklienter, medmindre du udtrykkeligt konfigurerer andet. Som hovedregel skal du definere følgende visningsregel og medtage den i hver kommando, medmindre du ved, at det fungerer sammen med Dynamics 365-mobilklienter.

<DisplayRule Id="My.HideOnModern">
 <CommandClientTypeRule Type="Modern"
                        InvertResult="true" />
</DisplayRule>

Vær opmærksom på forskellene mellem Dynamics 365-mobilklienter og webprogrammet i en browser

Ud over funktionerne, der er beskrevet i Nogle Xrm.Page- eller window-objektfunktioner virker ikke i Dynamics 365 til telefoner og tablets, skal du også være opmærksom på, at der er andre forskelle.

  • Sammensatte felter
    Dynamics 365-mobilklienter implementerer sammensatte felter på en anden måde.Dynamics 365-mobilklienter medtager ikke sammensatte attributter. De udskifter automatisk konstituentattributterne og viser dem i stedet.Flere oplysninger:Skrive scripts for sammensatte attributter.

Rette fejl i scripts til Dynamics 365 til telefoner og tablets

Da Dynamics 365 til telefoner eller Dynamics 365 til tablets er apps, er de JavaScript-fejlfindingsværktøjer, du normalt kan bruge i browseren, ikke tilgængelige. Vi anbefaler følgende fremgangsmåde til at teste og foretage fejlfinding af dine formularscripts og kommandoer på båndet:

  1. Test dine scripts grundigt ved hjælp af webprogrammet.

  2. Tilbagefør kriterierne som en del af testen med webbrowseren, når du søger efter klienten ved hjælp af Xrm.Page.context.client.getClient, og kontrollér, at logikken er relevant for den oplevelse, personer bør have, når de bruger Dynamics 365-mobilklienter. De API'er, der er tilgængelige for Dynamics 365-mobilklienter, deler et undersæt af API'erne til webbrowseren, så du bør kunne teste dit alternative flow i webbrowseren.

  3. Hvis det er muligt, skal du installere Dynamics 365-mobilklienter på en computer, hvor Windows 10 og Microsoft Visual Studio er installeret. Medtag debugger-sætninger, hvor du vil starte fejlfindingen ved hjælp af Visual Studio.

  4. Til sidst kan du bruge Xrm.Utility.alertDialog til at vise værdier fra koden i Dynamics 365-mobilklienter.

Se også

Skriv kode til Microsoft Dynamics 365-formularer
Bruge formular- og felthændelser
Bruge Xrm.Page-objektmodel
Skrive scripts for sammensatte attributter
Formularscripter - hurtig henvisning
Programmeringsreference på klientsiden
Præsentation af kommandolinje eller båndet

Microsoft Dynamics 365

© 2017 Microsoft. Alle rettigheder forbeholdes. Ophavsret