Types d’exécution des règles smartforms

Dans les smartforms, le mécanisme de règles permet l’exécution d’actions. Ces actions sont, par défaut effectuées les unes après les autres. Ce comportement fait partie des 4 options disponibles :

  • One after another, noté Then.
  • Concurrently, noté And.
  • In a batch, noté Also.
  • Asynchronously, noté Asynchronoulsy.
Types d'exécution
C’est à ça qu’on fait référence ici

Entre nous, ce n’est pas souvent que cette valeur est changée. Pourtant les possibilités sont nombreuses entre autres afin de réduire les temps de chargement et d’exécution ( ceci peut avoir un impact si votre formulaire doit être disponible offline, voir le chapitre Modifications sur les règles de l’article Rendre un formulaire disponible en mode déconnecté). J’espère que ce qui suit vous permettra d’améliorer la qualité de vos interfaces ou dans une moindre mesure, de mieux comprendre ce que vous concevez.

Une remarque, il est possible de jongler entre les différents types d’exécution dans une même règle. On parle alors de bloc d’exécution, où un bloc est composé d’une ou plusieurs actions exécutées avec la même option.

L’une après l’autre (One after another)

Le fonctionnement le plus simple est celui par défaut. La première action est exécutée, lorsqu’elle est terminée, c’est au tour de la suivante d’être exécutée, etc… Puis c’est au tour du bloc suivant.

Then

Simultanément (Concurrently)

Toutes les actions du même bloc sont exécutées ensemble, lorsqu’elles sont terminées (donc lorsque la plus longue est terminée), c’est au tour du bloc suivant. Un exemple d’utilisation efficace en terme de performance est le chargement de plusieurs Lists Vues simultanément avant l’exécution d’autres actions.

And

Par lot (In a batch)

Assez proche du mode Simultané (Concurrently), le traitement par lot (In a batch) propose l’exécution de l’ensemble des actions du même bloc. A la différence que cette fois c’est le serveur web K2 (K2 Runtime) qui effectue le traitement des actions en même temps. C’est le mode utilisé dans les listes éditables pour terminer (commit) des modifications (Ajout/Suppression/Modification). La différence avec le mode précédent est que celui-ci se rapproche du principe de transaction, qui est définit par une suite d’actions atomiques, cohérentes, isolées et durables (ACID).

Also

Asynchrone (Asynchronously)

Fonctionnement assez simple aussi, toutes les actions d’un même bloc sont exécutées en même temps, ainsi que le bloc suivant. Très pratique pour réduire les délais sur des actions sans dépendance.

Async

Cet article est la traduction d’une page de la base de connaissance K2 à laquelle je vous invite à jeter un oeil : KB001432.

C’est tout pour cette fois, cheers !

benjamin

Technical Specialist @t K2 France —–
Twitter : @benjaminbertram —–
LinkedIn : Benjamin Bertram

One thought to “Types d’exécution des règles smartforms”

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *