Exécuter un Flow sous condition après enregistrement d’un formulaire

Difficulté 1/5

À la soumission d’un formulaire, vous souhaitez lancer un flow en fonction d’une condition. Le problème est que si vous liez votre flow au Onsuccess, il se déclenchera même si la condition n’est pas remplie.

Exemple :

Votre application gère des demandes d’accès à un site.

À la validation d’une demande, vous souhaitez en informer le demandeur via Teams, lui envoyer un plan d’accès par email et ajouter une tâche dans Planner aux équipes en charge de configurer les badges.

Si vous déclenchez votre Flow directement sur le OnSuccess de votre formulaire, même si vous l’avez placé dans une condition, les différentes actions se réaliseront même en cas de refus.

Pour contourner le problème, créez un bouton et liez le flow sur sa propriété OnSelect. Changez le OnSuccess de votre formulaire en passant de :

If( FormulaireDeDemande.LastSubmit.Statut.Value = "Acceptée"; Run.FlowDeValidation( FormulaireDeDemande.LastSubmit.Statut .ID))

à :

 If( FormulaireDeDemande.LastSubmit.Statut.Value = "Acceptée";  Select(BoutonFlow))

Puis masquez votre bouton. Ainsi le flow est déporté et ne s’executera que si la condition est remplie.

Note 1 : ne placez pas votre bouton dans le formulaire mais directement dans le Screen.

Note 2 : utilisez les fonctions RestForm ou NewForm après l’utilisation de LastSubmit.

Note 3 : si vous souhaitez revenir sur l’écran précédent après enregistrement, placez la fonction Back après l’exécution du Flow. La fonction Select interagie uniquement avec les contrôles présents dans son écran.

Votre commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l’aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l’aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s

Créez un site ou un blog sur WordPress.com

Retour en haut ↑

%d blogueurs aiment cette page :