ACR Rules

  1. Home
  2. Docs
  3. ACR Rules
  4. Architecture (16)
  5. Microflows should not call themselves

Microflows should not call themselves

This rule checks if a microflow contains a recursion. A recursion is, for example:

  • When a microflow calls itself.
  • When a sub microflow calls a parent microflow.

Recursion is a complex structure, and you should use it with caution. At the moment, Mendix does not have a built-in fail-safe for a recursion. So if for some reason the recursive calls keep going the app will crash. This can happen because of bad or misconfigured data, or a wrong exit condition.

In case you decide to have a recursion (notwithstanding the above), add an emergency brake that stops the execution if the recursion executes itself too many times (for example, 200). This avoids the app from crashing.

Non-compliant example:

Compliant example: