Creare un'azione di processo personalizzata

Usa le azioni di processo personalizzate quando vuoi automatizzare una serie di comandi nel sistema. Le azioni di processo personalizzate espandono il vocabolario disponibile agli sviluppatori per creare processi aziendali. L'azione di processo personalizzata usa i verbi di base forniti dal sistema come creare, aggiornare, eliminare e assegnare per creare verbi più espressivi, ad esempio approvare, riassegnare, indirizzare o pianificare. Se la definizione di un processo aziendale cambia, un utente non sviluppatore può modificare l'azione di processo personalizzata in modo che il codice non debba essere modificato.

Nota

Se intendi scrivere un plug-in per implementare la logica per un'azione di processo personalizzata anziché utilizzare la progettazione flusso di lavoro, dovresti invece utilizzare l'API personalizzata. Maggiori informazioni: Confrontare l'azione di processo personalizzata e l'API personalizzata

Creare un'azione di processo personalizzata

Importante

Se crei un'azione di processo personalizzata da includere in una soluzione che verrà distribuita, creala nel contesto della soluzione. Passa a Impostazioni > Soluzioni e individua la soluzione non gestita di cui l'azione farà parte. Quindi, sulla barra dei menu, selezionare Nuovo > Processo. In questo modo si verifica che il prefisso di personalizzazione associato al nome dell'azione sia coerente con altri componenti della soluzione. Dopo aver creato l'azione, non è possibile modificare il prefisso.

Analogamente ai processi di flusso di lavoro, per le azioni di processo personalizzate sono disponibili le proprietà seguenti nella finestra di dialogo Crea processo.

  • Nome processo

    Dopo aver messo un nome per il processo, un nome univoco verrà creato rimuovendo tutti gli spazi o i caratteri speciali dal nome del processo.

  • Categoria

    Questa proprietà stabilisce che quello corrente è un processo di azione. Dopo aver salvato il processo, non è possibile modificare questa impostazione.

  • Tabella

    Con i processi di azione, è possibile selezionare una tabella per fornire contesto per il flusso di lavoro come per altri tipi di processi, ma è anche possibile scegliere Nessuno (globale). Utilizzare questa opzione se l'azione non richiede il contesto di una tabella specifica. Dopo aver salvato il processo, non è possibile modificare questa impostazione.

  • Tipo

    Utilizza questa proprietà per decidere se creare una nuova azione di processo personalizzata partendo da zero o da un modello esistente.

A differenza dei processi di flusso di lavoro, non è necessario impostare le opzioni seguenti:

  • Avvia in caso di: le azioni vengono avviate quando il codice chiama i messaggi generati per le azioni stesse.

  • Ambito: le azioni vengono eseguite sempre nel contesto dell'utente chiamante.

  • Esegui in background: le azioni sono sempre flussi di lavoro in tempo reale.

Per le azioni di processo personalizzate sono inoltre presenti elementi che i processi di flusso di lavoro non hanno, ovvero argomenti di input e output.

Nota

Puoi abilitare un'azione di processo personalizzata da un flusso di lavoro senza scrivere codice. Altre informazioni: Richiamare azioni di processo personalizzate da un flusso di lavoro

Modificare un'azione di processo personalizzata

Devi disattivare le azioni di processo personalizzate prima di modificarle.

Puoi modificare un'azione di processo personalizzata creata nell'ambito di una soluzione non gestita o inclusa in una soluzione installata nell'organizzazione. Se la soluzione è gestita, potresti non essere in grado di modificarla. L'autore di soluzioni ha la possibilità di modificare le proprietà gestite in modo che l'azione installata con una soluzione gestita non possa essere modificata.

Quando un'azione viene salvata, viene generato un nome univoco in base al nome processo. Il nome univoco ha il prefisso di personalizzazione aggiunto dall'autore della soluzione. Nome del messaggio che uno sviluppatore utilizzerà nel codice.

