Usare Power Fx nella pagina personalizzata per l'app basata su modello

Questo articolo descrive come le funzioni comuni di Microsoft Power Fx funzionano in modo diverso tra un'app canvas autonoma e una pagina personalizzata. Questo perché una pagina personalizzata è un componente all'interno dell'app basata su modello. Le altre formule Microsoft Power Fx continuano a comportarsi allo stesso modo.

Importante

Le pagine personalizzate sono una nuova funzionalità con modifiche significative al prodotto e attualmente presentano una serie di limitazioni note descritte in Problemi noti relativi alle pagine personalizzate.

Aggiungere notifiche a una pagina personalizzata

È possibile mostrare una notifica all'utente in una pagina personalizzata chiamando la funzione Notify. Quando vengono visualizzati i messaggi di notifica, sono ancorati sopra la pagina predefinita per rimanere visibili fino a quando non vengono disabilitati. Se viene fornito un intervallo di timeout, il messaggio di notifica scomparirà dopo l'intervallo di timeout. Si consiglia di non utilizzare un intervallo di timeout di 10, poiché non è più considerato un intervallo di timeout. Maggiori informazioni: Funzione Notify.

Notify( "Custom page notification message" )

Barra dei messaggi delle informazioni di notifica della pagina personalizzata

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

Barra dei messaggi degli avvisi di notifica della pagina personalizzata

Questa sezione fornisce esempi di spostamento da un'app basata su modello a una pagina personalizzata, da una pagina personalizzata ad altre pagine personalizzate o un modulo di app basata su modello usando Power Fx.

La funzione Navigate consente agli utenti di spostarsi da moduli di app basate su modello o pagine personalizzate. Questa funzione è applicabile solo quando la pagina personalizzata è in esecuzione in un'app basata su modello. Durante la creazione di pagine personalizzate o l'anteprima nella finestra di progettazione canvas, questa funzione non ha effetto.

Per passare da una pagina personalizzata a un'altra, passa il nome visualizzato della pagina personalizzata come primo parametro.

Navigate( CustomPage2  )

Per passare alla visualizzazione predefinita della tabella, passare il nome della tabella come primo parametro.

Navigate( Accounts )

Importante

Assicurati di aggiungere la tabella degli account Microsoft Dataverse alla pagina personalizzata prima della pubblicazione e del test.

Per passare a una specifica visualizzazione di sistema della tabella, passa il GUID della visualizzazione.

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

Per passare al modulo predefinito della tabella, passa il record come primo parametro.

Navigate( Gallery1.Selected )

Per passare un record Dataverse in un modulo specifico, passare il nome del modulo nell'attributo Pagina del secondo parametro.

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

Per passare un record Dataverse in una specifica pagina personalizzata, passare il nome della pagina personalizzata nell'attributo Pagina del secondo parametro.

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

Nella pagina personalizzata di destinazione, il record viene recuperato utilizzando la funzione Param per ottenere il valori etn e id.

Di seguito è riportato un esempio di caricamento del record in un controllo EditForm.

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

Per passare al modulo predefinito della tabella in modalità di creazione, passa un record Dataverse creato con la funzione Defaults. In questo modo si apre il modulo predefinito con il record come nuovo record. La funzione Defaults usa il nome della tabella per creare il record.

Navigate( Defaults( Accounts ) )

Per passare a un nuovo record con alcuni campi predefiniti, utilizza la funzionalità Patch per impostare i campi sul record predefinito per la tabella.

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

Per tornare all'ultima pagina o chiudere una finestra di dialogo, devi chiamare la funzione Back in una pagina personalizzata. La funzione Back chiude la pagina corrente e torna all'ultima app basata su modello o pagina personalizzata nell'app basata su modello. Se la pagina personalizzata include più schermate, vedi l'articoloTornare alla pagina personalizzata quando include più schermate.

Back()

La configurazione predefinita per una pagina personalizzata prevede una schermata. In questo caso, la chiamata della funzione Back chiuderà la pagina personalizzata a meno che questa non sia l'ultima nello stack di pagine nell'app basata su modello. L'ultima pagina rimane aperta.

Un creatore di app può abilitare più schermate in una pagina personalizzata. Queste dovrebbero essere considerate come controlli a pagina intera nella pagina personalizzata che può essere impilata. L'apertura di una pagina personalizzata non consente di specificare la schermata da utilizzare. Quando una pagina personalizzata contiene più schermate, il creatore è responsabile della gestione dell'impilamento delle schermate. La chiamata della funzione Navigate in una schermata si aggiungerà allo stack di schermate con la pagina personalizzata. Ogni chiamata della funzione Back rimuoverà una schermata dallo stack di schermate. Quando è presente una sola schermata nello stack di schermate, la pagina personalizzata viene chiusa.

Abilitazione di più schermate

Per impostazione predefinita, una pagina personalizzata utilizza un'unica schermata per incoraggiare la separazione dell'app in una schermata per pagina. Questo può essere cambiato abilitando Impostazioni > Schermo > Abilita più schermate.

Abilita più schermate della pagina personalizzata

Problemi noti

  • La funzionalità Navigate non supporta l'apertura di un modello o di una pagina personalizzata in una finestra di dialogo. Tutta la navigazione da una pagina personalizzata si apre in linea.
  • La funzionalità di navigazione non supporta l'apertura:
    • Una raccolta di dashboard o una dashboard specifica.
    • Un modello specifico di un'app basata su modello.
  • Una pagina personalizzata può essere aperta solo nella scheda dell'app corrente della sessione corrente in un'app basata su modello multisessione.

Vedi anche

Accedere a una pagina personalizzata utilizzando l'API client

Panoramica della pagina personalizzata di un'app basata su modello