Regole di automazione

Le regole di automazione permettono di eseguire una o più azioni predefinite in risposta a uno specifico trigger, ad esempio creare un’attività quando un campo viene impostato su un valore specifico o archiviare un record 7 giorni dopo il suo ultimo aggiornamento.

Al momento della creazione di una regola di automazione, i filtri di dominio permettono di aggiungere le condizioni da rispettare per far sì che la regola di automazione venga attivata. Ad esempio, un’opportunità deve essere assegnata a un addetto vendite specifico oppure lo stato del record non deve essere Bozza.

Per creare una regola di automazione con Odoo Studio, segui questi step:

  1. apri Studio e fai clic su Automazioni e poi Nuova.

  2. assegna alla regola di automazione un nome chiaro e significativo che ne identifichi lo scopo

  3. seleziona il trigger e, se necessario, completa i campi che appaiono sullo schermo in base al trigger scelto

  4. fai clic su Aggiungi un’azione, per poi selezionare il Tipo di action e compila i campi che appaiono sullo schermo in base all’azione selezionata

  5. fai clic su Salva e chiudi oppure su Salva e nuova.

Example

Per garantire il follow-up dei clienti meno soddisfatti, questa regola di automazione crea un’attività 3 mesi dopo la creazione di un ordine di vendita per i clienti con una percentuale di soddisfazione inferiore al 30%.

Esempio di regola di automazione sul modello di abbonamento

Suggerimento

  • Utilizza la scheda Note per descrivere lo scopo e il funzionamento delle regole di automazione così da rendere la manutenzione più semplice e facilitare la collaborazione tra utenti.

  • Per modificare il modello oggetto della regola di automazione, cambia modello prima di fare clic su Automazioni in Studio, oppure attiva la modalità sviluppatore, crea o modifica una regola di automazione e seleziona il Modello nel modulo Regole di automazione.

  • Le regole di automazione possono essere create da qualsiasi fase kanban facendo clic sull’icona (Impostazioni) che appare quando si passa con il mouse sul nome della fase kanban per poi selezionare Automazioni. In questo caso, il trigger è impostato su Fase impostata su per impostazione predefinita ma può essere modificato se necessario.

    Creare automazioni da una fase kanban

Trigger

Il trigger viene utilizzato per stabilire cosa deve accadere per far sì che venga eseguita la regola di automazione. I trigger disponibili dipendono dal modello. Nel complesso, sono disponibili cinque categorie di trigger:

Aggiungere condizioni

I filtri di dominio consentono di determinare i record che una regola di automazione deve includere o escludere. Un filtraggio efficiente migliora le prestazioni complessive, poiché evita l’elaborazione superflua dei record che non sono interessati dalla regola.

Suggerimento

Attiva la modalità sviluppatore prima di creare una regola di automazione per avere la massima flessibilità durante l’aggiunta di filtri di dominio.