Quando si modifica un'azione sono disponibili le opzioni seguenti:

  • Nome processo

    Dopo la creazione del processo e la generazione del nome univoco a partire da tale nome, è possibile modificare il nome processo. Potresti volere applicare la convenzione di denominazione per semplificare l'individuazione di processi specifici.

  • Nome univoco

    Quando un'azione viene salvata, viene generato un nome univoco in base al nome processo. Il nome univoco ha il prefisso di personalizzazione aggiunto dall'autore della soluzione. Nome del messaggio che uno sviluppatore utilizzerà nel codice. Non modificare questo nome univoco se il processo è stato attivato ed esiste codice che si prevede chiami l'azione con questo nome.

    Importante

    Dopo che l'azione viene attivata e il codice viene scritto in modo da utilizzare un nome univoco, quest'ultimo non deve essere modificato senza che venga modificato anche il codice che vi fa riferimento.

  • Abilita rollback

    In genere, i processi che supportano le transazioni annulleranno (o eseguiranno il rollback) l'intera operazione se una parte di essi non riesce. Sono presenti alcune eccezioni. Alcune azioni che gli sviluppatori potrebbero eseguire in codice avviato dall'azione di processo personalizzata potrebbero non supportare le transazioni, ad esempio se il codice esegue azioni in altri sistemi di fuori dall'ambito della transazione. Per tali operazioni non può essere eseguito il rollback dall'azione eseguita in un'app. Alcuni messaggi nella piattaforma non supportano le transazioni, ma tutte le attività che è possibile eseguire nell'interfaccia utente dell'azione supporteranno le transazioni. Tutte le azioni che fanno parte di un flusso di lavoro in tempo reale vengono considerate in transazione, ma con le azioni è possibile rifiutare esplicitamente questa possibilità.

    È consigliabile consultarsi con lo sviluppatore che utilizzerà questo messaggio per stabilire se l'azione deve essere in transazione o meno. In genere, un'azione deve essere in transazione se le azioni eseguite dal processo aziendale non sono significative a meno che tutte non siano completate correttamente. L'esempio classico è il trasferimento di fondi tra due conti bancari. Se si ritirano fondi da un conto, è necessario depositarli nell'altro. Se una delle due operazioni non riesce, entrambe devono avere esito negativo.

    Nota

    Non è possibile abilitare il rollback se un'azione di processo personalizzata è richiamata direttamente da un flusso di lavoro. Puoi abilitare il rollback se l'azione viene attivata da un messaggio del servizio Web di Power Apps.

  • Attiva come

    Come per tutti i processi, è possibile attivare il processo come un modello e utilizzarlo come punto di partenza avanzato per i processi che seguono un modello simile.

  • Definire gli argomenti del processo

    In quest'area specifichi i dati che l'azione prevede per essere avviata e quelli che restituirà. Altre informazioni: Definire gli argomenti del processo

  • Aggiungere fasi e passaggi

    Come per altri processi, è necessario specificare le azioni da eseguire e il momento in cui eseguirle. Altre informazioni: Aggiungere fasi e passaggi

Definire gli argomenti del processo

Quando gli sviluppatori utilizzano messaggi, può iniziare con alcuni dati che possono essere passati al messaggio. Ad esempio, per creare una nuova riga del caso, puoi passare come argomento di input il valore del titolo del caso.

Quando il messaggio è terminato, per lo sviluppatore può essere necessario passare alcuni dati modificati o generati dal messaggio a un'altra operazione nel codice. Tali dati sono l'argomento di output.

Sia gli argomenti di input che di output devono avere un nome, un tipo e alcune informazioni sull'obbligatorietà o meno dell'argomento. È inoltre possibile immettere una descrizione.

Il nome del messaggio e le informazioni su tutti gli argomenti del processo rappresentano la firma per il messaggio. Dopo che un'azione di processo personalizzata è attivata e viene utilizzata nel codice, la firma non deve cambiare. Se la firma cambia, qualsiasi codice che utilizzi il messaggio non avrà esito positivo…. L'unica eccezione a questa condizione può essere la modifica di uno dei parametri in modo che non sia sempre obbligatorio.

