Introduzione agli script lato client

Completato

Gli script client permettono di usare JavaScript nelle app basate su modello Power Apps per implementare la logica di business personalizzata. Rappresentano un'alternativa quando le regole di business dichiarative non soddisfano i requisiti. Gli script client vengono eseguiti in un modulo basato su modello in risposta agli eventi del modulo. Di seguito sono riportati gli eventi più comuni per i quali è possibile usare i gestori eventi:

  • Caricamento del modulo

  • Modifica dei dati in una colonna

  • Salvataggio del modulo

Inoltre è possibile configurare un pulsante della barra dei comandi da selezionare per richiamare una funzione dello script client.

Alcune delle attività più comuni che si possono eseguire usando gli script client sono:

  • Ottenere o impostare i valori delle colonne nel modulo.

  • Mostrare e nascondere gli elementi dell'interfaccia utente.

  • Fare riferimento a più controlli per colonna.

  • Andare da un modulo all'altro quando sono disponibili più moduli per una tabella.

  • Aprire moduli, viste, finestre di dialogo e report.

  • Interagire con il controllo del flusso del processo aziendale.

Con l'uso dell'API script client, è possibile implementare l'interazione con dati, modifiche del contenuto del modulo oppure modifiche del comportamento dell'app. Quando si scrive la logica in JavaScript è importante tenere presente che, anche se il modulo usa HTML standard, la modifica diretta del contenuto del modulo non è supportata. Gli script client forniscono un modello a oggetti con i metodi per interagire con i vari componenti del modulo. Questo approccio assicura che qualsiasi modifica del layout o del codice HTML specifico usato nel rendering del modulo non incida sulla logica di business. È altrettanto importante usare solo oggetti e funzioni documentati e non altri risultanti da attività di ricerca e individuazione, che possono cambiare o non essere disponibili in qualsiasi momento. Per altre informazioni sulle personalizzazioni supportate e non supportate, vedere Procedure per la creazione di app Microsoft Dataverse - Power Apps nella Guida per gli sviluppatori di Dataverse.

Di seguito è riportata la struttura generale del modello a oggetti e degli spazi dei nomi dell'API script client:

  • App: consente l'aggiunta di gestori eventi per qualsiasi notifica a livello di app.

  • Dispositivo: autorizza tramite consenso l'accesso ai contenuti del dispositivo come immagini, video, audio, posizione e altro.

  • Codifica: consente l'accesso rapido alle funzioni di codifica/decodifica HTML.

  • Spostamento: fornisce funzioni di spostamento indipendenti dalla piattaforma, tra cui l'apertura di finestre di dialogo, moduli, file e URL.

  • Pannello: visualizza la pagina Web rappresentata da un URL nell'area statica del riquadro laterale presente in tutte le pagine nel client Web delle app basate su modello.

  • Utilità: è una raccolta di funzioni di utilità, incluso l'accesso ai metadati e a diversi oggetti contesto.

  • API Web: fornisce proprietà e funzioni per usare l'API Web allo scopo di creare e gestire record ed eseguire azioni e funzioni dell'API Web.

Un altro concetto chiave generale è costituito dagli oggetti contesto, che sono disponibili come parametri del gestore eventi oppure possono essere recuperati usando metodi speciali. Grazie a questi oggetti contesto si può evitare di scrivere codice vincolato a un particolare layout di controllo del modulo o per un controllo specifico. Di seguito sono riportati i contesti disponibili all'uso:

  • Esecuzione: definisce il contesto dell'evento in cui viene eseguito il codice. Il contesto di esecuzione viene passato quando in un modulo o in una griglia si verifica un evento che può essere usato nel gestore eventi per eseguire varie attività come determinare formContext o gridContext o gestire l'evento di salvataggio.

  • Modulo: fornisce un riferimento al modulo o a un elemento del modulo, ad esempio un controllo visualizzazione rapida o una riga di una griglia modificabile, rispetto al quale viene eseguito il codice corrente. Il contesto modulo viene recuperato usando il metodo getFormContext() del contesto di esecuzione o viene incluso come argomento quando il codice viene eseguito da un'azione della barra multifunzione. Il contesto modulo contiene i seguenti spazi dei nomi chiave:

    • data: questo spazio dei nomi fornisce l'accesso ai dati per la riga della tabella presentata in un modulo, incluse funzioni quali Salva e Aggiorna. Un esempio di uso di questo metodo è: formContext.data.entity.save("saveandnew");

    • ui: questo spazio dei nomi permette di modificare i controlli nel modulo, ad esempio schede, sezioni e controlli. Le attività comuni sono nascondere, mostrare e rendere obbligatori o non obbligatori i campi. Un esempio di uso di questo metodo è: formContext.ui.refreshRibbon(true);

  • Griglia: fornisce informazioni di contesto ai gestori eventi registrati nelle griglie secondarie di un modulo.

Come è possibile intuire da queste descrizioni generali, l'uso dell'API script client offre una notevole flessibilità per implementare la logica lato client. È importante ricordare tuttavia che la logica implementata con lo script lato client viene imposta soltanto quando l'utente usa l'applicazione. In molti casi gli script client devono essere associati all'implementazione lato server per garantire che la logica venga sempre eseguita indipendentemente dal metodo usato per accedere ai dati e alle funzionalità. La parte restante di questo modulo illustra più dettagliatamente come usare gli script client.