Brug Power Fx på en brugerdefineret side til din modelbaserede app

I denne artikel beskrives, hvordan de almindelige Microsoft Power Fx-funktioner fungerer forskelligt mellem en separat lærredsapp og en brugerdefineret side. Det skyldes, at en brugerdefineret side er en komponent i den modelbaserede app. Andre Microsoft Power Fx-formler fungerer fortsat på samme måde.

Vigtigt

Brugerdefinerede sider er en ny funktion med væsentlige produktændringer, og den har i øjeblikket en række kendte begrænsninger, som er skitseret i Kendte problemer med brugerdefinerede sider.

Føje meddelelser til en brugerdefineret side

Brugeren kan få vist en meddelelse på en brugerdefineret side ved at kalde funktionen Notify. Når meddelelserne vises, forankres de oven over standardsiden for at forblive synlige, indtil de deaktiveres. Hvis der er angivet et timeoutinterval, forsvinder meddelelsen efter timeoutintervallet. Det anbefales, at du ikke bruger et timeoutinterval på 10, da dette ikke længere betragtes som et timeoutinterval. Flere oplysninger: Funktionen Notify.

Notify( "Custom page notification message" )

Meddelelseslinje med beskedoplysninger om brugerdefineret side

Notify( "Custom page notify warning message", NotificationType.Warning )

Meddelelseslinje med beskedadvarsel om brugerdefineret side

Dette afsnit indeholder eksempler på navigation fra en modelbaseret appformular til en brugerdefineret side, hvor du navigerer fra en brugerdefineret side til andre brugerdefinerede sider eller en modelbaseret appformular ved hjælp af Power Fx.

Funktionen Navigate gør det muligt for brugerne at navigere enten fra modelbaserede appformularer eller brugerdefinerede sider. Denne funktion kan kun anvendes, når den brugerdefinerede side kører i en modelbaseret app. Under brugerdefineret sideoprettelse eller eksempelvisning i lærredsdesigneren, har denne funktion ingen effekt.

Hvis du vil navigere fra én brugerdefineret side til en anden, skal du overføre det viste navn på den brugerdefinerede side som den første parameter.

Navigate( CustomPage2  )

Hvis du vil navigere til standardvisningen af tabellen, skal du sende tabelnavnet som den første parameter.

Navigate( Accounts )

Vigtigt

Kontrollér, at du tilføjer Microsoft Dataverse-tabellen til den brugerdefinerede side, før du udgiver og tester.

Hvis du vil navigere til en specifik systemvisning af tabellen, skal du overføre GUID'et for visningen.

Navigate( 'Accounts (Views)'.'My Active Accounts' )

Hvis du vil navigere til standardformularen for tabellen, skal du overføre posten som den første parameter.

Navigate( Gallery1.Selected )

Hvis du vil sende en Dataverse-post til en bestemt formular, skal du sende formularnavnet i attributten Side for den anden parameter.

Navigate( 
  AccountGallery.Selected, 
  { Page: 'Accounts (Forms)'.Account  } )

Hvis du vil sende en Dataverse-post til en defineret side, skal du sende det definerede sidenavn i attributten Side for den anden parameter.

Navigate( 
  AccountGallery.Selected, 
  { Page: 'Account Record Page'  } )

På den brugerdefinerede destinationsside hentes posten ved hjælp af funktionen Param for at hente etn- og id-værdierne.

Nedenfor vises et eksempel på, hvordan du indlæser posten i et EditForm-kontrolelementet.

AccountEditForm.DataSource = Accounts
AccountEditForm.Item = 
  LookUp( Accounts, accountid = GUID( Param("id") ) )

Hvis du vil navigere til standardformularen for tabellen i oprettelsestilstand, skal du overføre en Dataverse-post, der er oprettet fra funktionen Defaults. Derved åbnes standardformularen med posten som en ny post. I funktionen Default bruges tabelnavnet til at oprette posten.

Navigate( Defaults( Accounts ) )

Hvis du vil navigere til en ny post, hvor visse felter er standardfelter, skal du bruge funktionen Patch til at angive felter i standardposten for tabellen.

Navigate(
    Patch(
        Defaults(Accounts), { 'Account Name': "My company", Phone: "555-3423" } ) 
  )

Hvis du vil gå tilbage til den forrige side eller lukke en dialogboks, kaldes funktionen Back på en brugerdefineret side. Funktionen Back lukker den aktuelle side og vender tilbage til den seneste modelbaserede app eller brugerdefinerede side i den modelbaserede app. Hvis der er flere skærmbilleder på den brugerdefinerede side, kan du læse artiklen Navigere tilbage, når den brugerdefinerede side indeholder flere skærmbilleder.

Back()

Standardkonfigurationen for en brugerdefineret side er at have ét skærmbillede. I dette tilfælde lukker funktionskaldet Tilbage den brugerdefinerede side, medmindre den brugerdefinerede side er den sidste i stakken af sider i en modelbaseret app. Den sidste side holdes åben.

En appudvikler kan aktivere flere skærme på en brugerdefineret side. Disse bør betragtes som helsides kontrolelementer på den brugerdefinerede side, der kan stables. Når du åbner en brugerdefineret side, kan du ikke angive den skærm, der skal bruges. Når en brugerdefineret side indeholder flere skærmbilleder, er opretteren ansvarlig for at administrere stabling af skærme. Hvis du kalder funktionen Navigate for at navigere til en skærm, føjes den til skærmstakken med den brugerdefinerede side. Alle Tilbage-funktionskald fjerner en skærm fra skærmstakken. Når der kun er én skærm i skærmstakken, lukkes den brugerdefinerede side.

Aktivering af flere skærmbilleder

En brugerdefineret side bruger som standard et enkelt skærmbillede for at opmuntre appens separation til et skærmbillede pr. side. Dette kan gøres nemt ved at aktivere Indstillinger > Vis > Aktivér flere skærmbilleder.

Brugerdefineret side aktiverer flere skærmbilleder

Kendte problemer

  • Funktionen Navigate understøtter ikke åbning af en model eller brugerdefineret side i en dialogboks. Al navigation fra en brugerdefineret side åbnes indbygget.
  • Navigate-funktionen understøtter ikke åbning:
    • En dashboardsamling eller et bestemt dashboard.
    • En bestemt modelbaseret app-formular.
  • En brugerdefineret side kan kun åbnes under den aktuelle sessions aktuelle appfane i en modelbaseret app til flere sessioner.

Se også

Navigere til og fra en brugerdefineret side ved hjælp af klient-API

Oversigt over brugerdefinerede sider i modelbaseret app