Puoi cambiare l'ordine degli argomenti ordinandoli o spostandoli verso l'alto o verso il basso perché gli argomenti vengono identificati per nome e non in base all'ordine. Inoltre, la modifica della descrizione non interrompe il codice che utilizza il messaggio.

Tipi di argomento per i processi di azione

Nella tabella seguente vengono descritti i tipi di argomento per i processi di azione.

Tipo Descrizione
Boolean Valore true o false.
DateTime Valore in cui vengono archiviate le informazioni di data e ora.
Decimale Valore numerico con precisione decimale. Utilizzato quando la precisione è estremamente importante.
Table Una riga per la tabella specificata. Quando si seleziona table, l'elenco a discesa è abilitato e consente di scegliere il tipo di tabella.
entityCollection Raccolta di righe di tabella.
entityReference Oggetto che contiene il nome, l'ID e il tipo e di una riga di tabella che la identifica in modo univoco. Quando si seleziona entityReference, l'elenco a discesa è abilitato e consente di scegliere il tipo di tabella.
Float Valore numerico con precisione decimale. Utilizzato se i dati provengono da una misurazione non completamente precisa.
Intero Numero intero.
Money Valore che memorizza i dati su un importo in denaro.
Picklist Valore che rappresenta un'opzione per un attributo OptionSet.
Stringa Valore di testo.

Nota

I valori dell'argomento entityCollection non possono essere impostati nell'interfaccia utente per condizioni o azioni. Sono disponibili per gli sviluppatori nel codice personalizzato. Altre informazioni: Creare messaggi personalizzati

Aggiungere fasi e passaggi

Le azioni di processo personalizzate sono un tipo di processo molto simile ai flussi di lavoro in tempo reale. Tutti i passaggi che possono essere utilizzati nei flussi di lavoro in tempo reale possono essere utilizzati nelle azioni. Per informazioni sui passaggi che possono essere utilizzati per i flussi di lavoro in tempo reale e per le azioni, vedere Fasi e passaggi dei flussi di lavoro.

Oltre ai passaggi che possono essere utilizzati per i flussi di lavoro in tempo reale, le azioni dispongono anche del passaggio Assegna valore. Nelle azioni è possibile utilizzarli solo per definire gli argomenti di output. È possibile utilizzare informazioni e selezione rapida per impostare gli argomenti di output su valori specifici oppure, con maggiore probabilità, su valori della riga in relazione al quale l'azione viene eseguita, di righe correlate a tale riga con relazioni molti-a-uno o di righe create in un passaggio precedente o su valori che fanno parte del processo stesso.

Proprietà gestite

Le azioni di processo personalizzate hanno due proprietà gestite pertinenti

Personalizzabile

La proprietà gestita Personalizzabile determina se un utente che installa un soluzione gestita contenente l'azione di processo personalizzata può modificarla o eliminarla oppure no. Se l'azione di processo personalizzata deve essere modificata o eliminata quando inclusa in un soluzione gestita, devi impostare questa proprietà su true.

La fase di elaborazione personalizzata è consentita per altri editori

La proprietà gestita La fase di elaborazione personalizzata è consentita per altri editori determina se gli sviluppatori di plug-in di terze parti possono registrare i passaggi dei plug-in nel messaggio creato dall'azione di processo personalizzata. Se l'impostazione è true, i plug-in registrati da chiunque in questo messaggio verranno eseguiti e possono modificare il comportamento dell'azione di processo personalizzata. Se l'impostazione è false, verranno eseguiti solo i passaggi dei plug-in registrati in una soluzione dallo stesso autore di soluzioni.

Passaggi successivi

Richiamare azioni di processo personalizzate da un flusso di lavoro

Nota

Puoi indicarci le tue preferenze di lingua per la documentazione? Partecipa a un breve sondaggio. (il sondaggio è in inglese)

Il sondaggio richiederà circa sette minuti. Non viene raccolto alcun dato personale (Informativa sulla privacy).