Aggiungere logica ai comandi con Power Fx
Le app basate su modello supportano una barra dei comandi nella parte superiore dei moduli e delle visualizzazioni in cui è possibile aggiungere pulsanti personalizzati. Usando Power Fx, è possibile controllare cosa accade quando viene selezionato un pulsante, se il pulsante è visibile e come interagisce con il record selezionato.
Che cos'è il comando?
Il comando consente agli autori di aggiungere pulsanti personalizzati alla barra dei comandi di un'app basata su modello usando la finestra di progettazione dei comandi. Invece di scrivere javaScript, si scrivono espressioni Power Fx, lo stesso linguaggio di formula usato nelle app canvas, per definire il comportamento e la visibilità del pulsante.
Note
Molte funzioni di Power Fx che funzionano nelle app canvas sono supportate anche nei comandi. Alcune funzioni non sono supportate, tra cui Set(), Collect(), UpdateContext()e altre che si basano sulla gestione dello stato specifica dell'area di disegno.
OnSelect
La OnSelect proprietà definisce ciò che viene eseguito quando un utente seleziona il pulsante. Qui è possibile usare qualsiasi funzione Power Fx supportata.
Ad esempio, per aggiornare il nome nel record dell'account attualmente selezionato:
Patch(Accounts, Self.Selected.Item, {'Account Name': "Contoso"})
Per passare a una schermata o una visualizzazione diversa:
Navigate(Accounts)
Per visualizzare una finestra di dialogo di conferma prima di intervenire:
If(
Confirm("Are you sure?", { ConfirmButton: "Yes", CancelButton: "No" }),
Patch(Accounts, Self.Selected.Item, {Status: "Closed"})
)
Visibile
La Visible proprietà controlla se il pulsante viene visualizzato nella barra dei comandi. Impostala come un'espressione Power Fx che restituisce true o false.
Ad esempio, per visualizzare il pulsante solo quando uno o più record vengono selezionati in una griglia:
CountRows(Self.Selected.AllItems) > 0
Per visualizzare il pulsante solo per i record con un valore di campo specifico:
Self.Selected.Item.'Account Rating' > 20
La proprietà Selezionato
All'interno delle espressioni Power Fx di un comando, l'oggetto Self.Selected consente di accedere al record o ai record attualmente selezionati nell'app.
| Property | Returns | Descrzione |
|---|---|---|
Self.Selected.Item |
Record singolo | Record attualmente selezionato. Vuoto se non è selezionato alcun elemento o se sono selezionati più record. |
Self.Selected.AllItems |
Tabella dei record | Tutti i record attualmente selezionati. Vuoto se non è selezionato nulla. |
Self.Selected.State |
Enum | Indica se il modulo è in stato Modifica (0), Nuovo (1) o Visualizza (2). |
Inviare notifica all'utente
Usare la Notify funzione per visualizzare un messaggio banner all'utente dell'app dopo l'esecuzione di un comando:
Notify("Record updated successfully.")
Successivamente, le competenze verranno messe in pratica creando un'app basata su modello completa in un esercizio pratico.