A seconda del trigger scelto, è possibile definire una o più condizioni che un record deve soddisfare prima e/o dopo che si verifica un trigger.

  • La condizione Dominio pre-aggiornamento`indica le condizioni che un record deve rispettare *prima* che l’evento attivato dal trigger si verifichi. Ad esempio, il record deve rispettare i seguenti paramentri `Tipo = Fattura cliente e Stato = Registrato.

    Attiva la modalità sviluppatore <developer-mode>, fai clic su :guilabel:`Modifica dominio, se disponibile, e poi su Nuova regola.

  • La voce Condizioni extra`o in alcuni casi i filtri :guilabel:`Applica a, indica le condizioni che un record deve rispettare dopo che si è verificato l’evento attivato dal trigger. Ad esempio, la fattura cliente deve rispettare il paramentro Stato pagamento = Parzialmente pagato.

    Attiva la modalità sviluppatore se necessario, fai clic su Aggiungi condizioni o Modifica dominio, se rilevante, e poi su Nuova regola.

Quando viene attivato un trigger, ad es., lo stato di una fattura cliente registrata viene aggiornato, la regola di automazione verifica le condizioni indicate ed esegue l’azione solo se il record rispetta le condizioni stabilite.

Example

Se l’azione automatizzata deve essere eseguita quando viene configurato un indirizzo e-mail per la prima volta (a differenza della modifica di un indirizzo e-mail) per un contatto esistente individuale e non per un’azienda, usa i valori E-mail non configurata ed È un'azienda non configurata per il campo Dominio pre-aggiornamento e il valore E-mail configurata per il dominio Applica a.

Esempio di un trigger con Dominio prima dell'aggiornamento

Nota

Al momento della creazione di un record, il campo :guilabel:`Dominio pre-aggiornamento`non viene selezionato.

Valori aggiornati

Attiva azioni automatizzate quando si verificano cambiamenti specifici nel database. I trigger disponibili in questa categoria dipendono dal modello e si basano sulle modifiche comuni, cone l’aggiunta di un tag specifico (ad es., a un lavoro) o la configurazione del valore di un campo (ad es., configurazione del campo Utente).

Seleziona il trigger e poi un valore se richiesto.

E-mail eventi

Attiva azioni automatizzate dopo aver ricevuto o inviato e-mail.

Condizioni di tempo

Attiva azioni automatizzate in un momento specifico relativo a un campo data o alla creazione o aggiornamento di un record. Sono disponibili i seguenti trigger:

  • In base al campo data: l’azione viene attivata nel periodo di tempo indicato prima o dopo la data configurata nel campo data scelto.

  • Dopo la creazione: l’azione viene attivata in un periodo di tempo specifico a seguito della creazione e del salvataggio di un record.

  • Dopo l’ultimo aggiornamento: l’azione viene attivata in un periodo di tempo specifico a seguito della modifica e del salvataggio di un record esistente.

In seguito, puoi indicare:

  • un Ritardo: specifica il numero di minuti, ore, giorni o mesi. Per far sì che un’azione venga eseguita prima della data del trigger, indica un numero negativo. Se hai scelto il trigger In base al campo data, devi selezionare anche il campo data affinché venga utilizzato per stabilire il ritardo.

    Nota

    Per impostazione predefinita, il pianificatore verifica le regole di automazione basate sul tempo ogni 240 minuti, o 4 ore. Di solito, questa frequenza è sufficiente per ritardi di 3 mesi dopo la data dell’ordine oppure 7 giorni dopo l’ultimo aggiornamento.

    Per i ritardi inferiori all’equivalente di 2.400 minuti, oppure 40 ore, il sistema ricalcola la frequenza di questo controllo per garantire che ritardi più granulari, ad esempio 1 ora prima della data e dell’ora di inizio dell’evento o 30 minuti dopo la creazione, possano essere rispettati il più fedelmente possibile.

    Un messaggio sullo schermo indica il possibile ritardo dopo l’attivazione programmata della regola.

    Messaggio possibile ritardo dopo l'esecuzione programmata

    Per visualizzare o modificare manualmente la frequenza del pianificatore, attiva la modalità sviluppatore, vai su Impostazioni ‣ Funzioni tecniche ‣ Azioni pianificate per visualizzare tutte le azioni programmate nel tuo database.

    Digita Automazione nella barra di ricera, e poi, nell’elenco dei risultati, fai clic su Regole di automazione: verifica ed esegui. Se lo desideri, aggiorna il valore del campo Esegui ogni. Fai clic su Esegui manualmente in qualsiasi momento per attivare manualmente l’azione pianificata.

  • Condizioni extra: fai clic su Aggiungi condizione, poi indica le condizioni da rispettare per far sì che la regola di automazione venga eseguita. Fai clic su :guilabel:`Nuova regola`per aggiungere un’altra condizione.

L’azione viene eseguita quando viene raggiunto il ritardo e vengono rispettate le condizioni.

Example

Per inviare un promemoria via e-mail 30 minuti prima dell’inizio di un evento fissato sul calendario, seleziona Inizio (evento calendario) come campo data del Trigger e configura il Ritardo a -30 Minuti.

Esempio trigger Basato su campo data

Personalizzata

Trigger azioni automatizzate:

  • Al momento del salvataggio: quando un record viene salvato

  • Al momento dell’eliminazione: quando un record viene eliminato

  • Al momento della modifica IU: quando il valore di un campo viene modificato nella vista modulo, anche prima del salvataggio del record stesso.

Per i trigger Al momento del salvataggio e Al momento della modifica IU, devi selezionare i campi da utilizzare per attivare la regola di automazione nel campo Quando si aggiorna.

Avvertimento

Se non viene selezionata nessuna opzione per il campo Quando si aggiorna, l’azione automatizzata potrebbe essere eseguita più volte per record.

In alternativa, puoi anche indicare condizioni aggiuntive da rispettare per attivare la regola di automazione nel campo Applicato a.

Example

Per attivare un’azione automatizzata al momento della creazione di un record, ad es. quando viene creato un nuovo contatto, seleziona il trigger Al momento del salvataggio e utilizza ID non configurato per il campo Dominio pre-aggiornamento e ID configurato per il dominio Applica a. Assicurati di selezionare il valore corretto per il campo Al momento dell’aggiornamento.

Quando un nuovo contatto viene salvato, gli viene assegnato automaticamente un ID database che attiva la regola di automazione.

Esempio di attivazione di una regola al momento della creazione di un record

Nota

Il trigger :guilabel:`Al momento della modifica IU`può essere utilizzato con l’azione :ref:`Esegui codice <studio/automated-actions/action-execute-code>`e funziona solo quando viene effettuata una modifica manualmente.

Esterno

Attiva azioni automatizzate in base a un evento specifico in un sistema o un’applicazione esterni usando un webhook.

Dopo aver configurato il webhook in Odoo, una volta generato l’URL dello stesso e definito il record bersaglio, è necessario implementarlo nel sistema esterno.

Avvertimento

È altamente consigliato consultare uno sviluppatore, un architetto di soluzioni o un altro ruolo tecnico quando si decide di utilizzare i webhook nonché durante l’intero processo di implementazione. Se non configurati correttamente, i webhook possono disturbare il database di Odoo e possono richiedere tempo per essere ripristinati.

Esempio trigger Basato su campo data

Nota

Inoltre, è possibile configurare un’azione automatizzata che invia dati al webhook di un sistema esterno quando si verifica un evento nel tuo database Odoo.

Azioni

Dopo aver stabilito il trigger della regola di automazione, fai clic su Aggiungi azione nella scheda Azioni da eseguire per stabilire l’azione da eseguire.

Suggerimento

È possibile definire più azioni per la stessa regola di automazione. Per impostazione predefinita, le azioni vengono eseguite nell’ordine in cui vengono configurate.

Ciò significa, ad esempio, che se definisci un’azione Aggiorna record e poi un’azione Invia e-mail dove l’e-mail fa riferimento al campo aggiornato, l’e-mail utilizza i valori aggiornati. Tuttavia, se l’azione Invia e-mail viene definita prima dell’azione Aggiorna record, l’e-mail usa i valori configurati prima dell’aggiornamento del record.

Per modificare l’ordine delle azioni definite, fai clic sull’icona :guilabel:`(trascinamento)`accanto a un’azione e trascinala nella posizione desiderata.

Aggiorna record

L’azione aggiorna uno dei campi del record (correlati). Fai clic sul campo Aggiorna e, nell’elenco che si apre, selezionan o cerca il campo da aggiornare. Se necessario, fai clic sull’icona (freccia destra) accanto al nome del campo per accedere all’elenco di campi correlati.

Se selezioni un :ref:` campo molti a molti <studio/fields/relational-fields-many2many>`, scegli se il campo deve essere aggiornato Aggiungendo, Eliminando, o Impostandolo sul valore selezionato oppure Eliminandolo.

Example

Se vuoi che l’azione automatizzata rimuova un tag da un record cliente, imposta il campo Aggiorna su Cliente > Tag, seleziona rimuovendo e poi il tag.

Esempio di azione Aggiorna record

Suggerimento

In alternativa, puoi anche configurare il campo di un record in modo dinamico utilizzando il codice Python. Per farlo, seleziona Calcola invece di Aggiorna e poi inserisci il codice da usare per il calcolo del valore del campo. Ad esempio, se vuoi che la regola di automazione calcoli un campo data personalizzato quando la priorità di un lavoro è impostata su Alta (aggiungendo stelline al lavoro), puoi impostare il valore del trigger La priorità è impostata su a Alta e definire l’azione Aggiorna record come segue:

Calcolo di un campo data/ora personalizzato utilizzando un'espressione Python

Crea attività

Quest’azione viene utilizzata per programmare una nuova attività collegata al record. Seleziona un Tipo di attività, inserisci un Titolo e una descrizione per poi specificare quando vuoi che l’attività venga programmata nel campo Data di scadenza tra e seleziona un Tipo di utente:

  • per assegnare l’attività sempre allo stesso utente, seleziona il campo Utente specifico, poi aggiungi l’utente nel campo Responsabile

  • per raggiungere un utente collegato al record in modo dinamico, seleziona Utente dinamico (in base al record) e modifica il Campo utente se necessario.

Example

Dopo aver convertito un lead in opportunità, vuoi che l’azione automatizzata programmi una chiamata per l’utente responsabile del lead. Per farlo, configura il Tipo di attività su Utente dinamico (in base al record).

Esempio di un'azione Crea attività

Inviare e-mail e SMS

Queste azioni vengono utilizzate per inviare un’e-mail o un messaggio di testo a un contatto collegato a un record specifico. Per farlo, seleziona o crea un Modello e-mail o un Modello SMS, e poi nel campo Invia e-mail come o Invia SMS come, scegli come vuoi inviare l’e-mail o il messaggio di testo:

  • E-mail: per inviare il messaggio come e-mail ai destinatari del Modello e-mail

  • Messaggio: per registrare il messaggio sul record e notificare i follower

  • Nota: per inviare il messaggio come nota interna visibile agli utenti interni nel chatter

  • SMS (senza nota): per inviare il messaggio come messaggio di testo ai destinatari del modello SMS.

  • SMS (con nota): per inviare il messaggio come messaggio di testo ai destinatari del modello SMS e registrarlo come nota interna nel chatter.

  • Solo nota: per registrare il messaggio solo come nota interna nel chatter.

Invia Whatsapp

Importante

Per automatizzare l’invio di messaggi WhatsApp, è necessario creare un modello WhatsApp.

L’azione viene utilizzata per inviare un messaggio WhatsApp a un contatto collegato a un record specifico. Per farlo, seleziona il modello WhatsApp appropriato dal menu a discesa.

Aggiungere ed eliminare follower

Quest’azione viene utilizzata per iscrivere/annullare l’iscrizione di contatti esistenti al/dal record.

Crea record

L’azione viene utilizzata per creare un nuovo record su ogni modello.

Seleziona il modello richiesto per il campo Record da creare che contiene il modello attuale per impostazione predefinita. Specifica un Nome per il record e poi, se vuoi creare il record su un altro modello, seleziona un campo nel Campo link per collegare il record che ha attivato l’azione del nuovo record.

Nota

L’elenco a discesa collegato al Campo link contiene solo campi uno a molti esistenti nel modello attuale e che sono collegati a un campo molti a uno nel modello di destinazione.

Suggerimento

È possibile creare un’altra regola di automazione con azioni Aggiorna record per aggiornare i campi del nuovo record se necessario. Ad esempio, puoi utilizzare un’azione Crea record per creare un nuovo lavoro e assegnarlo a un utente specifico utilizzando l’azione Aggiorna record.

Esegui codice

Importante

Per le regole di automazione che richiedono l’esecuzione di codice personalizzato, nota che la manutenzione di tale codice non è inclusa nei piani Standard e Personalizzato e comporta costi aggiuntivi.

L’azione viene utilizzata per eseguire il codice Python. Puoi inserire il codice nella scheda Codice utilizzando le seguenti variabili:

  • env: ambiente in cui viene attivata l’azione

  • model: modello del record su cui l’azione viene attivata, è un recordset vuoto

  • record: record su cui l’azione viene attivata, potrebbe essere vuoto

  • più record: recordset di tutti i record su cui l’azione viene attivata in modalità multipla, questo potrebbe restare vuoto

  • time, datetime, dateutil, timezone: librerie Python utili

  • float_compare: funzione di utilità per confrontare i float in base a una precisione specifica

  • log(message, level='info'): funzione di logging per registrare le informazioni di debug nella tabella ir.logging

  • _logger.info(message): logger per emettere messaggi nei log del server

  • UserError: classe di eccezione per visualizzare messaggi di avviso per gli utenti

  • Command: x2many spazio nome comando

  • action = {...}: per restituire un’azione

Suggerimento

Le variabili disponibili vengono descritte nelle schede Codice e Aiuto.

Vedi anche

Capacità ORM Odoo

Invia notifica Webhook

L’azione viene utilizzata per inviare una richiesta API POST`con i valori dei :guilabel:`campi selezionati per l’URL del webhook specificato nel campo URL.

Il Payload campione fornisce un’anteprima dei dati inclusi nella richiesta utilizzando i dati di un record a caso o dati campione se non ci sono record disponibili.

Nota

Inoltre, è possibile configurare un’azione automatizzata che utilizza un webhook per ricevere dati da un sistema esterno quando nel sistema si verifica un evento preconfigurato.

Esegui azioni esistenti

L’azione viene utilizzata per attivare più azioni (collegate al modello attuale) nello stesso momento. Per farlo, fai clic su Aggiungi una riga, poi nella finestra pop-up Aggiungi: azioni figlie seleziona un’azione esistente oppure fai clic su Nuova per crearne una nuova.