Seleziona la tua lingua

  • Davide Gammone

            

Davide Gammone.com

In Salesforce, sebbene sia possibile configurare negli Approval Process delle azioni, al momento non è possibile rendere dei campi obbligatori negli Approval Process. Possiamo immaginare sia un problema facilmente risolvibile utilizzando delle Validation Rules. Sfortunatamente, al momento, non è nemmeno possibile utilizzare Validation Rules per rendere dei campi obbligatori negli Approval Process.

Nonostante ciò, possiamo utilizzare un workaround per risolvere tale necessità, implementando un Flow.

Prima di implementare un Flow, bisogna spuntare la casella "Re-evaluate Workflow Rules after Field Change" nell'azione del Field Update. Ciò assicura che l'Approval Process innesca altre automazioni (nel nostro caso un Flow).

Re-evaluate Workflow Rules after Field Change

Adesso, bisogna implementare un Flow per rendere il campo Comments dell'Approval Process obbligatorio.

Come primo passo, bisogna creare un nuovo (before save/Fast Field Updates) record triggered flow che viene innescato quando lo stato dell'approvazione diventa "Rifiutato". Ovviamente questo è solo un esempio, si può utilizzare qualsiasi campo e qualsiasi valore. Bisogna solo essere sicuri di utilizzare il campo che viene aggiornato dall'azione dell'Approval Process.

Flow si innesca quando lo stato Approvazione è Rifiutato

Aggiungiamo un elemento Get Records per effettuare una query sull'ultimo record di tipo Process Instance relazionato al nostro oggetto (in questo caso l'Account). L'oggetto Process Instance indica l'Approval Process. Facciamo attenzione ad inserire una condizione per filtrare solo i records relazionati al nostro oggetto tramite il campo TargetObjectId e di ordinarli per la CreatedDate in modo discendente.

Elemento Get Records per ottenere ultimo record Process Instance relazionato

Aggiungiamo un altro elemento Get Records per effettuare una query sull'ultimo record di tipo Process Instance Step relazionato al nostro Process Instance che abbiamo trovato nella query precedente. Facciamo attenzione ad inserire una condizione per filtrare solo i records con lo StepStatus "Rejected" e di ordinarli per la CreatedDate in modo discendente.

Elemento Get Records per ottenere ultimo record Process Instance Step Rifiutato

Adesso, possiamo aggiungere un Decision Element per controllare che il campo Comments nel Process Instance Step, trovato nella query precedente, non sia vuoto o null.

Elemento Decisione per verificare campo Commento del Process Instance Step

Se il campo Comments è blank, vogliamo mostrare un messaggio di errore. Quindi, possiamo aggiungere un elemento Custom Error per mostrare il messaggio di errore.

Se campo Comments è blank mostriamo messaggio errore

Al termine dei passi precedenti, il Flow apparirà come di seguito:

Creare un Flow per rendere obbligatorio campo Comments in Approval Process

Adesso, se proviamo a cliccare su Reject sul record dell'Approval Process senza inserire un testo nel campo Comments, visualizzeremo il messaggio di errore!

IMPORTANTE!

Può accadere a tante persone che il Flow non funzioni perfettamente come desiderato. Questo problema è dovuto sicuramente al fatto che hanno inserito l'azione di Field Update nella sezione delle "Rejection Actions" e non nella sezione "Final Rejection Actions".

Dopo tale modifica, sicuramente funziona! 😉

Rifiuto Finale Approval Process

GDPR Alert

Questo sito utilizza cookie, anche di terze parti, per offrirti servizi in linea con le tue preferenze. Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque suo elemento acconsenti all'uso dei cookie. Se vuoi saperne di più o negare il consenso a tutti o ad alcuni cookie, clicca su Privacy Policy...

Privacy Policy